X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=gconf-wrapper.h;h=be949059e0cc5fbeee5b3c067fee2b6e5ff619b7;hb=30a96982c959f9c5d99cbb6e980a938608844dee;hp=9fbf284e9f5cba3548fff889b0371f2fa377be57;hpb=b6a6d94ea3e012d02fb91d935c3f93af74e893e3;p=simple-launcher diff --git a/gconf-wrapper.h b/gconf-wrapper.h index 9fbf284..be94905 100644 --- a/gconf-wrapper.h +++ b/gconf-wrapper.h @@ -54,52 +54,57 @@ class GConfOption : public GConfItem { protected: GConfOption(const GConfKey& key, const std::string& path): myIsSynchronized(false), myPath(key.merge(path)) { } + virtual GConfValueType kind() const = 0; + void setGConfValue(const GConfValue *); - GConfValue *getGConfValue(GConfValueType) const; + GConfValue *getGConfValue() const; void unsetGConfValue(); protected: mutable bool myIsSynchronized; - std::string myPath; + const std::string myPath; }; -class GConfStringValue : public GConfOption { +class GConfStringOption : public GConfOption { public: - GConfStringValue(const GConfKey&, const std::string&, const std::string& = ""); - ~GConfStringValue(); + GConfStringOption(const GConfKey&, const std::string&, const std::string&); + + virtual GConfValueType kind() const { return GCONF_VALUE_STRING; } const std::string& value() const; const std::string& setValue(const std::string& newValue); private: mutable std::string myValue; - std::string myDefaultValue; + const std::string myDefaultValue; }; -class GConfBooleanValue : public GConfOption { +class GConfBooleanOption : public GConfOption { public: - GConfBooleanValue(const GConfKey&, const std::string&, bool = false); - ~GConfBooleanValue(); + GConfBooleanOption(const GConfKey&, const std::string&, bool); + + virtual GConfValueType kind() const { return GCONF_VALUE_BOOL; } bool value() const; bool setValue(bool newValue); private: mutable bool myValue; - bool myDefaultValue; + const bool myDefaultValue; }; -class GConfIntegerValue : public GConfOption { +class GConfIntegerOption : public GConfOption { public: - GConfIntegerValue(const GConfKey&, const std::string&, int = false); - ~GConfIntegerValue(); + GConfIntegerOption(const GConfKey&, const std::string&, int); + + virtual GConfValueType kind() const { return GCONF_VALUE_INT; } int value() const; int setValue(int newValue); private: mutable int myValue; - int myDefaultValue; + const int myDefaultValue; }; #endif