Canorus  0.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
pluginaction.h
Go to the documentation of this file.
1 
8 #ifndef PLUGINACTION_H_
9 #define PLUGINACTION_H_
10 
11 #include <QAction>
12 
13 #include "interface/plugin.h"
14 
15 class CAPluginAction : public QAction {
16 #ifndef SWIG
17  Q_OBJECT
18 #endif
19 public:
20  CAPluginAction(CAPlugin *plugin, QString name, QString lang, QString function, QList<QString> args, QString filename);
21 
22  inline CAPlugin *plugin() { return _plugin; }
23  inline QString name() { return _name; }
24  inline QString lang() { return _lang; }
25  inline QString function() { return _function; }
26  inline QList<QString> args() { return _args; }
27  inline QString filename() { return _filename; }
28  inline QString onAction() { return _onAction; }
29  inline QString exportFilter(QString lang) { return _exportFilter[lang]; }
30  QString localExportFilter() { if (_exportFilter.contains(QLocale::system().name())) return exportFilter(QLocale::system().name()); else return exportFilter(""); }
31  inline QString importFilter(QString lang) { return _importFilter[lang]; }
32  QString localImportFilter() { if (_importFilter.contains(QLocale::system().name())) return exportFilter(QLocale::system().name()); else return importFilter(""); }
33  inline QString localeText(QString lang) { return _text[lang]; }
34  QString localText() { if (_text.contains(QLocale::system().name())) return localeText(QLocale::system().name()); else return localeText(""); }
35  bool refresh() { return _refresh; }
36 
37  void setPlugin(CAPlugin *plugin) { _plugin = plugin; }
38  void setName(QString name) { _name = name; }
39  void setLang(QString lang) { _lang = lang; }
40  void setFunction(QString function) { _function = function; }
41  void addArgument(QString arg) { _args << arg; }
42  bool removeArgument(QString arg) { _args.removeAll(arg); }
43  void setFilename(QString filename) { _filename = filename; }
44  void setOnAction(QString onAction) { _onAction = onAction; }
45  void setExportFilter(QString lang, QString value) { _exportFilter[lang] = value; }
46  void setExportFilters(QHash< QString, QString > f) { _exportFilter = f; }
47  void setImportFilter(QString lang, QString value) { _importFilter[lang] = value; }
48  void setImportFilters(QHash< QString, QString > f) { _importFilter = f; }
49  void setLocaleText(QString lang, QString value) { _text[lang] = value; this->setText(localText()); }
50  void setTexts(QHash< QString, QString > t) { _text = t; this->setText(localText()); }
51  void setRefresh(bool refresh) { _refresh = refresh; }
52 
53 private:
55  QString _name;
56  QString _lang;
57  QString _function;
58  QList<QString> _args;
59  QString _filename;
60  QString _onAction;
61  QHash<QString, QString> _exportFilter;
62  QHash<QString, QString> _importFilter;
63  QHash<QString, QString> _text;
64  bool _refresh;
65 
66 #ifndef SWIG
67 private slots:
68  void triggeredSlot(bool);
69 
70 signals:
71  void triggered(QAction*, bool);
72 #endif
73 };
74 
75 #endif /* PLUGINACTION_H_ */
QString localExportFilter()
Definition: pluginaction.h:30
void setName(QString name)
Definition: pluginaction.h:38
void setTexts(QHash< QString, QString > t)
Definition: pluginaction.h:50
void setFilename(QString filename)
Definition: pluginaction.h:43
QHash< QString, QString > _importFilter
Text written in export dialog's filter.
Definition: pluginaction.h:62
bool removeArgument(QString arg)
Definition: pluginaction.h:42
void setLocaleText(QString lang, QString value)
Definition: pluginaction.h:49
QString _onAction
Filename which has the function.
Definition: pluginaction.h:60
void setImportFilter(QString lang, QString value)
Definition: pluginaction.h:47
CAPlugin * _plugin
Definition: pluginaction.h:54
QHash< QString, QString > _exportFilter
Canorus internal action which this action reacts on.
Definition: pluginaction.h:61
void setExportFilters(QHash< QString, QString > f)
Definition: pluginaction.h:46
QString _name
Pointer to the plugin which this action belongs to.
Definition: pluginaction.h:55
void setExportFilter(QString lang, QString value)
Definition: pluginaction.h:45
void setRefresh(bool refresh)
Definition: pluginaction.h:51
void setImportFilters(QHash< QString, QString > f)
Definition: pluginaction.h:48
QString localeText(QString lang)
Definition: pluginaction.h:33
void triggered(QAction *, bool)
Connected to triggered(), calls plugin->callAction()
void setFunction(QString function)
Definition: pluginaction.h:40
bool _refresh
Text written on a menu item or the toolbar button.
Definition: pluginaction.h:64
void triggeredSlot(bool)
Should the UI be rebuilt when calling the action.
Definition: pluginaction.cpp:41
QString onAction()
Definition: pluginaction.h:28
QString exportFilter(QString lang)
Definition: pluginaction.h:29
QString filename()
Definition: pluginaction.h:27
Definition: pluginaction.h:15
QList< QString > args()
Definition: pluginaction.h:26
void addArgument(QString arg)
Definition: pluginaction.h:41
QString _function
Scripting language.
Definition: pluginaction.h:57
void setPlugin(CAPlugin *plugin)
Definition: pluginaction.h:37
QString lang()
Definition: pluginaction.h:24
CAPluginAction(CAPlugin *plugin, QString name, QString lang, QString function, QList< QString > args, QString filename)
Definition: pluginaction.cpp:23
QString _filename
Function arguments.
Definition: pluginaction.h:59
CAPlugin * plugin()
Definition: pluginaction.h:22
QHash< QString, QString > _text
Text written in import dialog's filter.
Definition: pluginaction.h:63
QString localImportFilter()
Definition: pluginaction.h:32
bool refresh()
Definition: pluginaction.h:35
QString name()
Definition: pluginaction.h:23
QString importFilter(QString lang)
Definition: pluginaction.h:31
void setLang(QString lang)
Definition: pluginaction.h:39
QList< QString > _args
Function name.
Definition: pluginaction.h:58
QString localText()
Definition: pluginaction.h:34
Definition: plugin.h:26
void setOnAction(QString onAction)
Definition: pluginaction.h:44
QString _lang
Action name.
Definition: pluginaction.h:56