summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/windows/qwindowswindowclassdescription.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/windows/qwindowswindowclassdescription.h')
-rw-r--r--src/plugins/platforms/windows/qwindowswindowclassdescription.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/plugins/platforms/windows/qwindowswindowclassdescription.h b/src/plugins/platforms/windows/qwindowswindowclassdescription.h
index 3acca65b8a2..f0019f8f3c2 100644
--- a/src/plugins/platforms/windows/qwindowswindowclassdescription.h
+++ b/src/plugins/platforms/windows/qwindowswindowclassdescription.h
@@ -14,6 +14,14 @@ class QWindow;
struct QWindowsWindowClassDescription
{
+ enum class WindowStyleOption
+ {
+ None = 0x00,
+ GLSurface = 0x01,
+ DropShadow = 0x02
+ };
+ Q_DECLARE_FLAGS(WindowStyleOptions, WindowStyleOption)
+
static QWindowsWindowClassDescription fromName(QString name, WNDPROC procedure);
static QWindowsWindowClassDescription fromWindow(const QWindow *window, WNDPROC procedure);
@@ -25,9 +33,15 @@ struct QWindowsWindowClassDescription
bool shouldAddPrefix{ true };
private:
+ static QString classNameSuffix(Qt::WindowFlags type, unsigned int style, bool hasIcon);
+ static bool computeHasIcon(Qt::WindowFlags flags, Qt::WindowFlags type);
+ static unsigned int computeWindowStyles(Qt::WindowFlags flags, Qt::WindowFlags type, WindowStyleOptions options);
+
friend QDebug operator<<(QDebug dbg, const QWindowsWindowClassDescription &description);
};
+Q_DECLARE_OPERATORS_FOR_FLAGS(QWindowsWindowClassDescription::WindowStyleOptions)
+
QT_END_NAMESPACE
#endif // QWINDOWSWINDOWCLASSDESCRIPTION_H