uisupport: Provide helpers for dealing with widget changes
[quassel.git] / src / uisupport / CMakeLists.txt
index 0505d92..3b19471 100644 (file)
@@ -1,6 +1,7 @@
-# Builds the uisupport module
+quassel_add_module(UiSupport EXPORT)
 
-set(SOURCES
+target_sources(${TARGET} PRIVATE
+    aboutdata.cpp
     abstractbuffercontainer.cpp
     abstractitemview.cpp
     action.cpp
@@ -18,7 +19,6 @@ set(SOURCES
     fontselector.cpp
     graphicalui.cpp
     icon.cpp
-    iconloader.cpp
     multilineedit.cpp
     networkmodelcontroller.cpp
     nickview.cpp
@@ -29,30 +29,47 @@ set(SOURCES
     styledlabel.cpp
     tabcompleter.cpp
     toolbaractionprovider.cpp
+    treeviewtouch.cpp
     uisettings.cpp
     uistyle.cpp
+    widgethelpers.h
 
     # needed for automoc
     abstractnotificationbackend.h
 )
 
-if(HAVE_KDE)
-    set(SOURCES ${SOURCES} kcmdlinewrapper.cpp)
-endif(HAVE_KDE)
-
-include_directories(${CMAKE_SOURCE_DIR}/src/common
-                    ${CMAKE_SOURCE_DIR}/src/client
+target_link_libraries(${TARGET}
+    PUBLIC
+        Qt5::Core
+        Qt5::Gui
+        Qt5::Network
+        Qt5::Widgets
+        Quassel::Client
+        Quassel::Common
 )
 
-if(HAVE_QCA2)
-  include_directories(${QCA2_INCLUDE_DIR})
-endif(HAVE_QCA2)
+if (EMBED_DATA)
+    set_property(SOURCE graphicalui.cpp APPEND PROPERTY COMPILE_DEFINITIONS EMBED_DATA)
+endif()
 
-if (WITH_QT5)
-    list(APPEND qt_modules Widgets)
+if (WITH_KF5)
+    target_link_libraries(${TARGET}
+        PUBLIC
+            KF5::CoreAddons
+            KF5::TextWidgets
+            KF5::XmlGui
+    )
 endif()
 
-add_library(mod_uisupport STATIC ${SOURCES})
-qt_use_modules(mod_uisupport Core Gui Network ${qt_modules})
+if (KF5Sonnet_FOUND)
+    target_link_libraries(${TARGET} PRIVATE KF5::SonnetUi)
+    target_compile_definitions(${TARGET} PRIVATE -DHAVE_SONNET)
+endif()
 
-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
+)