Add a very rudimentary UI for accepting a transfer
[quassel.git] / src / qtui / CMakeLists.txt
1 # Builds the qtui module
2
3 set(_modules )
4
5 if(WITH_QT5)
6   list(APPEND _modules Widgets)
7 endif(WITH_QT5)
8
9 if(HAVE_DBUS)
10   list(APPEND _modules DBus)
11 endif(HAVE_DBUS)
12
13 if(HAVE_WEBKIT)
14   list(APPEND _modules Webkit XmlPatterns)
15 endif(HAVE_WEBKIT)
16
17 setup_qt_variables(Gui Network ${_modules})
18
19 set(SOURCES
20     aboutdlg.cpp
21     awaylogfilter.cpp
22     awaylogview.cpp
23     bufferwidget.cpp
24     channellistdlg.cpp
25     chatitem.cpp
26     chatline.cpp
27     chatlinemodel.cpp
28     chatlinemodelitem.cpp
29     chatmonitorfilter.cpp
30     chatmonitorview.cpp
31     chatscene.cpp
32     chatview.cpp
33     chatviewsearchbar.cpp
34     chatviewsearchcontroller.cpp
35     chatviewsettings.cpp
36     columnhandleitem.cpp
37     coreconfigwizard.cpp
38     coreconnectdlg.cpp
39     coreconnectionstatuswidget.cpp
40     coreinfodlg.cpp
41     debugbufferviewoverlay.cpp
42     debugconsole.cpp
43     debuglogwidget.cpp
44     debugmessagemodelfilter.cpp
45     inputwidget.cpp
46     ircconnectionwizard.cpp
47     legacysystemtray.cpp
48     mainpage.cpp
49     mainwin.cpp
50     markerlineitem.cpp
51     msgprocessorstatuswidget.cpp
52     nicklistwidget.cpp
53     qtui.cpp
54     qtuiapplication.cpp
55     qtuimessageprocessor.cpp
56     qtuisettings.cpp
57     qtuistyle.cpp
58     receivefiledlg.cpp
59     settingsdlg.cpp
60     settingspagedlg.cpp
61     simplenetworkeditor.cpp
62     systemtray.cpp
63     systraynotificationbackend.cpp
64     taskbarnotificationbackend.cpp
65     titlesetter.cpp
66     topicwidget.cpp
67     verticaldock.cpp
68     webpreviewitem.cpp)
69
70 set(MOC_HDRS
71     aboutdlg.h
72     awaylogfilter.h
73     awaylogview.h
74     bufferwidget.h
75     channellistdlg.h
76     chatitem.h
77     chatlinemodel.h
78     chatmonitorfilter.h
79     chatmonitorview.h
80     chatscene.h
81     chatview.h
82     chatviewsearchbar.h
83     chatviewsearchcontroller.h
84     columnhandleitem.h
85     coreconfigwizard.h
86     coreconnectdlg.h
87     coreconnectionstatuswidget.h
88     coreinfodlg.h
89     debugbufferviewoverlay.h
90     debugconsole.h
91     debuglogwidget.h
92     debugmessagemodelfilter.h
93     inputwidget.h
94     ircconnectionwizard.h
95     legacysystemtray.h
96     mainpage.h
97     mainwin.h
98     markerlineitem.h
99     msgprocessorstatuswidget.h
100     nicklistwidget.h
101     qtui.h
102     qtuiapplication.h
103     qtuimessageprocessor.h
104     qtuistyle.h
105     receivefiledlg.h
106     settingsdlg.h
107     settingspagedlg.h
108     simplenetworkeditor.h
109     systemtray.h
110     systraynotificationbackend.h
111     taskbarnotificationbackend.h
112     titlesetter.h
113     topicwidget.h
114     verticaldock.h)
115
116 set(HEADERS
117     chatline.h
118     chatlinemodelitem.h
119     chatviewsettings.h
120     qtuisettings.h
121     webpreviewitem.h)
122
123 set(FORMS
124     aboutdlg.ui
125     bufferviewwidget.ui
126     bufferwidget.ui
127     channellistdlg.ui
128     chatviewsearchbar.ui
129     coreconfigwizardintropage.ui
130     coreconfigwizardadminuserpage.ui
131     coreconfigwizardstorageselectionpage.ui
132     coreconfigwizardsyncpage.ui
133     coreconnectauthdlg.ui
134     coreconnectionstatuswidget.ui
135     coreinfodlg.ui
136     debugbufferviewoverlay.ui
137     debugconsole.ui
138     debuglogwidget.ui
139     inputwidget.ui
140     msgprocessorstatuswidget.ui
141     nicklistwidget.ui
142     settingsdlg.ui
143     settingspagedlg.ui
144     simplenetworkeditor.ui
145     receivefiledlg.ui
146     topicwidget.ui)
147
148 if(HAVE_KDE)
149   set(SOURCES ${SOURCES} knotificationbackend.cpp)
150   set(MOC_HDRS ${MOC_HDRS} knotificationbackend.h)
151 else(HAVE_KDE)
152   if(HAVE_SNORENOTIFY)
153     set(SOURCES ${SOURCES} snorenotificationbackend.cpp)
154     set(MOC_HDRS ${MOC_HDRS} snorenotificationbackend.h)
155     set(FORMS ${FORMS} snorentificationconfigwidget.ui)
156   endif(HAVE_SNORENOTIFY)
157   if(HAVE_PHONON)
158     set(SOURCES ${SOURCES} phononnotificationbackend.cpp)
159     set(MOC_HDRS ${MOC_HDRS} phononnotificationbackend.h)
160     set(FORMS ${FORMS} phononnotificationconfigwidget.ui)
161     include_directories(${PHONON_INCLUDES})
162   endif(HAVE_PHONON)
163 endif(HAVE_KDE)
164
165 if(HAVE_DBUS)
166   set(SOURCES ${SOURCES} statusnotifieritem.cpp statusnotifieritemdbus.cpp dockmanagernotificationbackend.cpp)
167   set(MOC_HDRS ${MOC_HDRS} statusnotifieritem.h statusnotifieritemdbus.h dockmanagernotificationbackend.h)
168   set(FORMS ${FORMS})
169   if(WITH_QT5)
170     qt5_add_dbus_interface(DBUS ../../interfaces/org.kde.StatusNotifierWatcher.xml statusnotifierwatcher)
171     qt5_add_dbus_interface(DBUS ../../interfaces/org.freedesktop.Notifications.xml notificationsclient)
172     qt5_add_dbus_adaptor(DBUS ../../interfaces/org.kde.StatusNotifierItem.xml statusnotifieritemdbus.h StatusNotifierItemDBus)
173   else(WITH_QT5)
174     qt4_add_dbus_interface(DBUS ../../interfaces/org.kde.StatusNotifierWatcher.xml statusnotifierwatcher)
175     qt4_add_dbus_interface(DBUS ../../interfaces/org.freedesktop.Notifications.xml notificationsclient)
176     qt4_add_dbus_adaptor(DBUS ../../interfaces/org.kde.StatusNotifierItem.xml statusnotifieritemdbus.h StatusNotifierItemDBus)
177   endif(WITH_QT5)
178 endif(HAVE_DBUS)
179
180 if(HAVE_SSL)
181   set(SOURCES ${SOURCES} sslinfodlg.cpp)
182   set(MOC_HDRS ${MOC_HDRS} sslinfodlg.h)
183   set(FORMS ${FORMS} sslinfodlg.ui)
184 endif(HAVE_SSL)
185
186 if(INDICATEQT_FOUND)
187   set(SOURCES ${SOURCES} indicatornotificationbackend.cpp)
188   set(MOC_HDRS ${MOC_HDRS} indicatornotificationbackend.h)
189   set(FORMS ${FORMS} indicatornotificationconfigwidget.ui)
190   include_directories(${INDICATEQT_INCLUDE_DIRS})
191 endif(INDICATEQT_FOUND)
192
193 if(HAVE_NOTIFICATION_CENTER)
194   set(SOURCES ${SOURCES} osxnotificationbackend.mm)
195   set(MOC_HDRS ${MOC_HDRS} osxnotificationbackend.h)
196 endif()
197
198 foreach(FORM ${FORMS})
199   set(FORMPATH ${FORMPATH} ui/${FORM})
200 endforeach(FORM ${FORMS})
201
202 # handle settingspages
203 include(settingspages/settingspages.cmake)
204 foreach(SP ${SETTINGSPAGES})
205   set(SPSRC ${SPSRC} settingspages/${SP}settingspage.cpp)
206   set(SPHDR ${SPHDR} settingspages/${SP}settingspage.h)
207   set(SPFRM ${SPFRM} settingspages/${SP}settingspage.ui)
208 endforeach(SP ${SETTINGSPAGES})
209 foreach(SRC ${SP_SOURCES})
210   set(SPSRC ${SPSRC} settingspages/${SRC})
211 endforeach(SRC ${SP_SOURCES})
212 foreach(HDR ${SP_HEADERS})
213   set(SPHDR ${SPHDR} settingspages/${HDR})
214 endforeach(HDR ${SP_HEADERS})
215 foreach(FRM ${SP_FORMS})
216   set(SPFRM ${SPFRM} settingspages/${FRM})
217 endforeach(FRM ${SP_FORMS})
218
219 include_directories(${CMAKE_SOURCE_DIR}/src/common
220                     ${CMAKE_SOURCE_DIR}/src/client
221                     ${CMAKE_SOURCE_DIR}/src/qtui
222                     ${CMAKE_SOURCE_DIR}/src/qtui/settingspages
223                     ${CMAKE_SOURCE_DIR}/src/uisupport
224                     ${CMAKE_CURRENT_BINARY_DIR}
225                     ${QUASSEL_QT_INCLUDES})
226
227 if(WITH_QT5)
228   qt5_wrap_ui(UI ${FORMPATH} ${SPFRM})
229 else(WITH_QT5)
230   qt4_wrap_cpp(MOC ${MOC_HDRS} ${SPHDR})
231   qt4_wrap_ui(UI ${FORMPATH} ${SPFRM})
232 endif(WITH_QT5)
233
234 add_library(mod_qtui STATIC ${SOURCES} ${SPSRC} ${MOC} ${DBUS} ${UI} ${HEADERS})
235 add_dependencies(mod_qtui mod_common mod_client mod_uisupport)
236 set_target_properties(mod_qtui PROPERTIES COMPILE_FLAGS "${QUASSEL_QT_COMPILEFLAGS}")