summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel
diff options
context:
space:
mode:
authorAndrew Knight <andrew.knight@digia.com>2013-09-13 12:22:45 +0300
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-09-20 13:53:59 +0200
commitd959c37eaa66298579ca55440aff5fdb8b3126b2 (patch)
tree6c61938d1046fd2e469f63b49f3e58c4da449f88 /src/corelib/kernel
parent7e2b238c507ee2fdea26f2b57512f337de2c5f85 (diff)
WinRT: Basic global support
Various global changes, primarily preprocessor flow, to support the WinRT platform. Change-Id: I3fa9cf91d5fb24019362e88fcf205e31b4f810b5 Reviewed-by: Andrew Knight <andrew.knight@digia.com>
Diffstat (limited to 'src/corelib/kernel')
-rw-r--r--src/corelib/kernel/qcoreapplication.cpp4
-rw-r--r--src/corelib/kernel/qcoreapplication_win.cpp16
-rw-r--r--src/corelib/kernel/qcorecmdlineargs_p.h6
3 files changed, 21 insertions, 5 deletions
diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp
index 290248aa6d..bdb7dc17f6 100644
--- a/src/corelib/kernel/qcoreapplication.cpp
+++ b/src/corelib/kernel/qcoreapplication.cpp
@@ -2028,7 +2028,7 @@ QString QCoreApplication::applicationFilePath()
*/
qint64 QCoreApplication::applicationPid()
{
-#if defined(Q_OS_WIN32) || defined(Q_OS_WINCE)
+#if defined(Q_OS_WIN)
return GetCurrentProcessId();
#elif defined(Q_OS_VXWORKS)
return (pid_t) taskIdCurrent;
@@ -2079,7 +2079,7 @@ QStringList QCoreApplication::arguments()
char ** const av = self->d_func()->argv;
list.reserve(ac);
-#ifdef Q_OS_WIN
+#if defined(Q_OS_WIN) && !defined(Q_OS_WINRT)
// On Windows, it is possible to pass Unicode arguments on
// the command line. To restore those, we split the command line
// and filter out arguments that were deleted by derived application
diff --git a/src/corelib/kernel/qcoreapplication_win.cpp b/src/corelib/kernel/qcoreapplication_win.cpp
index 3e2fd6a689..dd1b84aa58 100644
--- a/src/corelib/kernel/qcoreapplication_win.cpp
+++ b/src/corelib/kernel/qcoreapplication_win.cpp
@@ -56,6 +56,20 @@ QT_BEGIN_NAMESPACE
int appCmdShow = 0;
+#if defined(Q_OS_WINRT)
+
+Q_CORE_EXPORT QString qAppFileName()
+{
+ return QFileInfo(QCoreApplication::arguments().first()).filePath();
+}
+
+QString QCoreApplicationPrivate::appName() const
+{
+ return QFileInfo(QCoreApplication::arguments().first()).baseName();
+}
+
+#else
+
Q_CORE_EXPORT HINSTANCE qWinAppInst() // get Windows app handle
{
return GetModuleHandle(0);
@@ -1000,4 +1014,6 @@ QDebug operator<<(QDebug dbg, const MSG &msg)
#endif // QT_NO_QOBJECT
+#endif // !defined(Q_OS_WINRT)
+
QT_END_NAMESPACE
diff --git a/src/corelib/kernel/qcorecmdlineargs_p.h b/src/corelib/kernel/qcorecmdlineargs_p.h
index f2b109facd..d1cfa2dfa9 100644
--- a/src/corelib/kernel/qcorecmdlineargs_p.h
+++ b/src/corelib/kernel/qcorecmdlineargs_p.h
@@ -58,7 +58,7 @@
QT_BEGIN_NAMESPACE
-#ifdef Q_OS_WIN
+#if defined(Q_OS_WIN) && !defined(Q_OS_WINRT)
QT_BEGIN_INCLUDE_NAMESPACE
# include "QtCore/qvector.h"
@@ -149,7 +149,7 @@ static inline QStringList qCmdLineArgs(int argc, char *argv[])
return qWinCmdArgs(cmdLine);
}
-#else // !Q_OS_WIN
+#else // Q_OS_WIN && !Q_OS_WINRT
static inline QStringList qCmdLineArgs(int argc, char *argv[])
{
@@ -159,7 +159,7 @@ static inline QStringList qCmdLineArgs(int argc, char *argv[])
return args;
}
-#endif // Q_OS_WIN
+#endif // !Q_OS_WIN || Q_OS_WINRT
QT_END_NAMESPACE