28e1b68a4de3e21e41ff3b20445a57a4a9eefea3
[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     coreinfodlg.ui
124     debugbufferviewoverlay.ui
125     debugconsole.ui
126     debuglogwidget.ui
127     inputwidget.ui
128     msgprocessorstatuswidget.ui
129     nicklistwidget.ui
130     settingsdlg.ui
131     settingspagedlg.ui
132     simplenetworkeditor.ui
133     topicwidget.ui)
134
135 if(HAVE_KDE)
136   set(SOURCES ${SOURCES} knotificationbackend.cpp)
137   set(MOC_HDRS ${MOC_HDRS} knotificationbackend.h)
138 else(HAVE_KDE)
139   if(HAVE_DBUS)
140     set(SOURCES ${SOURCES} desktopnotificationbackend.cpp)
141     set(MOC_HDRS ${MOC_HDRS} desktopnotificationbackend.h)
142     set(FORMS ${FORMS} desktopnotificationconfigwidget.ui)
143     qt4_add_dbus_interface(DBUS ../../interfaces/org.freedesktop.Notifications.xml desktopnotificationinterface)
144   endif(HAVE_DBUS)
145
146   if(HAVE_PHONON)
147     set(SOURCES ${SOURCES} phononnotificationbackend.cpp)
148     set(MOC_HDRS ${MOC_HDRS} phononnotificationbackend.h)
149     set(FORMS ${FORMS} phononnotificationconfigwidget.ui)
150     include_directories(${PHONON_INCLUDES})
151   endif(HAVE_PHONON)
152 endif(HAVE_KDE)
153
154 if(INDICATEQT_FOUND)
155   set(SOURCES ${SOURCES} indicatornotificationbackend.cpp)
156   set(MOC_HDRS ${MOC_HDRS} indicatornotificationbackend.h)
157   set(FORMS ${FORMS} indicatornotificationconfigwidget.ui)
158 endif(INDICATEQT_FOUND)
159
160 foreach(FORM ${FORMS})
161   set(FORMPATH ${FORMPATH} ui/${FORM})
162 endforeach(FORM ${FORMS})
163
164 # handle settingspages
165 include(settingspages/settingspages.inc)
166 foreach(SP ${SETTINGSPAGES})
167   set(SPSRC ${SPSRC} settingspages/${SP}settingspage.cpp)
168   set(SPHDR ${SPHDR} settingspages/${SP}settingspage.h)
169   set(SPFRM ${SPFRM} settingspages/${SP}settingspage.ui)
170 endforeach(SP ${SETTINGSPAGES})
171 foreach(SRC ${SP_SOURCES})
172   set(SPSRC ${SPSRC} settingspages/${SRC})
173 endforeach(SRC ${SP_SOURCES})
174 foreach(HDR ${SP_HEADERS})
175   set(SPHDR ${SPHDR} settingspages/${HDR})
176 endforeach(HDR ${SP_HEADERS})
177 foreach(FRM ${SP_FORMS})
178   set(SPFRM ${SPFRM} settingspages/${FRM})
179 endforeach(FRM ${SP_FORMS})
180
181 qt4_wrap_cpp(MOC ${MOC_HDRS} ${SPHDR})
182 qt4_wrap_ui(UI ${FORMPATH} ${SPFRM})
183
184 include_directories(${CMAKE_SOURCE_DIR}/src/common
185                     ${CMAKE_SOURCE_DIR}/src/client
186                     ${CMAKE_SOURCE_DIR}/src/qtui
187                     ${CMAKE_SOURCE_DIR}/src/qtui/settingspages
188                     ${CMAKE_SOURCE_DIR}/src/uisupport
189                     ${CMAKE_CURRENT_BINARY_DIR})
190
191 add_library(mod_qtui STATIC ${SOURCES} ${SPSRC} ${MOC} ${DBUS} ${UI} ${HEADERS})
192 add_dependencies(mod_qtui mod_common mod_client mod_uisupport)