X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/4216e814d4e5e1249eb7004b990a69fc7388b884..61a4e8691d600a1d105142ce44570c4107600a04:/src/dolphinmainwindow.cpp diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index d621b3ffc..6eb4fa94e 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -73,7 +73,7 @@ #include DolphinMainWindow::DolphinMainWindow(int id) : - KMainWindow(0), + KXmlGuiWindow(0), m_newMenu(0), m_splitter(0), m_activeView(0), @@ -305,6 +305,8 @@ void DolphinMainWindow::slotSortingChanged(DolphinView::Sorting sorting) case DolphinView::SortByGroup: action = actionCollection()->action("by_group"); break; + case DolphinView::SortByType: + action = actionCollection()->action("by_type"); default: break; } @@ -394,7 +396,7 @@ void DolphinMainWindow::closeEvent(QCloseEvent* event) settings.save(); - KMainWindow::closeEvent(event); + KXmlGuiWindow::closeEvent(event); } void DolphinMainWindow::saveProperties(KConfig* config) @@ -703,6 +705,11 @@ void DolphinMainWindow::sortByGroup() m_activeView->setSorting(DolphinView::SortByGroup); } +void DolphinMainWindow::sortByType() +{ + m_activeView->setSorting(DolphinView::SortByType); +} + void DolphinMainWindow::toggleSortOrder() { const Qt::SortOrder order = (m_activeView->sortOrder() == Qt::AscendingOrder) ? @@ -1105,7 +1112,7 @@ void DolphinMainWindow::setupActions() KToggleAction* columnView = actionCollection()->add("columns"); columnView->setText(i18n("Columns")); columnView->setShortcut(Qt::CTRL | Qt::Key_3); - columnView->setIcon(KIcon("view-tree")); + columnView->setIcon(KIcon("fileview-column")); connect(columnView, SIGNAL(triggered()), this, SLOT(setColumnView())); QActionGroup* viewModeGroup = new QActionGroup(this); @@ -1137,6 +1144,10 @@ void DolphinMainWindow::setupActions() sortByGroup->setText(i18n("By Group")); connect(sortByGroup, SIGNAL(triggered()), this, SLOT(sortByGroup())); + KToggleAction* sortByType = actionCollection()->add("by_type"); + sortByType->setText(i18n("By Type")); + connect(sortByType, SIGNAL(triggered()), this, SLOT(sortByType())); + QActionGroup* sortGroup = new QActionGroup(this); sortGroup->addAction(sortByName); sortGroup->addAction(sortBySize); @@ -1144,6 +1155,7 @@ void DolphinMainWindow::setupActions() sortGroup->addAction(sortByPermissions); sortGroup->addAction(sortByOwner); sortGroup->addAction(sortByGroup); + sortGroup->addAction(sortByType); KToggleAction* sortDescending = actionCollection()->add("descending"); sortDescending->setText(i18n("Descending")); @@ -1234,7 +1246,7 @@ void DolphinMainWindow::setupActions() QAction* findFile = actionCollection()->addAction("find_file"); findFile->setText(i18n("Find File...")); - findFile->setShortcut(Qt::Key_F); + findFile->setShortcut(Qt::CTRL | Qt::Key_F); findFile->setIcon(KIcon("file-find")); connect(findFile, SIGNAL(triggered()), this, SLOT(findFile())); @@ -1259,13 +1271,15 @@ void DolphinMainWindow::setupDockWidgets() // after the dock concept has been finalized. // setup "Information" + + // TODO: temporary deactivated info sidebar because of some minor side effects + QDockWidget* infoDock = new QDockWidget(i18n("Information")); infoDock->setObjectName("infoDock"); infoDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea); SidebarPage* infoWidget = new InfoSidebarPage(infoDock); infoDock->setWidget(infoWidget); - infoDock->toggleViewAction()->setText(i18n("Show Information Panel")); actionCollection()->addAction("show_info_panel", infoDock->toggleViewAction()); @@ -1273,7 +1287,7 @@ void DolphinMainWindow::setupDockWidgets() connectSidebarPage(infoWidget); // setup "Tree View" - QDockWidget* treeViewDock = new QDockWidget(i18n("Folders")); // TODO: naming? + QDockWidget* treeViewDock = new QDockWidget(i18n("Folders")); treeViewDock->setObjectName("treeViewDock"); treeViewDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea); TreeViewSidebarPage* treeWidget = new TreeViewSidebarPage(treeViewDock); @@ -1297,6 +1311,10 @@ void DolphinMainWindow::setupDockWidgets() KFilePlacesView *listView = new KFilePlacesView(placesDock); placesDock->setWidget(listView); listView->setModel(DolphinSettings::instance().placesModel()); + + placesDock->toggleViewAction()->setText(i18n("Show Places Panel")); + actionCollection()->addAction("show_places_panel", placesDock->toggleViewAction()); + addDockWidget(Qt::LeftDockWidgetArea, placesDock); connect(listView, SIGNAL(urlChanged(KUrl)), this, SLOT(changeUrl(KUrl)));