NCL Composer  0.1.5
 All Classes Functions Variables Pages
OutlineViewFactory.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 //END_LICENSE
19 #ifndef OUTLINEVIEWPLUGINFACTORY_H
20 #define OUTLINEVIEWPLUGINFACTORY_H
21 
22 #include <core/extensions/IPluginFactory.h>
23 using namespace composer::extension;
24 
25 
26 #include "OutlineViewPlugin.h"
27 
31 class OutlineViewFactory : public QObject, public IPluginFactory
32 {
33  Q_OBJECT
34  Q_INTERFACES(IPluginFactory)
35 
36  public:
42 
48  IPlugin* createPluginInstance();
49 
55  void releasePluginInstance(IPlugin *);
56 
62  QString id() const;
68  QString name() const;
74  QIcon icon() const;
80  QString version() { return NCLCOMPOSER_PLUGINS_VERSION; }
87  QString compatVersion() {return "0.1";}
93  QString vendor() {return "Telemidia Lab";}
99  QString copyright() {return "Telemidia/PUC-Rio";}
106  QString license() {return "LGPL";}
107 
113  QString description() {return tr("Outline View enables the user "
114  "navigates in the project as a tree.");}
115 
116  QString url() {return "http://composer.telemidia.puc-rio.br/outline";}
117 
118  QString category() {return "NCL";}
119 };
120 
121 #endif // OUTLINEVIEWPLUGINFACTORY_H