pj_plugin.h
Go to the documentation of this file.
1 #ifndef PJ_PLUGIN_H
2 #define PJ_PLUGIN_H
3 
4 #include <QtPlugin>
5 #include <QMenu>
6 #include <QWidget>
7 #include <QDomDocument>
8 #include "PlotJuggler/plotdata.h"
9 
10 namespace PJ {
11 
12 class PlotJugglerPlugin : public QObject
13 {
14 public:
16  {
17  }
18 
19  virtual const char* name() const = 0;
20 
21  virtual bool isDebugPlugin()
22  {
23  return false;
24  }
25 
26  virtual QWidget* optionsWidget()
27  {
28  return nullptr;
29  }
30 
31  virtual bool xmlSaveState(QDomDocument& doc, QDomElement& parent_element) const
32  {
33  return false;
34  }
35 
36  virtual bool xmlLoadState(const QDomElement& parent_element)
37  {
38  return false;
39  }
40 
41  QDomElement xmlSaveState(QDomDocument& doc) const
42  {
43  QDomElement plugin_elem = doc.createElement("plugin");
44  plugin_elem.setAttribute("ID", this->name());
45  xmlSaveState(doc, plugin_elem);
46  return plugin_elem;
47  }
48 
49  virtual const std::vector<QAction*>& availableActions()
50  {
51  static std::vector<QAction*> empty;
52  return empty;
53  }
54 };
55 
56 }
57 
58 #endif // PJ_PLUGIN_H
QDomElement xmlSaveState(QDomDocument &doc) const
Definition: pj_plugin.h:41
virtual bool xmlLoadState(const QDomElement &parent_element)
Definition: pj_plugin.h:36
virtual bool isDebugPlugin()
Definition: pj_plugin.h:21
virtual QWidget * optionsWidget()
Definition: pj_plugin.h:26
virtual bool xmlSaveState(QDomDocument &doc, QDomElement &parent_element) const
Definition: pj_plugin.h:31
virtual const std::vector< QAction * > & availableActions()
Definition: pj_plugin.h:49
virtual const char * name() const =0


plotjuggler
Author(s): Davide Faconti
autogenerated on Sun Dec 6 2020 03:48:10