From aeb8871094e301df412728c3ce5ce8ff105269fe Mon Sep 17 00:00:00 2001 From: Lasse Holmstedt Date: Mon, 26 Apr 2010 13:53:26 +0200 Subject: [PATCH] Added menu entries for hiding and showing left/right bauhaus sidebars --- src/plugins/qmldesigner/designmodewidget.cpp | 28 ++++++++++++++++++- src/plugins/qmldesigner/designmodewidget.h | 6 ++++ .../qmldesigner/qmldesignerconstants.h | 2 ++ src/plugins/qmldesigner/qmldesignerplugin.cpp | 17 +++++++++-- 4 files changed, 49 insertions(+), 4 deletions(-) diff --git a/src/plugins/qmldesigner/designmodewidget.cpp b/src/plugins/qmldesigner/designmodewidget.cpp index bd5be0c1cb3..c8706886993 100644 --- a/src/plugins/qmldesigner/designmodewidget.cpp +++ b/src/plugins/qmldesigner/designmodewidget.cpp @@ -156,7 +156,10 @@ DesignModeWidget::DesignModeWidget(QWidget *parent) : connect(m_hideSidebarsAction, SIGNAL(triggered()), this, SLOT(toggleSidebars())); m_restoreDefaultViewAction = new QAction(tr("&Restore Default View"), this); connect(m_restoreDefaultViewAction, SIGNAL(triggered()), SLOT(restoreDefaultView())); - + m_toggleLeftSidebarAction = new QAction(tr("Toggle &Left Sidebar"), this); + connect(m_toggleLeftSidebarAction, SIGNAL(triggered()), SLOT(toggleLeftSidebar())); + m_toggleRightSidebarAction = new QAction(tr("Toggle &Right Sidebar"), this); + connect(m_toggleRightSidebarAction, SIGNAL(triggered()), SLOT(toggleRightSidebar())); Core::ModeManager *modeManager = Core::ModeManager::instance(); Core::IMode *designmode = modeManager->mode(Core::Constants::MODE_DESIGN); @@ -179,6 +182,18 @@ void DesignModeWidget::restoreDefaultView() m_rightSideBar->show(); } +void DesignModeWidget::toggleLeftSidebar() +{ + if (m_leftSideBar) + m_leftSideBar->setVisible(!m_leftSideBar->isVisible()); +} + +void DesignModeWidget::toggleRightSidebar() +{ + if (m_rightSideBar) + m_rightSideBar->setVisible(!m_rightSideBar->isVisible()); +} + void DesignModeWidget::toggleSidebars() { if (m_initStatus == Initializing) @@ -312,6 +327,17 @@ QAction *DesignModeWidget::hideSidebarsAction() const return m_hideSidebarsAction; } +QAction *DesignModeWidget::toggleLeftSidebarAction() const +{ + return m_toggleLeftSidebarAction; +} + +QAction *DesignModeWidget::toggleRightSidebarAction() const +{ + return m_toggleRightSidebarAction; +} + + QAction *DesignModeWidget::restoreDefaultViewAction() const { return m_restoreDefaultViewAction; diff --git a/src/plugins/qmldesigner/designmodewidget.h b/src/plugins/qmldesigner/designmodewidget.h index 214b7877a9a..9ae1abdadc2 100644 --- a/src/plugins/qmldesigner/designmodewidget.h +++ b/src/plugins/qmldesigner/designmodewidget.h @@ -116,6 +116,8 @@ public: QAction *pasteAction() const; QAction *selectAllAction() const; QAction *hideSidebarsAction() const; + QAction *toggleLeftSidebarAction() const; + QAction *toggleRightSidebarAction() const; QAction *restoreDefaultViewAction() const; void readSettings(); @@ -134,6 +136,8 @@ private slots: void selectAll(); void closeCurrentEditor(); void toggleSidebars(); + void toggleLeftSidebar(); + void toggleRightSidebar(); void restoreDefaultView(); void undoAvailable(bool isAvailable); void redoAvailable(bool isAvailable); @@ -165,6 +169,8 @@ private: QAction *m_selectAllAction; QAction *m_hideSidebarsAction; QAction *m_restoreDefaultViewAction; + QAction *m_toggleLeftSidebarAction; + QAction *m_toggleRightSidebarAction; QWeakPointer m_itemLibrary; QWeakPointer m_navigator; diff --git a/src/plugins/qmldesigner/qmldesignerconstants.h b/src/plugins/qmldesigner/qmldesignerconstants.h index 9feb983d9c8..d1880493bf2 100644 --- a/src/plugins/qmldesigner/qmldesignerconstants.h +++ b/src/plugins/qmldesigner/qmldesignerconstants.h @@ -45,6 +45,8 @@ const char * const C_QT_QUICK_TOOLS_MENU = "QmlDesigner::ToolsMenu"; // actions const char * const SWITCH_TEXT_DESIGN = "QmlDesigner.SwitchTextDesign"; const char * const RESTORE_DEFAULT_VIEW = "QmlDesigner.RestoreDefaultView"; +const char * const TOGGLE_LEFT_SIDEBAR = "QmlDesigner.ToggleLeftSideBar"; +const char * const TOGGLE_RIGHT_SIDEBAR = "QmlDesigner.ToggleRightSideBar"; // mode const char * const DESIGN_MODE_NAME = "Design"; diff --git a/src/plugins/qmldesigner/qmldesignerplugin.cpp b/src/plugins/qmldesigner/qmldesignerplugin.cpp index cfc2d2f8986..d47029a684c 100644 --- a/src/plugins/qmldesigner/qmldesignerplugin.cpp +++ b/src/plugins/qmldesigner/qmldesignerplugin.cpp @@ -224,15 +224,26 @@ void BauhausPlugin::createDesignModeWidget() editMenu->addAction(command, Core::Constants::G_EDIT_SELECTALL); Core::UniqueIDManager *uuidManager = Core::UniqueIDManager::instance(); + Core::ActionContainer *viewsMenu = actionManager->actionContainer(Core::Constants::M_WINDOW_VIEWS); + command = actionManager->registerAction(m_mainWidget->hideSidebarsAction(), Core::Constants::TOGGLE_SIDEBAR, QList () << uuidManager->uniqueIdentifier(Constants::C_FORMEDITOR)); + command->setAttribute(Core::Command::CA_Hide); + viewsMenu->addAction(command); - Core::ActionContainer *viewsMenu = actionManager->actionContainer(Core::Constants::M_WINDOW_VIEWS); - command = actionManager->registerAction(m_mainWidget->restoreDefaultViewAction(), - Constants::RESTORE_DEFAULT_VIEW, + command = actionManager->registerAction(m_mainWidget->toggleLeftSidebarAction(), + Constants::TOGGLE_LEFT_SIDEBAR, QList () << uuidManager->uniqueIdentifier(Constants::C_FORMEDITOR)); command->setAttribute(Core::Command::CA_Hide); + command->setDefaultKeySequence(QKeySequence("Ctrl+Alt+0")); + viewsMenu->addAction(command); + + command = actionManager->registerAction(m_mainWidget->toggleRightSidebarAction(), + Constants::TOGGLE_RIGHT_SIDEBAR, + QList () << uuidManager->uniqueIdentifier(Constants::C_FORMEDITOR)); + command->setAttribute(Core::Command::CA_Hide); + command->setDefaultKeySequence(QKeySequence("Ctrl+Alt+Shift+0")); viewsMenu->addAction(command); #ifdef Q_OS_MACX