OSDN Git Service

4869dea168cf51fefbe83668015fb0c11116c257
[qt-creator-jp/qt-creator-jp.git] / src / plugins / welcome / welcomeplugin.cpp
1 /**************************************************************************
2 **
3 ** This file is part of Qt Creator
4 **
5 ** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies).
6 **
7 ** Contact: Nokia Corporation (qt-info@nokia.com)
8 **
9 ** No Commercial Usage
10 **
11 ** This file contains pre-release code and may not be distributed.
12 ** You may use this file in accordance with the terms and conditions
13 ** contained in the Technology Preview License Agreement accompanying
14 ** this package.
15 **
16 ** GNU Lesser General Public License Usage
17 **
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 2.1 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL included in the
21 ** packaging of this file.  Please review the following information to
22 ** ensure the GNU Lesser General Public License version 2.1 requirements
23 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
24 **
25 ** In addition, as a special exception, Nokia gives you certain additional
26 ** rights.  These rights are described in the Nokia Qt LGPL Exception
27 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
28 **
29 ** If you have questions regarding the use of this file, please contact
30 ** Nokia at qt-info@nokia.com.
31 **
32 **************************************************************************/
33
34 #include "welcomeplugin.h"
35 #include "welcomemode.h"
36 #include "communitywelcomepage.h"
37
38 #include <coreplugin/modemanager.h>
39
40 #include <QtCore/QtPlugin>
41
42 using namespace Welcome::Internal;
43
44 WelcomePlugin::WelcomePlugin()
45   : m_welcomeMode(0)
46 {
47 }
48
49 WelcomePlugin::~WelcomePlugin()
50 {
51 }
52
53 /*! Initializes the plugin. Returns true on success.
54     Plugins want to register objects with the plugin manager here.
55
56     \a error_message can be used to pass an error message to the plugin system,
57        if there was any.
58 */
59 bool WelcomePlugin::initialize(const QStringList & /* arguments */, QString * /* error_message */)
60 {
61     addAutoReleasedObject(new Internal::CommunityWelcomePage);
62
63     m_welcomeMode = new WelcomeMode;
64     addAutoReleasedObject(m_welcomeMode);
65
66     return true;
67 }
68
69 /*! Notification that all extensions that this plugin depends on have been
70     initialized. The dependencies are defined in the plugins .qwp file.
71
72     Normally this method is used for things that rely on other plugins to have
73     added objects to the plugin manager, that implement interfaces that we're
74     interested in. These objects can now be requested through the
75     PluginManagerInterface.
76
77     The WelcomePlugin doesn't need things from other plugins, so it does
78     nothing here.
79 */
80 void WelcomePlugin::extensionsInitialized()
81 {
82     m_welcomeMode->initPlugins();
83     Core::ModeManager::instance()->activateMode(m_welcomeMode->id());
84 }
85
86 Q_EXPORT_PLUGIN(WelcomePlugin)