summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniel Molkentin <daniel.molkentin@nokia.com>2009-07-20 19:08:09 +0200
committerDaniel Molkentin <daniel.molkentin@nokia.com>2009-07-21 13:58:27 +0200
commitf8f0c4ce44fe7558ecea67669de72981af03b822 (patch)
tree46bab587839dde828ad39897b4ef0b8e415bec95 /src
parent95e5bfbda0cea42b8685fb79226a49fcdf3d1785 (diff)
downloadqt-creator-f8f0c4ce44fe7558ecea67669de72981af03b822.tar.gz
Move Welcome Page to separate plugin.
Diffstat (limited to 'src')
-rw-r--r--src/plugins/coreplugin/core.qrc19
-rw-r--r--src/plugins/coreplugin/coreplugin.cpp11
-rw-r--r--src/plugins/coreplugin/coreplugin.h7
-rw-r--r--src/plugins/coreplugin/coreplugin.pro8
-rw-r--r--src/plugins/help/Help.pluginspec1
-rw-r--r--src/plugins/help/help.pro1
-rw-r--r--src/plugins/help/helpplugin.cpp6
-rw-r--r--src/plugins/plugins.pro6
-rw-r--r--src/plugins/projectexplorer/ProjectExplorer.pluginspec1
-rw-r--r--src/plugins/projectexplorer/projectexplorer.cpp15
-rw-r--r--src/plugins/projectexplorer/projectexplorer.h11
-rw-r--r--src/plugins/projectexplorer/projectexplorer_dependencies.pri1
-rw-r--r--src/plugins/qt4projectmanager/Qt4ProjectManager.pluginspec1
-rw-r--r--src/plugins/qt4projectmanager/qtversionmanager.cpp4
-rw-r--r--src/plugins/quickopen/quickopen.cp0
-rw-r--r--src/plugins/welcome/Welcome.pluginspec24
-rw-r--r--src/plugins/welcome/images/arrow-left.png (renamed from src/plugins/coreplugin/images/welcomemode/arrow-left.png)bin323 -> 323 bytes
-rw-r--r--src/plugins/welcome/images/arrow-right.png (renamed from src/plugins/coreplugin/images/welcomemode/arrow-right.png)bin304 -> 304 bytes
-rw-r--r--src/plugins/welcome/images/background_center_frame.png (renamed from src/plugins/coreplugin/images/welcomemode/background_center_frame.png)bin3381 -> 3381 bytes
-rw-r--r--src/plugins/welcome/images/btn_26.png (renamed from src/plugins/coreplugin/images/welcomemode/btn_26.png)bin477 -> 477 bytes
-rw-r--r--src/plugins/welcome/images/btn_26_hover.png (renamed from src/plugins/coreplugin/images/welcomemode/btn_26_hover.png)bin430 -> 430 bytes
-rw-r--r--src/plugins/welcome/images/btn_26_pressed.png (renamed from src/plugins/coreplugin/images/welcomemode/btn_26_pressed.png)bin494 -> 494 bytes
-rw-r--r--src/plugins/welcome/images/btn_27.png (renamed from src/plugins/coreplugin/images/welcomemode/btn_27.png)bin629 -> 629 bytes
-rw-r--r--src/plugins/welcome/images/btn_27_hover.png (renamed from src/plugins/coreplugin/images/welcomemode/btn_27_hover.png)bin697 -> 697 bytes
-rw-r--r--src/plugins/welcome/images/center_frame_header.png (renamed from src/plugins/coreplugin/images/welcomemode/center_frame_header.png)bin13335 -> 13335 bytes
-rw-r--r--src/plugins/welcome/images/combobox_arrow.png (renamed from src/plugins/coreplugin/images/welcomemode/combobox_arrow.png)bin333 -> 333 bytes
-rw-r--r--src/plugins/welcome/images/feedback-bar-background.png (renamed from src/plugins/coreplugin/images/welcomemode/feedback-bar-background.png)bin245 -> 245 bytes
-rw-r--r--src/plugins/welcome/images/feedback_arrow.png (renamed from src/plugins/coreplugin/images/welcomemode/feedback_arrow.png)bin327 -> 327 bytes
-rw-r--r--src/plugins/welcome/images/feedback_arrow_hover.png (renamed from src/plugins/coreplugin/images/welcomemode/feedback_arrow_hover.png)bin328 -> 328 bytes
-rw-r--r--src/plugins/welcome/images/list_bullet_arrow.png (renamed from src/plugins/coreplugin/images/welcomemode/list_bullet_arrow.png)bin280 -> 280 bytes
-rw-r--r--src/plugins/welcome/images/mode_project.png (renamed from src/plugins/coreplugin/images/welcomemode/mode_project.png)bin3838 -> 3838 bytes
-rw-r--r--src/plugins/welcome/images/nokia_logo.png (renamed from src/plugins/coreplugin/images/welcomemode/nokia_logo.png)bin1148 -> 1148 bytes
-rw-r--r--src/plugins/welcome/images/product_logo.png (renamed from src/plugins/coreplugin/images/welcomemode/product_logo.png)bin18498 -> 18498 bytes
-rw-r--r--src/plugins/welcome/images/qt_logo.png (renamed from src/plugins/coreplugin/images/welcomemode/qt_logo.png)bin2662 -> 2662 bytes
-rw-r--r--src/plugins/welcome/images/rc_combined.png (renamed from src/plugins/coreplugin/images/welcomemode/rc_combined.png)bin530 -> 530 bytes
-rw-r--r--src/plugins/welcome/rssfetcher.cpp (renamed from src/plugins/coreplugin/rssfetcher.cpp)2
-rw-r--r--src/plugins/welcome/rssfetcher.h (renamed from src/plugins/coreplugin/rssfetcher.h)6
-rw-r--r--src/plugins/welcome/welcome.pri2
-rw-r--r--src/plugins/welcome/welcome.pro22
-rw-r--r--src/plugins/welcome/welcome.qrc23
-rw-r--r--src/plugins/welcome/welcome_global.h12
-rw-r--r--src/plugins/welcome/welcomemode.cpp (renamed from src/plugins/coreplugin/welcomemode.cpp)34
-rw-r--r--src/plugins/welcome/welcomemode.h (renamed from src/plugins/coreplugin/welcomemode.h)10
-rw-r--r--src/plugins/welcome/welcomemode.ui (renamed from src/plugins/coreplugin/welcomemode.ui)36
-rw-r--r--src/plugins/welcome/welcomemode_p.h (renamed from src/plugins/coreplugin/welcomemode_p.h)4
-rw-r--r--src/plugins/welcome/welcomeplugin.cpp97
-rw-r--r--src/plugins/welcome/welcomeplugin.h58
47 files changed, 317 insertions, 105 deletions
diff --git a/src/plugins/coreplugin/core.qrc b/src/plugins/coreplugin/core.qrc
index 202ee41db4..42f59f6c1e 100644
--- a/src/plugins/coreplugin/core.qrc
+++ b/src/plugins/coreplugin/core.qrc
@@ -44,24 +44,5 @@
<file>images/unlocked.png</file>
<file>images/extension.png</file>
<file>images/darkclosebutton.png</file>
- <file>images/welcomemode/btn_26.png</file>
- <file>images/welcomemode/btn_26_hover.png</file>
- <file>images/welcomemode/btn_27.png</file>
- <file>images/welcomemode/btn_27_hover.png</file>
- <file>images/welcomemode/feedback_arrow.png</file>
- <file>images/welcomemode/feedback_arrow_hover.png</file>
- <file>images/welcomemode/feedback-bar-background.png</file>
- <file>images/welcomemode/list_bullet_arrow.png</file>
- <file>images/welcomemode/mode_project.png</file>
- <file>images/welcomemode/nokia_logo.png</file>
- <file>images/welcomemode/product_logo.png</file>
- <file>images/welcomemode/qt_logo.png</file>
- <file>images/welcomemode/rc_combined.png</file>
- <file>images/welcomemode/background_center_frame.png</file>
- <file>images/welcomemode/center_frame_header.png</file>
- <file>images/welcomemode/btn_26_pressed.png</file>
- <file>images/welcomemode/combobox_arrow.png</file>
- <file>images/welcomemode/arrow-left.png</file>
- <file>images/welcomemode/arrow-right.png</file>
</qresource>
</RCC>
diff --git a/src/plugins/coreplugin/coreplugin.cpp b/src/plugins/coreplugin/coreplugin.cpp
index a7a619b768..7fb7d71c24 100644
--- a/src/plugins/coreplugin/coreplugin.cpp
+++ b/src/plugins/coreplugin/coreplugin.cpp
@@ -28,7 +28,6 @@
**************************************************************************/
#include "coreplugin.h"
-#include "welcomemode.h"
#include "editmode.h"
#include "editormanager.h"
#include "mainwindow.h"
@@ -42,16 +41,12 @@
using namespace Core::Internal;
CorePlugin::CorePlugin() :
- m_mainWindow(new MainWindow), m_welcomeMode(0), m_editMode(0)
+ m_mainWindow(new MainWindow), m_editMode(0)
{
}
CorePlugin::~CorePlugin()
{
- if (m_welcomeMode) {
- removeObject(m_welcomeMode);
- delete m_welcomeMode;
- }
if (m_editMode) {
removeObject(m_editMode);
delete m_editMode;
@@ -68,9 +63,6 @@ bool CorePlugin::initialize(const QStringList &arguments, QString *errorMessage)
Q_UNUSED(arguments)
const bool success = m_mainWindow->init(errorMessage);
if (success) {
- m_welcomeMode = new WelcomeMode;
- addObject(m_welcomeMode);
-
EditorManager *editorManager = m_mainWindow->editorManager();
m_editMode = new EditMode(editorManager);
addObject(m_editMode);
@@ -80,7 +72,6 @@ bool CorePlugin::initialize(const QStringList &arguments, QString *errorMessage)
void CorePlugin::extensionsInitialized()
{
- m_mainWindow->modeManager()->activateMode(m_welcomeMode->uniqueModeName());
m_mainWindow->extensionsInitialized();
}
diff --git a/src/plugins/coreplugin/coreplugin.h b/src/plugins/coreplugin/coreplugin.h
index 4580dd6fd0..04e5be49b4 100644
--- a/src/plugins/coreplugin/coreplugin.h
+++ b/src/plugins/coreplugin/coreplugin.h
@@ -33,9 +33,12 @@
#include <extensionsystem/iplugin.h>
namespace Core {
+ class IMode;
+}
+
+namespace Core {
namespace Internal {
-class WelcomeMode;
class EditMode;
class MainWindow;
@@ -56,7 +59,7 @@ public slots:
private:
MainWindow *m_mainWindow;
- WelcomeMode *m_welcomeMode;
+ Core::IMode *m_welcomeMode;
EditMode *m_editMode;
};
diff --git a/src/plugins/coreplugin/coreplugin.pro b/src/plugins/coreplugin/coreplugin.pro
index fbe1d6cc64..8bdc845c48 100644
--- a/src/plugins/coreplugin/coreplugin.pro
+++ b/src/plugins/coreplugin/coreplugin.pro
@@ -20,8 +20,6 @@ DEPENDPATH += dialogs \
editormanager \
scriptmanager
SOURCES += mainwindow.cpp \
- welcomemode.cpp \
- rssfetcher.cpp \
editmode.cpp \
tabpositionindicator.cpp \
fancyactionbar.cpp \
@@ -81,9 +79,6 @@ SOURCES += mainwindow.cpp \
dialogs/iwizard.cpp \
settingsdatabase.cpp
HEADERS += mainwindow.h \
- welcomemode.h \
- welcomemode_p.h \
- rssfetcher.h \
editmode.h \
tabpositionindicator.h \
fancyactionbar.h \
@@ -166,8 +161,7 @@ FORMS += dialogs/newdialog.ui \
dialogs/saveitemsdialog.ui \
dialogs/openwithdialog.ui \
editormanager/openeditorsview.ui \
- generalsettings.ui \
- welcomemode.ui
+ generalsettings.ui
RESOURCES += core.qrc \
fancyactionbar.qrc
diff --git a/src/plugins/help/Help.pluginspec b/src/plugins/help/Help.pluginspec
index 29f1b46961..d7ccc070fd 100644
--- a/src/plugins/help/Help.pluginspec
+++ b/src/plugins/help/Help.pluginspec
@@ -22,5 +22,6 @@ will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.</license>
<dependency name="Core" version="1.2.80"/>
<dependency name="Find" version="1.2.80"/>
<dependency name="QuickOpen" version="1.2.80"/>
+ <dependency name="Welcome" version="1.2.80"/>
</dependencyList>
</plugin>
diff --git a/src/plugins/help/help.pro b/src/plugins/help/help.pro
index b733a1fa70..1f5ec5585e 100644
--- a/src/plugins/help/help.pro
+++ b/src/plugins/help/help.pro
@@ -4,6 +4,7 @@ include(../../qtcreatorplugin.pri)
include(../../plugins/coreplugin/coreplugin.pri)
include(../../plugins/find/find.pri)
include(../../plugins/quickopen/quickopen.pri)
+include(../../plugins/welcome/welcome.pri)
QT += network
CONFIG += help
DEFINES += QT_CLUCENE_SUPPORT \
diff --git a/src/plugins/help/helpplugin.cpp b/src/plugins/help/helpplugin.cpp
index ee516a3df0..ec5b7887fa 100644
--- a/src/plugins/help/helpplugin.cpp
+++ b/src/plugins/help/helpplugin.cpp
@@ -56,6 +56,8 @@
#include <coreplugin/uniqueidmanager.h>
#include <coreplugin/welcomemode.h>
+#include <welcome/welcomemode.h>
+
#include <texteditor/texteditorconstants.h>
#include <utils/styledbar.h>
@@ -611,8 +613,8 @@ void HelpPlugin::extensionsInitialized()
using namespace Core::Internal;
using namespace Core::Constants;
- WelcomeMode *welcomeMode =
- qobject_cast<WelcomeMode*>(m_core->modeManager()->mode(MODE_WELCOME));
+ Welcome::WelcomeMode *welcomeMode =
+ qobject_cast<Welcome::WelcomeMode*>(m_core->modeManager()->mode(MODE_WELCOME));
if (welcomeMode) {
connect(welcomeMode, SIGNAL(openHelpPage(QString)), this,
SLOT(openHelpPage(QString)));
diff --git a/src/plugins/plugins.pro b/src/plugins/plugins.pro
index 4ee1549085..b8ae5ecafa 100644
--- a/src/plugins/plugins.pro
+++ b/src/plugins/plugins.pro
@@ -4,6 +4,7 @@
TEMPLATE = subdirs
SUBDIRS = plugin_coreplugin \
+ plugin_welcome \
plugin_find \
plugin_texteditor \
plugin_cppeditor \
@@ -30,13 +31,16 @@ SUBDIRS = plugin_coreplugin \
plugin_fakevim \
plugin_designer \
plugin_resourceeditor \
- plugin_genericprojectmanager \
+ plugin_genericprojectmanager \
plugin_duieditor \
plugin_qmlprojectmanager \
debugger/dumper.pro
plugin_coreplugin.subdir = coreplugin
+plugin_welcome.subdir = welcome
+plugin_welcome.depends = plugin_coreplugin
+
plugin_find.subdir = find
plugin_find.depends += plugin_coreplugin
diff --git a/src/plugins/projectexplorer/ProjectExplorer.pluginspec b/src/plugins/projectexplorer/ProjectExplorer.pluginspec
index 8b5a7c317a..6a66cfe1b8 100644
--- a/src/plugins/projectexplorer/ProjectExplorer.pluginspec
+++ b/src/plugins/projectexplorer/ProjectExplorer.pluginspec
@@ -23,5 +23,6 @@ will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.</license>
<dependency name="Find" version="1.2.80"/>
<dependency name="QuickOpen" version="1.2.80"/>
<dependency name="TextEditor" version="1.2.80"/>
+ <dependency name="Welcome" version="1.2.80"/>
</dependencyList>
</plugin>
diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp
index b71afb3835..f10b628aad 100644
--- a/src/plugins/projectexplorer/projectexplorer.cpp
+++ b/src/plugins/projectexplorer/projectexplorer.cpp
@@ -74,11 +74,10 @@
#include <coreplugin/findplaceholder.h>
#include <coreplugin/basefilewizard.h>
#include <coreplugin/mainwindow.h>
-#include <coreplugin/welcomemode.h>
#include <coreplugin/vcsmanager.h>
#include <coreplugin/iversioncontrol.h>
#include <coreplugin/vcsmanager.h>
-#include <coreplugin/welcomemode.h>
+#include <welcome/welcomemode.h>
#include <extensionsystem/pluginmanager.h>
#include <utils/qtcassert.h>
#include <utils/parameteraction.h>
@@ -647,7 +646,7 @@ bool ProjectExplorerPlugin::initialize(const QStringList &arguments, QString *er
m_projectExplorerSettings.showCompilerOutput = s->value("ProjectExplorer/Settings/ShowCompilerOutput", false).toBool();
}
- if (Core::Internal::WelcomeMode *welcomeMode = qobject_cast<Core::Internal::WelcomeMode*>
+ if (Welcome::WelcomeMode *welcomeMode = qobject_cast<Welcome::WelcomeMode*>
(Core::ICore::instance()->modeManager()->mode(Core::Constants::MODE_WELCOME))) {
connect(welcomeMode, SIGNAL(manageSessions()), this, SLOT(showSessionManager()));
}
@@ -837,7 +836,7 @@ void ProjectExplorerPlugin::showSessionManager()
Core::IMode *welcomeMode = modeManager->mode(Core::Constants::MODE_WELCOME);
if (modeManager->currentMode() == welcomeMode)
{
- updateWelcomePage(qobject_cast<Core::Internal::WelcomeMode*>(welcomeMode));
+ updateWelcomePage(qobject_cast<Welcome::WelcomeMode*>(welcomeMode));
}
}
@@ -1020,9 +1019,9 @@ Project *ProjectExplorerPlugin::startupProject() const
}
// update welcome page
-void ProjectExplorerPlugin::updateWelcomePage(Core::Internal::WelcomeMode *welcomeMode)
+void ProjectExplorerPlugin::updateWelcomePage(Welcome::WelcomeMode *welcomeMode)
{
- Core::Internal::WelcomeMode::WelcomePageData welcomePageData;
+ Welcome::WelcomeMode::WelcomePageData welcomePageData;
welcomePageData.sessionList = m_session->sessions();
welcomePageData.activeSession = m_session->activeSession();
welcomePageData.previousSession = m_session->lastSession();
@@ -1032,7 +1031,7 @@ void ProjectExplorerPlugin::updateWelcomePage(Core::Internal::WelcomeMode *welco
void ProjectExplorerPlugin::currentModeChanged(Core::IMode *mode)
{
- if (Core::Internal::WelcomeMode *welcomeMode = qobject_cast<Core::Internal::WelcomeMode*>(mode))
+ if (Welcome::WelcomeMode *welcomeMode = qobject_cast<Welcome::WelcomeMode*>(mode))
updateWelcomePage(welcomeMode);
}
@@ -1081,7 +1080,7 @@ void ProjectExplorerPlugin::restoreSession()
// update welcome page
Core::ModeManager *modeManager = Core::ModeManager::instance();
connect(modeManager, SIGNAL(currentModeChanged(Core::IMode*)), this, SLOT(currentModeChanged(Core::IMode*)));
- if (Core::Internal::WelcomeMode *welcomeMode = qobject_cast<Core::Internal::WelcomeMode*>(modeManager->mode(Core::Constants::MODE_WELCOME))) {
+ if (Welcome::WelcomeMode *welcomeMode = qobject_cast<Welcome::WelcomeMode*>(modeManager->mode(Core::Constants::MODE_WELCOME))) {
updateWelcomePage(welcomeMode);
connect(welcomeMode, SIGNAL(requestSession(QString)), this, SLOT(loadSession(QString)));
connect(welcomeMode, SIGNAL(requestProject(QString)), this, SLOT(loadProject(QString)));
diff --git a/src/plugins/projectexplorer/projectexplorer.h b/src/plugins/projectexplorer/projectexplorer.h
index 78c1d3c3ba..0f781eac88 100644
--- a/src/plugins/projectexplorer/projectexplorer.h
+++ b/src/plugins/projectexplorer/projectexplorer.h
@@ -46,21 +46,20 @@
#include <QtGui/QTreeWidget>
#include <QtGui/QTreeWidgetItem>
-
namespace Core {
class IContext;
class IMode;
class IFileFactory;
-namespace Internal {
- class WelcomeMode;
-}
namespace Utils {
class ParameterAction;
}
}
-namespace ProjectExplorer {
+namespace Welcome {
+ class WelcomeMode;
+}
+namespace ProjectExplorer {
class BuildManager;
class PersistentSettings;
class RunConfiguration;
@@ -210,7 +209,7 @@ private:
void updateActions();
void addToRecentProjects(const QString &fileName, const QString &displayName);
- void updateWelcomePage(Core::Internal::WelcomeMode *welcomeMode);
+ void updateWelcomePage(Welcome::WelcomeMode *welcomeMode);
Internal::ProjectFileFactory *findProjectFileFactory(const QString &filename) const;
static ProjectExplorerPlugin *m_instance;
diff --git a/src/plugins/projectexplorer/projectexplorer_dependencies.pri b/src/plugins/projectexplorer/projectexplorer_dependencies.pri
index 674c8bbb36..ecbb7a4b97 100644
--- a/src/plugins/projectexplorer/projectexplorer_dependencies.pri
+++ b/src/plugins/projectexplorer/projectexplorer_dependencies.pri
@@ -3,3 +3,4 @@ include(../../plugins/quickopen/quickopen.pri)
include(../../plugins/find/find.pri)
include(../../plugins/coreplugin/coreplugin.pri)
include(../../plugins/texteditor/texteditor.pri)
+include(../../plugins/welcome/welcome.pri)
diff --git a/src/plugins/qt4projectmanager/Qt4ProjectManager.pluginspec b/src/plugins/qt4projectmanager/Qt4ProjectManager.pluginspec
index c4b8d4455f..3b515bd60e 100644
--- a/src/plugins/qt4projectmanager/Qt4ProjectManager.pluginspec
+++ b/src/plugins/qt4projectmanager/Qt4ProjectManager.pluginspec
@@ -25,5 +25,6 @@ will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.</license>
<dependency name="CppEditor" version="1.2.80"/>
<dependency name="Help" version="1.2.80"/>
<dependency name="Designer" version="1.2.80"/>
+ <dependency name="Welcome" version="1.2.80"/>
</dependencyList>
</plugin>
diff --git a/src/plugins/qt4projectmanager/qtversionmanager.cpp b/src/plugins/qt4projectmanager/qtversionmanager.cpp
index e1f4451dbb..e844f768e3 100644
--- a/src/plugins/qt4projectmanager/qtversionmanager.cpp
+++ b/src/plugins/qt4projectmanager/qtversionmanager.cpp
@@ -42,7 +42,7 @@
#include <coreplugin/coreconstants.h>
#include <coreplugin/icore.h>
#include <coreplugin/modemanager.h>
-#include <coreplugin/welcomemode.h>
+#include <welcome/welcomemode.h>
#include <extensionsystem/pluginmanager.h>
#include <help/helpplugin.h>
#include <utils/qtcassert.h>
@@ -121,7 +121,7 @@ QtVersionManager::QtVersionManager()
writeVersionsIntoSettings();
- if (Core::Internal::WelcomeMode *welcomeMode = qobject_cast<Core::Internal::WelcomeMode*>
+ if (Welcome::WelcomeMode *welcomeMode = qobject_cast<Welcome::WelcomeMode*>
(Core::ICore::instance()->modeManager()->mode(Core::Constants::MODE_WELCOME))) {
connect(this, SIGNAL(updatedExamples(QString, QString)),
welcomeMode, SIGNAL(updatedExamples(QString, QString)));
diff --git a/src/plugins/quickopen/quickopen.cp b/src/plugins/quickopen/quickopen.cp
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/src/plugins/quickopen/quickopen.cp
diff --git a/src/plugins/welcome/Welcome.pluginspec b/src/plugins/welcome/Welcome.pluginspec
new file mode 100644
index 0000000000..ab310c396e
--- /dev/null
+++ b/src/plugins/welcome/Welcome.pluginspec
@@ -0,0 +1,24 @@
+<plugin name="Welcome" version="1.2.80" compatVersion="1.2.80">
+ <vendor>Nokia Corporation</vendor>
+ <copyright>(C) 2008-2009 Nokia Corporation</copyright>
+ <license>
+Commercial Usage
+
+Licensees holding valid Qt Commercial licenses may use this plugin in
+accordance with the Qt Commercial License Agreement provided with the
+Software or, alternatively, in accordance with the terms contained in
+a written agreement between you and Nokia.
+
+GNU Lesser General Public License Usage
+
+Alternatively, this plugin may be used under the terms of the GNU Lesser
+General Public License version 2.1 as published by the Free Software
+Foundation. Please review the following information to
+ensure the GNU Lesser General Public License version 2.1 requirements
+will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.</license>
+ <description>Default Welcome Screen Plugin</description>
+ <url>http://www.qtsoftware.com</url>
+ <dependencyList>
+ <dependency name="Core" version="1.2.80"/>
+ </dependencyList>
+</plugin>
diff --git a/src/plugins/coreplugin/images/welcomemode/arrow-left.png b/src/plugins/welcome/images/arrow-left.png
index 6a29679aec..6a29679aec 100644
--- a/src/plugins/coreplugin/images/welcomemode/arrow-left.png
+++ b/src/plugins/welcome/images/arrow-left.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/arrow-right.png b/src/plugins/welcome/images/arrow-right.png
index 207f7fcf21..207f7fcf21 100644
--- a/src/plugins/coreplugin/images/welcomemode/arrow-right.png
+++ b/src/plugins/welcome/images/arrow-right.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/background_center_frame.png b/src/plugins/welcome/images/background_center_frame.png
index d1628e22c2..d1628e22c2 100644
--- a/src/plugins/coreplugin/images/welcomemode/background_center_frame.png
+++ b/src/plugins/welcome/images/background_center_frame.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/btn_26.png b/src/plugins/welcome/images/btn_26.png
index 51de8bc89d..51de8bc89d 100644
--- a/src/plugins/coreplugin/images/welcomemode/btn_26.png
+++ b/src/plugins/welcome/images/btn_26.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/btn_26_hover.png b/src/plugins/welcome/images/btn_26_hover.png
index 3916904310..3916904310 100644
--- a/src/plugins/coreplugin/images/welcomemode/btn_26_hover.png
+++ b/src/plugins/welcome/images/btn_26_hover.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/btn_26_pressed.png b/src/plugins/welcome/images/btn_26_pressed.png
index 0aa53120db..0aa53120db 100644
--- a/src/plugins/coreplugin/images/welcomemode/btn_26_pressed.png
+++ b/src/plugins/welcome/images/btn_26_pressed.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/btn_27.png b/src/plugins/welcome/images/btn_27.png
index bcdf90ded2..bcdf90ded2 100644
--- a/src/plugins/coreplugin/images/welcomemode/btn_27.png
+++ b/src/plugins/welcome/images/btn_27.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/btn_27_hover.png b/src/plugins/welcome/images/btn_27_hover.png
index 2bc8680d7f..2bc8680d7f 100644
--- a/src/plugins/coreplugin/images/welcomemode/btn_27_hover.png
+++ b/src/plugins/welcome/images/btn_27_hover.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/center_frame_header.png b/src/plugins/welcome/images/center_frame_header.png
index f59cc41a48..f59cc41a48 100644
--- a/src/plugins/coreplugin/images/welcomemode/center_frame_header.png
+++ b/src/plugins/welcome/images/center_frame_header.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/combobox_arrow.png b/src/plugins/welcome/images/combobox_arrow.png
index fa180a27e4..fa180a27e4 100644
--- a/src/plugins/coreplugin/images/welcomemode/combobox_arrow.png
+++ b/src/plugins/welcome/images/combobox_arrow.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/feedback-bar-background.png b/src/plugins/welcome/images/feedback-bar-background.png
index 18b3a561ff..18b3a561ff 100644
--- a/src/plugins/coreplugin/images/welcomemode/feedback-bar-background.png
+++ b/src/plugins/welcome/images/feedback-bar-background.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/feedback_arrow.png b/src/plugins/welcome/images/feedback_arrow.png
index 8766098a5a..8766098a5a 100644
--- a/src/plugins/coreplugin/images/welcomemode/feedback_arrow.png
+++ b/src/plugins/welcome/images/feedback_arrow.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/feedback_arrow_hover.png b/src/plugins/welcome/images/feedback_arrow_hover.png
index 43d9907144..43d9907144 100644
--- a/src/plugins/coreplugin/images/welcomemode/feedback_arrow_hover.png
+++ b/src/plugins/welcome/images/feedback_arrow_hover.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/list_bullet_arrow.png b/src/plugins/welcome/images/list_bullet_arrow.png
index acf9f5da5e..acf9f5da5e 100644
--- a/src/plugins/coreplugin/images/welcomemode/list_bullet_arrow.png
+++ b/src/plugins/welcome/images/list_bullet_arrow.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/mode_project.png b/src/plugins/welcome/images/mode_project.png
index 05d7759cf1..05d7759cf1 100644
--- a/src/plugins/coreplugin/images/welcomemode/mode_project.png
+++ b/src/plugins/welcome/images/mode_project.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/nokia_logo.png b/src/plugins/welcome/images/nokia_logo.png
index 5f46512b7c..5f46512b7c 100644
--- a/src/plugins/coreplugin/images/welcomemode/nokia_logo.png
+++ b/src/plugins/welcome/images/nokia_logo.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/product_logo.png b/src/plugins/welcome/images/product_logo.png
index d48e481517..d48e481517 100644
--- a/src/plugins/coreplugin/images/welcomemode/product_logo.png
+++ b/src/plugins/welcome/images/product_logo.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/qt_logo.png b/src/plugins/welcome/images/qt_logo.png
index 3cbfca726b..3cbfca726b 100644
--- a/src/plugins/coreplugin/images/welcomemode/qt_logo.png
+++ b/src/plugins/welcome/images/qt_logo.png
Binary files differ
diff --git a/src/plugins/coreplugin/images/welcomemode/rc_combined.png b/src/plugins/welcome/images/rc_combined.png
index c395794ca3..c395794ca3 100644
--- a/src/plugins/coreplugin/images/welcomemode/rc_combined.png
+++ b/src/plugins/welcome/images/rc_combined.png
Binary files differ
diff --git a/src/plugins/coreplugin/rssfetcher.cpp b/src/plugins/welcome/rssfetcher.cpp
index cceb5ceb7a..f5fc756c9b 100644
--- a/src/plugins/coreplugin/rssfetcher.cpp
+++ b/src/plugins/welcome/rssfetcher.cpp
@@ -43,7 +43,7 @@
#include <sys/utsname.h>
#endif
-using namespace Core::Internal;
+using namespace Welcome;
static const QString getOsString()
{
diff --git a/src/plugins/coreplugin/rssfetcher.h b/src/plugins/welcome/rssfetcher.h
index 4f161e1517..9267fdb47a 100644
--- a/src/plugins/coreplugin/rssfetcher.h
+++ b/src/plugins/welcome/rssfetcher.h
@@ -34,8 +34,7 @@
#include <QtCore/QXmlStreamReader>
#include <QtNetwork/QHttp>
-namespace Core {
-namespace Internal {
+namespace Welcome {
class RSSFetcher : public QObject
{
@@ -69,8 +68,7 @@ private:
int m_maxItems;
};
-} // namespace Internal
-} // namespace Core
+} // namespace Welcome
#endif // RSSFETCHER_H
diff --git a/src/plugins/welcome/welcome.pri b/src/plugins/welcome/welcome.pri
new file mode 100644
index 0000000000..5e0a99bca8
--- /dev/null
+++ b/src/plugins/welcome/welcome.pri
@@ -0,0 +1,2 @@
+include(coreplugin_dependencies.pri)
+LIBS *= -l$$qtLibraryTarget(Welcome)
diff --git a/src/plugins/welcome/welcome.pro b/src/plugins/welcome/welcome.pro
new file mode 100644
index 0000000000..51e66a573f
--- /dev/null
+++ b/src/plugins/welcome/welcome.pro
@@ -0,0 +1,22 @@
+TEMPLATE = lib
+TARGET = Welcome
+QT += network
+include(../../qtcreatorplugin.pri)
+include(../../plugins/coreplugin/coreplugin.pri)
+
+HEADERS += welcomeplugin.h \
+ welcomemode.h \
+ welcomemode_p.h \
+ rssfetcher.h
+
+SOURCES += welcomeplugin.cpp \
+ welcomemode.cpp \
+ rssfetcher.cpp
+
+FORMS += welcomemode.ui
+
+RESOURCES += welcome.qrc
+
+DEFINES += WELCOME_LIBRARY
+
+OTHER_FILES += Welcome.pluginspec
diff --git a/src/plugins/welcome/welcome.qrc b/src/plugins/welcome/welcome.qrc
new file mode 100644
index 0000000000..f478674327
--- /dev/null
+++ b/src/plugins/welcome/welcome.qrc
@@ -0,0 +1,23 @@
+<RCC>
+ <qresource prefix="/welcome" >
+ <file>images/btn_26.png</file>
+ <file>images/btn_26_hover.png</file>
+ <file>images/btn_27.png</file>
+ <file>images/btn_27_hover.png</file>
+ <file>images/feedback_arrow.png</file>
+ <file>images/feedback_arrow_hover.png</file>
+ <file>images/feedback-bar-background.png</file>
+ <file>images/list_bullet_arrow.png</file>
+ <file>images/mode_project.png</file>
+ <file>images/nokia_logo.png</file>
+ <file>images/product_logo.png</file>
+ <file>images/qt_logo.png</file>
+ <file>images/rc_combined.png</file>
+ <file>images/background_center_frame.png</file>
+ <file>images/center_frame_header.png</file>
+ <file>images/btn_26_pressed.png</file>
+ <file>images/combobox_arrow.png</file>
+ <file>images/arrow-left.png</file>
+ <file>images/arrow-right.png</file>
+ </qresource>
+</RCC>
diff --git a/src/plugins/welcome/welcome_global.h b/src/plugins/welcome/welcome_global.h
new file mode 100644
index 0000000000..8629323fda
--- /dev/null
+++ b/src/plugins/welcome/welcome_global.h
@@ -0,0 +1,12 @@
+#ifndef WELCOME_GLOBAL_H
+#define WELCOME_GLOBAL_H
+
+#include <QtCore/qglobal.h>
+
+#if defined(WELCOME_LIBRARY)
+# define WELCOME_EXPORT Q_DECL_EXPORT
+#else
+# define WELCOME_EXPORT Q_DECL_IMPORT
+#endif
+
+#endif // CPPEDITOR_GLOBAL_H
diff --git a/src/plugins/coreplugin/welcomemode.cpp b/src/plugins/welcome/welcomemode.cpp
index 27cbd4e9c3..f712399dcc 100644
--- a/src/plugins/coreplugin/welcomemode.cpp
+++ b/src/plugins/welcome/welcomemode.cpp
@@ -28,14 +28,16 @@
**************************************************************************/
#include "welcomemode.h"
-#include "icore.h"
-#include "iwizard.h"
-#include "coreconstants.h"
-#include "uniqueidmanager.h"
-#include "modemanager.h"
-#include "newdialog.h"
#include "rssfetcher.h"
+#include <coreplugin/icore.h>
+#include <coreplugin/dialogs/iwizard.h>
+
+#include <coreplugin/coreconstants.h>
+#include <coreplugin/uniqueidmanager.h>
+#include <coreplugin/modemanager.h>
+#include <coreplugin/dialogs/newdialog.h>
+
#include <utils/styledbar.h>
#include <QtGui/QDesktopServices>
@@ -53,8 +55,7 @@
#include "ui_welcomemode.h"
-namespace Core {
-namespace Internal {
+namespace Welcome {
struct WelcomeModePrivate
{
@@ -206,7 +207,7 @@ WelcomeMode::WelcomeMode() :
connect(m_d->ui.nextTipBtn, SIGNAL(clicked()), this, SLOT(slotNextTip()));
connect(m_d->ui.prevTipBtn, SIGNAL(clicked()), this, SLOT(slotPrevTip()));
- QSettings *settings = ICore::instance()->settings();
+ QSettings *settings = Core::ICore::instance()->settings();
int id = settings->value("General/WelcomeTab", 0).toInt();
m_d->btnGrp->button(id)->setChecked(true);
m_d->ui.stackedWidget->setCurrentIndex(id);
@@ -214,7 +215,7 @@ WelcomeMode::WelcomeMode() :
WelcomeMode::~WelcomeMode()
{
- QSettings *settings = ICore::instance()->settings();
+ QSettings *settings = Core::ICore::instance()->settings();
settings->setValue("General/WelcomeTab", m_d->btnGrp->checkedId());
delete m_d->m_widget;
delete m_d;
@@ -232,7 +233,7 @@ QIcon WelcomeMode::icon() const
int WelcomeMode::priority() const
{
- return Constants::P_MODE_WELCOME;
+ return Core::Constants::P_MODE_WELCOME;
}
QWidget* WelcomeMode::widget()
@@ -242,13 +243,13 @@ QWidget* WelcomeMode::widget()
const char* WelcomeMode::uniqueModeName() const
{
- return Constants::MODE_WELCOME;
+ return Core::Constants::MODE_WELCOME;
}
QList<int> WelcomeMode::context() const
{
static QList<int> contexts = QList<int>()
- << UniqueIDManager::instance()->uniqueIdentifier(Constants::C_WELCOME_MODE);
+ << Core::UniqueIDManager::instance()->uniqueIdentifier(Core::Constants::C_WELCOME_MODE);
return contexts;
}
@@ -292,7 +293,7 @@ void WelcomeMode::updateWelcomePage(const WelcomePageData &welcomePageData)
void WelcomeMode::activateEditMode()
{
- Core::ModeManager *modeManager = ModeManager::instance();
+ Core::ModeManager *modeManager = Core::ModeManager::instance();
if (modeManager->currentMode() == this)
modeManager->activateMode(Core::Constants::MODE_EDIT);
}
@@ -516,7 +517,7 @@ void WelcomeModeButton::leaveEvent(QEvent *)
WelcomeModeTreeWidget::WelcomeModeTreeWidget(QWidget *parent) :
QTreeWidget(parent),
- m_bullet(QLatin1String(":/core/images/welcomemode/list_bullet_arrow.png"))
+ m_bullet(QLatin1String(":/welcome/images/list_bullet_arrow.png"))
{
connect(this, SIGNAL(itemClicked(QTreeWidgetItem *, int)),
SLOT(slotItemClicked(QTreeWidgetItem *)));
@@ -567,5 +568,4 @@ void WelcomeModeTreeWidget::slotItemClicked(QTreeWidgetItem *item)
emit activated(item->data(0, Qt::UserRole).toString());
}
-} // namespace Internal
-} // namespace Core
+} // namespace Welcome
diff --git a/src/plugins/coreplugin/welcomemode.h b/src/plugins/welcome/welcomemode.h
index 46215998ee..3825b9dbef 100644
--- a/src/plugins/coreplugin/welcomemode.h
+++ b/src/plugins/welcome/welcomemode.h
@@ -30,6 +30,8 @@
#ifndef WELCOMEMODE_H
#define WELCOMEMODE_H
+#include "welcome_global.h"
+
#include <coreplugin/imode.h>
#include <QtCore/QObject>
@@ -40,12 +42,11 @@ class QWidget;
class QUrl;
QT_END_NAMESPACE
-namespace Core {
-namespace Internal {
+namespace Welcome {
struct WelcomeModePrivate;
-class CORE_EXPORT WelcomeMode : public Core::IMode
+class WELCOME_EXPORT WelcomeMode : public Core::IMode
{
Q_OBJECT
@@ -102,7 +103,6 @@ private:
WelcomeModePrivate *m_d;
};
-} // namespace Internal
-} // namespace Core
+} // namespace Welcome
#endif // WELCOMEMODE_H
diff --git a/src/plugins/coreplugin/welcomemode.ui b/src/plugins/welcome/welcomemode.ui
index c1471f65d7..9ad6ad3ab5 100644
--- a/src/plugins/coreplugin/welcomemode.ui
+++ b/src/plugins/welcome/welcomemode.ui
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
- <class>Core::Internal::WelcomePage</class>
- <widget class="QWidget" name="Core::Internal::WelcomePage">
+ <class>Welcome::WelcomePage</class>
+ <widget class="QWidget" name="Welcome::WelcomePage">
<property name="geometry">
<rect>
<x>0</x>
@@ -11,12 +11,12 @@
</rect>
</property>
<property name="styleSheet">
- <string notr="true">#Core--Internal--WelcomePage {
+ <string notr="true">#Welcome--WelcomePage {
background-color: qlineargradient(spread:pad, x1:0.5, y1:0, x2:0.5, y2:1, stop:0 rgba(247, 247, 247, 255), stop:1 rgba(215, 215, 215, 255));
}
QToolButton, QPushButton, QComboBox {
- border-image: url(:/core/images/welcomemode/btn_26.png) 4;
+ border-image: url(:/welcome/images/btn_26.png) 4;
border-width: 4;
padding: 0px 6px;
font-size: 12px;
@@ -31,7 +31,7 @@ QToolButton, QPushButton, QComboBox {
}
QComboBox::down-arrow {
- image: url(:/core/images/welcomemode/combobox_arrow.png);
+ image: url(:/welcome/images/combobox_arrow.png);
}
QComboBox:drop-down
@@ -44,7 +44,7 @@ QComboBox:drop-down
}
QToolButton:hover, QPushButton:hover, QComboBox:hover {
- border-image: url(:/core/images/welcomemode/btn_26_hover.png) 4;
+ border-image: url(:/welcome/images/btn_26_hover.png) 4;
}
QToolButton:disabled, QPushButton:disabled, QComboBox::disabled {
@@ -52,7 +52,7 @@ QToolButton:disabled, QPushButton:disabled, QComboBox::disabled {
}
QToolButton:pressed, QPushButton:pressed{
- border-image: url(:/core/images/welcomemode/btn_26_pressed.png) 4;
+ border-image: url(:/welcome/images/btn_26_pressed.png) 4;
}
</string>
</property>
@@ -102,7 +102,7 @@ QToolButton:pressed, QPushButton:pressed{
</property>
<property name="styleSheet">
<string notr="true">#mainFrame {
- border-image: url(:/core/images/welcomemode/background_center_frame.png) 4;
+ border-image: url(:/welcome/images/background_center_frame.png) 4;
border-width: 4;
}
</string>
@@ -151,7 +151,7 @@ QToolButton:pressed, QPushButton:pressed{
</property>
<property name="styleSheet">
<string>#headerFrame {
- border-image: url(:/core/images/welcomemode/center_frame_header.png) 0;
+ border-image: url(:/welcome/images/center_frame_header.png) 0;
border-width: 0;
}
</string>
@@ -417,7 +417,7 @@ QToolButton:pressed {
</widget>
</item>
<item row="1" column="0">
- <widget class="Core::Internal::WelcomeModeTreeWidget" name="tutorialTreeWidget">
+ <widget class="Welcome::WelcomeModeTreeWidget" name="tutorialTreeWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
@@ -651,7 +651,7 @@ QToolButton:pressed {
</property>
<property name="icon">
<iconset resource="core.qrc">
- <normaloff>:/core/images/welcomemode/arrow-left.png</normaloff>:/core/images/welcomemode/arrow-left.png</iconset>
+ <normaloff>:/welcome/images/arrow-left.png</normaloff>:/welcome/images/arrow-left.png</iconset>
</property>
<property name="arrowType">
<enum>Qt::NoArrow</enum>
@@ -673,7 +673,7 @@ QToolButton:pressed {
</property>
<property name="icon">
<iconset resource="core.qrc">
- <normaloff>:/core/images/welcomemode/arrow-right.png</normaloff>:/core/images/welcomemode/arrow-right.png</iconset>
+ <normaloff>:/welcome/images/arrow-right.png</normaloff>:/welcome/images/arrow-right.png</iconset>
</property>
<property name="arrowType">
<enum>Qt::NoArrow</enum>
@@ -746,7 +746,7 @@ QToolButton:pressed {
</widget>
</item>
<item row="1" column="0" colspan="3">
- <widget class="Core::Internal::WelcomeModeTreeWidget" name="sessTreeWidget">
+ <widget class="Welcome::WelcomeModeTreeWidget" name="sessTreeWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
@@ -853,7 +853,7 @@ QToolButton:pressed {
</widget>
</item>
<item row="1" column="0" colspan="3">
- <widget class="Core::Internal::WelcomeModeTreeWidget" name="projTreeWidget">
+ <widget class="Welcome::WelcomeModeTreeWidget" name="projTreeWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
@@ -967,7 +967,7 @@ QToolButton:pressed {
</widget>
</item>
<item>
- <widget class="Core::Internal::WelcomeModeTreeWidget" name="newsTreeWidget">
+ <widget class="Welcome::WelcomeModeTreeWidget" name="newsTreeWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
@@ -1051,7 +1051,7 @@ QToolButton:pressed {
</widget>
</item>
<item>
- <widget class="Core::Internal::WelcomeModeTreeWidget" name="sitesTreeWidget">
+ <widget class="Welcome::WelcomeModeTreeWidget" name="sitesTreeWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
@@ -1167,7 +1167,7 @@ QToolButton:pressed {
</property>
<property name="icon">
<iconset resource="core.qrc">
- <normaloff>:/core/images/welcomemode/feedback_arrow.png</normaloff>:/core/images/welcomemode/feedback_arrow.png</iconset>
+ <normaloff>:/welcome/images/feedback_arrow.png</normaloff>:/welcome/images/feedback_arrow.png</iconset>
</property>
</widget>
</item>
@@ -1221,7 +1221,7 @@ QToolButton:pressed {
</widget>
<customwidgets>
<customwidget>
- <class>Core::Internal::WelcomeModeTreeWidget</class>
+ <class>Welcome::WelcomeModeTreeWidget</class>
<extends>QTreeWidget</extends>
<header>welcomemode_p.h</header>
</customwidget>
diff --git a/src/plugins/coreplugin/welcomemode_p.h b/src/plugins/welcome/welcomemode_p.h
index 75c75361d6..efe80b3685 100644
--- a/src/plugins/coreplugin/welcomemode_p.h
+++ b/src/plugins/welcome/welcomemode_p.h
@@ -34,8 +34,7 @@
#include <QtGui/QLabel>
#include <QtGui/QTreeWidget>
-namespace Core {
-namespace Internal {
+namespace Welcome {
class WelcomeModeButton : public QLabel
{
@@ -86,6 +85,5 @@ private:
};
}
-}
#endif // WELCOMEMODE_P_H
diff --git a/src/plugins/welcome/welcomeplugin.cpp b/src/plugins/welcome/welcomeplugin.cpp
new file mode 100644
index 0000000000..e9743a9428
--- /dev/null
+++ b/src/plugins/welcome/welcomeplugin.cpp
@@ -0,0 +1,97 @@
+/**************************************************************************
+**
+** This file is part of Qt Creator
+**
+** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+**
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** Commercial Usage
+**
+** Licensees holding valid Qt Commercial licenses may use this file in
+** accordance with the Qt Commercial License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Nokia.
+**
+** GNU Lesser General Public License Usage
+**
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at http://www.qtsoftware.com/contact.
+**
+**************************************************************************/
+
+#include "welcomeplugin.h"
+
+#include "welcomemode.h"
+
+#include <coreplugin/actionmanager/actionmanager.h>
+#include <coreplugin/basemode.h>
+#include <coreplugin/coreconstants.h>
+#include <coreplugin/icore.h>
+#include <coreplugin/modemanager.h>
+#include <coreplugin/uniqueidmanager.h>
+
+#include <QtCore/QDebug>
+#include <QtCore/QtPlugin>
+#include <QtGui/QAction>
+#include <QtGui/QMenu>
+#include <QtGui/QMessageBox>
+#include <QtGui/QPushButton>
+
+using namespace Welcome;
+
+
+WelcomePlugin::WelcomePlugin()
+ : m_welcomeMode(0)
+{
+}
+
+WelcomePlugin::~WelcomePlugin()
+{
+ if (m_welcomeMode) {
+ removeObject(m_welcomeMode);
+ delete m_welcomeMode;
+ }
+}
+
+/*! Initializes the plugin. Returns true on success.
+ Plugins want to register objects with the plugin manager here.
+
+ \a error_message can be used to pass an error message to the plugin system,
+ if there was any.
+*/
+bool WelcomePlugin::initialize(const QStringList &arguments, QString *error_message)
+{
+ Q_UNUSED(arguments)
+ Q_UNUSED(error_message)
+
+ m_welcomeMode = new WelcomeMode;
+ addObject(m_welcomeMode);
+
+ return true;
+}
+
+/*! Notification that all extensions that this plugin depends on have been
+ initialized. The dependencies are defined in the plugins .qwp file.
+
+ Normally this method is used for things that rely on other plugins to have
+ added objects to the plugin manager, that implement interfaces that we're
+ interested in. These objects can now be requested through the
+ PluginManagerInterface.
+
+ The WelcomePlugin doesn't need things from other plugins, so it does
+ nothing here.
+*/
+void WelcomePlugin::extensionsInitialized()
+{
+ Core::ModeManager::instance()->activateMode(m_welcomeMode->uniqueModeName());
+}
+
+Q_EXPORT_PLUGIN(WelcomePlugin)
diff --git a/src/plugins/welcome/welcomeplugin.h b/src/plugins/welcome/welcomeplugin.h
new file mode 100644
index 0000000000..970ec39950
--- /dev/null
+++ b/src/plugins/welcome/welcomeplugin.h
@@ -0,0 +1,58 @@
+/**************************************************************************
+**
+** This file is part of Qt Creator
+**
+** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+**
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** Commercial Usage
+**
+** Licensees holding valid Qt Commercial licenses may use this file in
+** accordance with the Qt Commercial License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Nokia.
+**
+** GNU Lesser General Public License Usage
+**
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at http://www.qtsoftware.com/contact.
+**
+**************************************************************************/
+
+#ifndef WELCOMEPLUGIN_H
+#define WELCOMEPLUGIN_H
+
+#include <extensionsystem/iplugin.h>
+
+namespace Welcome {
+
+class WelcomeMode;
+
+class WelcomePlugin
+ : public ExtensionSystem::IPlugin
+{
+ Q_OBJECT
+
+public:
+ WelcomePlugin();
+ ~WelcomePlugin();
+
+ bool initialize(const QStringList &arguments, QString *error_message);
+
+ void extensionsInitialized();
+
+private:
+ WelcomeMode *m_welcomeMode;
+};
+
+} // namespace Welcome
+
+#endif // WELCOMEPLUGIN_H