# Builds the qtui module
-set(QT_USE_QTNETWORK 1)
-include(${QT_USE_FILE})
-
set(SOURCES
aboutdlg.cpp
+ awaylogfilter.cpp
+ awaylogview.cpp
bufferwidget.cpp
+ channellistdlg.cpp
+ chatitem.cpp
+ chatline.cpp
+ chatlinemodel.cpp
+ chatlinemodelitem.cpp
+ chatmonitorfilter.cpp
+ chatmonitorview.cpp
+ chatscene.cpp
+ chatview.cpp
+ chatviewsearchbar.cpp
+ chatviewsearchcontroller.cpp
+ chatviewsettings.cpp
+ columnhandleitem.cpp
coreconfigwizard.cpp
coreconnectdlg.cpp
- configwizard.cpp
+ coreconnectionstatuswidget.cpp
+ coreinfodlg.cpp
+ coresessionwidget.cpp
+ debugbufferviewoverlay.cpp
debugconsole.cpp
+ debuglogdlg.cpp
+ debugmessagemodelfilter.cpp
inputwidget.cpp
- jumpkeyhandler.cpp
+ ircconnectionwizard.cpp
+ legacysystemtray.cpp
+ mainpage.cpp
mainwin.cpp
+ markerlineitem.cpp
+ msgprocessorstatuswidget.cpp
nicklistwidget.cpp
+ passwordchangedlg.cpp
qtui.cpp
+ qtuiapplication.cpp
+ qtuimessageprocessor.cpp
qtuisettings.cpp
qtuistyle.cpp
+ receivefiledlg.cpp
settingsdlg.cpp
settingspagedlg.cpp
+ simplenetworkeditor.cpp
+ systemtray.cpp
+ systrayanimationnotificationbackend.cpp
+ systraynotificationbackend.cpp
+ taskbarnotificationbackend.cpp
titlesetter.cpp
- topicbutton.cpp
topicwidget.cpp
- verticaldock.cpp)
-
-set(HEADERS
- aboutdlg.h
- bufferwidget.h
- coreconfigwizard.h
- coreconnectdlg.h
- configwizard.h
- debugconsole.h
- inputwidget.h
- jumpkeyhandler.h
- mainwin.h
- nicklistwidget.h
- qtui.h
- settingsdlg.h
- settingspagedlg.h
- titlesetter.h
- topicbutton.h
- topicwidget.h
- verticaldock.h)
-
-if(SPUTDEV)
- set(SOURCES ${SOURCES} chatitem.cpp chatline.cpp chatlinemodelitem.cpp
- chatlinemodel.cpp chatscene.cpp chatview.cpp)
- set(HEADERS ${HEADERS} chatlinemodel.h chatscene.h chatview.h)
-else(SPUTDEV)
- set(SOURCES ${SOURCES} chatline-old.cpp chatwidget.cpp)
- set(HEADERS ${HEADERS} chatline-old.h chatwidget.h)
-endif(SPUTDEV)
+ verticaldock.cpp
+ webpreviewitem.cpp
+)
set(FORMS
aboutdlg.ui
bufferviewwidget.ui
bufferwidget.ui
- coreaccounteditdlg.ui
+ channellistdlg.ui
+ chatviewsearchbar.ui
coreconfigwizardintropage.ui
+ coreconfigwizardauthenticationselectionpage.ui
coreconfigwizardadminuserpage.ui
coreconfigwizardstorageselectionpage.ui
coreconfigwizardsyncpage.ui
- coreconnectdlg.ui
+ coreconnectauthdlg.ui
+ coreconnectionstatuswidget.ui
+ coreinfodlg.ui
+ coresessionwidget.ui
+ debugbufferviewoverlay.ui
debugconsole.ui
+ debuglogdlg.ui
inputwidget.ui
- mainwin.ui
+ msgprocessorstatuswidget.ui
nicklistwidget.ui
+ passwordchangedlg.ui
+ receivefiledlg.ui
settingsdlg.ui
settingspagedlg.ui
- topicwidget.ui)
+ simplenetworkeditor.ui
+ systrayanimationconfigwidget.ui
+ topicwidget.ui
+)
+
+set(LIBS )
+set(QT_MODULES )
+
+if (WITH_KF5)
+ list(APPEND SOURCES knotificationbackend.cpp)
+ list(APPEND LIBS KF5::ConfigWidgets KF5::Notifications KF5::NotifyConfig KF5::WidgetsAddons KF5::XmlGui)
+endif()
+
+if (LibsnoreQt5_FOUND)
+ add_definitions(-DHAVE_LIBSNORE)
+ list(APPEND SOURCES snorenotificationbackend.cpp)
+ list(APPEND FORMS snorentificationconfigwidget.ui)
+ list(APPEND LIBS Snore::Libsnore Snore::LibsnoreSettings)
+endif()
+
+if (Qt5Multimedia_FOUND)
+ add_definitions(-DHAVE_QTMULTIMEDIA)
+ list(APPEND QT_MODULES Multimedia)
+ set(SOURCES ${SOURCES} qtmultimedianotificationbackend.cpp)
+ set(FORMS ${FORMS} qtmultimedianotificationconfigwidget.ui)
+endif()
+
+if (Qt5DBus_FOUND)
+ add_definitions(-DHAVE_DBUS)
+ list(APPEND QT_MODULES DBus)
+ if (dbusmenu-qt5_FOUND)
+ add_definitions(-DHAVE_DBUSMENU)
+ include_directories(${dbusmenu-qt5_INCLUDE_DIRS})
+ list(APPEND LIBS dbusmenu-qt5)
+ endif()
+
+ list(APPEND SOURCES statusnotifieritem.cpp statusnotifieritemdbus.cpp dockmanagernotificationbackend.cpp)
+ qt5_add_dbus_interface(SOURCES ../../interfaces/org.kde.StatusNotifierWatcher.xml statusnotifierwatcher)
+ qt5_add_dbus_interface(SOURCES ../../interfaces/org.freedesktop.Notifications.xml notificationsclient)
+ qt5_add_dbus_adaptor (SOURCES ../../interfaces/org.kde.StatusNotifierItem.xml statusnotifieritemdbus.h StatusNotifierItemDBus)
+endif()
+
+if (HAVE_WEBKIT)
+ add_definitions(-DHAVE_WEBKIT)
+ list(APPEND QT_MODULES WebKit WebKitWidgets)
+endif()
+
+if (HAVE_WEBENGINE)
+ add_definitions(-DHAVE_WEBENGINE)
+ list(APPEND QT_MODULES WebEngine WebEngineWidgets)
+endif()
+
+if(HAVE_SSL)
+ set(SOURCES ${SOURCES} sslinfodlg.cpp)
+ set(FORMS ${FORMS} sslinfodlg.ui)
+endif()
+
+if (WITH_NOTIFICATION_CENTER)
+ add_definitions(-DHAVE_NOTIFICATION_CENTER)
+ list(APPEND SOURCES osxnotificationbackend.mm)
+ list(APPEND LIBS "/System/Library/Frameworks/Foundation.framework")
+endif()
+
+if (KF5Sonnet_FOUND)
+ add_definitions(-DHAVE_SONNET)
+ list(APPEND SOURCES settingspages/sonnetsettingspage.cpp)
+ list(APPEND LIBS KF5::SonnetUi)
+endif()
foreach(FORM ${FORMS})
set(FORMPATH ${FORMPATH} ui/${FORM})
endforeach(FORM ${FORMS})
# handle settingspages
-include(settingspages/settingspages.inc)
+include(settingspages/settingspages.cmake)
foreach(SP ${SETTINGSPAGES})
set(SPSRC ${SPSRC} settingspages/${SP}settingspage.cpp)
- set(SPHDR ${SPHDR} settingspages/${SP}settingspage.h)
set(SPFRM ${SPFRM} settingspages/${SP}settingspage.ui)
endforeach(SP ${SETTINGSPAGES})
foreach(SRC ${SP_SOURCES})
set(SPSRC ${SPSRC} settingspages/${SRC})
endforeach(SRC ${SP_SOURCES})
-foreach(HDR ${SP_HEADERS})
- set(SPHDR ${SPHDR} settingspages/${HDR})
-endforeach(HDR ${SP_HEADERS})
foreach(FRM ${SP_FORMS})
set(SPFRM ${SPFRM} settingspages/${FRM})
endforeach(FRM ${SP_FORMS})
-
-qt4_wrap_cpp(MOC ${HEADERS} ${SPHDR})
-qt4_wrap_ui(UI ${FORMPATH} ${SPFRM})
-
include_directories(${CMAKE_SOURCE_DIR}/src/common
${CMAKE_SOURCE_DIR}/src/client
${CMAKE_SOURCE_DIR}/src/qtui
+ ${CMAKE_SOURCE_DIR}/src/qtui/settingspages
${CMAKE_SOURCE_DIR}/src/uisupport
- ${CMAKE_CURRENT_BINARY_DIR})
+)
+
+qt5_wrap_ui(UI ${FORMPATH} ${SPFRM})
+
+add_library(mod_qtui STATIC ${SOURCES} ${SPSRC} ${UI})
+qt5_use_modules(mod_qtui Core Gui Network Widgets ${QT_MODULES})
-add_library(mod_qtui STATIC ${SOURCES} ${SPSRC} ${MOC} ${UI})
-add_dependencies(mod_qtui mod_common mod_client mod_uisupport)
+target_link_libraries(mod_qtui mod_client mod_common mod_uisupport ${LIBS})