X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/884e95cc985ccf3a7d9de9ebe0d9b1bbd2d9e706..2ba5c2cfc2cea534cccd860f94a7198530b83594:/src/CMakeLists.txt diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c56140e5c..90a1f9e44 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,60 +1,74 @@ - -find_package(QImageBlitz REQUIRED) - macro_optional_find_package(Nepomuk) macro_log_feature(Nepomuk_FOUND "Nepomuk" "Nepomuk" "http://www.kde.org" FALSE "" "For adding desktop-wide tagging support to dolphin") macro_bool_to_01(Nepomuk_FOUND HAVE_NEPOMUK) configure_file(config-nepomuk.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-nepomuk.h ) -include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ${QIMAGEBLITZ_INCLUDES} ) +macro_bool_to_01(X11_Xrender_FOUND HAVE_XRENDER) +configure_file(config-X11.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-X11.h ) + +include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ) if (Nepomuk_FOUND) # Yes, Soprano includes is what we need here include_directories( ${SOPRANO_INCLUDE_DIR} ${NEPOMUK_INCLUDE_DIR} ) endif (Nepomuk_FOUND) +add_subdirectory(tests) + ########### next target ############### set(dolphinprivate_LIB_SRCS - dolphincontroller.cpp - dolphindetailsview.cpp - dolphiniconsview.cpp - dolphincolumnview.cpp - dolphincolumnviewcontainer.cpp - dolphindirlister.cpp - dolphinfileitemdelegate.cpp - dolphinmodel.cpp - dolphinnewmenuobserver.cpp - dolphinsortfilterproxymodel.cpp - dolphincategorydrawer.cpp - dolphinview.cpp - dolphinviewactionhandler.cpp - dolphinviewautoscroller.cpp - dolphinremoteencoding.cpp - dolphindetailsviewexpander.cpp - draganddrophelper.cpp - folderexpander.cpp - renamedialog.cpp - selectiontoggle.cpp - selectionmanager.cpp + kitemviews/kfileitemclipboard.cpp + kitemviews/kfileitemlistgroupheader.cpp + kitemviews/kfileitemlistview.cpp + kitemviews/kfileitemlistwidget.cpp + kitemviews/kfileitemmodel.cpp + kitemviews/kfileitemmodelfilter.cpp + kitemviews/kfileitemmodelrolesupdater.cpp + kitemviews/kitemlistcontainer.cpp + kitemviews/kitemlistcontroller.cpp + kitemviews/kitemlistgroupheader.cpp + kitemviews/kitemlistheader.cpp + kitemviews/kitemlistkeyboardsearchmanager.cpp + kitemviews/kitemlistrubberband.cpp + kitemviews/kitemlistselectionmanager.cpp + kitemviews/kitemlistselectiontoggle.cpp + kitemviews/kitemlistsizehintresolver.cpp + kitemviews/kitemlistsmoothscroller.cpp + kitemviews/kitemliststyleoption.cpp + kitemviews/kitemlistview.cpp + kitemviews/kitemlistviewanimation.cpp + kitemviews/kitemlistviewlayouter.cpp + kitemviews/kitemlistwidget.cpp + kitemviews/kitemmodelbase.cpp + kitemviews/kpixmapmodifier.cpp settings/additionalinfodialog.cpp settings/applyviewpropsjob.cpp - settings/dolphinsettings.cpp + settings/viewmodes/viewmodesettings.cpp settings/viewpropertiesdialog.cpp settings/viewpropsprogressinfo.cpp - tooltips/ktooltip.cpp - tooltips/ktooltipwindow.cpp - tooltips/tooltipmanager.cpp - versioncontrol/pendingthreadsmaintainer.cpp - versioncontrol/updateitemstatesthread.cpp - versioncontrol/versioncontrolobserver.cpp - viewextensionsfactory.cpp - viewproperties.cpp - zoomlevelinfo.cpp + views/dolphindirlister.cpp + views/dolphinfileitemlistwidget.cpp + views/dolphinitemlistcontainer.cpp + views/dolphinnewfilemenuobserver.cpp + views/dolphinplacesmodel.cpp + views/dolphinremoteencoding.cpp + views/dolphinview.cpp + views/dolphinviewactionhandler.cpp + views/draganddrophelper.cpp + views/renamedialog.cpp + views/rolesaccessor.cpp + views/tooltips/filemetadatatooltip.cpp + views/tooltips/tooltipmanager.cpp + views/versioncontrol/updateitemstatesthread.cpp + views/versioncontrol/versioncontrolobserver.cpp + views/viewmodecontroller.cpp + views/viewproperties.cpp + views/zoomlevelinfo.cpp ) kde4_add_kcfg_files(dolphinprivate_LIB_SRCS - settings/dolphin_columnmodesettings.kcfgc + settings/dolphin_compactmodesettings.kcfgc settings/dolphin_directoryviewpropertysettings.kcfgc settings/dolphin_detailsmodesettings.kcfgc settings/dolphin_iconsmodesettings.kcfgc @@ -64,10 +78,14 @@ kde4_add_kcfg_files(dolphinprivate_LIB_SRCS kde4_add_library(dolphinprivate SHARED ${dolphinprivate_LIB_SRCS}) -target_link_libraries(dolphinprivate ${KDE4_KFILE_LIBS} konq ${KDE4_KNEWSTUFF3_LIBS} ${QIMAGEBLITZ_LIBRARIES}) +target_link_libraries(dolphinprivate ${KDE4_KFILE_LIBS} konq ${KDE4_KNEWSTUFF3_LIBS}) if (Nepomuk_FOUND) - target_link_libraries(dolphinprivate ${NEPOMUK_LIBRARIES} ${NEPOMUK_QUERY_LIBRARIES} ${SOPRANO_LIBRARIES}) + target_link_libraries(dolphinprivate ${NEPOMUK_LIBRARIES} ${NEPOMUK_QUERY_LIBRARIES} nepomukutils ${SOPRANO_LIBRARIES}) endif (Nepomuk_FOUND) +if(X11_Xrender_FOUND) + target_link_libraries(dolphinprivate ${X11_Xrender_LIB} ) +endif(X11_Xrender_FOUND) + set_target_properties(dolphinprivate PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION} ) @@ -80,104 +98,83 @@ set(dolphinpart_SRCS dolphinpart.cpp ) -set(fileviewsvnplugin_SRCS - versioncontrol/fileviewsvnplugin.cpp -) - kde4_add_plugin(dolphinpart ${dolphinpart_SRCS}) -kde4_add_plugin(fileviewsvnplugin ${fileviewsvnplugin_SRCS}) target_link_libraries(dolphinpart dolphinprivate konq ${KDE4_KPARTS_LIBS} ${KDE4_KFILE_LIBS}) -target_link_libraries(fileviewsvnplugin ${KDE4_KIO_LIBS} konq) install(TARGETS dolphinpart DESTINATION ${PLUGIN_INSTALL_DIR}) -install(TARGETS fileviewsvnplugin DESTINATION ${PLUGIN_INSTALL_DIR}) install(FILES dolphinpart.rc DESTINATION ${DATA_INSTALL_DIR}/dolphinpart) install(FILES dolphinpart.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -install(FILES versioncontrol/fileviewsvnplugin.desktop DESTINATION ${SERVICES_INSTALL_DIR}) -install(FILES versioncontrol/fileviewversioncontrolplugin.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR}) +install(FILES views/versioncontrol/fileviewversioncontrolplugin.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR}) ########################################## set(dolphin_SRCS dolphinapplication.cpp + dolphindockwidget.cpp dolphinmainwindow.cpp - dolphinnewmenu.cpp + dolphinnewfilemenu.cpp dolphinviewcontainer.cpp - dolphindirlister.cpp dolphincontextmenu.cpp - filterbar.cpp + filterbar/filterbar.cpp main.cpp - pixmapviewer.cpp + panels/information/filemetadataconfigurationdialog.cpp panels/information/informationpanel.cpp panels/information/informationpanelcontent.cpp + panels/information/pixmapviewer.cpp panels/information/phononwidget.cpp - panels/folders/ktreeview.cpp panels/places/placespanel.cpp panels/panel.cpp panels/folders/treeviewcontextmenu.cpp panels/folders/folderspanel.cpp - panels/folders/paneltreeview.cpp search/dolphinsearchbox.cpp - search/searchoptiondialogbox.cpp - settings/behaviorsettingspage.cpp - settings/columnviewsettingspage.cpp - settings/contextmenusettingspage.cpp - settings/dolphinfontrequester.cpp + search/dolphinsearchinformation.cpp + settings/general/behaviorsettingspage.cpp + settings/general/configurepreviewplugindialog.cpp + settings/general/contextmenusettingspage.cpp + settings/general/generalsettingspage.cpp + settings/general/previewssettingspage.cpp + settings/general/statusbarsettingspage.cpp settings/dolphinsettingsdialog.cpp - settings/detailsviewsettingspage.cpp - settings/generalsettingspage.cpp - settings/iconsizegroupbox.cpp - settings/iconsviewsettingspage.cpp - settings/navigationsettingspage.cpp - settings/previewssettingspage.cpp - settings/servicessettingspage.cpp + settings/navigation/navigationsettingspage.cpp + settings/services/servicessettingspage.cpp settings/settingspagebase.cpp - settings/startupsettingspage.cpp - settings/statusbarsettingspage.cpp - settings/trashsettingspage.cpp - settings/viewsettingspage.cpp - settings/viewsettingspagebase.cpp + settings/serviceitemdelegate.cpp + settings/servicemodel.cpp + settings/startup/startupsettingspage.cpp + settings/trash/trashsettingspage.cpp + settings/viewmodes/dolphinfontrequester.cpp + settings/viewmodes/viewsettingspage.cpp + settings/viewmodes/viewmodesettings.cpp + settings/viewmodes/viewsettingstab.cpp statusbar/dolphinstatusbar.cpp statusbar/statusbarspaceinfo.cpp - statusbar/statusbarmessagelabel.cpp - zoomlevelinfo.cpp + views/zoomlevelinfo.cpp ) kde4_add_kcfg_files(dolphin_SRCS panels/folders/dolphin_folderspanelsettings.kcfgc panels/information/dolphin_informationpanelsettings.kcfgc + settings/dolphin_compactmodesettings.kcfgc + settings/dolphin_detailsmodesettings.kcfgc + settings/dolphin_generalsettings.kcfgc + settings/dolphin_iconsmodesettings.kcfgc search/dolphin_searchsettings.kcfgc + settings/dolphin_versioncontrolsettings.kcfgc ) if(Nepomuk_FOUND) set(dolphin_SRCS ${dolphin_SRCS} - search/dolphinsearchoptionsconfigurator.cpp - search/searchcriteriondescription.cpp - search/searchcriterionselector.cpp - search/searchcriterionvalue.cpp + panels/search/searchpanel.cpp ) endif(Nepomuk_FOUND) -if(Nepomuk_FOUND) - include(SopranoAddOntology) - soprano_add_ontology(dolphin_SRCS ${SHAREDDESKTOPONTOLOGIES_ROOT_DIR}/nie/nfo.trig "NFO" "Nepomuk::Vocabulary" "trig") - soprano_add_ontology(dolphin_SRCS ${SHAREDDESKTOPONTOLOGIES_ROOT_DIR}/nie/nie.trig "NIE" "Nepomuk::Vocabulary" "trig") -endif(Nepomuk_FOUND) - if(NOT WIN32) set(dolphin_SRCS ${dolphin_SRCS} panels/terminal/terminalpanel.cpp) endif(NOT WIN32) -qt4_add_dbus_adaptor(dolphin_SRCS - org.kde.dolphin.Application.xml - dolphinapplication.h DolphinApplication) -qt4_add_dbus_adaptor(dolphin_SRCS - org.kde.dolphin.MainWindow.xml - dolphinmainwindow.h DolphinMainWindow) - kde4_add_app_icon(dolphin_SRCS "${KDE4_ICON_INSTALL_DIR}/oxygen/*/apps/system-file-manager.png") kde4_add_kdeinit_executable(dolphin ${dolphin_SRCS}) @@ -185,7 +182,8 @@ kde4_add_kdeinit_executable(dolphin ${dolphin_SRCS}) target_link_libraries(kdeinit_dolphin ${KDE4_KDEPRINT_LIBS} ${KDE4_KFILE_LIBS} - ${KDE4_KUTILS_LIBRARY} + ${KDE4_KPARTS_LIBS} + ${KDE4_KCMUTILS_LIBRARY} konq dolphinprivate knewstuff3 @@ -197,6 +195,7 @@ if (Nepomuk_FOUND) ${NEPOMUK_LIBRARIES} ${SOPRANO_LIBRARIES} ${NEPOMUK_QUERY_LIBRARIES} + nepomukutils ) endif (Nepomuk_FOUND) @@ -206,35 +205,36 @@ install(TARGETS dolphin ${INSTALL_TARGETS_DEFAULT_ARGS}) ########################################## set(kcm_dolphinviewmodes_PART_SRCS - kcm/kcmdolphinviewmodes.cpp - pixmapviewer.cpp - settings/columnviewsettingspage.cpp - settings/detailsviewsettingspage.cpp - settings/dolphinfontrequester.cpp - settings/iconsizegroupbox.cpp - settings/iconsviewsettingspage.cpp - settings/viewsettingspagebase.cpp - zoomlevelinfo.cpp) + settings/kcm/kcmdolphinviewmodes.cpp + settings/viewmodes/dolphinfontrequester.cpp + settings/viewmodes/viewmodesettings.cpp + settings/viewmodes/viewsettingstab.cpp + views/zoomlevelinfo.cpp) set(kcm_dolphinnavigation_PART_SRCS - kcm/kcmdolphinnavigation.cpp - settings/navigationsettingspage.cpp + settings/kcm/kcmdolphinnavigation.cpp + settings/navigation/navigationsettingspage.cpp settings/settingspagebase.cpp) set(kcm_dolphinservices_PART_SRCS - kcm/kcmdolphinservices.cpp - settings/servicessettingspage.cpp - settings/settingspagebase.cpp) + settings/kcm/kcmdolphinservices.cpp + settings/services/servicessettingspage.cpp + settings/settingspagebase.cpp + settings/serviceitemdelegate.cpp + settings/servicemodel.cpp) set(kcm_dolphingeneral_PART_SRCS - kcm/kcmdolphingeneral.cpp - settings/behaviorsettingspage.cpp - settings/previewssettingspage.cpp - settings/contextmenusettingspage.cpp - settings/settingspagebase.cpp) + settings/kcm/kcmdolphingeneral.cpp + settings/general/behaviorsettingspage.cpp + settings/general/previewssettingspage.cpp + settings/general/configurepreviewplugindialog.cpp + settings/general/contextmenusettingspage.cpp + settings/settingspagebase.cpp + settings/serviceitemdelegate.cpp + settings/servicemodel.cpp) kde4_add_kcfg_files(kcm_dolphinviewmodes_PART_SRCS - settings/dolphin_columnmodesettings.kcfgc + settings/dolphin_compactmodesettings.kcfgc settings/dolphin_directoryviewpropertysettings.kcfgc settings/dolphin_detailsmodesettings.kcfgc settings/dolphin_iconsmodesettings.kcfgc @@ -246,7 +246,8 @@ kde4_add_kcfg_files(kcm_dolphinnavigation_PART_SRCS settings/dolphin_generalsettings.kcfgc) kde4_add_kcfg_files(kcm_dolphinservices_PART_SRCS - settings/dolphin_generalsettings.kcfgc) + settings/dolphin_generalsettings.kcfgc + settings/dolphin_versioncontrolsettings.kcfgc) kde4_add_kcfg_files(kcm_dolphingeneral_PART_SRCS settings/dolphin_generalsettings.kcfgc) @@ -272,22 +273,32 @@ install(TARGETS kcm_dolphinnavigation DESTINATION ${PLUGIN_INSTALL_DIR} ) install(TARGETS kcm_dolphinservices DESTINATION ${PLUGIN_INSTALL_DIR} ) install(TARGETS kcm_dolphingeneral DESTINATION ${PLUGIN_INSTALL_DIR} ) +######################################### + +set(kio_search_PART_SRCS + search/filenamesearchprotocol.cpp) +kde4_add_plugin(kio_filenamesearch ${kio_search_PART_SRCS}) +target_link_libraries(kio_filenamesearch ${KDE4_KIO_LIBS}) +install(TARGETS kio_filenamesearch DESTINATION ${PLUGIN_INSTALL_DIR}) + ########### install files ############### -install( FILES dolphin.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} ) +install( PROGRAMS dolphin.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} ) install( FILES settings/dolphin_directoryviewpropertysettings.kcfg settings/dolphin_generalsettings.kcfg - settings/dolphin_columnmodesettings.kcfg + settings/dolphin_compactmodesettings.kcfg settings/dolphin_iconsmodesettings.kcfg settings/dolphin_detailsmodesettings.kcfg settings/dolphin_versioncontrolsettings.kcfg DESTINATION ${KCFG_INSTALL_DIR} ) install( FILES dolphinui.rc DESTINATION ${DATA_INSTALL_DIR}/dolphin ) -install( FILES search/dolphinsearchcommands.desktop DESTINATION ${DATA_INSTALL_DIR}/dolphin ) -install( FILES kcm/kcmdolphinviewmodes.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -install( FILES kcm/kcmdolphinnavigation.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -install( FILES kcm/kcmdolphinservices.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -install( FILES kcm/kcmdolphingeneral.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -install( FILES khns/servicemenu.knsrc DESTINATION ${CONFIG_INSTALL_DIR} ) -install( PROGRAMS khns/servicemenuinstallation DESTINATION ${BIN_INSTALL_DIR} ) -install( PROGRAMS khns/servicemenudeinstallation DESTINATION ${BIN_INSTALL_DIR} ) +install( FILES search/filenamesearch.protocol DESTINATION ${SERVICES_INSTALL_DIR} ) +install( FILES settings/kcm/kcmdolphinviewmodes.desktop DESTINATION +${SERVICES_INSTALL_DIR} ) +install( FILES settings/kcm/kcmdolphinnavigation.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) +install( FILES settings/kcm/kcmdolphinservices.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) +install( FILES settings/kcm/kcmdolphingeneral.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) +install( FILES settings/services/servicemenu.knsrc DESTINATION ${CONFIG_INSTALL_DIR} ) +install( PROGRAMS settings/services/servicemenuinstallation DESTINATION ${BIN_INSTALL_DIR} ) +install( PROGRAMS settings/services/servicemenudeinstallation DESTINATION ${BIN_INSTALL_DIR} ) +