X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=gconf-wrapper.h;h=be949059e0cc5fbeee5b3c067fee2b6e5ff619b7;hb=0095049cda673a0f8adbd93399813eedd8930a44;hp=a3e451846aa1468653d4a4e4de4ed925b4ef8a7c;hpb=728fedb493048509e3d83c3e0b20464a872bd960;p=simple-launcher diff --git a/gconf-wrapper.h b/gconf-wrapper.h index a3e4518..be94905 100644 --- a/gconf-wrapper.h +++ b/gconf-wrapper.h @@ -54,49 +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& = ""); + 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); + 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); + 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