670cda300d7ecef990fa9a61602e5bfed0cb09bf
[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 set(SOURCES
9     aboutdlg.cpp
10     bufferwidget.cpp
11     channellistdlg.cpp
12     chatitem.cpp
13     chatline.cpp
14     chatlinemodel.cpp
15     chatlinemodelitem.cpp
16     chatmonitorfilter.cpp
17     chatscene.cpp
18     chatview.cpp
19     columnhandleitem.cpp
20     coreconfigwizard.cpp
21     coreconnectdlg.cpp
22     coreinfodlg.cpp
23     debugconsole.cpp
24     inputwidget.cpp
25     jumpkeyhandler.cpp
26     mainwin.cpp
27     msgprocessorstatuswidget.cpp
28     nicklistwidget.cpp
29     qtui.cpp
30     qtuimessageprocessor.cpp
31     qtuisettings.cpp
32     qtuistyle.cpp
33     settingsdlg.cpp
34     settingspagedlg.cpp
35     titlesetter.cpp
36     topiclabel.cpp
37     topicwidget.cpp
38     verticaldock.cpp)
39
40 set(MOC_HDRS
41     aboutdlg.h
42     bufferwidget.h
43     channellistdlg.h
44     chatlinemodel.h
45     chatmonitorfilter.h
46     chatscene.h
47     chatview.h
48     columnhandleitem.h
49     coreconfigwizard.h
50     coreconnectdlg.h
51     coreinfodlg.h
52     debugconsole.h
53     inputwidget.h
54     jumpkeyhandler.h
55     mainwin.h
56     msgprocessorstatuswidget.h
57     nicklistwidget.h
58     qtui.h
59     qtuimessageprocessor.h
60     settingsdlg.h
61     settingspagedlg.h
62     titlesetter.h
63     topiclabel.h
64     topicwidget.h
65     verticaldock.h)
66
67 set(HEADERS
68     chatitem.h
69     chatline.h
70     chatlinemodelitem.h
71     qtuisettings.h
72     qtuistyle.h)
73
74 set(FORMS
75     aboutdlg.ui
76     bufferviewwidget.ui
77     bufferwidget.ui
78     channellistdlg.ui
79     coreaccounteditdlg.ui
80     coreconfigwizardintropage.ui
81     coreconfigwizardadminuserpage.ui
82     coreconfigwizardstorageselectionpage.ui
83     coreconfigwizardsyncpage.ui
84     coreconnectdlg.ui
85     coreinfodlg.ui
86     debugconsole.ui
87     inputwidget.ui
88     mainwin.ui
89     msgprocessorstatuswidget.ui
90     nicklistwidget.ui
91     settingsdlg.ui
92     settingspagedlg.ui
93     topicwidget.ui)
94
95 foreach(FORM ${FORMS})
96   set(FORMPATH ${FORMPATH} ui/${FORM})
97 endforeach(FORM ${FORMS})
98
99 # handle settingspages
100 include(settingspages/settingspages.inc)
101 foreach(SP ${SETTINGSPAGES})
102   set(SPSRC ${SPSRC} settingspages/${SP}settingspage.cpp)
103   set(SPHDR ${SPHDR} settingspages/${SP}settingspage.h)
104   set(SPFRM ${SPFRM} settingspages/${SP}settingspage.ui)
105 endforeach(SP ${SETTINGSPAGES})
106 foreach(SRC ${SP_SOURCES})
107   set(SPSRC ${SPSRC} settingspages/${SRC})
108 endforeach(SRC ${SP_SOURCES})
109 foreach(HDR ${SP_HEADERS})
110   set(SPHDR ${SPHDR} settingspages/${HDR})
111 endforeach(HDR ${SP_HEADERS})
112 foreach(FRM ${SP_FORMS})
113   set(SPFRM ${SPFRM} settingspages/${FRM})
114 endforeach(FRM ${SP_FORMS})
115
116
117 qt4_wrap_cpp(MOC ${MOC_HDRS} ${SPHDR})
118 qt4_wrap_ui(UI ${FORMPATH} ${SPFRM})
119
120 IF(HAVE_DBUS)
121   qt4_add_dbus_interface(DBUS ../../interfaces/org.freedesktop.Notifications.xml desktopnotifications)
122 ENDIF(HAVE_DBUS)
123
124 include_directories(${CMAKE_SOURCE_DIR}/src/common
125                     ${CMAKE_SOURCE_DIR}/src/client
126                     ${CMAKE_SOURCE_DIR}/src/qtui
127                     ${CMAKE_SOURCE_DIR}/src/uisupport
128                     ${CMAKE_CURRENT_BINARY_DIR})
129
130 add_library(mod_qtui STATIC ${SOURCES} ${SPSRC} ${MOC} ${DBUS} ${UI} ${HEADERS})
131 add_dependencies(mod_qtui mod_common mod_client mod_uisupport)