NCL Composer  0.1.5
 All Classes Functions Variables Pages
qnstcomposerpluginfactory.h
1 /*
2  * Copyright 2011 TeleMidia/PUC-Rio.
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library. If not, see
16  * <http://www.gnu.org/licenses/>.
17  */
18 #ifndef QNSTCOMPOSERPLUGINFACTORY_H
19 #define QNSTCOMPOSERPLUGINFACTORY_H
20 
21 #include <core/extensions/IPluginFactory.h>
22 using namespace composer::extension;
23 
24 #include "qnstcomposerplugin.h"
25 
26 //
27 // ATTENTION: This code needs a refactoring.
28 //
29 
30 class QnstComposerPluginFactory : public QObject, public IPluginFactory
31 {
32  Q_OBJECT
33  Q_INTERFACES(IPluginFactory)
34 
35 public:
36  QnstComposerPluginFactory(QObject* parent = 0);
37 
39 
40  IPlugin* createPluginInstance();
41 
42  void releasePluginInstance(IPlugin *);
43 
44  QString id() const;
45 
46  QString name() const;
47 
53  QString version() { return NCLCOMPOSER_PLUGINS_VERSION; }
60  QString compatVersion() {return "0.1";}
66  QString vendor() {return "Telemidia Lab";}
72  QString copyright() {return "Telemidia/PUC-Rio";}
79  QString license() {return "GPLv3";}
80 
86  QString description() {return tr("Structural View enable the user to edit "
87  "the logical structure of a NCL document "
88  "visually.");}
89 
90  QString url() {return "http://composer.telemidia.puc-rio.br/structural";}
91 
92  QString category() {return "NCL";}
93 };
94 
95 #endif // QNSTCOMPOSERPLUGINFACTORY_H