From adb46e1e151b73e56a7e0066a896b48b92a7230e Mon Sep 17 00:00:00 2001
From: Zhao Yuhang <2546789017@qq.com>
Date: 周五, 22 12月 2023 21:44:10 +0800
Subject: [PATCH] win: use modern API

---
 src/core/CMakeLists.txt |   34 +++++++++++++++++++++++++---------
 1 files changed, 25 insertions(+), 9 deletions(-)

diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index 88d350b..6e20cf1 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -13,31 +13,27 @@
     windowitemdelegate.cpp
     kernel/nativeeventfilter_p.h
     kernel/nativeeventfilter.cpp
+    shared/systemwindow_p.h
     contexts/abstractwindowcontext_p.h
     contexts/abstractwindowcontext.cpp
 )
 
-set(_defines_private)
 set(_links_private)
 
 if(WIN32)
     list(APPEND _src
         qwindowkit_windows.h
         qwindowkit_windows.cpp
+        shared/qwkwindowsextra_p.h
     )
 elseif(APPLE)
-    list(APPEND _links_private
-        "-framework Foundation"
-        "-framework Cocoa"
-        "-framework AppKit"
-    )
 else()
     list(APPEND _src
         qwindowkit_linux.h
     )
 endif()
 
-if(QWINDOWKIT_FORCE_QT_WINDOW_CONTEXT)
+if(QWINDOWKIT_ENABLE_QT_WINDOW_CONTEXT)
     list(APPEND _src
         contexts/qtwindowcontext_p.h
         contexts/qtwindowcontext.cpp
@@ -53,6 +49,11 @@
             contexts/cocoawindowcontext_p.h
             contexts/cocoawindowcontext.mm
         )
+        list(APPEND _links_private
+            "-framework Foundation"
+            "-framework Cocoa"
+            "-framework AppKit"
+        )
     else()
         list(APPEND _src
             contexts/qtwindowcontext_p.h
@@ -61,14 +62,29 @@
     endif()
 endif()
 
+if(QWINDOWKIT_ENABLE_STYLE_AGENT)
+    list(APPEND _src
+        style/styleagent.h
+        style/styleagent_p.h
+        style/styleagent.cpp
+    )
+
+    if(WIN32)
+        list(APPEND _src style/styleagent_win.cpp)
+    elseif(APPLE)
+        list(APPEND _src style/styleagent_mac.mm)
+    else()
+        list(APPEND _src style/styleagent_linux.cpp)
+    endif()
+endif()
+
 qwk_add_library(${PROJECT_NAME} AUTOGEN
     SOURCES ${_src}
-    DEFINES_PRIVATE ${_defines_private}
     LINKS
     LINKS_PRIVATE ${_links_private}
     QT_LINKS Core Gui
     QT_INCLUDE_PRIVATE Core Gui
-    INCLUDE_PRIVATE kernel contexts platforms
+    INCLUDE_PRIVATE kernel contexts shared
     PREFIX QWK_CORE
 )
 

--
Gitblit v1.9.1