summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel
diff options
context:
space:
mode:
authorSamuel Rødal <samuel.rodal@nokia.com>2011-09-06 10:49:40 +0200
committerSamuel Rødal <samuel.rodal@nokia.com>2011-09-06 10:55:40 +0200
commita6b6e760ac2f019b9ca42847b9535207966811aa (patch)
treecdba2823eb3708f7a40593ff69b81d2be88515ea /src/gui/kernel
parent48ba459580c9e4ce28dbb2c3ce433175148da5a1 (diff)
parent8ed47d961dc7e6f161030654d11cd330a542eadf (diff)
Merge remote branch 'gerrit/master' into HEAD
Conflicts: configure.exe src/corelib/global/qglobal.h src/gui/kernel/qplatformnativeinterface_qpa.h src/gui/widgets/qlinecontrol.cpp src/gui/widgets/qmenu_mac.mm src/gui/widgets/qmenu_p.h src/gui/widgets/qmenubar.cpp src/gui/widgets/qmenubar_p.h src/gui/widgets/widgets.pri src/plugins/platforms/wayland/qwaylandnativeinterface.cpp src/plugins/platforms/wayland/qwaylandnativeinterface.h src/src.pro tests/auto/qdir/tst_qdir.cpp tests/auto/qfileinfo/tst_qfileinfo.cpp tests/auto/qsslsocket/tst_qsslsocket.cpp tests/auto/qstring/tst_qstring.cpp Change-Id: I64cf2cefa532ba87a92f632e3595ce6914183e9b
Diffstat (limited to 'src/gui/kernel')
-rw-r--r--src/gui/kernel/qplatformnativeinterface_qpa.cpp41
-rw-r--r--src/gui/kernel/qplatformnativeinterface_qpa.h14
2 files changed, 54 insertions, 1 deletions
diff --git a/src/gui/kernel/qplatformnativeinterface_qpa.cpp b/src/gui/kernel/qplatformnativeinterface_qpa.cpp
index 20d136e691..7b9ff4a7a5 100644
--- a/src/gui/kernel/qplatformnativeinterface_qpa.cpp
+++ b/src/gui/kernel/qplatformnativeinterface_qpa.cpp
@@ -64,4 +64,45 @@ void * QPlatformNativeInterface::nativeResourceForBackingStore(const QByteArray
return 0;
}
+/*!
+ Contains generic window properties that the platform may utilize.
+*/
+QVariantMap QPlatformNativeInterface::windowProperties(QPlatformWindow *window) const
+{
+ return QVariantMap();
+}
+
+/*!
+ Returns a window property with \a name.
+
+ If the property does not exist, returns a default-constructed value.
+*/
+QVariant QPlatformNativeInterface::windowProperty(QPlatformWindow *window, const QString &name) const
+{
+ Q_UNUSED(window);
+ Q_UNUSED(name);
+ return QVariant();
+}
+
+/*!
+ Returns a window property with \a name. If the value does not exist, defaultValue is returned.
+*/
+QVariant QPlatformNativeInterface::windowProperty(QPlatformWindow *window, const QString &name, const QVariant &defaultValue) const
+{
+ Q_UNUSED(window);
+ Q_UNUSED(name);
+ Q_UNUSED(defaultValue);
+ return QVariant();
+}
+
+/*!
+ Sets a window property with \a name to \a value.
+*/
+void QPlatformNativeInterface::setWindowProperty(QPlatformWindow *window, const QString &name, const QVariant &value)
+{
+ Q_UNUSED(window);
+ Q_UNUSED(name);
+ Q_UNUSED(value);
+}
+
QT_END_NAMESPACE
diff --git a/src/gui/kernel/qplatformnativeinterface_qpa.h b/src/gui/kernel/qplatformnativeinterface_qpa.h
index 6ea8104fa3..bfcf78813b 100644
--- a/src/gui/kernel/qplatformnativeinterface_qpa.h
+++ b/src/gui/kernel/qplatformnativeinterface_qpa.h
@@ -43,6 +43,8 @@
#define QPLATFORMNATIVEINTERFACE_QPA_H
#include <QtGui/qwindowdefs.h>
+#include <QtCore/QObject>
+#include <QtCore/QVariant>
QT_BEGIN_HEADER
@@ -52,14 +54,24 @@ QT_MODULE(Gui)
class QOpenGLContext;
class QWindow;
+class QPlatformWindow;
class QBackingStore;
-class Q_GUI_EXPORT QPlatformNativeInterface
+class Q_GUI_EXPORT QPlatformNativeInterface : public QObject
{
+ Q_OBJECT
public:
virtual void *nativeResourceForContext(const QByteArray &resource, QOpenGLContext *context);
virtual void *nativeResourceForWindow(const QByteArray &resource, QWindow *window);
virtual void *nativeResourceForBackingStore(const QByteArray &resource, QBackingStore *backingStore);
+
+ virtual QVariantMap windowProperties(QPlatformWindow *window) const;
+ virtual QVariant windowProperty(QPlatformWindow *window, const QString &name) const;
+ virtual QVariant windowProperty(QPlatformWindow *window, const QString &name, const QVariant &defaultValue) const;
+ virtual void setWindowProperty(QPlatformWindow *window, const QString &name, const QVariant &value);
+
+Q_SIGNALS:
+ void windowPropertyChanged(QPlatformWindow *window, const QString &propertyName);
};
QT_END_NAMESPACE