diff options
author | Christian Stenger <christian.stenger@digia.com> | 2014-10-07 12:30:54 +0200 |
---|---|---|
committer | Christian Stenger <christian.stenger@theqtcompany.com> | 2014-12-04 13:52:14 +0100 |
commit | 2f4139e5d313902683a3a4a98f9ef012afff8734 (patch) | |
tree | 5e1c10378f5a4d9ca2e45dd39b2a6f4dba06d6ee /plugins/autotest/autotestplugin.cpp | |
download | qt-creator-2f4139e5d313902683a3a4a98f9ef012afff8734.tar.gz |
Initial commit
Diffstat (limited to 'plugins/autotest/autotestplugin.cpp')
-rw-r--r-- | plugins/autotest/autotestplugin.cpp | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/plugins/autotest/autotestplugin.cpp b/plugins/autotest/autotestplugin.cpp new file mode 100644 index 0000000000..b0da2c1cac --- /dev/null +++ b/plugins/autotest/autotestplugin.cpp @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Digia Plc +** All rights reserved. +** For any questions to Digia, please use contact form at http://qt.digia.com +** +** This file is part of the Qt Creator Enterprise Auto Test Add-on. +** +** Licensees holding valid Qt Enterprise licenses may use this file in +** accordance with the Qt Enterprise License Agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and Digia. +** +** If you have questions regarding the use of this file, please use +** contact form at http://qt.digia.com +** +****************************************************************************/ + +#include "autotestplugin.h" +#include "autotestconstants.h" +#include "testtreeview.h" +#include "testtreemodel.h" + +#include <coreplugin/icore.h> +#include <coreplugin/icontext.h> +#include <coreplugin/actionmanager/actionmanager.h> +#include <coreplugin/actionmanager/command.h> +#include <coreplugin/actionmanager/actioncontainer.h> +#include <coreplugin/coreconstants.h> + +#include <QAction> +#include <QMessageBox> +#include <QMainWindow> +#include <QMenu> + +#include <QtPlugin> + +using namespace Autotest::Internal; + +AutotestPlugin::AutotestPlugin() +{ + // Create your members +} + +AutotestPlugin::~AutotestPlugin() +{ + // Unregister objects from the plugin manager's object pool + // Delete members + TestTreeModel *model = TestTreeModel::instance(); + delete model; +} + +bool AutotestPlugin::initialize(const QStringList &arguments, QString *errorString) +{ + // Register objects in the plugin manager's object pool + // Load settings + // Add actions to menus + // Connect to other plugins' signals + // In the initialize function, a plugin can be sure that the plugins it + // depends on have initialized their members. + + Q_UNUSED(arguments) + Q_UNUSED(errorString) + + QAction *action = new QAction(tr("Autotest action"), this); + Core::Command *cmd = Core::ActionManager::registerAction(action, Constants::ACTION_ID, + Core::Context(Core::Constants::C_GLOBAL)); + cmd->setDefaultKeySequence(QKeySequence(tr("Ctrl+Alt+Meta+A"))); + connect(action, SIGNAL(triggered()), this, SLOT(triggerAction())); + + Core::ActionContainer *menu = Core::ActionManager::createMenu(Constants::MENU_ID); + menu->menu()->setTitle(tr("Tests")); + menu->addAction(cmd); + Core::ActionManager::actionContainer(Core::Constants::M_TOOLS)->addMenu(menu); + + addAutoReleasedObject(new TestViewFactory); + + return true; +} + +void AutotestPlugin::extensionsInitialized() +{ + // Retrieve objects from the plugin manager's object pool + // In the extensionsInitialized function, a plugin can be sure that all + // plugins that depend on it are completely initialized. +} + +ExtensionSystem::IPlugin::ShutdownFlag AutotestPlugin::aboutToShutdown() +{ + // Save settings + // Disconnect from signals that are not needed during shutdown + // Hide UI (if you add UI that is not in the main window directly) + return SynchronousShutdown; +} + +void AutotestPlugin::triggerAction() +{ + QMessageBox::information(Core::ICore::mainWindow(), + tr("Action triggered"), + tr("This is an action from Autotest.")); +} + |