00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef ICONMANAGER_H
00023 #define ICONMANAGER_H
00024
00025 #include <gdkmm/pixbuf.h>
00026 #include <glibmm/ustring.h>
00027 #include <gtkmm/stockid.h>
00028 #include <map>
00029
00031 namespace AppStock {
00032 extern Gtk::StockID ADD_CHARACTER;
00033 extern Gtk::StockID AUDIO;
00034 extern Gtk::StockID BACKGROUND;
00035 extern Gtk::StockID BROWSE_CHARS;
00036 extern Gtk::StockID EVIDENCE;
00037 extern Gtk::StockID IMAGE;
00038 extern Gtk::StockID INITBLOCK;
00039 extern Gtk::StockID INSERT_DIALOGUE;
00040 extern Gtk::StockID LOCATION;
00041 extern Gtk::StockID TESTIMONY;
00042 }
00043
00044
00045 typedef std::map<Glib::ustring, Glib::RefPtr<Gdk::Pixbuf> > IconMap;
00046 typedef std::map<Glib::ustring, Gtk::IconSet> SetMap;
00047
00052 class IconManager {
00053 public:
00058 bool create_from_file(const Glib::ustring &file);
00059
00064 Gtk::StockID lookup_from_set(const Glib::ustring &str);
00065
00066 private:
00070 void create_icon_sets(const IconMap &icons);
00071
00073 SetMap m_DefaultSets;
00074 };
00075
00076 #endif