1 find_package(Qt6 ${minQt6Version} REQUIRED COMPONENTS Widgets Svg)
3 # CMAKE_AUTO_UI causes unnecessary rebuilds
7 addtorrentparamswidget.ui
8 autoexpandabledialog.ui
9 banlistoptionsdialog.ui
11 deletionconfirmationdialog.ui
12 downloadfromurldialog.ui
14 ipsubnetwhitelistoptionsdialog.ui
17 previewselectdialog.ui
18 properties/peersadditiondialog.ui
19 properties/propertieswidget.ui
20 rss/automatedrssdownloader.ui
22 search/pluginselectdialog.ui
23 search/pluginsourcedialog.ui
24 search/searchjobwidget.ui
25 search/searchwidget.ui
26 shutdownconfirmdialog.ui
29 torrentcategorydialog.ui
30 torrentcreatordialog.ui
31 torrentoptionsdialog.ui
32 torrentsharelimitswidget.ui
34 trackerentriesdialog.ui
35 trackersadditiondialog.ui
37 watchedfolderoptionsdialog.ui
40 add_library(qbt_gui STATIC
44 addtorrentparamswidget.h
46 autoexpandabledialog.h
47 banlistoptionsdialog.h
51 deletionconfirmationdialog.h
53 downloadfromurldialog.h
56 filterpatternformatmenu.h
60 guiaddtorrentmanager.h
61 guiapplicationcomponent.h
63 interfaces/iguiapplication.h
64 ipsubnetwhitelistoptionsdialog.h
71 powermanagement/powermanagement.h
75 properties/downloadedpiecesbar.h
76 properties/peerlistsortmodel.h
77 properties/peerlistwidget.h
78 properties/peersadditiondialog.h
79 properties/pieceavailabilitybar.h
80 properties/piecesbar.h
81 properties/propertieswidget.h
82 properties/proptabbar.h
83 properties/speedplotview.h
84 properties/speedwidget.h
86 rss/articlelistwidget.h
87 rss/automatedrssdownloader.h
91 search/pluginselectdialog.h
92 search/pluginsourcedialog.h
93 search/searchjobwidget.h
94 search/searchsortmodel.h
96 shutdownconfirmdialog.h
100 torrentcategorydialog.h
101 torrentcontentfiltermodel.h
102 torrentcontentitemdelegate.h
103 torrentcontentmodel.h
104 torrentcontentmodelfile.h
105 torrentcontentmodelfolder.h
106 torrentcontentmodelitem.h
107 torrentcontentwidget.h
108 torrentcreatordialog.h
109 torrentoptionsdialog.h
110 torrentsharelimitswidget.h
112 trackerentriesdialog.h
113 trackerlist/trackerlistitemdelegate.h
114 trackerlist/trackerlistmodel.h
115 trackerlist/trackerlistsortmodel.h
116 trackerlist/trackerlistwidget.h
117 trackersadditiondialog.h
118 transferlistdelegate.h
119 transferlistfilters/basefilterwidget.h
120 transferlistfilters/categoryfiltermodel.h
121 transferlistfilters/categoryfilterproxymodel.h
122 transferlistfilters/categoryfilterwidget.h
123 transferlistfilters/statusfilterwidget.h
124 transferlistfilters/tagfiltermodel.h
125 transferlistfilters/tagfilterproxymodel.h
126 transferlistfilters/tagfilterwidget.h
127 transferlistfilters/trackersfilterwidget.h
128 transferlistfilterswidget.h
130 transferlistsortmodel.h
139 watchedfolderoptionsdialog.h
140 watchedfoldersmodel.h
145 addnewtorrentdialog.cpp
146 addtorrentparamswidget.cpp
148 autoexpandabledialog.cpp
149 banlistoptionsdialog.cpp
152 deletionconfirmationdialog.cpp
153 desktopintegration.cpp
154 downloadfromurldialog.cpp
155 executionlogwidget.cpp
156 filterpatternformatmenu.cpp
160 guiaddtorrentmanager.cpp
162 ipsubnetwhitelistoptionsdialog.cpp
164 log/logfiltermodel.cpp
169 powermanagement/powermanagement.cpp
170 previewlistdelegate.cpp
171 previewselectdialog.cpp
172 progressbarpainter.cpp
173 properties/downloadedpiecesbar.cpp
174 properties/peerlistsortmodel.cpp
175 properties/peerlistwidget.cpp
176 properties/peersadditiondialog.cpp
177 properties/pieceavailabilitybar.cpp
178 properties/piecesbar.cpp
179 properties/propertieswidget.cpp
180 properties/proptabbar.cpp
181 properties/speedplotview.cpp
182 properties/speedwidget.cpp
184 rss/articlelistwidget.cpp
185 rss/automatedrssdownloader.cpp
186 rss/feedlistwidget.cpp
189 search/pluginselectdialog.cpp
190 search/pluginsourcedialog.cpp
191 search/searchjobwidget.cpp
192 search/searchsortmodel.cpp
193 search/searchwidget.cpp
194 shutdownconfirmdialog.cpp
198 torrentcategorydialog.cpp
199 torrentcontentfiltermodel.cpp
200 torrentcontentitemdelegate.cpp
201 torrentcontentmodel.cpp
202 torrentcontentmodelfile.cpp
203 torrentcontentmodelfolder.cpp
204 torrentcontentmodelitem.cpp
205 torrentcontentwidget.cpp
206 torrentcreatordialog.cpp
207 torrentoptionsdialog.cpp
208 torrentsharelimitswidget.cpp
209 torrenttagsdialog.cpp
210 trackerentriesdialog.cpp
211 trackerlist/trackerlistitemdelegate.cpp
212 trackerlist/trackerlistmodel.cpp
213 trackerlist/trackerlistsortmodel.cpp
214 trackerlist/trackerlistwidget.cpp
215 trackersadditiondialog.cpp
216 transferlistdelegate.cpp
217 transferlistfilters/basefilterwidget.cpp
218 transferlistfilters/categoryfiltermodel.cpp
219 transferlistfilters/categoryfilterproxymodel.cpp
220 transferlistfilters/categoryfilterwidget.cpp
221 transferlistfilters/statusfilterwidget.cpp
222 transferlistfilters/tagfiltermodel.cpp
223 transferlistfilters/tagfilterproxymodel.cpp
224 transferlistfilters/tagfilterwidget.cpp
225 transferlistfilters/trackersfilterwidget.cpp
226 transferlistfilterswidget.cpp
227 transferlistmodel.cpp
228 transferlistsortmodel.cpp
229 transferlistwidget.cpp
236 watchedfolderoptionsdialog.cpp
237 watchedfoldersmodel.cpp
239 # generated .ui headers
243 target_sources(qbt_gui INTERFACE about.qrc)
245 # UI headers will be generated in ${CMAKE_CURRENT_BINARY_DIR}
246 target_include_directories(qbt_gui PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
248 target_link_libraries(qbt_gui
256 target_sources(qbt_gui PRIVATE
257 notifications/dbusnotifier.h
258 notifications/dbusnotifier.cpp
259 notifications/dbusnotificationsinterface.h
260 notifications/dbusnotificationsinterface.cpp
261 powermanagement/powermanagement_x11.h
262 powermanagement/powermanagement_x11.cpp
267 qt_wrap_ui(STACKTRACE_UI_HEADERS stacktracedialog.ui)
269 target_sources(qbt_gui PRIVATE
272 ${STACKTRACE_UI_HEADERS}
276 if ((CMAKE_SYSTEM_NAME STREQUAL "Windows") OR (CMAKE_SYSTEM_NAME STREQUAL "Darwin"))
277 target_sources(qbt_gui PRIVATE
283 if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
284 target_sources(qbt_gui PRIVATE
285 macosdockbadge/badger.h
286 macosdockbadge/badger.mm
287 macosdockbadge/badgeview.h
288 macosdockbadge/badgeview.mm
292 target_link_libraries(qbt_gui PRIVATE objc)