add_subdirectory( pics )
add_subdirectory( servicemenus )
-include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} )
+include_directories( ${CMAKE_SOURCE_DIR}/libkonq ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} )
+add_definitions (-DQT3_SUPPORT)
########### next target ###############
-set(dolphin_SRCS
- main.cpp
- dolphin.cpp
- dolphinview.cpp
- urlnavigator.cpp
- urlnavigatorbutton.cpp
- viewpropertiesdialog.cpp
- dolphinstatusbar.cpp
- dolphindirlister.cpp
- viewproperties.cpp
- dolphindetailsview.cpp
- dolphiniconsview.cpp
- dolphinsettings.cpp
- bookmarkselector.cpp
- urlbutton.cpp
- itemeffectsmanager.cpp
- dolphincontextmenu.cpp
- undomanager.cpp
- progressindicator.cpp
- iconsviewsettingspage.cpp
- pixmapviewer.cpp
- dolphinsettingsdialog.cpp
- viewsettingspage.cpp
- detailsviewsettingspage.cpp
- statusbarmessagelabel.cpp
- generalsettingspage.cpp
- bookmarkssettingspage.cpp
- editbookmarkdialog.cpp
- settingspagebase.cpp
- sidebar.cpp
- sidebarpage.cpp
- bookmarkssidebarpage.cpp
- infosidebarpage.cpp
- statusbarspaceinfo.cpp
- renamedialog.cpp
- filterbar.cpp
- protocolcombo.cpp )
+set(dolphinprivate_LIB_SRCS
+ dolphincontroller.cpp
+ dolphindetailsview.cpp
+ dolphiniconsview.cpp
+ dolphinitemcategorizer.cpp
+ klistview.cpp
+ dolphinsettings.cpp
+ viewproperties.cpp
+ dolphinsortfilterproxymodel.cpp
+ )
+
+kde4_add_kcfg_files(dolphinprivate_LIB_SRCS
+ dolphin_columnmodesettings.kcfgc
+ dolphin_directoryviewpropertysettings.kcfgc
+ dolphin_detailsmodesettings.kcfgc
+ dolphin_iconsmodesettings.kcfgc
+ dolphin_generalsettings.kcfgc)
+
+
+kde4_automoc(${dolphinprivate_LIB_SRCS})
+
+kde4_add_library(dolphinprivate SHARED ${dolphinprivate_LIB_SRCS})
+
+target_link_libraries(dolphinprivate ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} konq)
+
+set_target_properties(dolphinprivate PROPERTIES VERSION 1.0.0 SOVERSION 1 )
+install(TARGETS dolphinprivate DESTINATION ${LIB_INSTALL_DIR} )
+
+
+##########################################
+
+set(dolphin_SRCS
+ applyviewpropsjob.cpp
+ columnviewsettingspage.cpp
+ detailsviewsettingspage.cpp
+ dolphinapplication.cpp
+ dolphincolumnview.cpp
+ dolphinmainwindow.cpp
+ dolphinnewmenu.cpp
+ dolphinview.cpp
+ dolphinstatusbar.cpp
+ dolphindirlister.cpp
+ dolphincontextmenu.cpp
+ dolphinsettingsdialog.cpp
+ filterbar.cpp
+ generalsettingspage.cpp
+ generalviewsettingspage.cpp
+ iconsizedialog.cpp
+ iconsviewsettingspage.cpp
+ infosidebarpage.cpp
+ main.cpp
+ metadatawidget.cpp
+ pixmapviewer.cpp
+ renamedialog.cpp
+ settingspagebase.cpp
+ sidebarpage.cpp
+ statusbarspaceinfo.cpp
+ statusbarmessagelabel.cpp
+ treeviewcontextmenu.cpp
+ treeviewsidebarpage.cpp
+ sidebartreeview.cpp
+ viewpropertiesdialog.cpp
+ viewsettingspage.cpp
+ viewpropsprogressinfo.cpp )
kde4_automoc(${dolphin_SRCS})
-kde4_add_kcfg_files(dolphin_SRCS
- directoryviewpropertysettings.kcfgc
- generalsettings.kcfgc
- iconsmodesettings.kcfgc
- detailsmodesettings.kcfgc
- previewsmodesettings.kcfgc
- sidebarsettings.kcfgc )
-
+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_executable(dolphin ${dolphin_SRCS})
-
-target_link_libraries(dolphin ${KDE4_KDECORE_LIBS} ${KDE4_KDEPRINT_LIBS} )
+# find Nepomuk's libkmetadata
+find_path(KMETADATA_INCLUDE_DIR NAMES kmetadata/kmetadata.h PATHS ${KDE4_INCLUDE_DIR})
+find_library(KMETADATA_LIBRARY NAMES kmetadata kmetadatatools PATHS ${KDE4_LIB_DIR})
+find_library(KMETADATA_TOOLS_LIBRARY NAMES kmetadatatools PATHS ${KDE4_LIB_DIR})
+if(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBRARY AND KMETADATA_TOOLS_LIBRARY)
+set(KDE4_KMETADATA kmetadata kmetadatatools)
+set(HAVE_KMETADATA 1)
+else(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBRARY)
+set(KDE4_KMETADATA "")
+endif(KMETADATA_INCLUDE_DIR AND KMETADATA_LIBRARY AND KMETADATA_TOOLS_LIBRARY)
+configure_file(config-kmetadata.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kmetadata.h )
+target_link_libraries(dolphin ${KDE4_KDECORE_LIBS} ${KDE4_KDEPRINT_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KMETADATA} konq dolphinprivate)
install(TARGETS dolphin DESTINATION ${BIN_INSTALL_DIR})
########### install files ###############
install( FILES dolphin.desktop DESTINATION ${XDG_APPS_DIR} )
-install( FILES directoryviewpropertysettings.kcfg generalsettings.kcfg iconsmodesettings.kcfg detailsmodesettings.kcfg previewsmodesettings.kcfg sidebarsettings.kcfg DESTINATION ${KCFG_INSTALL_DIR} )
+install( FILES dolphin_directoryviewpropertysettings.kcfg dolphin_generalsettings.kcfg dolphin_columnmodesettings.kcfg dolphin_iconsmodesettings.kcfg dolphin_detailsmodesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR} )
install( FILES dolphinui.rc DESTINATION ${DATA_INSTALL_DIR}/dolphin )
-install( FILES DESTINATION ${APPLNK_INSTALL_DIR}/System )
+install( FILES
+ klistview.h
+ kitemcategorizer.h
+ DESTINATION ${INCLUDE_INSTALL_DIR})
kde4_install_icons( ${ICON_INSTALL_DIR} )
-
-
-
-#original Makefile.am contents follow:
-
-### Makefile.am for dolphin
-#
-#SUBDIRS = pics servicemenus
-#
-## this is the program that gets installed. it's name is used for all
-## of the other Makefile.am variables
-#bin_PROGRAMS = dolphin
-#
-## set the include path for X, qt and KDE
-#INCLUDES = $(all_includes)
-#
-## the library search path.
-#dolphin_LDFLAGS = $(KDE_RPATH) $(all_libraries)
-#
-## the libraries to link against.
-#dolphin_LDADD = $(LIB_KFILE) $(LIB_KDEPRINT)
-#
-## which sources should be compiled for dolphin
-#dolphin_SOURCES = main.cpp dolphin.cpp dolphinview.cpp urlnavigator.cpp directoryviewpropertysettings.kcfgc \
-# urlnavigatorbutton.cpp viewpropertiesdialog.cpp dolphinstatusbar.cpp dolphindirlister.cpp \
-# viewproperties.cpp dolphindetailsview.cpp dolphiniconsview.cpp dolphinsettings.cpp \
-# bookmarkselector.cpp urlbutton.cpp itemeffectsmanager.cpp \
-# dolphincontextmenu.cpp undomanager.cpp progressindicator.cpp \
-# iconsviewsettingspage.cpp pixmapviewer.cpp dolphinsettingsdialog.cpp \
-# viewsettingspage.cpp detailsviewsettingspage.cpp statusbarmessagelabel.cpp \
-# generalsettingspage.cpp bookmarkssettingspage.cpp \
-# editbookmarkdialog.cpp settingspagebase.cpp sidebar.cpp sidebarpage.cpp \
-# bookmarkssidebarpage.cpp infosidebarpage.cpp statusbarspaceinfo.cpp renamedialog.cpp \
-# filterbar.cpp protocolcombo.cpp generalsettings.kcfgc iconsmodesettings.kcfgc \
-# detailsmodesettings.kcfgc previewsmodesettings.kcfgc sidebarsettings.kcfgc
-#
-## these are the headers for your project
-#noinst_HEADERS = dolphin.h dolphinview.h urlnavigator.h urlnavigatorbutton.h \
-# viewpropertiesdialog.h dolphinstatusbar.h dolphindirlister.h viewproperties.h \
-# dolphindetailsview.h dolphiniconsview.h dolphinsettings.h bookmarkselector.h \
-# urlbutton.h itemeffectsmanager.h dolphincontextmenu.h undomanager.h \
-# iconsviewsettingspage.h pixmapviewer.h \
-# dolphinsettingsdialog.h detailsviewsettingspage.h viewsettingspage.h statusbarmessagelabel.h \
-# generalsettingspage.h bookmarkssettingspage.h editbookmarkdialog.h \
-# settingspagebase.h statusbarspaceinfo.h renamedialog.h sidebar.h sidebarsettings.h sidebarpage.h \
-# bookmarkssidebarpage.h infosidebarpage.h protocolcombo.h
-# infosidebarpage.h filterbar.h protocolcombo.h
-#
-## let automoc handle all of the meta source files (moc)
-#METASOURCES = AUTO
-#
-#messages: rc.cpp
-# $(EXTRACTRC) `find . -name \*.ui -o -name \*.rc` > rc.cpp
-# $(XGETTEXT) *.cpp -o $(podir)/dolphin.pot
-#
-## this is where the kdelnk file will go
-#kdelnkdir = $(kde_appsdir)/System
-#xdg_apps_DATA = dolphin.desktop
-#
-## this is where the XML-GUI resource file goes
-#rcdir = $(kde_datadir)/dolphin
-#rc_DATA = dolphinui.rc
-#
-#kde_kcfg_DATA = directoryviewpropertysettings.kcfg generalsettings.kcfg \
-# iconsmodesettings.kcfg detailsmodesettings.kcfg previewsmodesettings.kcfg \
-# sidebarsettings.kcfg
-#
-#KDE_ICON = AUTO