From 77bce901860548cd84c1680672ec75fbd6184cf8 Mon Sep 17 00:00:00 2001
From: Sine Striker <trueful@163.com>
Date: 摹曛, 22 2月 2024 15:40:09 +0800
Subject: [PATCH] Add new winIdChange event filter

---
 src/widgets/widgetitemdelegate_p.h |   33 ++++++++++++++++++++++++++++++---
 1 files changed, 30 insertions(+), 3 deletions(-)

diff --git a/src/widgets/widgetitemdelegate_p.h b/src/widgets/widgetitemdelegate_p.h
index 1056f35..f5c58a6 100644
--- a/src/widgets/widgetitemdelegate_p.h
+++ b/src/widgets/widgetitemdelegate_p.h
@@ -1,10 +1,23 @@
+// Copyright (C) 2023-2024 Stdware Collections (https://www.github.com/stdware)
+// Copyright (C) 2021-2023 wangwenx190 (Yuhang Zhao)
+// SPDX-License-Identifier: Apache-2.0
+
 #ifndef WIDGETITEMDELEGATE_P_H
 #define WIDGETITEMDELEGATE_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 <QtCore/QObject>
 #include <QtGui/QWindow>
 
-#include <QWKCore/windowitemdelegate.h>
+#include <QWKCore/private/windowitemdelegate_p.h>
 #include <QWKWidgets/qwkwidgetsglobal.h>
 
 namespace QWK {
@@ -20,10 +33,24 @@
         bool isVisible(const QObject *obj) const override;
         QRect mapGeometryToScene(const QObject *obj) const override;
 
-        QWindow * hostWindow(const QObject *host) const override;
+        QWindow *hostWindow(const QObject *host) const override;
         bool isHostSizeFixed(const QObject *host) const override;
+        bool isWindowActive(const QObject *host) const override;
+        Qt::WindowStates getWindowState(const QObject *host) const override;
+        Qt::WindowFlags getWindowFlags(const QObject *host) const override;
+        QRect getGeometry(const QObject *host) const override;
 
-        void resetQtGrabbedControl() const override;
+        void resetQtGrabbedControl(QObject *host) const override;
+        void setWindowState(QObject *host, Qt::WindowStates state) const override;
+        void setCursorShape(QObject *host, Qt::CursorShape shape) const override;
+        void restoreCursorShape(QObject *host) const override;
+        void setWindowFlags(QObject *host, Qt::WindowFlags flags) const override;
+        void setWindowVisible(QObject *host, bool visible) const override;
+        void setGeometry(QObject *host, const QRect &rect) override;
+        void bringWindowToTop(QObject *host) const override;
+
+        WinIdChangeEventFilter *
+            createWinIdEventFilter(QObject *host, AbstractWindowContext *context) const override;
     };
 
 }

--
Gitblit v1.9.1