Added the Trash KCM to Dolphin, it's visible in the Settings Dialog, in the 'Trash" page.

Konqueror has it, we should too =)

svn path=/trunk/KDE/kdebase/apps/; revision=926571
This commit is contained in:
Shaun Reich 2009-02-15 18:06:04 +00:00
parent 614a1a1861
commit 8ce343ba3d
5 changed files with 131 additions and 2 deletions

View file

@ -128,6 +128,7 @@ set(dolphin_SRCS
settings/settingspagebase.cpp
settings/startupsettingspage.cpp
settings/statusbarsettingspage.cpp
settings/trashsettingspage.cpp
settings/viewsettingspage.cpp
settings/viewsettingspagebase.cpp
statusbarspaceinfo.cpp
@ -166,7 +167,7 @@ kde4_add_app_icon(dolphin_SRCS "${KDE4_ICON_INSTALL_DIR}/oxygen/*/apps/system-fi
kde4_add_executable(dolphin ${dolphin_SRCS})
target_link_libraries(dolphin ${KDE4_KIO_LIBS} ${KDE4_KDEPRINT_LIBS} ${KDE4_KFILE_LIBS} konq dolphinprivate ${KDE4_PHONON_LIBS})
target_link_libraries(dolphin ${KDE4_KIO_LIBS} ${KDE4_KDEPRINT_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KUTILS_LIBRARY} konq dolphinprivate ${KDE4_PHONON_LIBS})
if (Nepomuk_FOUND)
target_link_libraries(dolphin ${NEPOMUK_LIBRARIES} ${SOPRANO_LIBRARIES})

View file

@ -27,6 +27,7 @@
#include "servicessettingspage.h"
#include "startupsettingspage.h"
#include "viewsettingspage.h"
#include "trashsettingspage.h"
#include <klocale.h>
#include <kmessagebox.h>
@ -74,6 +75,13 @@ DolphinSettingsDialog::DolphinSettingsDialog(const KUrl& url, QWidget* parent) :
servicesSettingsFrame->setIcon(KIcon("services"));
connect(servicesSettingsPage, SIGNAL(changed()), this, SLOT(enableApply()));
// Trash
TrashSettingsPage* trashSettingsPage = new TrashSettingsPage(this);
KPageWidgetItem* trashSettingsFrame = addPage(trashSettingsPage,
i18nc("@title:group", "Trash"));
trashSettingsFrame->setIcon(KIcon("user-trash"));
connect(trashSettingsPage, SIGNAL(changed()), this, SLOT(enableApply()));
// General
GeneralSettingsPage* generalSettingsPage = new GeneralSettingsPage(url, this);
KPageWidgetItem* generalSettingsFrame = addPage(generalSettingsPage,
@ -88,6 +96,7 @@ DolphinSettingsDialog::DolphinSettingsDialog(const KUrl& url, QWidget* parent) :
m_pages.append(viewSettingsPage);
m_pages.append(navigationSettingsPage);
m_pages.append(servicesSettingsPage);
m_pages.append(trashSettingsPage);
m_pages.append(generalSettingsPage);
}

View file

@ -30,7 +30,7 @@ class SettingsPageBase;
/**
* @brief Settings dialog for Dolphin.
*
* Contains the pages for Startup, View Modes, Navigation, Services and General.
* Contains the pages for Startup, View Modes, Navigation, Services, General, and Trash.
*/
class DolphinSettingsDialog : public KPageDialog
{

View file

@ -0,0 +1,72 @@
/***************************************************************************
* Copyright (C) 2009 by Shaun Reich shaun.reich@kdemail.net *
* *
* 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 *
***************************************************************************/
//Own
#include "trashsettingspage.h"
#include "dolphinsettings.h"
//KDE
#include <KCModuleProxy>
#include <kdialog.h>
#include <kvbox.h>
//Qt
#include <QVBoxLayout>
TrashSettingsPage::TrashSettingsPage(QWidget* parent) :
SettingsPageBase(parent)
{
const int spacing = KDialog::spacingHint();
QVBoxLayout* topLayout = new QVBoxLayout(this);
KVBox* vBox = new KVBox(this);
vBox->setSpacing(spacing);
m_proxy = new KCModuleProxy("kcmtrash");
connect(m_proxy, SIGNAL(changed(bool)), this, SIGNAL(changed()));
topLayout->addWidget(m_proxy);
// Add a dummy widget with no restriction regarding
// a vertical resizing. This assures that the dialog layout
// is not stretched vertically.
new QWidget(vBox);
topLayout->addWidget(vBox);
loadSettings();
}
TrashSettingsPage::~TrashSettingsPage()
{
}
void TrashSettingsPage::applySettings()
{
m_proxy->save();
}
void TrashSettingsPage::restoreDefaults()
{
m_proxy->defaults();
}
void TrashSettingsPage::loadSettings()
{
m_proxy->load();
}
#include "trashsettingspage.moc"

View file

@ -0,0 +1,47 @@
/***************************************************************************
* Copyright (C) 2009 by Shaun Reich shaun.reich@kdemail.net *
* *
* 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 TRASHSETTINGSPAGE_H
#define TRASHSETTINGSPAGE_H
#include "settings/settingspagebase.h"
class KCModuleProxy;
/**
* @brief Tab page for the 'Trash' settings of the Dolphin settings dialog, it uses the KCM.
*/
class TrashSettingsPage : public SettingsPageBase
{
Q_OBJECT
public:
TrashSettingsPage(QWidget* parent);
virtual ~TrashSettingsPage();
/** @see SettingsPageBase::applySettings() */
virtual void applySettings();
/** @see SettingsPageBase::restoreDefaults() */
virtual void restoreDefaults();
private:
void loadSettings();
KCModuleProxy *m_proxy;
};
#endif