eVaf
iprop.h
Go to the documentation of this file.
1 
20 #ifndef __COMMON_IPROP_H
21 # define __COMMON_IPROP_H
22 
23 #include "libcommon.h"
24 
25 #include <QObject>
26 #include <QString>
27 #include <QVariant>
28 
29 namespace eVaf {
30 namespace Common {
31 
59 class COMMON_EXPORT iProp : public QObject
60 {
61  Q_OBJECT
62 
63 public:
64 
66  iProp() : QObject() {}
67 
69  virtual ~iProp() {}
70 
79  static iProp * instance();
80 
90  virtual QVariant getValue(QString const & name, QVariant const & defaultValue = QVariant()) const = 0;
91 
103  virtual void setValue(QString const & name, QVariant const & value, bool persistent = false) = 0;
104 
105 
106 signals:
107 
115  void valueChanged(QString const & name, QVariant const & value);
116 
117 };
118 
119 } // namespace eVaf::Common
120 } // namespace eVaf
121 
122 #endif // iprop.h
#define COMMON_EXPORT
Definition: libcommon.h:27
virtual ~iProp()
Empty virtual dtor.
Definition: iprop.h:69
iProp()
Interface constructor.
Definition: iprop.h:66
Global eVaf namespace.
Definition: engine.h:37
Global properties and variables for eVaf applications.
Definition: iprop.h:59