forked from qt-creator/qt-creator
ImageViewer: De-pimpl two internal classes
Change-Id: I3302463157f757fbb5190f25052fad1506d10612 Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
@@ -32,16 +32,16 @@
|
||||
#include "imageviewer.h"
|
||||
#include "imageviewerconstants.h"
|
||||
|
||||
#include <QList>
|
||||
#include <QSignalMapper>
|
||||
#include <QAction>
|
||||
|
||||
#include <coreplugin/icore.h>
|
||||
#include <coreplugin/actionmanager/actionmanager.h>
|
||||
#include <coreplugin/actionmanager/command.h>
|
||||
#include <coreplugin/editormanager/editormanager.h>
|
||||
#include <coreplugin/id.h>
|
||||
|
||||
#include <QAction>
|
||||
#include <QList>
|
||||
#include <QSignalMapper>
|
||||
|
||||
namespace ImageViewer {
|
||||
namespace Internal {
|
||||
|
||||
|
||||
@@ -29,7 +29,6 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "imageviewerfactory.h"
|
||||
#include "imagevieweractionhandler.h"
|
||||
#include "imageviewerconstants.h"
|
||||
#include "imageviewer.h"
|
||||
|
||||
@@ -41,20 +40,12 @@
|
||||
namespace ImageViewer {
|
||||
namespace Internal {
|
||||
|
||||
struct ImageViewerFactoryPrivate
|
||||
{
|
||||
QPointer<ImageViewerActionHandler> actionHandler;
|
||||
};
|
||||
|
||||
ImageViewerFactory::ImageViewerFactory(QObject *parent) :
|
||||
Core::IEditorFactory(parent),
|
||||
d(new ImageViewerFactoryPrivate)
|
||||
Core::IEditorFactory(parent)
|
||||
{
|
||||
setId(Constants::IMAGEVIEWER_ID);
|
||||
setDisplayName(qApp->translate("OpenWith::Editors", Constants::IMAGEVIEWER_DISPLAY_NAME));
|
||||
|
||||
d->actionHandler = new ImageViewerActionHandler(this);
|
||||
|
||||
QMap<QByteArray, const char *> possibleMimeTypes;
|
||||
possibleMimeTypes.insert("bmp", "image/bmp");
|
||||
possibleMimeTypes.insert("gif", "image/gif");
|
||||
@@ -80,11 +71,6 @@ ImageViewerFactory::ImageViewerFactory(QObject *parent) :
|
||||
}
|
||||
}
|
||||
|
||||
ImageViewerFactory::~ImageViewerFactory()
|
||||
{
|
||||
delete d;
|
||||
}
|
||||
|
||||
Core::IEditor *ImageViewerFactory::createEditor()
|
||||
{
|
||||
return new ImageViewer();
|
||||
@@ -92,7 +78,7 @@ Core::IEditor *ImageViewerFactory::createEditor()
|
||||
|
||||
void ImageViewerFactory::extensionsInitialized()
|
||||
{
|
||||
d->actionHandler->createActions();
|
||||
m_actionHandler.createActions();
|
||||
}
|
||||
|
||||
} // namespace Internal
|
||||
|
||||
@@ -31,6 +31,8 @@
|
||||
#ifndef IMAGEVIEWERFACTORY_H
|
||||
#define IMAGEVIEWERFACTORY_H
|
||||
|
||||
#include "imagevieweractionhandler.h"
|
||||
|
||||
#include <coreplugin/editormanager/ieditorfactory.h>
|
||||
#include <coreplugin/editormanager/ieditor.h>
|
||||
#include <coreplugin/idocument.h>
|
||||
@@ -38,19 +40,20 @@
|
||||
namespace ImageViewer {
|
||||
namespace Internal {
|
||||
|
||||
class ImageViewerActionHandler;
|
||||
|
||||
class ImageViewerFactory : public Core::IEditorFactory
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ImageViewerFactory(QObject *parent = 0);
|
||||
~ImageViewerFactory();
|
||||
|
||||
Core::IEditor *createEditor();
|
||||
|
||||
void extensionsInitialized();
|
||||
|
||||
private:
|
||||
struct ImageViewerFactoryPrivate *d;
|
||||
ImageViewerActionHandler m_actionHandler;
|
||||
};
|
||||
|
||||
} // namespace Internal
|
||||
|
||||
@@ -42,24 +42,8 @@
|
||||
namespace ImageViewer {
|
||||
namespace Internal {
|
||||
|
||||
///////////////////////////////// ImageViewerPluginPrivate //////////////////////////////////
|
||||
struct ImageViewerPluginPrivate
|
||||
{
|
||||
QPointer<ImageViewerFactory> factory;
|
||||
};
|
||||
|
||||
///////////////////////////////// ImageViewerPlugin //////////////////////////////////
|
||||
|
||||
ImageViewerPlugin::ImageViewerPlugin()
|
||||
: d(new ImageViewerPluginPrivate)
|
||||
{
|
||||
}
|
||||
|
||||
ImageViewerPlugin::~ImageViewerPlugin()
|
||||
{
|
||||
delete d;
|
||||
}
|
||||
|
||||
bool ImageViewerPlugin::initialize(const QStringList &arguments, QString *errorMessage)
|
||||
{
|
||||
Q_UNUSED(arguments)
|
||||
@@ -67,17 +51,17 @@ bool ImageViewerPlugin::initialize(const QStringList &arguments, QString *errorM
|
||||
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":/imageviewer/ImageViewer.mimetypes.xml"), errorMessage))
|
||||
return false;
|
||||
|
||||
d->factory = new ImageViewerFactory(this);
|
||||
m_factory = new ImageViewerFactory(this);
|
||||
Aggregation::Aggregate *aggregate = new Aggregation::Aggregate;
|
||||
aggregate->add(d->factory);
|
||||
aggregate->add(m_factory);
|
||||
|
||||
addAutoReleasedObject(d->factory);
|
||||
addAutoReleasedObject(m_factory);
|
||||
return true;
|
||||
}
|
||||
|
||||
void ImageViewerPlugin::extensionsInitialized()
|
||||
{
|
||||
d->factory->extensionsInitialized();
|
||||
m_factory->extensionsInitialized();
|
||||
}
|
||||
|
||||
} // namespace Internal
|
||||
|
||||
@@ -33,11 +33,12 @@
|
||||
|
||||
#include <extensionsystem/iplugin.h>
|
||||
|
||||
#include <QPointer>
|
||||
#include <QtPlugin>
|
||||
|
||||
namespace ImageViewer {
|
||||
|
||||
namespace Internal {
|
||||
|
||||
class ImageViewerFactory;
|
||||
|
||||
class ImageViewerPlugin : public ExtensionSystem::IPlugin
|
||||
@@ -46,14 +47,13 @@ class ImageViewerPlugin : public ExtensionSystem::IPlugin
|
||||
Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "ImageViewer.json")
|
||||
|
||||
public:
|
||||
ImageViewerPlugin();
|
||||
~ImageViewerPlugin();
|
||||
ImageViewerPlugin() {}
|
||||
|
||||
bool initialize(const QStringList &arguments, QString *errorMessage = 0);
|
||||
void extensionsInitialized();
|
||||
|
||||
private:
|
||||
struct ImageViewerPluginPrivate *d;
|
||||
QPointer<ImageViewerFactory> m_factory;
|
||||
};
|
||||
|
||||
} // namespace Internal
|
||||
|
||||
Reference in New Issue
Block a user