From f79b4c3ef8fae15e1bce56e4443caa76a9e2b00a Mon Sep 17 00:00:00 2001
From: Zhao Yuhang <2546789017@qq.com>
Date: 摹曛, 10 4月 2025 11:26:28 +0800
Subject: [PATCH] update qmsetup

---
 src/core/style/styleagent.cpp |   44 +++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 39 insertions(+), 5 deletions(-)

diff --git a/src/core/style/styleagent.cpp b/src/core/style/styleagent.cpp
index 6c0e740..4b88447 100644
--- a/src/core/style/styleagent.cpp
+++ b/src/core/style/styleagent.cpp
@@ -1,3 +1,7 @@
+// Copyright (C) 2023-2024 Stdware Collections (https://www.github.com/stdware)
+// Copyright (C) 2021-2023 wangwenx190 (Yuhang Zhao)
+// SPDX-License-Identifier: Apache-2.0
+
 #include "styleagent.h"
 #include "styleagent_p.h"
 
@@ -5,10 +9,25 @@
 
 namespace QWK {
 
+    /*!
+        \class StyleAgent
+        \brief StyleAgent provides some features related to system theme.
+
+        Qt6.6 started to support system theme detection, this class is intended as an auxiliary
+        support for lower versions of Qt. If your Qt already supports it, it is recommended that
+        you don't include this class in your build system.
+    */
+
     StyleAgentPrivate::StyleAgentPrivate() {
     }
 
-    StyleAgentPrivate::~StyleAgentPrivate() = default;
+    StyleAgentPrivate::~StyleAgentPrivate() {
+        removeSystemThemeHook();
+    }
+
+    void StyleAgentPrivate::init() {
+        setupSystemThemeHook();
+    }
 
     void StyleAgentPrivate::notifyThemeChanged(StyleAgent::SystemTheme theme) {
         if (theme == systemTheme)
@@ -19,25 +38,40 @@
         Q_EMIT q->systemThemeChanged();
     }
 
+    /*!
+        Constructor. Since it is not related to a concrete window instance, it is better to be used
+        as a singleton.
+    */
     StyleAgent::StyleAgent(QObject *parent) : StyleAgent(*new StyleAgentPrivate(), parent) {
-        Q_D(StyleAgent);
-        d->setupSystemThemeHook();
     }
 
+    /*!
+        Destructor.
+    */
     StyleAgent::~StyleAgent() {
-        Q_D(StyleAgent);
-        d->removeSystemThemeHook();
     }
 
+    /*!
+        Returns the system theme.
+    */
     StyleAgent::SystemTheme StyleAgent::systemTheme() const {
         Q_D(const StyleAgent);
         return d->systemTheme;
     }
 
+    /*!
+        \internal
+    */
     StyleAgent::StyleAgent(StyleAgentPrivate &d, QObject *parent) : QObject(parent), d_ptr(&d) {
         d.q_ptr = this;
 
         d.init();
     }
 
+    /*!
+        \fn void StyleAgent::systemThemeChanged()
+
+        This signal is emitted when the system theme changes.
+    */
+
 }

--
Gitblit v1.9.1