┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2009-11-09 18:13:36 +0000
committerPeter Penz <[email protected]>2009-11-09 18:13:36 +0000
commit232e7eaad76cc027341a6d927ebb905312c4ff4c (patch)
treef484a6eb2e1a98c6d243a03818a1708068d4f842
parent7ff8c0d89aecc356d66b2aed25804b5ff22fbff9 (diff)
move the "Download New Services..." entry from the Settings menu to the service configuration dialog
svn path=/trunk/KDE/kdebase/apps/; revision=1046788
-rw-r--r--src/CMakeLists.txt18
-rw-r--r--src/dolphinmainwindow.cpp6
-rw-r--r--src/dolphinpart.rc3
-rw-r--r--src/dolphinui.rc5
-rw-r--r--src/dolphinviewactionhandler.h5
-rw-r--r--src/settings/servicessettingspage.cpp16
-rw-r--r--src/settings/servicessettingspage.h9
7 files changed, 38 insertions, 24 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index e44334d51..0f4e33424 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -54,14 +54,14 @@ set(dolphinprivate_LIB_SRCS
)
if(Nepomuk_FOUND)
-set(dolphinprivate_LIB_SRCS
- ${dolphinprivate_LIB_SRCS}
- panels/information/kcommentwidget.cpp
- panels/information/kedittagsdialog.cpp
- panels/information/kloadmetadatathread.cpp
- panels/information/nepomukmassupdatejob.cpp
- panels/information/ktaggingwidget.cpp
-)
+ set(dolphinprivate_LIB_SRCS
+ ${dolphinprivate_LIB_SRCS}
+ panels/information/kcommentwidget.cpp
+ panels/information/kedittagsdialog.cpp
+ panels/information/kloadmetadatathread.cpp
+ panels/information/nepomukmassupdatejob.cpp
+ panels/information/ktaggingwidget.cpp
+ )
endif(Nepomuk_FOUND)
kde4_add_kcfg_files(dolphinprivate_LIB_SRCS
@@ -265,7 +265,7 @@ 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_dolphinservices ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KIO_LIBS} ${KDE4_KNEWSTUFF2_LIBRARY} dolphinprivate)
target_link_libraries(kcm_dolphingeneral ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KIO_LIBS} dolphinprivate)
if (Nepomuk_FOUND)
target_link_libraries(kcm_dolphinviewmodes ${NEPOMUK_LIBRARIES})
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp
index e55be1d30..5c89b77e0 100644
--- a/src/dolphinmainwindow.cpp
+++ b/src/dolphinmainwindow.cpp
@@ -756,7 +756,7 @@ void DolphinMainWindow::goUp()
void DolphinMainWindow::goBack(Qt::MouseButtons buttons)
{
// The default case (left button pressed) is handled in goBack().
- if(buttons == Qt::MidButton) {
+ if (buttons == Qt::MidButton) {
KUrlNavigator* urlNavigator = activeViewContainer()->urlNavigator();
openNewTab(urlNavigator->historyUrl(urlNavigator->historyIndex() + 1));
}
@@ -765,7 +765,7 @@ void DolphinMainWindow::goBack(Qt::MouseButtons buttons)
void DolphinMainWindow::goForward(Qt::MouseButtons buttons)
{
// The default case (left button pressed) is handled in goForward().
- if(buttons == Qt::MidButton) {
+ if (buttons == Qt::MidButton) {
KUrlNavigator* urlNavigator = activeViewContainer()->urlNavigator();
openNewTab(urlNavigator->historyUrl(urlNavigator->historyIndex() - 1));
}
@@ -774,7 +774,7 @@ void DolphinMainWindow::goForward(Qt::MouseButtons buttons)
void DolphinMainWindow::goUp(Qt::MouseButtons buttons)
{
// The default case (left button pressed) is handled in goUp().
- if(buttons == Qt::MidButton) {
+ if (buttons == Qt::MidButton) {
openNewTab(activeViewContainer()->url().upUrl());
}
}
diff --git a/src/dolphinpart.rc b/src/dolphinpart.rc
index ec7af696d..d0b2cc634 100644
--- a/src/dolphinpart.rc
+++ b/src/dolphinpart.rc
@@ -59,9 +59,6 @@
<Action name="compare_files" />
<Action name="change_remote_encoding" />
</Menu>
- <Menu name="settings">
- <Action name="get_servicemenu"/>
- </Menu>
</MenuBar>
<ToolBar name="mainToolBar"><text context="@title:menu">Dolphin Toolbar</text>
<Action name="icons" />
diff --git a/src/dolphinui.rc b/src/dolphinui.rc
index a7f585092..ff5e22f3c 100644
--- a/src/dolphinui.rc
+++ b/src/dolphinui.rc
@@ -1,5 +1,5 @@
<!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
-<kpartgui name="dolphin" version="11">
+<kpartgui name="dolphin" version="12">
<MenuBar>
<Menu name="file">
<Action name="create_new" />
@@ -81,9 +81,6 @@
<Action name="compare_files" />
<Action name="change_remote_encoding" />
</Menu>
- <Menu name="settings">
- <Action name="get_servicemenu" />
- </Menu>
</MenuBar>
<State name="new_file" >
<disable>
diff --git a/src/dolphinviewactionhandler.h b/src/dolphinviewactionhandler.h
index fb6c9528f..1ce5f9d48 100644
--- a/src/dolphinviewactionhandler.h
+++ b/src/dolphinviewactionhandler.h
@@ -209,11 +209,6 @@ private Q_SLOTS:
* like name, size and permissions.
*/
void slotProperties();
-
- /**
- * Starts KHotNewStuff to download servicemenus.
- */
- void slotGetServiceMenu();
private:
/**
diff --git a/src/settings/servicessettingspage.cpp b/src/settings/servicessettingspage.cpp
index a58df2096..9088366a8 100644
--- a/src/settings/servicessettingspage.cpp
+++ b/src/settings/servicessettingspage.cpp
@@ -24,6 +24,7 @@
#include <kdesktopfileactions.h>
#include <kicon.h>
#include <klocale.h>
+#include <knewstuff2/engine.h>
#include <kservice.h>
#include <kservicetypetrader.h>
#include <kstandarddirs.h>
@@ -31,6 +32,7 @@
#include <QEvent>
#include <QLabel>
#include <QListWidget>
+#include <QPushButton>
#include <QVBoxLayout>
ServicesSettingsPage::ServicesSettingsPage(QWidget* parent) :
@@ -43,6 +45,7 @@ ServicesSettingsPage::ServicesSettingsPage(QWidget* parent) :
QLabel* label = new QLabel(i18nc("@label:textbox",
"Configure which services should "
"be shown in the context menu."), this);
+ label->setWordWrap(true);
m_servicesList = new QListWidget(this);
m_servicesList->setSortingEnabled(true);
@@ -50,8 +53,13 @@ ServicesSettingsPage::ServicesSettingsPage(QWidget* parent) :
connect(m_servicesList, SIGNAL(itemClicked(QListWidgetItem*)),
this, SIGNAL(changed()));
+ QPushButton* downloadButton = new QPushButton(i18nc("@action:button", "Download New Services..."));
+ downloadButton->setIcon(KIcon("get-hot-new-stuff"));
+ connect(downloadButton, SIGNAL(clicked()), this, SLOT(downloadNewServices()));
+
topLayout->addWidget(label);
topLayout->addWidget(m_servicesList);
+ topLayout->addWidget(downloadButton);
}
ServicesSettingsPage::~ServicesSettingsPage()
@@ -121,6 +129,14 @@ void ServicesSettingsPage::loadServices()
}
}
+void ServicesSettingsPage::downloadNewServices()
+{
+ KNS::Engine khns(this);
+ khns.init("servicemenu.knsrc");
+ khns.downloadDialogModal(this);
+ loadServices();
+}
+
bool ServicesSettingsPage::isInServicesList(const QString& service) const
{
const int count = m_servicesList->count();
diff --git a/src/settings/servicessettingspage.h b/src/settings/servicessettingspage.h
index 2e8a6b9e0..359cc77ad 100644
--- a/src/settings/servicessettingspage.h
+++ b/src/settings/servicessettingspage.h
@@ -44,7 +44,16 @@ protected:
virtual bool event(QEvent* event);
private slots:
+ /**
+ * Loads locally installed services.
+ */
void loadServices();
+
+ /**
+ * Opens KHotNewStuff to download new services.
+ */
+ void downloadNewServices();
+
bool isInServicesList(const QString& service) const;
private: