forked from qt-creator/qt-creator
QmlDesigner.designModeWidget: adding a context for the navigator
Adding a context for the navigator + some cleanup
This commit is contained in:
@@ -34,6 +34,7 @@
|
|||||||
#include "qmldesignerconstants.h"
|
#include "qmldesignerconstants.h"
|
||||||
#include "designmodewidget.h"
|
#include "designmodewidget.h"
|
||||||
#include "formeditorwidget.h"
|
#include "formeditorwidget.h"
|
||||||
|
#include "navigatorwidget.h"
|
||||||
|
|
||||||
namespace QmlDesigner {
|
namespace QmlDesigner {
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
@@ -63,6 +64,18 @@ QString FormEditorContext::contextHelpId() const
|
|||||||
return qobject_cast<FormEditorWidget *>(m_widget)->contextHelpId();
|
return qobject_cast<FormEditorWidget *>(m_widget)->contextHelpId();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NavigatorContext::NavigatorContext(QWidget *widget)
|
||||||
|
: IContext(widget)
|
||||||
|
{
|
||||||
|
setWidget(widget);
|
||||||
|
setContext(Core::Context(Constants::C_QMLNAVIGATOR, Constants::C_QT_QUICK_TOOLS_MENU));
|
||||||
|
}
|
||||||
|
|
||||||
|
QString NavigatorContext::contextHelpId() const
|
||||||
|
{
|
||||||
|
return qobject_cast<NavigatorWidget *>(m_widget)->contextHelpId();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -55,6 +55,13 @@ public:
|
|||||||
QString contextHelpId() const;
|
QString contextHelpId() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
class NavigatorContext : public Core::IContext
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
NavigatorContext(QWidget *widget);
|
||||||
|
QString contextHelpId() const;
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -308,7 +308,7 @@ void DesignModeWidget::showEditor(Core::IEditor *editor)
|
|||||||
|
|
||||||
newDocument->setNodeInstanceView(m_nodeInstanceView.data());
|
newDocument->setNodeInstanceView(m_nodeInstanceView.data());
|
||||||
newDocument->setAllPropertiesBox(m_allPropertiesBox.data());
|
newDocument->setAllPropertiesBox(m_allPropertiesBox.data());
|
||||||
newDocument->setNavigator(m_navigator.data());
|
newDocument->setNavigator(m_navigatorView.data());
|
||||||
newDocument->setStatesEditorView(m_statesEditorView.data());
|
newDocument->setStatesEditorView(m_statesEditorView.data());
|
||||||
newDocument->setItemLibraryView(m_itemLibraryView.data());
|
newDocument->setItemLibraryView(m_itemLibraryView.data());
|
||||||
newDocument->setFormEditorView(m_formEditorView.data());
|
newDocument->setFormEditorView(m_formEditorView.data());
|
||||||
@@ -666,7 +666,7 @@ void DesignModeWidget::setup()
|
|||||||
m_nodeInstanceView = new NodeInstanceView(this);
|
m_nodeInstanceView = new NodeInstanceView(this);
|
||||||
connect(m_nodeInstanceView.data(), SIGNAL(qmlPuppetCrashed()), this, SLOT(qmlPuppetCrashed()));
|
connect(m_nodeInstanceView.data(), SIGNAL(qmlPuppetCrashed()), this, SLOT(qmlPuppetCrashed()));
|
||||||
// Sidebar takes ownership
|
// Sidebar takes ownership
|
||||||
m_navigator = new NavigatorView;
|
m_navigatorView = new NavigatorView;
|
||||||
m_allPropertiesBox = new AllPropertiesBox;
|
m_allPropertiesBox = new AllPropertiesBox;
|
||||||
m_itemLibraryView = new ItemLibraryView(this);
|
m_itemLibraryView = new ItemLibraryView(this);
|
||||||
|
|
||||||
@@ -683,7 +683,7 @@ void DesignModeWidget::setup()
|
|||||||
m_warningWidget = new DocumentWarningWidget(this);
|
m_warningWidget = new DocumentWarningWidget(this);
|
||||||
m_warningWidget->setVisible(false);
|
m_warningWidget->setVisible(false);
|
||||||
|
|
||||||
Core::SideBarItem *navigatorItem = new Core::SideBarItem(m_navigator->widget(), QLatin1String(SB_NAVIGATOR));
|
Core::SideBarItem *navigatorItem = new NavigatorSideBarItem(m_navigatorView->widget(), QLatin1String(SB_NAVIGATOR));
|
||||||
Core::SideBarItem *libraryItem = new ItemLibrarySideBarItem(m_itemLibraryView->widget(), QLatin1String(SB_LIBRARY));
|
Core::SideBarItem *libraryItem = new ItemLibrarySideBarItem(m_itemLibraryView->widget(), QLatin1String(SB_LIBRARY));
|
||||||
Core::SideBarItem *propertiesItem = new Core::SideBarItem(m_allPropertiesBox.data(), QLatin1String(SB_PROPERTIES));
|
Core::SideBarItem *propertiesItem = new Core::SideBarItem(m_allPropertiesBox.data(), QLatin1String(SB_PROPERTIES));
|
||||||
|
|
||||||
@@ -730,8 +730,11 @@ void DesignModeWidget::setup()
|
|||||||
//### we now own these here
|
//### we now own these here
|
||||||
rightLayout->addWidget(m_statesEditorView->widget());
|
rightLayout->addWidget(m_statesEditorView->widget());
|
||||||
|
|
||||||
FormEditorContext *context = new FormEditorContext(m_formEditorView->widget());
|
FormEditorContext *formEditorContext = new FormEditorContext(m_formEditorView->widget());
|
||||||
Core::ICore::instance()->addContextObject(context);
|
Core::ICore::instance()->addContextObject(formEditorContext);
|
||||||
|
|
||||||
|
NavigatorContext *navigatorContext = new NavigatorContext(m_navigatorView->widget());
|
||||||
|
Core::ICore::instance()->addContextObject(navigatorContext);
|
||||||
|
|
||||||
// editor and output panes
|
// editor and output panes
|
||||||
m_outputPlaceholderSplitter->addWidget(m_formEditorView->widget());
|
m_outputPlaceholderSplitter->addWidget(m_formEditorView->widget());
|
||||||
|
|||||||
@@ -181,7 +181,7 @@ private:
|
|||||||
QAction *m_toggleRightSidebarAction;
|
QAction *m_toggleRightSidebarAction;
|
||||||
|
|
||||||
QWeakPointer<ItemLibraryView> m_itemLibraryView;
|
QWeakPointer<ItemLibraryView> m_itemLibraryView;
|
||||||
QWeakPointer<NavigatorView> m_navigator;
|
QWeakPointer<NavigatorView> m_navigatorView;
|
||||||
QWeakPointer<AllPropertiesBox> m_allPropertiesBox;
|
QWeakPointer<AllPropertiesBox> m_allPropertiesBox;
|
||||||
QWeakPointer<StatesEditorView> m_statesEditorView;
|
QWeakPointer<StatesEditorView> m_statesEditorView;
|
||||||
QWeakPointer<FormEditorView> m_formEditorView;
|
QWeakPointer<FormEditorView> m_formEditorView;
|
||||||
|
|||||||
@@ -40,7 +40,8 @@ const char * const DELETE = "QmlDesigner.Delete";
|
|||||||
|
|
||||||
// context
|
// context
|
||||||
const char * const C_QMLDESIGNER = "QmlDesigner::QmlDesignerMain";
|
const char * const C_QMLDESIGNER = "QmlDesigner::QmlDesignerMain";
|
||||||
const char * const C_QMLFORMEDITOR = "QmlDesigner::FormEditor";
|
const char * const C_QMLFORMEDITOR = "QmlDesigner::FormEditor";
|
||||||
|
const char * const C_QMLNAVIGATOR = "QmlDesigner::Navigator";
|
||||||
|
|
||||||
// special context for preview menu, shared b/w designer and text editor
|
// special context for preview menu, shared b/w designer and text editor
|
||||||
const char * const C_QT_QUICK_TOOLS_MENU = "QmlDesigner::ToolsMenu";
|
const char * const C_QT_QUICK_TOOLS_MENU = "QmlDesigner::ToolsMenu";
|
||||||
|
|||||||
@@ -168,6 +168,7 @@ void BauhausPlugin::createDesignModeWidget()
|
|||||||
creatorCore->addContextObject(m_context);
|
creatorCore->addContextObject(m_context);
|
||||||
Core::Context qmlDesignerMainContext(Constants::C_QMLDESIGNER);
|
Core::Context qmlDesignerMainContext(Constants::C_QMLDESIGNER);
|
||||||
Core::Context qmlDesignerFormEditorContext(Constants::C_QMLFORMEDITOR);
|
Core::Context qmlDesignerFormEditorContext(Constants::C_QMLFORMEDITOR);
|
||||||
|
Core::Context qmlDesignerNavigatorContext(Constants::C_QMLNAVIGATOR);
|
||||||
|
|
||||||
// Revert to saved
|
// Revert to saved
|
||||||
actionManager->registerAction(m_revertToSavedAction,
|
actionManager->registerAction(m_revertToSavedAction,
|
||||||
@@ -201,27 +202,38 @@ void BauhausPlugin::createDesignModeWidget()
|
|||||||
Core::Command *command;
|
Core::Command *command;
|
||||||
command = actionManager->registerAction(m_mainWidget->deleteAction(),
|
command = actionManager->registerAction(m_mainWidget->deleteAction(),
|
||||||
QmlDesigner::Constants::DELETE, qmlDesignerFormEditorContext);
|
QmlDesigner::Constants::DELETE, qmlDesignerFormEditorContext);
|
||||||
|
command = actionManager->registerAction(m_mainWidget->deleteAction(),
|
||||||
|
QmlDesigner::Constants::DELETE, qmlDesignerNavigatorContext);
|
||||||
command->setDefaultKeySequence(QKeySequence::Delete);
|
command->setDefaultKeySequence(QKeySequence::Delete);
|
||||||
command->setAttribute(Core::Command::CA_Hide); // don't show delete in other modes
|
command->setAttribute(Core::Command::CA_Hide); // don't show delete in other modes
|
||||||
editMenu->addAction(command, Core::Constants::G_EDIT_COPYPASTE);
|
editMenu->addAction(command, Core::Constants::G_EDIT_COPYPASTE);
|
||||||
|
|
||||||
command = actionManager->registerAction(m_mainWidget->cutAction(),
|
command = actionManager->registerAction(m_mainWidget->cutAction(),
|
||||||
Core::Constants::CUT, qmlDesignerFormEditorContext);
|
Core::Constants::CUT, qmlDesignerFormEditorContext);
|
||||||
|
command = actionManager->registerAction(m_mainWidget->cutAction(),
|
||||||
|
Core::Constants::CUT, qmlDesignerNavigatorContext);
|
||||||
command->setDefaultKeySequence(QKeySequence::Cut);
|
command->setDefaultKeySequence(QKeySequence::Cut);
|
||||||
editMenu->addAction(command, Core::Constants::G_EDIT_COPYPASTE);
|
editMenu->addAction(command, Core::Constants::G_EDIT_COPYPASTE);
|
||||||
|
|
||||||
command = actionManager->registerAction(m_mainWidget->copyAction(),
|
command = actionManager->registerAction(m_mainWidget->copyAction(),
|
||||||
Core::Constants::COPY, qmlDesignerFormEditorContext);
|
Core::Constants::COPY, qmlDesignerFormEditorContext);
|
||||||
|
command = actionManager->registerAction(m_mainWidget->copyAction(),
|
||||||
|
Core::Constants::COPY, qmlDesignerNavigatorContext);
|
||||||
command->setDefaultKeySequence(QKeySequence::Copy);
|
command->setDefaultKeySequence(QKeySequence::Copy);
|
||||||
editMenu->addAction(command, Core::Constants::G_EDIT_COPYPASTE);
|
editMenu->addAction(command, Core::Constants::G_EDIT_COPYPASTE);
|
||||||
|
|
||||||
command = actionManager->registerAction(m_mainWidget->pasteAction(),
|
command = actionManager->registerAction(m_mainWidget->pasteAction(),
|
||||||
Core::Constants::PASTE, qmlDesignerFormEditorContext);
|
Core::Constants::PASTE, qmlDesignerFormEditorContext);
|
||||||
|
command = actionManager->registerAction(m_mainWidget->pasteAction(),
|
||||||
|
Core::Constants::PASTE, qmlDesignerNavigatorContext);
|
||||||
command->setDefaultKeySequence(QKeySequence::Paste);
|
command->setDefaultKeySequence(QKeySequence::Paste);
|
||||||
editMenu->addAction(command, Core::Constants::G_EDIT_COPYPASTE);
|
editMenu->addAction(command, Core::Constants::G_EDIT_COPYPASTE);
|
||||||
|
|
||||||
command = actionManager->registerAction(m_mainWidget->selectAllAction(),
|
command = actionManager->registerAction(m_mainWidget->selectAllAction(),
|
||||||
Core::Constants::SELECTALL, qmlDesignerFormEditorContext);
|
Core::Constants::SELECTALL, qmlDesignerFormEditorContext);
|
||||||
|
command = actionManager->registerAction(m_mainWidget->selectAllAction(),
|
||||||
|
Core::Constants::SELECTALL, qmlDesignerNavigatorContext);
|
||||||
|
|
||||||
command->setDefaultKeySequence(QKeySequence::SelectAll);
|
command->setDefaultKeySequence(QKeySequence::SelectAll);
|
||||||
editMenu->addAction(command, Core::Constants::G_EDIT_SELECTALL);
|
editMenu->addAction(command, Core::Constants::G_EDIT_SELECTALL);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user