#include "dolphinview.h"
#include "editbookmarkdialog.h"
+#include "dolphin_generalsettings.h"
+
#include <assert.h>
#include <kactioncollection.h>
QAction* renameAction = dolphin->actionCollection()->action("rename");
popup->addAction(renameAction);
- // insert 'Move to Trash' for local Urls, otherwise insert 'Delete'
+ // insert 'Move to Trash' and (optionally) 'Delete'
+ bool showDeleteCommand = DolphinSettings::instance().generalSettings()->showDeleteCommand();
const KUrl& url = dolphin->activeView()->url();
if (url.isLocalFile()) {
QAction* moveToTrashAction = dolphin->actionCollection()->action("move_to_trash");
popup->addAction(moveToTrashAction);
}
else {
+ showDeleteCommand = true;
+ }
+
+ if (showDeleteCommand) {
QAction* deleteAction = dolphin->actionCollection()->action("delete");
popup->addAction(deleteAction);
}
connect(menu, SIGNAL(aboutToShow()),\r
this, SLOT(updateNewMenu()));\r
\r
- QAction* action = actionCollection()->addAction("new_window");\r
- action->setIcon(KIcon("window_new"));\r
- action->setText(i18n("New &Window"));\r
- connect(action, SIGNAL(triggered()), this, SLOT(openNewMainWindow()));\r
+ QAction* newWindow = actionCollection()->addAction("new_window");\r
+ newWindow->setIcon(KIcon("window_new"));\r
+ newWindow->setText(i18n("New &Window"));\r
+ newWindow->setShortcut(Qt::CTRL | Qt::Key_N);\r
+ connect(newWindow, SIGNAL(triggered()), this, SLOT(openNewMainWindow()));\r
\r
QAction* rename = actionCollection()->addAction("rename");\r
rename->setText(i18n("Rename"));\r
\r
QAction* deleteAction = actionCollection()->addAction("delete");\r
deleteAction->setText(i18n("Delete"));\r
- deleteAction->setShortcut(Qt::ALT | Qt::Key_Delete);\r
+ deleteAction->setShortcut(Qt::SHIFT | Qt::Key_Delete);\r
deleteAction->setIcon(KIcon("editdelete"));\r
connect(deleteAction, SIGNAL(triggered()), this, SLOT(deleteItems()));\r
\r
#include "generalsettingspage.h"
-#include <qlayout.h>
-//Added by qt3to4:
-#include <Q3VBoxLayout>
#include <kdialog.h>
-#include <qlabel.h>
-#include <qlineedit.h>
-
-#include <q3grid.h>
-#include <q3groupbox.h>
-#include <klocale.h>
-#include <qcheckbox.h>
-#include <q3buttongroup.h>
-#include <qpushbutton.h>
#include <kfiledialog.h>
-#include <qradiobutton.h>
+#include <klocale.h>
#include <kvbox.h>
+#include <QCheckBox>
+#include <QGroupBox>
+#include <QLabel>
+#include <QLineEdit>
+#include <QPushButton>
+#include <QRadioButton>
+
#include "dolphinsettings.h"
#include "dolphinmainwindow.h"
#include "dolphinview.h"
+
#include "dolphin_generalsettings.h"
GeneralSettingsPage::GeneralSettingsPage(DolphinMainWindow* mainWin,QWidget* parent) :
m_mainWindow(mainWin),
m_homeUrl(0),
m_startSplit(0),
- m_startEditable(0)
+ m_startEditable(0),
+ m_showDeleteCommand(0)
{
- Q3VBoxLayout* topLayout = new Q3VBoxLayout(this, 2, KDialog::spacingHint());
-
const int spacing = KDialog::spacingHint();
- const int margin = KDialog::marginHint();
- const QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed);
-
GeneralSettings* settings = DolphinSettings::instance().generalSettings();
+ QVBoxLayout* topLayout = new QVBoxLayout(this);
KVBox* vBox = new KVBox(this);
- vBox->setSizePolicy(sizePolicy);
vBox->setSpacing(spacing);
- vBox->setMargin(margin);
- vBox->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Ignored);
- // create 'Home Url' editor
- Q3GroupBox* homeGroup = new Q3GroupBox(1, Qt::Horizontal, i18n("Home Folder"), vBox);
- homeGroup->setSizePolicy(sizePolicy);
- homeGroup->setMargin(margin);
+ // create 'Home URL' editor
+ QGroupBox* homeBox = new QGroupBox(i18n("Home folder"), vBox);
- KHBox* homeUrlBox = new KHBox(homeGroup);
- homeUrlBox->setSizePolicy(sizePolicy);
+ KHBox* homeUrlBox = new KHBox(homeBox);
homeUrlBox->setSpacing(spacing);
new QLabel(i18n("Location:"), homeUrlBox);
connect(selectHomeUrlButton, SIGNAL(clicked()),
this, SLOT(selectHomeUrl()));
- KHBox* buttonBox = new KHBox(homeGroup);
- buttonBox->setSizePolicy(sizePolicy);
+ KHBox* buttonBox = new KHBox(homeBox);
buttonBox->setSpacing(spacing);
+
QPushButton* useCurrentButton = new QPushButton(i18n("Use current location"), buttonBox);
connect(useCurrentButton, SIGNAL(clicked()),
this, SLOT(useCurrentLocation()));
QPushButton* useDefaultButton = new QPushButton(i18n("Use default location"), buttonBox);
connect(useDefaultButton, SIGNAL(clicked()),
- this, SLOT(useDefaulLocation()));
+ this, SLOT(useDefaultLocation()));
+
+ QVBoxLayout* homeBoxLayout = new QVBoxLayout(homeBox);
+ homeBoxLayout->addWidget(homeUrlBox);
+ homeBoxLayout->addWidget(buttonBox);
QGroupBox* startBox = new QGroupBox(i18n("Start"), vBox);
startBoxLayout->addWidget(m_startSplit);
startBoxLayout->addWidget(m_startEditable);
+ m_showDeleteCommand = new QCheckBox(i18n("Show the command 'Delete' in context menu"), vBox);
+ // TODO: use global config like in Konqueror or is this a custom setting for Dolphin?
+ m_showDeleteCommand->setChecked(settings->showDeleteCommand());
+
// Add a dummy widget with no restriction regarding
// a vertical resizing. This assures that the dialog layout
// is not stretched vertically.
settings->setSplitView(m_startSplit->isChecked());
settings->setEditableUrl(m_startEditable->isChecked());
+ settings->setShowDeleteCommand(m_showDeleteCommand->isChecked());
}
void GeneralSettingsPage::selectHomeUrl()
m_homeUrl->setText(view->url().prettyUrl());
}
-void GeneralSettingsPage::useDefaulLocation()
+void GeneralSettingsPage::useDefaultLocation()
{
m_homeUrl->setText("file://" + QDir::homePath());
}