00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef SETTINGSMODELEVENTS_H
00026 #define SETTINGSMODELEVENTS_H
00027
00028
00029 #include "MvcCore/modelevents.h"
00030 #include "MvcCore/genericcontainers.h"
00031
00032 #include "mvcsettings.h"
00033
00034
00035 class MSettingsEvent : public MEvent {
00036
00037 public:
00038 enum Type {
00039 SettingsChangeValue = MEvent::User,
00040 SettingsRemoveKey,
00041 SettingsRemoveAll,
00042 SettingsSyncAll,
00043 User = MEvent::User + 1000
00044 };
00045
00046 MSettingsEvent( Type type )
00047 : MEvent((MEvent::Type)type) {}
00048
00050 inline static MvcModuleId_t classModuleId() { return MvcSettings::id(); }
00052 virtual MvcModuleId_t moduleId() const { return classModuleId(); }
00053 };
00054
00055
00056 class MSettingsChangeValueEvent : public MSettingsEvent,
00057 public KeyContainer, public ValueContainer {
00058 public:
00059 MSettingsChangeValueEvent( const QString& key, const QVariant& value )
00060 : MSettingsEvent(SettingsChangeValue),
00061 KeyContainer(key),
00062 ValueContainer(value) {}
00063 };
00064
00065
00066 class MSettingsRemoveKeyEvent : public MSettingsEvent, public KeyContainer {
00067 public:
00068 MSettingsRemoveKeyEvent( const QString& key )
00069 : MSettingsEvent(SettingsRemoveKey),
00070 KeyContainer(key) {}
00071 };
00072
00073
00074 #endif // ! SETTINGSMODELEVENTS_H