summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@digia.com>2014-01-14 13:07:51 +0100
committerEike Ziller <eike.ziller@digia.com>2014-01-15 11:09:16 +0100
commitc1ff266e3e39d098f1bd4dbc9105330a71ea2bb1 (patch)
treea609cfa28cb6c09e3b33b5195dc73bfb8ac4b301
parentfc9a99fc0297652e7d893e753cdeee220e61f729 (diff)
downloadqt-creator-c1ff266e3e39d098f1bd4dbc9105330a71ea2bb1.tar.gz
BarDescriptorEditor: Create widget from editor
Not the other way round. Results in less, and less convoluted code. Change-Id: I58a8d1e7785c0d712ff518d38425fc5646a262dd Reviewed-by: Tobias Nätterlund <tobias.naetterlund@kdab.com> Reviewed-by: Eike Ziller <eike.ziller@digia.com>
-rw-r--r--src/plugins/qnx/bardescriptoreditor.cpp5
-rw-r--r--src/plugins/qnx/bardescriptoreditor.h2
-rw-r--r--src/plugins/qnx/bardescriptoreditorfactory.cpp5
-rw-r--r--src/plugins/qnx/bardescriptoreditorwidget.cpp14
-rw-r--r--src/plugins/qnx/bardescriptoreditorwidget.h6
5 files changed, 11 insertions, 21 deletions
diff --git a/src/plugins/qnx/bardescriptoreditor.cpp b/src/plugins/qnx/bardescriptoreditor.cpp
index a52c98c910..671a34e677 100644
--- a/src/plugins/qnx/bardescriptoreditor.cpp
+++ b/src/plugins/qnx/bardescriptoreditor.cpp
@@ -54,11 +54,12 @@ using namespace ProjectExplorer;
namespace Qnx {
namespace Internal {
-BarDescriptorEditor::BarDescriptorEditor(BarDescriptorEditorWidget *editorWidget)
+BarDescriptorEditor::BarDescriptorEditor()
{
+ BarDescriptorEditorWidget *editorWidget = new BarDescriptorEditorWidget(this);
setWidget(editorWidget);
-
m_file = new BarDescriptorDocument(editorWidget);
+ connect(editorWidget, SIGNAL(changed()), m_file, SIGNAL(changed()));
m_toolBar = new QToolBar(editorWidget);
diff --git a/src/plugins/qnx/bardescriptoreditor.h b/src/plugins/qnx/bardescriptoreditor.h
index abe319d88b..ce235885e2 100644
--- a/src/plugins/qnx/bardescriptoreditor.h
+++ b/src/plugins/qnx/bardescriptoreditor.h
@@ -60,7 +60,7 @@ public:
Source
};
- explicit BarDescriptorEditor(BarDescriptorEditorWidget *editorWidget);
+ BarDescriptorEditor();
bool open(QString *errorString, const QString &fileName, const QString &realFileName);
Core::IDocument *document();
diff --git a/src/plugins/qnx/bardescriptoreditorfactory.cpp b/src/plugins/qnx/bardescriptoreditorfactory.cpp
index 529b6272c3..2bf90396f9 100644
--- a/src/plugins/qnx/bardescriptoreditorfactory.cpp
+++ b/src/plugins/qnx/bardescriptoreditorfactory.cpp
@@ -32,6 +32,7 @@
#include "bardescriptoreditorfactory.h"
#include "qnxconstants.h"
+#include "bardescriptoreditor.h"
#include "bardescriptoreditorwidget.h"
#include <coreplugin/editormanager/editormanager.h>
@@ -67,6 +68,6 @@ BarDescriptorEditorFactory::BarDescriptorEditorFactory(QObject *parent)
Core::IEditor *BarDescriptorEditorFactory::createEditor()
{
- BarDescriptorEditorWidget *editorWidget = new BarDescriptorEditorWidget();
- return editorWidget->editor();
+ BarDescriptorEditor *editor = new BarDescriptorEditor();
+ return editor;
}
diff --git a/src/plugins/qnx/bardescriptoreditorwidget.cpp b/src/plugins/qnx/bardescriptoreditorwidget.cpp
index 88b51ed128..8a00efa22a 100644
--- a/src/plugins/qnx/bardescriptoreditorwidget.cpp
+++ b/src/plugins/qnx/bardescriptoreditorwidget.cpp
@@ -51,9 +51,9 @@
using namespace Qnx;
using namespace Qnx::Internal;
-BarDescriptorEditorWidget::BarDescriptorEditorWidget(QWidget *parent)
+BarDescriptorEditorWidget::BarDescriptorEditorWidget(BarDescriptorEditor *editor, QWidget *parent)
: QStackedWidget(parent)
- , m_editor(0)
+ , m_editor(editor)
, m_dirty(false)
{
Core::IContext *myContext = new Core::IContext(this);
@@ -170,11 +170,6 @@ void BarDescriptorEditorWidget::initPanelSize(ProjectExplorer::PanelsWidget *pan
Core::IEditor *BarDescriptorEditorWidget::editor() const
{
- if (!m_editor) {
- m_editor = const_cast<BarDescriptorEditorWidget *>(this)->createEditor();
- connect(this, SIGNAL(changed()), m_editor->document(), SIGNAL(changed()));
- }
-
return m_editor;
}
@@ -269,8 +264,3 @@ void BarDescriptorEditorWidget::setDirty(bool dirty)
m_dirty = dirty;
emit changed();
}
-
-BarDescriptorEditor *BarDescriptorEditorWidget::createEditor()
-{
- return new BarDescriptorEditor(this);
-}
diff --git a/src/plugins/qnx/bardescriptoreditorwidget.h b/src/plugins/qnx/bardescriptoreditorwidget.h
index f20cf40bc3..256546de83 100644
--- a/src/plugins/qnx/bardescriptoreditorwidget.h
+++ b/src/plugins/qnx/bardescriptoreditorwidget.h
@@ -66,7 +66,7 @@ class BarDescriptorEditorWidget : public QStackedWidget
Q_OBJECT
public:
- explicit BarDescriptorEditorWidget(QWidget *parent = 0);
+ explicit BarDescriptorEditorWidget(BarDescriptorEditor *editor, QWidget *parent = 0);
Core::IEditor *editor() const;
@@ -96,15 +96,13 @@ signals:
void changed();
private:
- BarDescriptorEditor *createEditor();
-
void initGeneralPage();
void initApplicationPage();
void initAssetsPage();
void initSourcePage();
void initPanelSize(ProjectExplorer::PanelsWidget *panelsWidget);
- mutable Core::IEditor *m_editor;
+ Core::IEditor *m_editor;
bool m_dirty;