Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //-----In Config.h---------------
- #define DECLARE_GETTER_SETTER_SIGNAL(LOWER_CASE_NAME, UPPER_CASE_NAME, TYPE) \
- TYPE LOWER_CASE_NAME () const; \
- void set##UPPER_CASE_NAME (TYPE);\
- Q_SIGNAL void LOWER_CASE_NAME##Changed(TYPE);
- //-----In Config.cpp--------------
- #define DEFINE_GETTER_AND_SETTER(LOWER_CASE_NAME, UPPER_CASE_NAME, KEY, TYPE, DEFAULT_VALUE, GROUP) \
- TYPE Config::LOWER_CASE_NAME () const\
- { \
- return loadProperty<TYPE>(KEY, DEFAULT_VALUE, GROUP); \
- }\
- void Config::set##UPPER_CASE_NAME (TYPE value) \
- { \
- static QMutex mutex; \
- QMutexLocker locker(&mutex); \
- bool changed = (LOWER_CASE_NAME() != value); \
- if (changed) \
- { \
- saveProperty<TYPE>(#KEY, value, GROUP); \
- emit LOWER_CASE_NAME##Changed(value); \
- } \
- }
- #define DEFINE_ENUM_GETTER_AND_SETTER(LOWER_CASE_NAME, UPPER_CASE_NAME, KEY, TYPE, DEFAULT_VALUE, GROUP) \
- TYPE Config::LOWER_CASE_NAME () const\
- { \
- return static_cast<TYPE>(loadProperty<int>(KEY, static_cast<int>(DEFAULT_VALUE), GROUP)); \
- }\
- void Config::set##UPPER_CASE_NAME (TYPE value) \
- { \
- static QMutex mutex; \
- QMutexLocker locker(&mutex); \
- bool changed = (LOWER_CASE_NAME() != value); \
- if (changed) \
- { \
- saveProperty<int>(#KEY, static_cast<int>(value), GROUP); \
- emit LOWER_CASE_NAME##Changed(value); \
- } \
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement