diff -r 4bc163d55528 -r 910b1bcb7d05 gui/main_win.cc --- a/gui/main_win.cc Tue Aug 16 20:17:43 2005 +0000 +++ b/gui/main_win.cc Wed Aug 17 12:35:43 2005 +0000 @@ -8,6 +8,75 @@ set_default_size(WIN_WIDTH,WIN_HEIGHT); add(vbox); + + // custom icons for the toolbar + + Glib::RefPtr p_icon_factory = Gtk::IconFactory::create(); + + std::vector icon_path; + icon_path.push_back(DATADIR); + icon_path.push_back("pixmaps"); + icon_path.push_back("gd"); + + std::vector move_icon_path(icon_path); + move_icon_path.push_back("move.png"); + Gtk::IconSource move_icon_source; + move_icon_source.set_filename(Glib::build_filename(move_icon_path)); + Gtk::IconSet move_icon_set; + move_icon_set.add_source(move_icon_source); + p_icon_factory->add(Gtk::StockID("gd-move"), move_icon_set); + + std::vector addnode_icon_path(icon_path); + addnode_icon_path.push_back("addnode.png"); + Gtk::IconSource addnode_icon_source; + addnode_icon_source.set_filename(Glib::build_filename(addnode_icon_path)); + Gtk::IconSet addnode_icon_set; + addnode_icon_set.add_source(addnode_icon_source); + p_icon_factory->add(Gtk::StockID("gd-addnode"), addnode_icon_set); + + std::vector addlink_icon_path(icon_path); + addlink_icon_path.push_back("addlink.png"); + Gtk::IconSource addlink_icon_source; + addlink_icon_source.set_filename(Glib::build_filename(addlink_icon_path)); + Gtk::IconSet addlink_icon_set; + addlink_icon_set.add_source(addlink_icon_source); + p_icon_factory->add(Gtk::StockID("gd-addlink"), addlink_icon_set); + + std::vector delete_icon_path(icon_path); + delete_icon_path.push_back("delete.png"); + Gtk::IconSource delete_icon_source; + delete_icon_source.set_filename(Glib::build_filename(delete_icon_path)); + Gtk::IconSet delete_icon_set; + delete_icon_set.add_source(delete_icon_source); + p_icon_factory->add(Gtk::StockID("gd-delete"), delete_icon_set); + + std::vector editlink_icon_path(icon_path); + editlink_icon_path.push_back("editlink.png"); + Gtk::IconSource editlink_icon_source; + editlink_icon_source.set_filename(Glib::build_filename(editlink_icon_path)); + Gtk::IconSet editlink_icon_set; + editlink_icon_set.add_source(editlink_icon_source); + p_icon_factory->add(Gtk::StockID("gd-editlink"), editlink_icon_set); + + std::vector editnode_icon_path(icon_path); + editnode_icon_path.push_back("editnode.png"); + Gtk::IconSource editnode_icon_source; + editnode_icon_source.set_filename(Glib::build_filename(editnode_icon_path)); + Gtk::IconSet editnode_icon_set; + editnode_icon_set.add_source(editnode_icon_source); + p_icon_factory->add(Gtk::StockID("gd-editnode"), editnode_icon_set); + + std::vector newmap_icon_path(icon_path); + newmap_icon_path.push_back("newmap.png"); + Gtk::IconSource newmap_icon_source; + newmap_icon_source.set_filename(Glib::build_filename(newmap_icon_path)); + Gtk::IconSet newmap_icon_set; + newmap_icon_set.add_source(newmap_icon_source); + p_icon_factory->add(Gtk::StockID("gd-newmap"), newmap_icon_set); + + p_icon_factory->add_default(); + + ag=Gtk::ActionGroup::create(); ag->add( Gtk::Action::create("FileMenu", "_File") ); @@ -39,19 +108,21 @@ sigc::mem_fun(this->mapwin, &MapWin::show)); Gtk::RadioAction::Group tool_group; - ag->add( Gtk::RadioAction::create(tool_group, "MoveItem", Gtk::Stock::CONVERT, "Move"), + ag->add( Gtk::RadioAction::create(tool_group, "MoveItem", Gtk::StockID("gd-move"), "Move"), sigc::bind( sigc::mem_fun ( this->gd_canvas, &GraphDisplayerCanvas::changeEditorialTool ), 0) ); - ag->add( Gtk::RadioAction::create(tool_group, "CreateNode", Gtk::Stock::NO, "Create node"), + ag->add( Gtk::RadioAction::create(tool_group, "CreateNode", Gtk::StockID("gd-addnode"), "Create node"), sigc::bind( sigc::mem_fun ( this->gd_canvas, &GraphDisplayerCanvas::changeEditorialTool ), 1) ); - ag->add( Gtk::RadioAction::create(tool_group, "CreateEdge", Gtk::Stock::REMOVE, "Create edge"), + ag->add( Gtk::RadioAction::create(tool_group, "CreateEdge", Gtk::StockID("gd-addlink"), "Create edge"), sigc::bind( sigc::mem_fun ( this->gd_canvas, &GraphDisplayerCanvas::changeEditorialTool ), 2) ); - ag->add( Gtk::RadioAction::create(tool_group, "EraseItem", Gtk::Stock::DELETE, "Delete"), + ag->add( Gtk::RadioAction::create(tool_group, "EraseItem", Gtk::StockID("gd-delete"), "Delete"), sigc::bind( sigc::mem_fun ( this->gd_canvas, &GraphDisplayerCanvas::changeEditorialTool ), 3) ); - ag->add( Gtk::Action::create("EditEdgeMap", Gtk::Stock::PROPERTIES), + + ag->add( Gtk::RadioAction::create(tool_group, "EditEdgeMap", Gtk::StockID("gd-editlink"), "Edit edge map"), sigc::bind( sigc::mem_fun ( this->gd_canvas, &GraphDisplayerCanvas::changeEditorialTool ), 4) ); - ag->add( Gtk::Action::create("EditNodeMap", Gtk::Stock::PREFERENCES), + ag->add( Gtk::RadioAction::create(tool_group, "EditNodeMap", Gtk::StockID("gd-editnode"), "Edit node map"), sigc::bind( sigc::mem_fun ( this->gd_canvas, &GraphDisplayerCanvas::changeEditorialTool ), 5) ); - ag->add( Gtk::Action::create("AddMap", Gtk::Stock::NEW), + + ag->add( Gtk::Action::create("AddMap", Gtk::StockID("gd-newmap")), sigc::mem_fun ( this->newmapwin, &NewMapWin::show ) ); uim=Gtk::UIManager::create(); @@ -99,6 +170,7 @@ " " " " " " + " " " " " " "";