summaryrefslogtreecommitdiffstats
path: root/qtwinmigrate/qmfcapp.h
diff options
context:
space:
mode:
authorGunnar Sletta <gunnar.sletta@nokia.com>2010-07-08 07:44:30 +0200
committerGunnar Sletta <gunnar.sletta@nokia.com>2010-07-08 07:44:30 +0200
commit3d75736bb30623c5858fec33ad8c0a3419d35c52 (patch)
tree766f0f5b7db7f175b5578d8c4c79798119d04d3d /qtwinmigrate/qmfcapp.h
Replicate the repo...HEADmaster
Diffstat (limited to 'qtwinmigrate/qmfcapp.h')
-rw-r--r--qtwinmigrate/qmfcapp.h58
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