2013-06-11 15:13:33 +02:00
|
|
|
/****************************************************************************
|
|
|
|
|
**
|
2013-06-20 12:34:02 +02:00
|
|
|
** Copyright (C) 2013 Digia Plc
|
|
|
|
|
** All rights reserved.
|
|
|
|
|
** For any questions to Digia, please use contact form at http://qt.digia.com <http://qt.digia.com/>
|
2013-06-11 15:13:33 +02:00
|
|
|
**
|
2013-06-20 12:34:02 +02:00
|
|
|
** This file is part of the Qt Enterprise Qt Quick Profiler Add-on.
|
2013-06-11 15:13:33 +02:00
|
|
|
**
|
2013-06-20 12:34:02 +02:00
|
|
|
** Licensees holding valid Qt Enterprise licenses may use this file in
|
|
|
|
|
** accordance with the Qt Enterprise License Agreement provided with the
|
2013-06-11 15:13:33 +02:00
|
|
|
** Software or, alternatively, in accordance with the terms contained in
|
2013-06-20 12:34:02 +02:00
|
|
|
** 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 <http://qt.digia.com/>
|
2013-06-11 15:13:33 +02:00
|
|
|
**
|
|
|
|
|
****************************************************************************/
|
|
|
|
|
|
|
|
|
|
#include "qmlprofilerextendedplugin.h"
|
|
|
|
|
#include "qmlprofilerextendedconstants.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>
|
|
|
|
|
|
|
|
|
|
#include "scenegraphtimelinemodel.h"
|
2013-06-19 15:12:32 +02:00
|
|
|
#include "pixmapcachemodel.h"
|
2013-06-11 15:13:33 +02:00
|
|
|
|
|
|
|
|
using namespace QmlProfilerExtended::Internal;
|
|
|
|
|
|
|
|
|
|
QmlProfilerExtendedPlugin::QmlProfilerExtendedPlugin()
|
|
|
|
|
{
|
|
|
|
|
// Create your members
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
QmlProfilerExtendedPlugin::~QmlProfilerExtendedPlugin()
|
|
|
|
|
{
|
|
|
|
|
// Unregister objects from the plugin manager's object pool
|
|
|
|
|
// Delete members
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool QmlProfilerExtendedPlugin::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 method, a plugin can be sure that the plugins it
|
|
|
|
|
// depends on have initialized their members.
|
|
|
|
|
|
|
|
|
|
Q_UNUSED(arguments)
|
|
|
|
|
Q_UNUSED(errorString)
|
|
|
|
|
|
2013-06-19 15:12:32 +02:00
|
|
|
addAutoReleasedObject(new PixmapCacheModel);
|
2013-06-11 15:13:33 +02:00
|
|
|
addAutoReleasedObject(new SceneGraphTimelineModel);
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void QmlProfilerExtendedPlugin::extensionsInitialized()
|
|
|
|
|
{
|
|
|
|
|
// Retrieve objects from the plugin manager's object pool
|
|
|
|
|
// In the extensionsInitialized method, a plugin can be sure that all
|
|
|
|
|
// plugins that depend on it are completely initialized.
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ExtensionSystem::IPlugin::ShutdownFlag QmlProfilerExtendedPlugin::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 QmlProfilerExtendedPlugin::triggerAction()
|
|
|
|
|
{
|
|
|
|
|
QMessageBox::information(Core::ICore::mainWindow(),
|
|
|
|
|
tr("Action triggered"),
|
|
|
|
|
tr("This is an action from QmlProfilerExtended."));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Q_EXPORT_PLUGIN2(QmlProfilerExtended, QmlProfilerExtendedPlugin)
|
|
|
|
|
|