descending->setChecked(sortDescending);\r
}\r
\r
+void DolphinMainWindow::slotAdditionalInfoChanged(KFileItemDelegate::AdditionalInformation info)\r
+{\r
+ QAction* action = 0;\r
+ switch (info) {\r
+ case KFileItemDelegate::FriendlyMimeType:\r
+ action = actionCollection()->action("show_mime_info");\r
+ break;\r
+ case KFileItemDelegate::Size:\r
+ action = actionCollection()->action("show_size_info");\r
+ break;\r
+ case KFileItemDelegate::ModificationTime:\r
+ action = actionCollection()->action("show_date_info");\r
+ break;\r
+ case KFileItemDelegate::NoInformation:\r
+ default:\r
+ action = actionCollection()->action("clear_info");\r
+ break;\r
+ }\r
+\r
+ if (action != 0) {\r
+ KToggleAction* toggleAction = static_cast<KToggleAction*>(action);\r
+ toggleAction->setChecked(true);\r
+\r
+ QActionGroup* group = toggleAction->actionGroup();\r
+ Q_ASSERT(group != 0);\r
+ group->setEnabled(m_activeView->mode() == DolphinView::IconsView);\r
+ }\r
+}\r
+\r
void DolphinMainWindow::slotSelectionChanged()\r
{\r
updateEditActions();\r
\r
void DolphinMainWindow::cut()\r
{\r
+ QClipboard* clipboard = QApplication::clipboard();\r
+ const QMimeData* currentMimeData = clipboard->mimeData();\r
+ const bool hadCutSelection = KonqMimeData::decodeIsCutSelection(currentMimeData);\r
+\r
QMimeData* mimeData = new QMimeData();\r
const KUrl::List kdeUrls = m_activeView->selectedUrls();\r
const KUrl::List mostLocalUrls;\r
KonqMimeData::populateMimeData(mimeData, kdeUrls, mostLocalUrls, true);\r
QApplication::clipboard()->setMimeData(mimeData);\r
+\r
+ if (hadCutSelection) {\r
+ // If an old cut selection has been applied, the view must\r
+ // be reloaded to get the original icons of the items without an\r
+ // applied item effect.\r
+ m_view[PrimaryIdx]->reload();\r
+ if (m_view[SecondaryIdx] != 0) {\r
+ m_view[SecondaryIdx]->reload();\r
+ }\r
+ }\r
+ else {\r
+ // apply an item effect for the icons of all cut items\r
+ m_view[PrimaryIdx]->updateCutItems();\r
+ if (m_view[SecondaryIdx] != 0) {\r
+ m_view[SecondaryIdx]->updateCutItems();\r
+ }\r
+ }\r
}\r
\r
void DolphinMainWindow::copy()\r
if (!urls.isEmpty()) {\r
pasteAction->setEnabled(true);\r
\r
- const int count = urls.count();\r
- if (count == 1) {\r
- pasteAction->setText(i18n("Paste 1 File"));\r
- }\r
- else {\r
- pasteAction->setText(i18n("Paste %1 Files", count));\r
- }\r
+ pasteAction->setText(i18np("Paste One File", "Paste %1 Files", urls.count()));\r
}\r
else {\r
pasteAction->setEnabled(false);\r
m_activeView->setSortOrder(order);\r
}\r
\r
+void DolphinMainWindow::clearInfo()\r
+{\r
+ m_activeView->setAdditionalInfo(KFileItemDelegate::NoInformation);\r
+}\r
+\r
+void DolphinMainWindow::showMimeInfo()\r
+{\r
+ clearStatusBar();\r
+ m_activeView->setAdditionalInfo(KFileItemDelegate::FriendlyMimeType);\r
+}\r
+\r
+void DolphinMainWindow::showSizeInfo()\r
+{\r
+ clearStatusBar();\r
+ m_activeView->setAdditionalInfo(KFileItemDelegate::Size);\r
+}\r
+\r
+void DolphinMainWindow::showDateInfo()\r
+{\r
+ clearStatusBar();\r
+ m_activeView->setAdditionalInfo(KFileItemDelegate::ModificationTime);\r
+}\r
+\r
void DolphinMainWindow::toggleSplitView()\r
{\r
if (m_view[SecondaryIdx] == 0) {\r
sortDescending->setText(i18n("Descending"));\r
connect(sortDescending, SIGNAL(triggered()), this, SLOT(toggleSortOrder()));\r
\r
+ KToggleAction* clearInfo = actionCollection()->add<KToggleAction>("clear_info");\r
+ clearInfo->setText(i18n("No Information"));\r
+ connect(clearInfo, SIGNAL(triggered()), this, SLOT(clearInfo()));\r
+\r
+ KToggleAction* showMimeInfo = actionCollection()->add<KToggleAction>("show_mime_info");\r
+ showMimeInfo->setText(i18n("Type"));\r
+ connect(showMimeInfo, SIGNAL(triggered()), this, SLOT(showMimeInfo()));\r
+\r
+ KToggleAction* showSizeInfo = actionCollection()->add<KToggleAction>("show_size_info");\r
+ showSizeInfo->setText(i18n("Size"));\r
+ connect(showSizeInfo, SIGNAL(triggered()), this, SLOT(showSizeInfo()));\r
+\r
+ KToggleAction* showDateInfo = actionCollection()->add<KToggleAction>("show_date_info");\r
+ showDateInfo->setText(i18n("Date"));\r
+ connect(showDateInfo, SIGNAL(triggered()), this, SLOT(showDateInfo()));\r
+\r
+ QActionGroup* infoGroup = new QActionGroup(this);\r
+ infoGroup->addAction(clearInfo);\r
+ infoGroup->addAction(showMimeInfo);\r
+ infoGroup->addAction(showSizeInfo);\r
+ infoGroup->addAction(showDateInfo);\r
+\r
KToggleAction* showPreview = actionCollection()->add<KToggleAction>("show_preview");\r
showPreview->setText(i18n("Preview"));\r
showPreview->setIcon(KIcon("thumbnail-show"));\r
\r
slotSortingChanged(m_activeView->sorting());\r
slotSortOrderChanged(m_activeView->sortOrder());\r
+ slotAdditionalInfoChanged(m_activeView->additionalInfo());\r
\r
KToggleAction* showFilterBarAction =\r
static_cast<KToggleAction*>(actionCollection()->action("show_filter_bar"));\r
this, SLOT(slotSortingChanged(DolphinView::Sorting)));\r
connect(view, SIGNAL(sortOrderChanged(Qt::SortOrder)),\r
this, SLOT(slotSortOrderChanged(Qt::SortOrder)));\r
+ connect(view, SIGNAL(additionalInfoChanged(KFileItemDelegate::AdditionalInformation)),\r
+ this, SLOT(slotAdditionalInfoChanged(KFileItemDelegate::AdditionalInformation)));\r
connect(view, SIGNAL(selectionChanged()),\r
this, SLOT(slotSelectionChanged()));\r
connect(view, SIGNAL(showFilterBarChanged(bool)),\r