diff options
| author | Peter Penz <[email protected]> | 2007-10-26 17:36:16 +0000 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2007-10-26 17:36:16 +0000 |
| commit | f11c699fa203dd2cde0e85c63a6d186e3fa6a3de (patch) | |
| tree | 1ef300c9ed2f6406dd4b1a893162a4e34fc8428a /src/dolphinmainwindow.cpp | |
| parent | 6c1153092ee766c2668ce125a72090da162ed4ab (diff) | |
due to the recent tagging freeze this commit contains several fixes in one:
* the filterbar now also filters directories (works also in the column-view :-))
* The "Additional Information" menu entry now also works for showing/hiding the columns of the details view. This also implies that the columns for the details view can now be adjusted per directory -> we have now a consistent behavior between the icons view and details view. Still open: the view properties dialog must be fixed
* Don't show a "Nepomuk not available" error message when starting Dolphin and Nepomuk is not available.
* Fix issue that the information panel blocked the application because of parsing the full meta data of a huge file.
svn path=/trunk/KDE/kdebase/apps/; revision=729704
Diffstat (limited to 'src/dolphinmainwindow.cpp')
| -rw-r--r-- | src/dolphinmainwindow.cpp | 88 |
1 files changed, 63 insertions, 25 deletions
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 7084897f1..f4f45ad70 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -326,32 +326,51 @@ void DolphinMainWindow::slotSortOrderChanged(Qt::SortOrder order) void DolphinMainWindow::slotAdditionalInfoChanged(KFileItemDelegate::InformationList list) { - QAction* showMimeInfo = actionCollection()->action("show_mime_info"); QAction* showSizeInfo = actionCollection()->action("show_size_info"); QAction* showDateInfo = actionCollection()->action("show_date_info"); + QAction* showPermissionsInfo = actionCollection()->action("show_permissions_info"); + QAction* showOwnerInfo = actionCollection()->action("show_owner_info"); + QAction* showGroupInfo = actionCollection()->action("show_group_info"); + QAction* showMimeInfo = actionCollection()->action("show_mime_info"); - showMimeInfo->setChecked(false); showSizeInfo->setChecked(false); showDateInfo->setChecked(false); + showPermissionsInfo->setChecked(false); + showOwnerInfo->setChecked(false); + showGroupInfo->setChecked(false); + showMimeInfo->setChecked(false); const DolphinView* view = m_activeViewContainer->view(); - // currently only the icons view supports additional information - const bool enable = (view->mode() == DolphinView::IconsView); - showMimeInfo->setEnabled(enable); + + // currently the column view does not support additional information + const bool enable = (view->mode() != DolphinView::ColumnView); showSizeInfo->setEnabled(enable); showDateInfo->setEnabled(enable); + showPermissionsInfo->setEnabled(enable); + showOwnerInfo->setEnabled(enable); + showGroupInfo->setEnabled(enable); + showMimeInfo->setEnabled(enable); foreach (KFileItemDelegate::Information info, list) { switch (info) { - case KFileItemDelegate::FriendlyMimeType: - showMimeInfo->setChecked(true); - break; case KFileItemDelegate::Size: showSizeInfo->setChecked(true); break; case KFileItemDelegate::ModificationTime: showDateInfo->setChecked(true); break; + case KFileItemDelegate::Permissions: + showPermissionsInfo->setChecked(true); + break; + case KFileItemDelegate::Owner: + showOwnerInfo->setChecked(true); + break; + case KFileItemDelegate::OwnerAndGroup: + showGroupInfo->setChecked(true); + break; + case KFileItemDelegate::FriendlyMimeType: + showMimeInfo->setChecked(true); + break; default: break; } @@ -770,11 +789,6 @@ void DolphinMainWindow::toggleSortCategorization() view->setCategorizedSorting(!categorizedSorting); } -void DolphinMainWindow::toggleMimeInfo() -{ - toggleAdditionalInfo("show_mime_info", KFileItemDelegate::FriendlyMimeType); -} - void DolphinMainWindow::toggleSizeInfo() { toggleAdditionalInfo("show_size_info", KFileItemDelegate::Size); @@ -785,6 +799,26 @@ void DolphinMainWindow::toggleDateInfo() toggleAdditionalInfo("show_date_info", KFileItemDelegate::ModificationTime); } +void DolphinMainWindow::togglePermissionsInfo() +{ + toggleAdditionalInfo("show_permissions_info", KFileItemDelegate::Permissions); +} + +void DolphinMainWindow::toggleOwnerInfo() +{ + toggleAdditionalInfo("show_owner_info", KFileItemDelegate::Owner); +} + +void DolphinMainWindow::toggleGroupInfo() +{ + toggleAdditionalInfo("show_group_info", KFileItemDelegate::OwnerAndGroup); +} + +void DolphinMainWindow::toggleMimeInfo() +{ + toggleAdditionalInfo("show_mime_info", KFileItemDelegate::FriendlyMimeType); +} + void DolphinMainWindow::toggleSplitView() { if (m_viewContainer[SecondaryView] == 0) { @@ -1037,14 +1071,6 @@ void DolphinMainWindow::init() // assure a proper default size if Dolphin runs the first time resize(700, 500); } -#ifdef HAVE_NEPOMUK - if (!MetaDataWidget::metaDataAvailable()) { - DolphinStatusBar* statusBar = activeViewContainer()->statusBar(); - statusBar->setMessage(i18nc("@info:status", - "Failed to contact Nepomuk service, annotation and tagging are disabled."), - DolphinStatusBar::Error); - } -#endif emit urlChanged(homeUrl); } @@ -1219,10 +1245,6 @@ void DolphinMainWindow::setupActions() showInGroups->setText(i18nc("@action:inmenu View", "Show in Groups")); connect(showInGroups, SIGNAL(triggered()), this, SLOT(toggleSortCategorization())); - KToggleAction* showMimeInfo = actionCollection()->add<KToggleAction>("show_mime_info"); - showMimeInfo->setText(i18nc("@action:inmenu Additional information", "Type")); - connect(showMimeInfo, SIGNAL(triggered()), this, SLOT(toggleMimeInfo())); - KToggleAction* showSizeInfo = actionCollection()->add<KToggleAction>("show_size_info"); showSizeInfo->setText(i18nc("@action:inmenu Additional information", "Size")); connect(showSizeInfo, SIGNAL(triggered()), this, SLOT(toggleSizeInfo())); @@ -1231,6 +1253,22 @@ void DolphinMainWindow::setupActions() showDateInfo->setText(i18nc("@action:inmenu Additional information", "Date")); connect(showDateInfo, SIGNAL(triggered()), this, SLOT(toggleDateInfo())); + KToggleAction* showPermissionsInfo = actionCollection()->add<KToggleAction>("show_permissions_info"); + showPermissionsInfo->setText(i18nc("@action:inmenu Additional information", "Permissions")); + connect(showPermissionsInfo, SIGNAL(triggered()), this, SLOT(togglePermissionsInfo())); + + KToggleAction* showOwnerInfo = actionCollection()->add<KToggleAction>("show_owner_info"); + showOwnerInfo->setText(i18nc("@action:inmenu Additional information", "Owner")); + connect(showOwnerInfo, SIGNAL(triggered()), this, SLOT(toggleOwnerInfo())); + + KToggleAction* showGroupInfo = actionCollection()->add<KToggleAction>("show_group_info"); + showGroupInfo->setText(i18nc("@action:inmenu Additional information", "Group")); + connect(showGroupInfo, SIGNAL(triggered()), this, SLOT(toggleGroupInfo())); + + KToggleAction* showMimeInfo = actionCollection()->add<KToggleAction>("show_mime_info"); + showMimeInfo->setText(i18nc("@action:inmenu Additional information", "Type")); + connect(showMimeInfo, SIGNAL(triggered()), this, SLOT(toggleMimeInfo())); + KToggleAction* showPreview = actionCollection()->add<KToggleAction>("show_preview"); showPreview->setText(i18nc("@action:intoolbar", "Preview")); showPreview->setIcon(KIcon("fileview-preview")); |
