summaryrefslogtreecommitdiff
path: root/src/plugins/coreplugin
diff options
context:
space:
mode:
authorhjk <qtc-committer@nokia.com>2011-04-14 12:28:21 +0200
committerhjk <qtc-committer@nokia.com>2011-04-14 13:31:54 +0200
commit3ac9bee144a5c9ce422e3d4954ef29ae22ef2506 (patch)
tree74ca81cbd1bce0e24ea2a7d8ba43c299dc93a127 /src/plugins/coreplugin
parent618fde4cc2ca439c2c4e3441a326866b6d8e3d5b (diff)
downloadqt-creator-3ac9bee144a5c9ce422e3d4954ef29ae22ef2506.tar.gz
core: make mode creation more uniform
Diffstat (limited to 'src/plugins/coreplugin')
-rw-r--r--src/plugins/coreplugin/coreplugin.cpp6
-rw-r--r--src/plugins/coreplugin/designmode.cpp25
-rw-r--r--src/plugins/coreplugin/designmode.h5
-rw-r--r--src/plugins/coreplugin/editmode.cpp4
-rw-r--r--src/plugins/coreplugin/editmode.h3
5 files changed, 20 insertions, 23 deletions
diff --git a/src/plugins/coreplugin/coreplugin.cpp b/src/plugins/coreplugin/coreplugin.cpp
index bf4a8de88b..bd4423fad0 100644
--- a/src/plugins/coreplugin/coreplugin.cpp
+++ b/src/plugins/coreplugin/coreplugin.cpp
@@ -86,12 +86,10 @@ bool CorePlugin::initialize(const QStringList &arguments, QString *errorMessage)
parseArguments(arguments);
const bool success = m_mainWindow->init(errorMessage);
if (success) {
- EditorManager *editorManager = m_mainWindow->editorManager();
- m_editMode = new EditMode(editorManager);
+ m_editMode = new EditMode;
addObject(m_editMode);
m_mainWindow->modeManager()->activateMode(m_editMode->id());
-
- m_designMode = new DesignMode(editorManager);
+ m_designMode = new DesignMode;
addObject(m_designMode);
}
return success;
diff --git a/src/plugins/coreplugin/designmode.cpp b/src/plugins/coreplugin/designmode.cpp
index fdc1046f50..8bda867236 100644
--- a/src/plugins/coreplugin/designmode.cpp
+++ b/src/plugins/coreplugin/designmode.cpp
@@ -86,36 +86,37 @@ bool DesignModeCoreListener::coreAboutToClose()
} // namespace Internal
-struct DesignEditorInfo {
+struct DesignEditorInfo
+{
int widgetIndex;
QStringList mimeTypes;
Context context;
QWidget *widget;
};
-struct DesignModePrivate {
- explicit DesignModePrivate(DesignMode *q, EditorManager *editorManager);
+class DesignModePrivate
+{
+public:
+ explicit DesignModePrivate(DesignMode *q);
+
+public:
Internal::DesignModeCoreListener *m_coreListener;
QWeakPointer<Core::IEditor> m_currentEditor;
bool m_isActive;
-
QList<DesignEditorInfo*> m_editors;
-
- EditorManager *m_editorManager;
QStackedWidget *m_stackWidget;
Context m_activeContext;
};
-DesignModePrivate::DesignModePrivate(DesignMode *q, EditorManager *editorManager) :
- m_coreListener(new Internal::DesignModeCoreListener(q)),
+DesignModePrivate::DesignModePrivate(DesignMode *q)
+ : m_coreListener(new Internal::DesignModeCoreListener(q)),
m_isActive(false),
- m_editorManager(editorManager),
m_stackWidget(new QStackedWidget)
{
}
-DesignMode::DesignMode(EditorManager *editorManager) :
- IMode(), d(new DesignModePrivate(this, editorManager))
+DesignMode::DesignMode()
+ : d(new DesignModePrivate(this))
{
setObjectName(QLatin1String("DesignMode"));
setEnabled(false);
@@ -129,7 +130,7 @@ DesignMode::DesignMode(EditorManager *editorManager) :
ExtensionSystem::PluginManager::instance()->addObject(d->m_coreListener);
- connect(editorManager, SIGNAL(currentEditorChanged(Core::IEditor*)),
+ connect(EditorManager::instance(), SIGNAL(currentEditorChanged(Core::IEditor*)),
this, SLOT(currentEditorChanged(Core::IEditor*)));
connect(ModeManager::instance(), SIGNAL(currentModeChanged(Core::IMode*,Core::IMode*)),
diff --git a/src/plugins/coreplugin/designmode.h b/src/plugins/coreplugin/designmode.h
index dab3877350..08f2f8bcb4 100644
--- a/src/plugins/coreplugin/designmode.h
+++ b/src/plugins/coreplugin/designmode.h
@@ -36,7 +36,6 @@
#include <coreplugin/imode.h>
namespace Core {
-class EditorManager;
class IEditor;
namespace Internal {
@@ -50,14 +49,14 @@ class DesignModeCoreListener;
* to the main editor widget itself.
*/
-struct DesignModePrivate;
+class DesignModePrivate;
class CORE_EXPORT DesignMode : public Core::IMode
{
Q_OBJECT
public:
- explicit DesignMode(EditorManager *editorManager);
+ explicit DesignMode();
virtual ~DesignMode();
void registerDesignWidget(QWidget *widget,
diff --git a/src/plugins/coreplugin/editmode.cpp b/src/plugins/coreplugin/editmode.cpp
index d9e49d1e0a..236e03859d 100644
--- a/src/plugins/coreplugin/editmode.cpp
+++ b/src/plugins/coreplugin/editmode.cpp
@@ -51,11 +51,11 @@
using namespace Core;
using namespace Core::Internal;
-EditMode::EditMode(EditorManager *editorManager) :
- m_editorManager(editorManager),
+EditMode::EditMode() :
m_splitter(new MiniSplitter),
m_rightSplitWidgetLayout(new QVBoxLayout)
{
+ m_editorManager = EditorManager::instance();
setObjectName(QLatin1String("EditMode"));
setDisplayName(tr("Edit"));
setIcon(QIcon(QLatin1String(":/fancyactionbar/images/mode_Edit.png")));
diff --git a/src/plugins/coreplugin/editmode.h b/src/plugins/coreplugin/editmode.h
index ad45d2ae9c..83faa7b81e 100644
--- a/src/plugins/coreplugin/editmode.h
+++ b/src/plugins/coreplugin/editmode.h
@@ -37,7 +37,6 @@
QT_BEGIN_NAMESPACE
class QSplitter;
-class QWidget;
class QVBoxLayout;
QT_END_NAMESPACE
@@ -52,7 +51,7 @@ class EditMode : public Core::IMode
Q_OBJECT
public:
- EditMode(EditorManager *editorManager);
+ EditMode();
~EditMode();
private slots: