|
Canorus
0.7
|
00001 00008 #ifndef PLUGINACTION_H_ 00009 #define PLUGINACTION_H_ 00010 00011 #include <QAction> 00012 00013 #include "interface/plugin.h" 00014 00015 class CAPluginAction : public QAction { 00016 #ifndef SWIG 00017 Q_OBJECT 00018 #endif 00019 public: 00020 CAPluginAction(CAPlugin *plugin, QString name, QString lang, QString function, QList<QString> args, QString filename); 00021 00022 inline CAPlugin *plugin() { return _plugin; } 00023 inline QString name() { return _name; } 00024 inline QString lang() { return _lang; } 00025 inline QString function() { return _function; } 00026 inline QList<QString> args() { return _args; } 00027 inline QString filename() { return _filename; } 00028 inline QString onAction() { return _onAction; } 00029 inline QString exportFilter(QString lang) { return _exportFilter[lang]; } 00030 QString localExportFilter() { if (_exportFilter.contains(QLocale::system().name())) return exportFilter(QLocale::system().name()); else return exportFilter(""); } 00031 inline QString importFilter(QString lang) { return _importFilter[lang]; } 00032 QString localImportFilter() { if (_importFilter.contains(QLocale::system().name())) return exportFilter(QLocale::system().name()); else return importFilter(""); } 00033 inline QString localeText(QString lang) { return _text[lang]; } 00034 QString localText() { if (_text.contains(QLocale::system().name())) return localeText(QLocale::system().name()); else return localeText(""); } 00035 bool refresh() { return _refresh; } 00036 00037 void setPlugin(CAPlugin *plugin) { _plugin = plugin; } 00038 void setName(QString name) { _name = name; } 00039 void setLang(QString lang) { _lang = lang; } 00040 void setFunction(QString function) { _function = function; } 00041 void addArgument(QString arg) { _args << arg; } 00042 bool removeArgument(QString arg) { _args.removeAll(arg); } 00043 void setFilename(QString filename) { _filename = filename; } 00044 void setOnAction(QString onAction) { _onAction = onAction; } 00045 void setExportFilter(QString lang, QString value) { _exportFilter[lang] = value; } 00046 void setExportFilters(QHash< QString, QString > f) { _exportFilter = f; } 00047 void setImportFilter(QString lang, QString value) { _importFilter[lang] = value; } 00048 void setImportFilters(QHash< QString, QString > f) { _importFilter = f; } 00049 void setLocaleText(QString lang, QString value) { _text[lang] = value; this->setText(localText()); } 00050 void setTexts(QHash< QString, QString > t) { _text = t; this->setText(localText()); } 00051 void setRefresh(bool refresh) { _refresh = refresh; } 00052 00053 private: 00054 CAPlugin *_plugin; 00055 QString _name; 00056 QString _lang; 00057 QString _function; 00058 QList<QString> _args; 00059 QString _filename; 00060 QString _onAction; 00061 QHash<QString, QString> _exportFilter; 00062 QHash<QString, QString> _importFilter; 00063 QHash<QString, QString> _text; 00064 bool _refresh; 00065 00066 #ifndef SWIG 00067 private slots: 00068 void triggeredSlot(bool); 00069 00070 signals: 00071 void triggered(QAction*, bool); 00072 #endif 00073 }; 00074 00075 #endif /* PLUGINACTION_H_ */
1.8.0