┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/dolphincontextmenu.cpp
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2007-11-18 14:37:57 +0000
committerPeter Penz <[email protected]>2007-11-18 14:37:57 +0000
commit1ce2fb199db7bdf5baf05b61e4e58c549404b4df (patch)
tree8c5d8e5960931f81a495ae3325f446ece1a89d81 /src/dolphincontextmenu.cpp
parent6abcaedfb08e0a9f4a11ca4f6a1f29ccc713d974 (diff)
allow to show/hide the menubar
BUG: 152463 svn path=/trunk/KDE/kdebase/apps/; revision=738282
Diffstat (limited to 'src/dolphincontextmenu.cpp')
-rw-r--r--src/dolphincontextmenu.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/dolphincontextmenu.cpp b/src/dolphincontextmenu.cpp
index 29feffe34..a7a5ae567 100644
--- a/src/dolphincontextmenu.cpp
+++ b/src/dolphincontextmenu.cpp
@@ -32,6 +32,7 @@
#include <kiconloader.h>
#include <kio/netaccess.h>
#include <kmenu.h>
+#include <kmenubar.h>
#include <kmessagebox.h>
#include <kmimetypetrader.h>
#include <knewmenu.h>
@@ -101,6 +102,8 @@ void DolphinContextMenu::openTrashContextMenu()
KMenu* popup = new KMenu(m_mainWindow);
+ addShowMenubarAction(popup);
+
QAction* emptyTrashAction = new QAction(KIcon("trash-empty"), i18nc("@action:inmenu", "Empty Trash"), popup);
KConfig trashConfig("trashrc", KConfig::SimpleConfig);
emptyTrashAction->setEnabled(!trashConfig.group("Status").readEntry("Empty", true));
@@ -141,6 +144,8 @@ void DolphinContextMenu::openTrashItemContextMenu()
KMenu* popup = new KMenu(m_mainWindow);
+ addShowMenubarAction(popup);
+
QAction* restoreAction = new QAction(i18nc("@action:inmenu", "Restore"), m_mainWindow);
popup->addAction(restoreAction);
@@ -162,6 +167,7 @@ void DolphinContextMenu::openItemContextMenu()
Q_ASSERT(!m_fileInfo.isNull());
KMenu* popup = new KMenu(m_mainWindow);
+ addShowMenubarAction(popup);
insertDefaultItemActions(popup);
popup->addSeparator();
@@ -216,6 +222,8 @@ void DolphinContextMenu::openViewportContextMenu()
Q_ASSERT(m_fileInfo.isNull());
KMenu* popup = new KMenu(m_mainWindow);
+ addShowMenubarAction(popup);
+
// setup 'Create New' menu
KNewMenu* newMenu = m_mainWindow->newMenu();
newMenu->slotCheckUpToDate();
@@ -386,4 +394,17 @@ bool DolphinContextMenu::containsEntry(const KMenu* menu,
return false;
}
+void DolphinContextMenu::addShowMenubarAction(KMenu* menu)
+{
+ KAction* showMenuBar = m_mainWindow->showMenuBarAction();
+ if (!m_mainWindow->menuBar()->isVisible()) {
+ // TODO: it should not be necessary to uncheck the menu
+ // bar action, but currently the action states don't get
+ // updated if the menu is disabled
+ showMenuBar->setChecked(false);
+ menu->addAction(showMenuBar);
+ menu->addSeparator();
+ }
+}
+
#include "dolphincontextmenu.moc"