Canorus  0.0
plugin.h
Go to the documentation of this file.
1 
8 #ifndef PLUGIN_H_
9 #define PLUGIN_H_
10 
11 #include <QString>
12 #include <QHash>
13 #include <QList>
14 #include <QLocale>
15 
16 class QPoint;
17 class QEvent;
18 class QMenu;
19 
20 class CAMainWin;
21 class CADocument;
22 
23 class CAPluginAction;
24 
25 class CAPlugin {
26  public:
27  CAPlugin();
28  CAPlugin(QString name, QString author, QString version, QString date, QString dirName, QString homeUrl, QString updateUrl);
29  ~CAPlugin();
30 
42  bool action(QString onAction, CAMainWin *mainWin=0, CADocument *document=0, QEvent *evt=0, QPoint *coords=0);
43 
53  bool callAction(CAPluginAction *action, CAMainWin *mainWin=0, CADocument *document=0, QEvent *evt=0, QPoint *coords=0, QString filename="");
54 
65  void addMenu(QString name, QMenu* menu) { _menuMap[name] = menu; }
66 
67  void setEnabled(bool enabled) { _enabled = enabled; }
68  bool isEnabled() { return _enabled; }
69 
70  QString name() { return _name; }
71  QString author() { return _author; }
72  QString version() { return _version; }
73  QString date() { return _date; }
74  QString dirName() { return _dirName; }
75  QString homeUrl() { return _homeUrl; }
76  QString updateUrl() { return _updateUrl; }
77  QString description(QString lang) { return _descMap[lang]; }
78  QString localDescription() { if (_descMap.contains(QLocale::system().name())) return description(QLocale::system().name()); else return description(""); }
79  QMenu *menu(QString menuName) { return _menuMap[menuName]; }
80 
81  void setName(QString name) { _name = name; }
82  void setDescription(QString desc, QString lang=QString("")) { _descMap[lang]=desc; }
83  void setAuthor(QString author) { _author = author; }
84  void setVersion(QString version) { _version = version; }
85  void setDate(QString date) { _date = date; }
86  void setDirName(QString dirName) { _dirName = dirName; }
87  void setHomeUrl(QString homeUrl) { _homeUrl = homeUrl; }
89 
95  QList<QString> actionList() { return _actionMap.keys(); }
96 
97  private:
98  QString _name;
99  QHash<QString, QString> _descMap;
100  QString _author;
101  QString _version;
102  QString _date;
103  QString _dirName;
104  QString _homeUrl;
105  QString _updateUrl;
106  bool _enabled;
107 
108  QMultiHash< QString, CAPluginAction* > _actionMap;
109  QHash< QString, QMenu* > _menuMap;
110 };
111 #endif /*PLUGIN_H_*/
CAPlugin::~CAPlugin
~CAPlugin()
Definition: plugin.cpp:56
CAPlugin::addAction
void addAction(CAPluginAction *action)
Definition: plugin.cpp:281
CADocument
Class which represents the current document.
Definition: document.h:19
CAMainWin::currentSheet
CASheet * currentSheet()
Definition: plugins_swig.h:18
CAPlugin::_version
QString _version
Definition: plugin.h:101
CAPlugin::setHomeUrl
void setHomeUrl(QString homeUrl)
Definition: plugin.h:87
plugin.h
CAPlugin::isEnabled
bool isEnabled()
Definition: plugin.h:68
CAScoreView::selection
const QList< CADrawableMusElement * > & selection()
Definition: scoreview.h:88
CAPlugin::updateUrl
QString updateUrl()
Definition: plugin.h:76
CAMainWin::pyConsoleIface
CAPyConsoleInterface * pyConsoleIface
Definition: plugins_swig.h:23
viewcontainer.h
plugins_swig.h
CAPlugin::setUpdateUrl
void setUpdateUrl(QString updateUrl)
Definition: plugin.h:88
CAPlugin::_author
QString _author
LOCALE description of the plugin, key means the language code, value is the translation....
Definition: plugin.h:100
CAPlugin::action
bool action(QString onAction, CAMainWin *mainWin=0, CADocument *document=0, QEvent *evt=0, QPoint *coords=0)
Definition: plugin.cpp:66
CAPlugin::date
QString date()
Definition: plugin.h:73
CAScoreView
Definition: scoreview.h:55
CAPlugin::setDirName
void setDirName(QString dirName)
Definition: plugin.h:86
CAPlugin::_actionMap
QMultiHash< QString, CAPluginAction * > _actionMap
Definition: plugin.h:108
CAPlugin::version
QString version()
Definition: plugin.h:72
CAPlugin::CAPlugin
CAPlugin()
Definition: plugin.cpp:32
scoreview.h
drawablemuselement.h
CAPlugin::_updateUrl
QString _updateUrl
Definition: plugin.h:105
CAPlugin::localDescription
QString localDescription()
Definition: plugin.h:78
CAPlugin::name
QString name()
Definition: plugin.h:70
CAPlugin
Definition: plugin.h:25
CAPlugin::_enabled
bool _enabled
Definition: plugin.h:106
CAPlugin::menu
QMenu * menu(QString menuName)
Definition: plugin.h:79
swigpython.h
pluginaction.h
CAPlugin::setDescription
void setDescription(QString desc, QString lang=QString(""))
Definition: plugin.h:82
mainwin.h
CAPlugin::author
QString author()
Definition: plugin.h:71
CAPlugin::_homeUrl
QString _homeUrl
ABSOLUTE Name of directory where the plugin is located - plugin only stores the relative one,...
Definition: plugin.h:104
CAPlugin::dirName
QString dirName()
Definition: plugin.h:74
CAMainWin::currentScoreView
CAScoreView * currentScoreView()
Definition: mainwin.h:122
CAPlugin::_descMap
QHash< QString, QString > _descMap
Definition: plugin.h:99
CAPlugin::_dirName
QString _dirName
Definition: plugin.h:103
CAScoreView::musElementSelection
QList< CAMusElement * > musElementSelection()
Definition: scoreview.cpp:1890
CAPlugin::homeUrl
QString homeUrl()
Definition: plugin.h:75
CACanorus::rebuildUI
static void rebuildUI(CADocument *document, CASheet *sheet)
Definition: canorus.cpp:326
CAMainWin
Canorus main window Class CAMainWin represents Canorus main window. The core layout is generated usin...
Definition: plugins_swig.h:6
view.h
canorus.h
CAPlugin::setVersion
void setVersion(QString version)
Definition: plugin.h:84
CAPlugin::_name
QString _name
Definition: plugin.h:98
guiError
void guiError()
CAPlugin::callAction
bool callAction(CAPluginAction *action, CAMainWin *mainWin=0, CADocument *document=0, QEvent *evt=0, QPoint *coords=0, QString filename="")
Definition: plugin.cpp:81
CAPlugin::actionList
QList< QString > actionList()
Definition: plugin.h:95
CAPlugin::setAuthor
void setAuthor(QString author)
Definition: plugin.h:83
CAPluginAction
Definition: pluginaction.h:15
CAPlugin::addMenu
void addMenu(QString name, QMenu *menu)
Definition: plugin.h:65
CAPlugin::setEnabled
void setEnabled(bool enabled)
Definition: plugin.h:67
CAPlugin::setDate
void setDate(QString date)
Definition: plugin.h:85
CAPlugin::_date
QString _date
Definition: plugin.h:102
swigruby.h
CAPlugin::setName
void setName(QString name)
Definition: plugin.h:81
CAPlugin::_menuMap
QHash< QString, QMenu * > _menuMap
Key: onAction, Value: plugin's action.
Definition: plugin.h:109
CAPlugin::description
QString description(QString lang)
Definition: plugin.h:77
CADrawableMusElement::DrawableNote
@ DrawableNote
Definition: drawablemuselement.h:19