#ifndef _GCONF_FILE_HPP_ #define _GCONF_FILE_HPP_ #include #include #include #include #include "config_file.hpp" class gconf_file : public config_file { public: explicit gconf_file(const std::string& path); ~gconf_file(); bool read_bool(const gchar *sect, const gchar *key, bool& val); bool read_int(const gchar *sect, const gchar *key, int& val); bool read_string(const gchar *, const gchar *, std::string&); bool read_strlist(const gchar *, const gchar *, std::list&); void write_bool(const gchar *sect, const gchar *key, bool val); void write_int(const gchar *sect, const gchar *key, int val); void write_string(const gchar *sect, const gchar *key, const std::string& val); void write_strlist(const gchar *sect, const gchar *key, const std::list& slist); void notify_add(const gchar *, const gchar *, const sigc::slot&); private: std::string cfgname; GConfClient *gconf_client; std::vector notification_ids; }; #endif//!_GCONF_FILE_HPP_