From 6eb2efea00eb07ce3a6b089b984885ce4a08c9ca Mon Sep 17 00:00:00 2001 From: Sine Striker <trueful@163.com> Date: 周五, 29 12月 2023 20:55:09 +0800 Subject: [PATCH] Add WinRegKey support --- src/core/contexts/win32windowcontext_p.h | 25 +++++++++++++++---------- 1 files changed, 15 insertions(+), 10 deletions(-) diff --git a/src/core/contexts/win32windowcontext_p.h b/src/core/contexts/win32windowcontext_p.h index ce51265..ec3e8e6 100644 --- a/src/core/contexts/win32windowcontext_p.h +++ b/src/core/contexts/win32windowcontext_p.h @@ -1,6 +1,15 @@ #ifndef WIN32WINDOWCONTEXT_P_H #define WIN32WINDOWCONTEXT_P_H +// +// W A R N I N G !!! +// ----------------- +// +// This file is not part of the QWindowKit API. It is used purely as an +// implementation detail. This header file may change from version to +// version without notice, or may even be removed. +// + #include <QWKCore/qwindowkit_windows.h> #include <QWKCore/private/abstractwindowcontext_p.h> @@ -8,8 +17,6 @@ class Win32WindowContext : public AbstractWindowContext { Q_OBJECT - Q_PROPERTY(bool needBorderPainter READ needBorderPainter FINAL) - Q_PROPERTY(int borderThickness READ borderThickness FINAL) public: Win32WindowContext(); ~Win32WindowContext() override; @@ -26,11 +33,12 @@ QString key() const override; void virtual_hook(int id, void *data) override; - bool needBorderPainter() const; - int borderThickness() const; + QVariant windowAttribute(const QString &key) const override; protected: - bool setupHost() override; + void winIdChanged() override; + bool windowAttributeChanged(const QString &key, const QVariant &attribute, + const QVariant &oldAttribute) override; public: bool windowProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam, LRESULT *result); @@ -39,7 +47,7 @@ LRESULT *result); // In order to perfectly apply Windows 11 Snap Layout into the Qt window, we need to - // intercept and simulate most of the mouse events, so that the processing logic + // intercept and emulate most of the mouse events, so that the processing logic // is quite complex. Simultaneously, in order to make the handling code of other // Windows messages clearer, we have separated them into this function. bool snapLayoutHandler(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam, @@ -51,9 +59,6 @@ bool nonClientCalcSizeHandler(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam, LRESULT *result); - bool themeStuffHandler(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam, - LRESULT *resul); - protected: WId windowId = 0; @@ -64,7 +69,7 @@ // WM_MOUSELEAVE. bool mouseLeaveBlocked = false; - bool centered = false; + bool initialCentered = false; }; } -- Gitblit v1.9.1