OSDN Git Service

Merge branch '2.3'
[qt-creator-jp/qt-creator-jp.git] / src / plugins / qmldesigner / designmodewidget.h
index e0b0aec..a4ee648 100644 (file)
@@ -83,10 +83,10 @@ class DesignMode;
 class DocumentWidget;
 class DesignModeWidget;
 
-class DocumentWarningWidget : public  Utils::FakeToolTip
+class DocumentWarningWidget : public Utils::FakeToolTip
 {
     Q_OBJECT
-    Q_DISABLE_COPY(DocumentWarningWidget)
+
 public:
     explicit DocumentWarningWidget(DesignModeWidget *parent = 0);
 
@@ -105,7 +105,7 @@ private:
 class DesignModeWidget : public QWidget
 {
     Q_OBJECT
-    Q_DISABLE_COPY(DesignModeWidget)
+
 public:
     explicit DesignModeWidget(QWidget *parent = 0);
     ~DesignModeWidget();
@@ -125,12 +125,13 @@ public:
     QAction *toggleLeftSidebarAction() const;
     QAction *toggleRightSidebarAction() const;
     QAction *restoreDefaultViewAction() const;
+    QAction *goIntoComponentAction() const;
 
     void readSettings();
     void saveSettings();
     void setAutoSynchronization(bool sync);
 
-    TextEditor::ITextEditor *textEditor() const {return m_textEditor; }
+    TextEditor::ITextEditor *textEditor() const {return m_textEditor.data(); }
 
 private slots:
     void undo();
@@ -147,6 +148,7 @@ private slots:
     void restoreDefaultView();
     void undoAvailable(bool isAvailable);
     void redoAvailable(bool isAvailable);
+    void goIntoComponent();
 
     void enable();
     void disable(const QList<RewriterView::Error> &errors);
@@ -157,6 +159,9 @@ private slots:
     void deleteSidebarWidgets();
     void qmlPuppetCrashed();
 
+    void onGoBackClicked();
+    void onGoForwardClicked();
+
 protected:
     void resizeEvent(QResizeEvent *event);
 
@@ -180,6 +185,7 @@ private:
     QAction *m_restoreDefaultViewAction;
     QAction *m_toggleLeftSidebarAction;
     QAction *m_toggleRightSidebarAction;
+    QAction *m_goIntoComponentAction;
 
     QWeakPointer<ItemLibraryView> m_itemLibraryView;
     QWeakPointer<NavigatorView> m_navigatorView;
@@ -194,8 +200,10 @@ private:
     void setup();
     bool isInNodeDefinition(int nodeOffset, int nodeLength, int cursorPos) const;
     QmlDesigner::ModelNode nodeForPosition(int cursorPos) const;
+    void setupNavigatorHistory();
+    void addNavigatorHistoryEntry(const QString &fileName);
 
-    TextEditor::ITextEditor *m_textEditor;
+    QWeakPointer<TextEditor::ITextEditor> m_textEditor;
 
     QSplitter *m_mainSplitter;
     Core::SideBar *m_leftSideBar;
@@ -211,6 +219,9 @@ private:
     InitializeStatus m_initStatus;
 
     DocumentWarningWidget *m_warningWidget;
+    QStringList m_navigatorHistory;
+    int m_navigatorHistoryCounter;
+    bool m_keepNavigatorHistory;
 };
 
 } // namespace Internal