Zhao Yuhang
2023-12-13 2a1e707b1cf530b00a5c0f3766466f10bd617619
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
project(QWKCore
    VERSION ${QWINDOWKIT_VERSION}
    LANGUAGES CXX
)
 
set(_src
    qwkcoreglobal.h
    qwkglobal.h
    qwkglobal_p.h
    windowagentbase.h
    windowagentbase_p.h
    windowagentbase.cpp
    windowitemdelegate_p.h
    windowitemdelegate.cpp
    kernel/eventobserver_p.h
    kernel/eventobserver.cpp
    kernel/nativeeventfilter_p.h
    kernel/nativeeventfilter.cpp
    contexts/abstractwindowcontext_p.h
    contexts/abstractwindowcontext.cpp
)
 
set(_defines_private)
 
if(WIN32)
    list(APPEND _src
        qwindowkit_windows.h
        qwindowkit_windows.cpp
    )
elseif(NOT APPLE)
    list(APPEND _src
        qwindowkit_linux.h
    )
endif()
 
if(QWINDOWKIT_FORCE_QT_WINDOW_CONTEXT)
    list(APPEND _src
        contexts/qtwindowcontext_p.h
        contexts/qtwindowcontext.cpp
    )
    list(APPEND _defines_private QWINDOWKIT_FORCE_QT_WINDOW_CONTEXT)
else()
    if(WIN32)
        list(APPEND _src
            contexts/win32windowcontext_p.h
            contexts/win32windowcontext.cpp
        )
    elseif(APPLE)
        list(APPEND _src
            contexts/cocoawindowcontext_p.h
            contexts/cocoawindowcontext.cpp
        )
    else()
        list(APPEND _src
            contexts/qtwindowcontext_p.h
            contexts/qtwindowcontext.cpp
        )
    endif()
endif()
 
qwk_add_library(${PROJECT_NAME} AUTOGEN
    SOURCES ${_src}
    DEFINES_PRIVATE ${_defines_private}
    LINKS
    QT_LINKS Core Gui
    QT_INCLUDE_PRIVATE Core Gui
    INCLUDE_PRIVATE kernel contexts platforms
    PREFIX QWK_CORE
)
 
set_target_properties(${PROJECT_NAME} PROPERTIES
    CXX_STANDARD 17
    CXX_STANDARD_REQUIRED TRUE
)
 
set(QWINDOWKIT_ENABLED_TARGETS ${QWINDOWKIT_ENABLED_TARGETS} ${PROJECT_NAME} PARENT_SCOPE)
set(QWINDOWKIT_ENABLED_SUBDIRECTORIES ${QWINDOWKIT_ENABLED_SUBDIRECTORIES} core PARENT_SCOPE)