0a873772ffbfc2b417e901f4f6152d3e5d8d53d4
[quassel.git] / src / qtui / CMakeLists.txt
1 # Builds the qtui module
2
3 set(QT_DONT_USE_QTGUI 0)
4 set(QT_USE_QTNETWORK 1)
5 set(QT_USE_QTDBUS 1)
6 include(${QT_USE_FILE})
7
8 if(INDICATEQT_FOUND)
9   include_directories(${INDICATEQT_INCLUDE_DIRS})
10 endif(INDICATEQT_FOUND)
11
12 set(SOURCES
13     aboutdlg.cpp
14     awaylogfilter.cpp
15     awaylogview.cpp
16     bufferwidget.cpp
17     channellistdlg.cpp
18     chatitem.cpp
19     chatline.cpp
20     chatlinemodel.cpp
21     chatlinemodelitem.cpp
22     chatmonitorfilter.cpp
23     chatmonitorview.cpp
24     chatscene.cpp
25     chatview.cpp
26     chatviewsearchbar.cpp
27     chatviewsearchcontroller.cpp
28     chatviewsettings.cpp
29     columnhandleitem.cpp
30     coreconfigwizard.cpp
31     coreconnectdlg.cpp
32     coreconnectionstatuswidget.cpp
33     coreinfodlg.cpp
34     debugbufferviewoverlay.cpp
35     debugconsole.cpp
36     debuglogwidget.cpp
37     debugmessagemodelfilter.cpp
38     inputwidget.cpp
39     ircconnectionwizard.cpp
40     jumpkeyhandler.cpp
41     mainpage.cpp
42     mainwin.cpp
43     msgprocessorstatuswidget.cpp
44     nicklistwidget.cpp
45     qtui.cpp
46     qtuiapplication.cpp
47     qtuimessageprocessor.cpp
48     qtuisettings.cpp
49     qtuistyle.cpp
50     settingsdlg.cpp
51     settingspagedlg.cpp
52     simplenetworkeditor.cpp
53     systemtray.cpp
54     systraynotificationbackend.cpp
55     taskbarnotificationbackend.cpp
56     titlesetter.cpp
57     topicwidget.cpp
58     verticaldock.cpp
59     webpreviewitem.cpp)
60
61 set(MOC_HDRS
62     aboutdlg.h
63     awaylogfilter.h
64     awaylogview.h
65     bufferwidget.h
66     channellistdlg.h
67     chatitem.h
68     chatlinemodel.h
69     chatmonitorfilter.h
70     chatmonitorview.h
71     chatscene.h
72     chatview.h
73     chatviewsearchbar.h
74     chatviewsearchcontroller.h
75     columnhandleitem.h
76     coreconfigwizard.h
77     coreconnectdlg.h
78     coreconnectionstatuswidget.h
79     coreinfodlg.h
80     debugbufferviewoverlay.h
81     debugconsole.h
82     debuglogwidget.h
83     debugmessagemodelfilter.h
84     inputwidget.h
85     ircconnectionwizard.h
86     jumpkeyhandler.h
87     mainpage.h
88     mainwin.h
89     msgprocessorstatuswidget.h
90     nicklistwidget.h
91     qtui.h
92     qtuiapplication.h
93     qtuimessageprocessor.h
94     qtuistyle.h
95     settingsdlg.h
96     settingspagedlg.h
97     simplenetworkeditor.h
98     systemtray.h
99     systraynotificationbackend.h
100     taskbarnotificationbackend.h
101     titlesetter.h
102     topicwidget.h
103     verticaldock.h)
104
105 set(HEADERS
106     chatline.h
107     chatlinemodelitem.h
108     chatviewsettings.h
109     qtuisettings.h
110     webpreviewitem.h)
111
112 set(FORMS
113     aboutdlg.ui
114     bufferviewwidget.ui
115     bufferwidget.ui
116     channellistdlg.ui
117     chatviewsearchbar.ui
118     coreconfigwizardintropage.ui
119     coreconfigwizardadminuserpage.ui
120     coreconfigwizardstorageselectionpage.ui
121     coreconfigwizardsyncpage.ui
122     coreconnectauthdlg.ui
123     coreconnectionstatuswidget.ui
124     coreinfodlg.ui
125     debugbufferviewoverlay.ui
126     debugconsole.ui
127     debuglogwidget.ui
128     inputwidget.ui
129     msgprocessorstatuswidget.ui
130     nicklistwidget.ui
131     settingsdlg.ui
132     settingspagedlg.ui
133     simplenetworkeditor.ui
134     topicwidget.ui)
135
136 if(HAVE_KDE)
137   set(SOURCES ${SOURCES} knotificationbackend.cpp)
138   set(MOC_HDRS ${MOC_HDRS} knotificationbackend.h)
139 else(HAVE_KDE)
140   if(HAVE_DBUS)
141     set(SOURCES ${SOURCES} desktopnotificationbackend.cpp)
142     set(MOC_HDRS ${MOC_HDRS} desktopnotificationbackend.h)
143     set(FORMS ${FORMS} desktopnotificationconfigwidget.ui)
144     qt4_add_dbus_interface(DBUS ../../interfaces/org.freedesktop.Notifications.xml desktopnotificationinterface)
145   endif(HAVE_DBUS)
146
147   if(HAVE_PHONON)
148     set(SOURCES ${SOURCES} phononnotificationbackend.cpp)
149     set(MOC_HDRS ${MOC_HDRS} phononnotificationbackend.h)
150     set(FORMS ${FORMS} phononnotificationconfigwidget.ui)
151     include_directories(${PHONON_INCLUDES})
152   endif(HAVE_PHONON)
153 endif(HAVE_KDE)
154
155 if(HAVE_SSL)
156   set(SOURCES ${SOURCES} sslinfodlg.cpp)
157   set(MOC_HDRS ${MOC_HDRS} sslinfodlg.h)
158   set(FORMS ${FORMS} sslinfodlg.ui)
159 endif(HAVE_SSL)
160
161 if(INDICATEQT_FOUND)
162   set(SOURCES ${SOURCES} indicatornotificationbackend.cpp)
163   set(MOC_HDRS ${MOC_HDRS} indicatornotificationbackend.h)
164   set(FORMS ${FORMS} indicatornotificationconfigwidget.ui)
165 endif(INDICATEQT_FOUND)
166
167 foreach(FORM ${FORMS})
168   set(FORMPATH ${FORMPATH} ui/${FORM})
169 endforeach(FORM ${FORMS})
170
171 # handle settingspages
172 include(settingspages/settingspages.inc)
173 foreach(SP ${SETTINGSPAGES})
174   set(SPSRC ${SPSRC} settingspages/${SP}settingspage.cpp)
175   set(SPHDR ${SPHDR} settingspages/${SP}settingspage.h)
176   set(SPFRM ${SPFRM} settingspages/${SP}settingspage.ui)
177 endforeach(SP ${SETTINGSPAGES})
178 foreach(SRC ${SP_SOURCES})
179   set(SPSRC ${SPSRC} settingspages/${SRC})
180 endforeach(SRC ${SP_SOURCES})
181 foreach(HDR ${SP_HEADERS})
182   set(SPHDR ${SPHDR} settingspages/${HDR})
183 endforeach(HDR ${SP_HEADERS})
184 foreach(FRM ${SP_FORMS})
185   set(SPFRM ${SPFRM} settingspages/${FRM})
186 endforeach(FRM ${SP_FORMS})
187
188 qt4_wrap_cpp(MOC ${MOC_HDRS} ${SPHDR})
189 qt4_wrap_ui(UI ${FORMPATH} ${SPFRM})
190
191 include_directories(${CMAKE_SOURCE_DIR}/src/common
192                     ${CMAKE_SOURCE_DIR}/src/client
193                     ${CMAKE_SOURCE_DIR}/src/qtui
194                     ${CMAKE_SOURCE_DIR}/src/qtui/settingspages
195                     ${CMAKE_SOURCE_DIR}/src/uisupport
196                     ${CMAKE_CURRENT_BINARY_DIR})
197
198 add_library(mod_qtui STATIC ${SOURCES} ${SPSRC} ${MOC} ${DBUS} ${UI} ${HEADERS})
199 add_dependencies(mod_qtui mod_common mod_client mod_uisupport)