|
UniWidgets
1.0.0
|
00001 #ifndef _THEMELOADER_H_ 00002 #define _THEMELOADER_H_ 00003 // ------------------------------------------------------------------------- 00004 #include <gtkmm.h> 00005 #include <librsvg/rsvg.h> 00006 #include <uniwidgets/SVGLoader.h> 00007 // ------------------------------------------------------------------------- 00014 class ThemeLoader 00015 { 00016 public: 00018 static Glib::KeyFile kf; 00020 static void LoadTheme(); 00021 00022 ThemeLoader(const Glib::ustring& group); 00023 ~ThemeLoader(){}; 00025 void set_group(const Glib::ustring& group); 00027 Glib::ustring get_string(const Glib::ustring& key, bool quiet = false); 00029 gdouble get_double(const Glib::ustring& key, gdouble dflt = 0.0, bool quiet = false); 00031 bool get_boolean(const Glib::ustring& key, bool dflt = false, bool quiet = false); 00033 Gdk::Color get_color(const Glib::ustring& key, const Glib::ustring& dflt = "#ffffff", bool quiet = false); 00035 std::vector<gdouble> get_double_list(const Glib::ustring& key, bool quiet = false); 00037 SVGLoader getSVG(const Glib::ustring& key, const Glib::ustring& dflt = "", bool quiet = false); 00038 00039 protected: 00040 static bool loaded; 00041 static bool theme_loaded; 00042 static std::string theme_path; 00043 static std::string theme_file; 00045 Glib::ustring group; 00046 ThemeLoader(); 00047 }; 00048 #endif
1.7.6.1