Kactus2
Kactus2 reference guide
Loading...
Searching...
No Matches
IPlugin.h
Go to the documentation of this file.
1//-----------------------------------------------------------------------------
2// File: IPlugin.h
3//-----------------------------------------------------------------------------
4// Project: Kactus 2
5// Author: Joni-Matti Maatta
6// Date: 27.6.2012
7//
8// Description:
9// Base plugin interface.
10//-----------------------------------------------------------------------------
11
12#ifndef IPLUGIN_H
13#define IPLUGIN_H
14
15#include "PluginSettingsModel.h"
16
17#include <QString>
18#include <QList>
19#include <QtPlugin>
20#include <QWidget>
21
22//-----------------------------------------------------------------------------
26//-----------------------------------------------------------------------------
28{
29public:
30
33
35 QString name_;
36
38 QString description_;
39
41 QString filters_;
42 };
43
47 virtual ~IPlugin() {}
48
52 virtual QString getName() const = 0;
53
57 virtual QString getVersion() const = 0;
58
62 virtual QString getDescription() const = 0;
63
67 virtual QString getVendor() const = 0;
68
72 virtual QString getLicense() const = 0;
73
77 virtual QString getLicenseHolder() const = 0;
78
83 virtual QWidget* getSettingsWidget() = 0;
84
89
94 virtual QList<ExternalProgramRequirement> getProgramRequirements() = 0;
95};
96
97Q_DECLARE_INTERFACE(IPlugin, "com.tut.Kactus2.IPlugin/1.0")
98
99//-----------------------------------------------------------------------------
100
101#endif // IPLUGIN_H
All plugin interfaces inherit from a common IPlugin interface which all plugins must implement....
Definition IPlugin.h:28
virtual QString getName() const =0
virtual QWidget * getSettingsWidget()=0
virtual ~IPlugin()
Definition IPlugin.h:47
virtual QString getVersion() const =0
virtual QString getLicense() const =0
virtual QString getDescription() const =0
virtual QList< ExternalProgramRequirement > getProgramRequirements()=0
virtual QString getVendor() const =0
virtual PluginSettingsModel * getSettingsModel()=0
virtual QString getLicenseHolder() const =0
Base interface for plugin settings model.
Contains options for required external program paths for plugin.
Definition IPlugin.h:32
QString name_
Identifies the program to run.
Definition IPlugin.h:35
QString description_
Explains the required program for user.
Definition IPlugin.h:38
QString filters_
Contains the filters for the QFileDialog to select correct type of files.
Definition IPlugin.h:41