X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/da795d20e2f2fa57ac9cafdffcfac4d092d8eaea..db7d239632009906b9a8cfb24cb799fee7fb0306:/src/dolphinmainwindow.cpp diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 59fc84af3..536da2a47 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -753,20 +753,9 @@ void DolphinMainWindow::toggleSplitView() m_view[SecondaryIdx]->show(); } else { // remove secondary view - if (m_activeView == m_view[PrimaryIdx]) { - m_view[SecondaryIdx]->close(); - m_view[SecondaryIdx]->deleteLater(); - m_view[SecondaryIdx] = 0; - } else { - // The secondary view is active, hence from the users point of view - // the content of the secondary view should be moved to the primary view. - // From an implementation point of view it is more efficient to close - // the primary view and exchange the internal pointers afterwards. - m_view[PrimaryIdx]->close(); - delete m_view[PrimaryIdx]; - m_view[PrimaryIdx] = m_view[SecondaryIdx]; - m_view[SecondaryIdx] = 0; - } + m_view[SecondaryIdx]->close(); + m_view[SecondaryIdx]->deleteLater(); + m_view[SecondaryIdx] = 0; } setActiveView(m_view[PrimaryIdx]); emit activeViewChanged(); @@ -997,13 +986,7 @@ void DolphinMainWindow::init() void DolphinMainWindow::loadSettings() { GeneralSettings* settings = DolphinSettings::instance().generalSettings(); - - KToggleAction* splitAction = static_cast(actionCollection()->action("split_view")); - if (settings->splitView()) { - splitAction->setChecked(true); - toggleSplitView(); - } - + updateSplitAction(settings->splitView()); updateViewActions(); } @@ -1078,13 +1061,13 @@ void DolphinMainWindow::setupActions() KToggleAction* iconsView = actionCollection()->add("icons"); iconsView->setText(i18n("Icons")); iconsView->setShortcut(Qt::CTRL | Qt::Key_1); - iconsView->setIcon(KIcon("view-icon")); + iconsView->setIcon(KIcon("fileview-icon")); connect(iconsView, SIGNAL(triggered()), this, SLOT(setIconsView())); KToggleAction* detailsView = actionCollection()->add("details"); detailsView->setText(i18n("Details")); detailsView->setShortcut(Qt::CTRL | Qt::Key_2); - detailsView->setIcon(KIcon("fileview-text")); + detailsView->setIcon(KIcon("fileview-detailed")); connect(detailsView, SIGNAL(triggered()), this, SLOT(setDetailsView())); KToggleAction* columnView = actionCollection()->add("columns"); @@ -1167,7 +1150,7 @@ void DolphinMainWindow::setupActions() KToggleAction* showPreview = actionCollection()->add("show_preview"); showPreview->setText(i18n("Preview")); - showPreview->setIcon(KIcon("thumbnail-show")); + showPreview->setIcon(KIcon("fileview-preview")); connect(showPreview, SIGNAL(triggered()), this, SLOT(togglePreview())); KToggleAction* showHiddenFiles = actionCollection()->add("show_hidden_files"); @@ -1175,10 +1158,9 @@ void DolphinMainWindow::setupActions() showHiddenFiles->setShortcut(Qt::ALT | Qt::Key_Period); connect(showHiddenFiles, SIGNAL(triggered()), this, SLOT(toggleShowHiddenFiles())); - KToggleAction* split = actionCollection()->add("split_view"); - split->setText(i18n("Split")); + QAction* split = actionCollection()->addAction("split_view"); split->setShortcut(Qt::Key_F10); - split->setIcon(KIcon("view-left-right")); + updateSplitAction(false); connect(split, SIGNAL(triggered()), this, SLOT(toggleSplitView())); QAction* reload = actionCollection()->addAction("reload"); @@ -1413,8 +1395,7 @@ void DolphinMainWindow::updateViewActions() static_cast(actionCollection()->action("show_hidden_files")); showHiddenFilesAction->setChecked(m_activeView->showHiddenFiles()); - KToggleAction* splitAction = static_cast(actionCollection()->action("split_view")); - splitAction->setChecked(m_view[SecondaryIdx] != 0); + updateSplitAction(m_view[SecondaryIdx] != 0); KToggleAction* editableLocactionAction = static_cast(actionCollection()->action("editable_location")); @@ -1484,6 +1465,18 @@ void DolphinMainWindow::connectViewSignals(int viewIndex) this, SLOT(slotHistoryChanged())); } +void DolphinMainWindow::updateSplitAction(bool isSplit) +{ + QAction* splitAction = actionCollection()->action("split_view"); + if (isSplit) { + splitAction->setText(i18n("Join")); + splitAction->setIcon(KIcon("fileview-join")); + } else { + splitAction->setText(i18n("Split")); + splitAction->setIcon(KIcon("fileview-split")); + } +} + DolphinMainWindow::UndoUiInterface::UndoUiInterface(DolphinMainWindow* mainWin) : KonqUndoManager::UiInterface(mainWin), m_mainWin(mainWin)