mirror of
https://invent.kde.org/system/dolphin
synced 2024-11-05 18:47:12 +00:00
add KCM for the services settings, so that they are also accessible in Konqueror
svn path=/trunk/KDE/kdebase/apps/; revision=932520
This commit is contained in:
parent
ec8a75b90c
commit
de0f1d23b3
4 changed files with 141 additions and 0 deletions
|
@ -191,6 +191,11 @@ set(kcm_dolphinnavigation_PART_SRCS
|
|||
settings/navigationsettingspage.cpp
|
||||
settings/settingspagebase.cpp)
|
||||
|
||||
set(kcm_dolphinservices_PART_SRCS
|
||||
kcm/kcmdolphinservices.cpp
|
||||
settings/servicessettingspage.cpp
|
||||
settings/settingspagebase.cpp)
|
||||
|
||||
set(kcm_dolphingeneral_PART_SRCS
|
||||
kcm/kcmdolphingeneral.cpp
|
||||
settings/behaviorsettingspage.cpp
|
||||
|
@ -207,24 +212,31 @@ kde4_add_kcfg_files(kcm_dolphinviewmodes_PART_SRCS
|
|||
kde4_add_kcfg_files(kcm_dolphinnavigation_PART_SRCS
|
||||
settings/dolphin_generalsettings.kcfgc)
|
||||
|
||||
kde4_add_kcfg_files(kcm_dolphinservices_PART_SRCS
|
||||
settings/dolphin_generalsettings.kcfgc)
|
||||
|
||||
kde4_add_kcfg_files(kcm_dolphingeneral_PART_SRCS
|
||||
settings/dolphin_generalsettings.kcfgc)
|
||||
|
||||
kde4_add_plugin(kcm_dolphinviewmodes ${kcm_dolphinviewmodes_PART_SRCS})
|
||||
kde4_add_plugin(kcm_dolphinnavigation ${kcm_dolphinnavigation_PART_SRCS})
|
||||
kde4_add_plugin(kcm_dolphinservices ${kcm_dolphinservices_PART_SRCS})
|
||||
kde4_add_plugin(kcm_dolphingeneral ${kcm_dolphingeneral_PART_SRCS})
|
||||
|
||||
target_link_libraries(kcm_dolphinviewmodes ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
|
||||
target_link_libraries(kcm_dolphinnavigation ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
|
||||
target_link_libraries(kcm_dolphinservices ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KIO_LIBS} dolphinprivate)
|
||||
target_link_libraries(kcm_dolphingeneral ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate)
|
||||
if (Nepomuk_FOUND)
|
||||
target_link_libraries(kcm_dolphinviewmodes ${NEPOMUK_LIBRARIES})
|
||||
target_link_libraries(kcm_dolphinnavigation ${NEPOMUK_LIBRARIES})
|
||||
target_link_libraries(kcm_dolphinservices ${NEPOMUK_LIBRARIES})
|
||||
target_link_libraries(kcm_dolphingeneral ${NEPOMUK_LIBRARIES})
|
||||
endif (Nepomuk_FOUND)
|
||||
|
||||
install(TARGETS kcm_dolphinviewmodes DESTINATION ${PLUGIN_INSTALL_DIR} )
|
||||
install(TARGETS kcm_dolphinnavigation DESTINATION ${PLUGIN_INSTALL_DIR} )
|
||||
install(TARGETS kcm_dolphinservices DESTINATION ${PLUGIN_INSTALL_DIR} )
|
||||
install(TARGETS kcm_dolphingeneral DESTINATION ${PLUGIN_INSTALL_DIR} )
|
||||
|
||||
########### install files ###############
|
||||
|
@ -234,4 +246,5 @@ install( FILES settings/dolphin_directoryviewpropertysettings.kcfg settings/dol
|
|||
install( FILES dolphinui.rc 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} )
|
||||
|
|
68
src/kcm/kcmdolphinservices.cpp
Normal file
68
src/kcm/kcmdolphinservices.cpp
Normal file
|
@ -0,0 +1,68 @@
|
|||
/***************************************************************************
|
||||
* Copyright (C) 2009 by Peter Penz <peter.penz@gmx.at> *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License as published by *
|
||||
* the Free Software Foundation; either version 2 of the License, or *
|
||||
* (at your option) any later version. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||
* GNU General Public License for more details. *
|
||||
* *
|
||||
* You should have received a copy of the GNU General Public License *
|
||||
* along with this program; if not, write to the *
|
||||
* Free Software Foundation, Inc., *
|
||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
|
||||
***************************************************************************/
|
||||
|
||||
#include "kcmdolphinservices.h"
|
||||
|
||||
#include "settings/servicessettingspage.h"
|
||||
|
||||
#include <ktabwidget.h>
|
||||
#include <kdialog.h>
|
||||
#include <klocale.h>
|
||||
#include <kpluginfactory.h>
|
||||
#include <kpluginloader.h>
|
||||
|
||||
#include <QVBoxLayout>
|
||||
|
||||
K_PLUGIN_FACTORY(KCMDolphinServicesConfigFactory, registerPlugin<DolphinServicesConfigModule>("dolphinservices");)
|
||||
K_EXPORT_PLUGIN(KCMDolphinServicesConfigFactory("kcmdolphinservices"))
|
||||
|
||||
DolphinServicesConfigModule::DolphinServicesConfigModule(QWidget* parent, const QVariantList& args) :
|
||||
KCModule(KCMDolphinServicesConfigFactory::componentData(), parent),
|
||||
m_services(0)
|
||||
{
|
||||
Q_UNUSED(args);
|
||||
|
||||
KGlobal::locale()->insertCatalog("dolphinservices");
|
||||
|
||||
setButtons(KCModule::Default | KCModule::Help);
|
||||
|
||||
QVBoxLayout* topLayout = new QVBoxLayout(this);
|
||||
topLayout->setMargin(0);
|
||||
topLayout->setSpacing(KDialog::spacingHint());
|
||||
|
||||
m_services = new ServicesSettingsPage(this);
|
||||
connect(m_services, SIGNAL(changed()), this, SLOT(changed()));
|
||||
topLayout->addWidget(m_services, 0, 0);
|
||||
}
|
||||
|
||||
DolphinServicesConfigModule::~DolphinServicesConfigModule()
|
||||
{
|
||||
}
|
||||
|
||||
void DolphinServicesConfigModule::save()
|
||||
{
|
||||
m_services->applySettings();
|
||||
}
|
||||
|
||||
void DolphinServicesConfigModule::defaults()
|
||||
{
|
||||
m_services->restoreDefaults();
|
||||
}
|
||||
|
||||
#include "kcmdolphinservices.moc"
|
15
src/kcm/kcmdolphinservices.desktop
Normal file
15
src/kcm/kcmdolphinservices.desktop
Normal file
|
@ -0,0 +1,15 @@
|
|||
Name=Dolphin Services
|
||||
|
||||
[Desktop Entry]
|
||||
Icon=services
|
||||
Type=Service
|
||||
X-KDE-ServiceTypes=KCModule
|
||||
Exec=kcmshell4 kcmdolphinservices
|
||||
|
||||
X-KDE-Library=kcm_dolphinservices
|
||||
X-KDE-PluginKeyword=dolphinservices
|
||||
X-KDE-ParentApp=kcontrol
|
||||
|
||||
Name=Services
|
||||
Comment=Configure file manager services
|
||||
X-KDE-Keywords=file manager
|
45
src/kcm/kcmdolphinservices.h
Normal file
45
src/kcm/kcmdolphinservices.h
Normal file
|
@ -0,0 +1,45 @@
|
|||
/***************************************************************************
|
||||
* Copyright (C) 2009 by Peter Penz <peter.penz@gmx.at> *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License as published by *
|
||||
* the Free Software Foundation; either version 2 of the License, or *
|
||||
* (at your option) any later version. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||
* GNU General Public License for more details. *
|
||||
* *
|
||||
* You should have received a copy of the GNU General Public License *
|
||||
* along with this program; if not, write to the *
|
||||
* Free Software Foundation, Inc., *
|
||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
|
||||
***************************************************************************/
|
||||
|
||||
#ifndef KCMDOLPHINSERVICES_H
|
||||
#define KCMDOLPHINSERVICES_H
|
||||
|
||||
#include <kcmodule.h>
|
||||
|
||||
class ServicesSettingsPage;
|
||||
|
||||
/**
|
||||
* @brief Allow to configure the Dolphin services.
|
||||
*/
|
||||
class DolphinServicesConfigModule : public KCModule
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
DolphinServicesConfigModule(QWidget* parent, const QVariantList& args);
|
||||
virtual ~DolphinServicesConfigModule();
|
||||
|
||||
virtual void save();
|
||||
virtual void defaults();
|
||||
|
||||
private:
|
||||
ServicesSettingsPage* m_services;
|
||||
};
|
||||
|
||||
#endif
|
Loading…
Reference in a new issue