diff --git a/src/plugins/qmldesigner/designmodewidget.cpp b/src/plugins/qmldesigner/designmodewidget.cpp index 57f199c3cdc08bf3fc9a0c5f874a3b6c52e87a53..63360e3317c43b5b23ea7fc17a15853b9488bdb3 100644 --- a/src/plugins/qmldesigner/designmodewidget.cpp +++ b/src/plugins/qmldesigner/designmodewidget.cpp @@ -94,6 +94,8 @@ const char * const SB_OPENDOCUMENTS = "OpenDocuments"; namespace QmlDesigner { namespace Internal { +DesignModeWidget *DesignModeWidget::s_instance = 0; + DocumentWarningWidget::DocumentWarningWidget(DesignModeWidget *parent) : Utils::FakeToolTip(parent), m_errorMessage(new QLabel("Placeholder", this)), @@ -195,6 +197,7 @@ DesignModeWidget::DesignModeWidget(QWidget *parent) : m_navigatorHistoryCounter(-1), m_keepNavigatorHistory(false) { + s_instance = this; m_undoAction = new QAction(tr("&Undo"), this); connect(m_undoAction, SIGNAL(triggered()), this, SLOT(undo())); m_redoAction = new QAction(tr("&Redo"), this); @@ -228,6 +231,7 @@ DesignModeWidget::DesignModeWidget(QWidget *parent) : DesignModeWidget::~DesignModeWidget() { + s_instance = 0; } void DesignModeWidget::restoreDefaultView() @@ -857,6 +861,17 @@ void DesignModeWidget::onGoForwardClicked() } } +void DesignModeWidget::onCrumblePathElementClicked(const QVariant &data) +{ + currentDesignDocumentController()->setCrumbleBarInfo(data.value<CrumbleBarInfo>()); +} + +DesignModeWidget *DesignModeWidget::instance() +{ + return s_instance; +} + + void DesignModeWidget::resizeEvent(QResizeEvent *event) { if (m_warningWidget) diff --git a/src/plugins/qmldesigner/designmodewidget.h b/src/plugins/qmldesigner/designmodewidget.h index a4ee64832431799971e0500d1a0abed04b11a4a7..8c2f80ae3caf8e46ae5084455cad682524eeafb1 100644 --- a/src/plugins/qmldesigner/designmodewidget.h +++ b/src/plugins/qmldesigner/designmodewidget.h @@ -133,6 +133,9 @@ public: TextEditor::ITextEditor *textEditor() const {return m_textEditor.data(); } + static DesignModeWidget *instance(); + DesignDocumentController *currentDesignDocumentController() const {return m_currentDesignDocumentController.data(); } + private slots: void undo(); void redo(); @@ -166,9 +169,7 @@ protected: void resizeEvent(QResizeEvent *event); private: - DesignDocumentController *currentDesignDocumentController() const {return m_currentDesignDocumentController.data(); } void setCurrentDocument(DesignDocumentController *newDesignDocumentController); - //QStackedWidget *m_documentWidgetStack; QHash<QPlainTextEdit*,QWeakPointer<DesignDocumentController> > m_documentHash; QWeakPointer<DesignDocumentController> m_currentDesignDocumentController; @@ -222,6 +223,8 @@ private: QStringList m_navigatorHistory; int m_navigatorHistoryCounter; bool m_keepNavigatorHistory; + + static DesignModeWidget *s_instance; }; } // namespace Internal diff --git a/src/plugins/qmldesigner/qmldesignerplugin.pro b/src/plugins/qmldesigner/qmldesignerplugin.pro index a1959f4db7c837aaa4897672b5f17220987fd005..aeab5d58a5017353237be06177c18af78ad40db8 100644 --- a/src/plugins/qmldesigner/qmldesignerplugin.pro +++ b/src/plugins/qmldesigner/qmldesignerplugin.pro @@ -1,6 +1,8 @@ TEMPLATE = lib TARGET = QmlDesigner +INCLUDEPATH += $$PWD + include(../../qtcreatorplugin.pri) include(../../private_headers.pri) include(qmldesigner_dependencies.pri)