diff options
-rw-r--r-- | src/gui/kernel/qevent.cpp | 14 | ||||
-rw-r--r-- | src/gui/kernel/qevent.h | 2 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/gui/kernel/qevent.cpp b/src/gui/kernel/qevent.cpp index f7bc54c..8a67b91 100644 --- a/src/gui/kernel/qevent.cpp +++ b/src/gui/kernel/qevent.cpp @@ -3098,6 +3098,20 @@ QUrl QFileOpenEvent::url() const return reinterpret_cast<const QFileOpenEventPrivate *>(d)->url; } +void QFileOpenEvent::openFile(QFile &file, QIODevice::OpenMode flags) const +{ + file.setFileName(f); +#ifdef Q_OS_SYMBIAN + const QFileOpenEventPrivate *priv = reinterpret_cast<const QFileOpenEventPrivate *>(d); + if (priv->file.SubSessionHandle()) { + // TODO return a QFile opened from the file handle + file.open(flags); + return; + } +#endif + file.open(flags); +} + #ifndef QT_NO_TOOLBAR /*! \internal diff --git a/src/gui/kernel/qevent.h b/src/gui/kernel/qevent.h index 2f5c486..0499a6d 100644 --- a/src/gui/kernel/qevent.h +++ b/src/gui/kernel/qevent.h @@ -54,6 +54,7 @@ #include <QtCore/qvariant.h> #include <QtCore/qmap.h> #include <QtCore/qset.h> +#include <QtCore/qfile.h> #ifdef Q_OS_SYMBIAN class RFile; @@ -652,6 +653,7 @@ public: inline QString file() const { return f; } QUrl url() const; + void openFile(QFile &file, QIODevice::OpenMode flags) const; private: QString f; }; |