diff options
Diffstat (limited to 'src/panels/folders')
| -rw-r--r-- | src/panels/folders/foldersitemlistwidget.cpp | 1 | ||||
| -rw-r--r-- | src/panels/folders/folderspanel.cpp | 17 | ||||
| -rw-r--r-- | src/panels/folders/treeviewcontextmenu.cpp | 52 | ||||
| -rw-r--r-- | src/panels/folders/treeviewcontextmenu.h | 1 |
4 files changed, 47 insertions, 24 deletions
diff --git a/src/panels/folders/foldersitemlistwidget.cpp b/src/panels/folders/foldersitemlistwidget.cpp index b4f9a5be8..5b2b20698 100644 --- a/src/panels/folders/foldersitemlistwidget.cpp +++ b/src/panels/folders/foldersitemlistwidget.cpp @@ -33,4 +33,3 @@ QPalette::ColorRole FoldersItemListWidget::normalTextColorRole() const return QPalette::WindowText; } -#include "foldersitemlistwidget.moc" diff --git a/src/panels/folders/folderspanel.cpp b/src/panels/folders/folderspanel.cpp index 46c1b3450..1f7d007ca 100644 --- a/src/panels/folders/folderspanel.cpp +++ b/src/panels/folders/folderspanel.cpp @@ -137,15 +137,15 @@ void FoldersPanel::showEvent(QShowEvent* event) // opening the folders panel. view->setOpacity(0); - connect(view, SIGNAL(roleEditingFinished(int,QByteArray,QVariant)), - this, SLOT(slotRoleEditingFinished(int,QByteArray,QVariant))); + connect(view, &KFileItemListView::roleEditingFinished, + this, &FoldersPanel::slotRoleEditingFinished); m_model = new KFileItemModel(this); m_model->setShowDirectoriesOnly(true); m_model->setShowHiddenFiles(FoldersPanelSettings::hiddenFilesShown()); // Use a QueuedConnection to give the view the possibility to react first on the // finished loading. - connect(m_model, SIGNAL(directoryLoadingCompleted()), this, SLOT(slotLoadingCompleted()), Qt::QueuedConnection); + connect(m_model, &KFileItemModel::directoryLoadingCompleted, this, &FoldersPanel::slotLoadingCompleted, Qt::QueuedConnection); m_controller = new KItemListController(m_model, view, this); m_controller->setSelectionBehavior(KItemListController::SingleSelection); @@ -154,11 +154,11 @@ void FoldersPanel::showEvent(QShowEvent* event) m_controller->setAutoActivationDelay(750); m_controller->setSingleClickActivationEnforced(true); - connect(m_controller, SIGNAL(itemActivated(int)), this, SLOT(slotItemActivated(int))); - connect(m_controller, SIGNAL(itemMiddleClicked(int)), this, SLOT(slotItemMiddleClicked(int))); - connect(m_controller, SIGNAL(itemContextMenuRequested(int,QPointF)), this, SLOT(slotItemContextMenuRequested(int,QPointF))); - connect(m_controller, SIGNAL(viewContextMenuRequested(QPointF)), this, SLOT(slotViewContextMenuRequested(QPointF))); - connect(m_controller, SIGNAL(itemDropEvent(int,QGraphicsSceneDragDropEvent*)), this, SLOT(slotItemDropEvent(int,QGraphicsSceneDragDropEvent*))); + connect(m_controller, &KItemListController::itemActivated, this, &FoldersPanel::slotItemActivated); + connect(m_controller, &KItemListController::itemMiddleClicked, this, &FoldersPanel::slotItemMiddleClicked); + connect(m_controller, &KItemListController::itemContextMenuRequested, this, &FoldersPanel::slotItemContextMenuRequested); + connect(m_controller, &KItemListController::viewContextMenuRequested, this, &FoldersPanel::slotViewContextMenuRequested); + connect(m_controller, &KItemListController::itemDropEvent, this, &FoldersPanel::slotItemDropEvent); KItemListContainer* container = new KItemListContainer(m_controller, this); container->setEnabledFrame(false); @@ -328,4 +328,3 @@ void FoldersPanel::updateCurrentItem(int index) m_controller->view()->scrollToItem(index); } -#include "folderspanel.moc" diff --git a/src/panels/folders/treeviewcontextmenu.cpp b/src/panels/folders/treeviewcontextmenu.cpp index 83ffa87a7..9450d3e17 100644 --- a/src/panels/folders/treeviewcontextmenu.cpp +++ b/src/panels/folders/treeviewcontextmenu.cpp @@ -22,18 +22,27 @@ #include <KFileItem> #include <KIconLoader> +#include <KIO/CopyJob> #include <KIO/DeleteJob> +#include <KIO/JobUiDelegate> #include <KMenu> -#include <konqmimedata.h> +#include <KIcon> +#include <KJobWidgets> +#include <KSharedConfig> +#include <KConfigGroup> +#include <kurlmimedata.h> #include <KFileItemListProperties> #include <konq_operations.h> #include <KLocale> +#include <KIO/Paste> +#include <KIO/FileUndoManager> #include <KPropertiesDialog> #include "folderspanel.h" #include <QApplication> #include <QClipboard> +#include <QMimeData> TreeViewContextMenu::TreeViewContextMenu(FoldersPanel* parent, const KFileItem& fileInfo) : @@ -57,14 +66,14 @@ void TreeViewContextMenu::open() // insert 'Cut', 'Copy' and 'Paste' QAction* cutAction = new QAction(KIcon("edit-cut"), i18nc("@action:inmenu", "Cut"), this); cutAction->setEnabled(capabilities.supportsMoving()); - connect(cutAction, SIGNAL(triggered()), this, SLOT(cut())); + connect(cutAction, &QAction::triggered, this, &TreeViewContextMenu::cut); QAction* copyAction = new QAction(KIcon("edit-copy"), i18nc("@action:inmenu", "Copy"), this); - connect(copyAction, SIGNAL(triggered()), this, SLOT(copy())); + connect(copyAction, &QAction::triggered, this, &TreeViewContextMenu::copy); const QPair<bool, QString> pasteInfo = KonqOperations::pasteInfo(m_fileItem.url()); QAction* pasteAction = new QAction(KIcon("edit-paste"), pasteInfo.second, this); - connect(pasteAction, SIGNAL(triggered()), this, SLOT(paste())); + connect(pasteAction, &QAction::triggered, this, &TreeViewContextMenu::paste); pasteAction->setEnabled(pasteInfo.first); popup->addAction(cutAction); @@ -76,7 +85,7 @@ void TreeViewContextMenu::open() QAction* renameAction = new QAction(i18nc("@action:inmenu", "Rename..."), this); renameAction->setEnabled(capabilities.supportsMoving()); renameAction->setIcon(KIcon("edit-rename")); - connect(renameAction, SIGNAL(triggered()), this, SLOT(rename())); + connect(renameAction, &QAction::triggered, this, &TreeViewContextMenu::rename); popup->addAction(renameAction); // insert 'Move to Trash' and (optionally) 'Delete' @@ -90,7 +99,7 @@ void TreeViewContextMenu::open() i18nc("@action:inmenu", "Move to Trash"), this); const bool enableMoveToTrash = capabilities.isLocal() && capabilities.supportsMoving(); moveToTrashAction->setEnabled(enableMoveToTrash); - connect(moveToTrashAction, SIGNAL(triggered()), this, SLOT(moveToTrash())); + connect(moveToTrashAction, &QAction::triggered, this, &TreeViewContextMenu::moveToTrash); popup->addAction(moveToTrashAction); } else { showDeleteCommand = true; @@ -99,7 +108,7 @@ void TreeViewContextMenu::open() if (showDeleteCommand) { QAction* deleteAction = new QAction(KIcon("edit-delete"), i18nc("@action:inmenu", "Delete"), this); deleteAction->setEnabled(capabilities.supportsDeleting()); - connect(deleteAction, SIGNAL(triggered()), this, SLOT(deleteItem())); + connect(deleteAction, &QAction::triggered, this, &TreeViewContextMenu::deleteItem); popup->addAction(deleteAction); } @@ -111,7 +120,7 @@ void TreeViewContextMenu::open() showHiddenFilesAction->setCheckable(true); showHiddenFilesAction->setChecked(m_parent->showHiddenFiles()); popup->addAction(showHiddenFilesAction); - connect(showHiddenFilesAction, SIGNAL(toggled(bool)), this, SLOT(setShowHiddenFiles(bool))); + connect(showHiddenFilesAction, &QAction::toggled, this, &TreeViewContextMenu::setShowHiddenFiles); // insert 'Automatic Scrolling' QAction* autoScrollingAction = new QAction(i18nc("@action:inmenu", "Automatic Scrolling"), this); @@ -120,13 +129,13 @@ void TreeViewContextMenu::open() // TODO: Temporary disabled. Horizontal autoscrolling will be implemented later either // in KItemViews or manually as part of the FoldersPanel //popup->addAction(autoScrollingAction); - connect(autoScrollingAction, SIGNAL(toggled(bool)), this, SLOT(setAutoScrolling(bool))); + connect(autoScrollingAction, &QAction::toggled, this, &TreeViewContextMenu::setAutoScrolling); if (!m_fileItem.isNull()) { // insert 'Properties' entry QAction* propertiesAction = new QAction(i18nc("@action:inmenu", "Properties"), this); propertiesAction->setIcon(KIcon("document-properties")); - connect(propertiesAction, SIGNAL(triggered()), this, SLOT(showProperties())); + connect(propertiesAction, &QAction::triggered, this, &TreeViewContextMenu::showProperties); popup->addAction(propertiesAction); } @@ -152,7 +161,8 @@ void TreeViewContextMenu::populateMimeData(QMimeData* mimeData, bool cut) KUrl::List mostLocalUrls; bool dummy; mostLocalUrls.append(m_fileItem.mostLocalUrl(dummy)); - KonqMimeData::populateMimeData(mimeData, kdeUrls, mostLocalUrls, cut); + KIO::setClipboardDataCut(mimeData, cut); + KUrlMimeData::setUrls(kdeUrls, mostLocalUrls, mimeData); } void TreeViewContextMenu::cut() @@ -181,12 +191,27 @@ void TreeViewContextMenu::rename() void TreeViewContextMenu::moveToTrash() { - KonqOperations::del(m_parent, KonqOperations::TRASH, m_fileItem.url()); + KUrl::List list = KUrl::List() << m_fileItem.url(); + KIO::JobUiDelegate uiDelegate; + uiDelegate.setWindow(m_parent); + if (uiDelegate.askDeleteConfirmation(list, KIO::JobUiDelegate::Trash, KIO::JobUiDelegate::DefaultConfirmation)) { + KIO::Job* job = KIO::trash(list); + KIO::FileUndoManager::self()->recordJob(KIO::FileUndoManager::Trash, list, KUrl("trash:/"), job); + KJobWidgets::setWindow(job, m_parent); + job->ui()->setAutoErrorHandlingEnabled(true); + } } void TreeViewContextMenu::deleteItem() { - KonqOperations::del(m_parent, KonqOperations::DEL, m_fileItem.url()); + KUrl::List list = KUrl::List() << m_fileItem.url(); + KIO::JobUiDelegate uiDelegate; + uiDelegate.setWindow(m_parent); + if (uiDelegate.askDeleteConfirmation(list, KIO::JobUiDelegate::Delete, KIO::JobUiDelegate::DefaultConfirmation)) { + KIO::Job* job = KIO::del(list); + KJobWidgets::setWindow(job, m_parent); + job->ui()->setAutoErrorHandlingEnabled(true); + } } void TreeViewContextMenu::showProperties() @@ -206,4 +231,3 @@ void TreeViewContextMenu::setAutoScrolling(bool enable) m_parent->setAutoScrolling(enable); } -#include "treeviewcontextmenu.moc" diff --git a/src/panels/folders/treeviewcontextmenu.h b/src/panels/folders/treeviewcontextmenu.h index 0b3fd79bd..598ffaed6 100644 --- a/src/panels/folders/treeviewcontextmenu.h +++ b/src/panels/folders/treeviewcontextmenu.h @@ -23,6 +23,7 @@ #include <QObject> #include <KFileItem> +class QMimeData; class FoldersPanel; /** |
