-# Builds the uisupport module
+quassel_add_module(UiSupport EXPORT)
-set(QT_DONT_USE_QTGUI 0)
-set(QT_USE_QTNETWORK 1)
-include(${QT_USE_FILE})
-
-set(SOURCES
+target_sources(${TARGET} PRIVATE
+ aboutdata.cpp
abstractbuffercontainer.cpp
abstractitemview.cpp
action.cpp
bufferviewfilter.cpp
bufferviewoverlayfilter.cpp
clearablelineedit.cpp
+ clickable.cpp
clickablelabel.cpp
colorbutton.cpp
contextmenuactionprovider.cpp
flatproxymodel.cpp
+ fontselector.cpp
graphicalui.cpp
icon.cpp
- iconloader.cpp
- inputline.cpp
+ multilineedit.cpp
networkmodelcontroller.cpp
nickview.cpp
nickviewfilter.cpp
qssparser.cpp
+ resizingstackedwidget.cpp
settingspage.cpp
+ styledlabel.cpp
tabcompleter.cpp
toolbaractionprovider.cpp
+ treeviewtouch.cpp
uisettings.cpp
uistyle.cpp
- )
-set(MOC_HDRS
- abstractbuffercontainer.h
- abstractitemview.h
+ # needed for automoc
abstractnotificationbackend.h
- action.h
- actioncollection.h
- bufferhotlistfilter.h
- bufferview.h
- bufferviewfilter.h
- bufferviewoverlayfilter.h
- clearablelineedit.h
- clickablelabel.h
- colorbutton.h
- contextmenuactionprovider.h
- flatproxymodel.h
- graphicalui.h
- iconloader.h
- inputline.h
- networkmodelcontroller.h
- nickview.h
- nickviewfilter.h
- settingspage.h
- tabcompleter.h
- toolbaractionprovider.h
- )
+)
-set(HEADERS
- icon.h
- qssparser.h
- uisettings.h
- uistyle.h
- )
+target_link_libraries(${TARGET}
+ PUBLIC
+ Qt5::Core
+ Qt5::Gui
+ Qt5::Network
+ Qt5::Widgets
+ Quassel::Client
+ Quassel::Common
+)
-if(HAVE_KDE)
- set(SOURCES ${SOURCES} kcmdlinewrapper.cpp)
- set(HEADERS ${HEADERS} kcmdlinewrapper.h)
-endif(HAVE_KDE)
+if (EMBED_DATA)
+ set_property(SOURCE graphicalui.cpp APPEND PROPERTY COMPILE_DEFINITIONS EMBED_DATA)
+endif()
-qt4_wrap_cpp(MOC ${MOC_HDRS})
+if (WITH_KF5)
+ target_link_libraries(${TARGET}
+ PUBLIC
+ KF5::CoreAddons
+ KF5::TextWidgets
+ KF5::XmlGui
+ )
+endif()
-include_directories(${CMAKE_SOURCE_DIR}/src/common
- ${CMAKE_SOURCE_DIR}/src/client)
+if (KF5Sonnet_FOUND)
+ target_link_libraries(${TARGET} PRIVATE KF5::SonnetUi)
+ target_compile_definitions(${TARGET} PRIVATE -DHAVE_SONNET)
+endif()
-add_library(mod_uisupport STATIC ${SOURCES} ${MOC} ${HEADERS})
-add_dependencies(mod_uisupport mod_common mod_client)
+target_link_if_exists(${TARGET}
+ PUBLIC
+ Quassel::Resource::HicolorIcons
+ Quassel::Resource::Icons
+ Quassel::Resource::IconThemes
+ Quassel::Resource::Pics
+)