diff options
author | Gunnar Sletta <gunnar.sletta@nokia.com> | 2010-07-08 07:44:30 +0200 |
---|---|---|
committer | Gunnar Sletta <gunnar.sletta@nokia.com> | 2010-07-08 07:44:30 +0200 |
commit | 3d75736bb30623c5858fec33ad8c0a3419d35c52 (patch) | |
tree | 766f0f5b7db7f175b5578d8c4c79798119d04d3d /qtwinmigrate/qmfcapp.h |
Diffstat (limited to 'qtwinmigrate/qmfcapp.h')
-rw-r--r-- | qtwinmigrate/qmfcapp.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/qtwinmigrate/qmfcapp.h b/qtwinmigrate/qmfcapp.h new file mode 100644 index 0000000..7a3f5ca --- /dev/null +++ b/qtwinmigrate/qmfcapp.h @@ -0,0 +1,58 @@ + +// Declaration of the QMfcApp classes + +#ifndef QMFCAPP_H +#define QMFCAPP_H + +#include <QtGui/QApplication> + +#if defined(_AFXDLL) && defined(_MSC_VER) +#define QTWINMIGRATE_WITHMFC +class CWinApp; +#endif + +#if defined(Q_WS_WIN) +# if !defined(QT_QTWINMIGRATE_EXPORT) && !defined(QT_QTWINMIGRATE_IMPORT) +# define QT_QTWINMIGRATE_EXPORT +# elif defined(QT_QTWINMIGRATE_IMPORT) +# if defined(QT_QTWINMIGRATE_EXPORT) +# undef QT_QTWINMIGRATE_EXPORT +# endif +# define QT_QTWINMIGRATE_EXPORT __declspec(dllimport) +# elif defined(QT_QTWINMIGRATE_EXPORT) +# undef QT_QTWINMIGRATE_EXPORT +# define QT_QTWINMIGRATE_EXPORT __declspec(dllexport) +# endif +#else +# define QT_QTWINMIGRATE_EXPORT +#endif + +class QT_QTWINMIGRATE_EXPORT QMfcApp : public QApplication +{ +public: + static bool pluginInstance(Qt::HANDLE plugin = 0); + +#ifdef QTWINMIGRATE_WITHMFC + static int run(CWinApp *mfcApp); + static QApplication *instance(CWinApp *mfcApp); + QMfcApp(CWinApp *mfcApp, int &argc, char **argv); +#endif + ~QMfcApp(); + + bool winEventFilter(MSG *msg, long *result); + + static void enterModalLoop(); + static void exitModalLoop(); + +private: +#ifdef QTWINMIGRATE_WITHMFC + static char ** mfc_argv; + static int mfc_argc; + static CWinApp *mfc_app; +#endif + + int idleCount; + bool doIdle; +}; + +#endif // QMFCAPP_H |