X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Ftrunk%2Fsrc%2Fgtkmm%2Ficoncontroler.cpp;h=68a819093586ec4eeb11022b077313891183859e;hb=0c2b7e48750351e8f3d39885dd1e2c2b73551523;hp=cae775609440139fa410886e2d5a55281a8cae31;hpb=3a3c4bca3a17137bec5d7960560934b91ef4146e;p=synfig.git diff --git a/synfig-studio/trunk/src/gtkmm/iconcontroler.cpp b/synfig-studio/trunk/src/gtkmm/iconcontroler.cpp index cae7756..68a8190 100644 --- a/synfig-studio/trunk/src/gtkmm/iconcontroler.cpp +++ b/synfig-studio/trunk/src/gtkmm/iconcontroler.cpp @@ -1,20 +1,21 @@ -/* === S I N F G =========================================================== */ +/* === S Y N F I G ========================================================= */ /*! \file template.cpp ** \brief Template File ** ** $Id: iconcontroler.cpp,v 1.1.1.1 2005/01/07 03:34:36 darco Exp $ ** ** \legal -** Copyright (c) 2002 Robert B. Quattlebaum Jr. +** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley ** -** This software and associated documentation -** are CONFIDENTIAL and PROPRIETARY property of -** the above-mentioned copyright holder. +** This package is free software; you can redistribute it and/or +** modify it under the terms of the GNU General Public License as +** published by the Free Software Foundation; either version 2 of +** the License, or (at your option) any later version. ** -** You may not copy, print, publish, or in any -** other way distribute this software without -** a prior written agreement with -** the copyright holder. +** This package is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +** General Public License for more details. ** \endlegal */ /* ========================================================================= */ @@ -29,10 +30,10 @@ #endif #include "iconcontroler.h" -#include +#include #include #include -#include +#include #endif @@ -41,7 +42,7 @@ using namespace etl; using namespace std; using namespace studio; -using namespace sinfg; +using namespace synfig; /* === M A C R O S ========================================================= */ @@ -69,9 +70,9 @@ using namespace sinfg; /* === M E T H O D S ======================================================= */ -static Glib::RefPtr _tree_pixbuf_table_value_type[(int)sinfg::ValueBase::TYPE_END]; +static Glib::RefPtr _tree_pixbuf_table_value_type[(int)synfig::ValueBase::TYPE_END]; -IconControler::IconControler(const sinfg::String& basepath) +IconControler::IconControler(const synfig::String& basepath) { Gtk::IconSource icon_source; icon_source.set_direction_wildcarded(); @@ -85,25 +86,33 @@ IconControler::IconControler(const sinfg::String& basepath) #else path_to_icons=IMAGE_DIR; #endif + + char* synfig_root=getenv("SYNFIG_ROOT"); + if(synfig_root) { + path_to_icons=synfig_root; + path_to_icons+=ETL_DIRECTORY_SEPERATOR; + + path_to_icons+="share/pixmaps"; + } path_to_icons+=ETL_DIRECTORY_SEPERATOR; try{ - Gtk::Window::set_default_icon_from_file(path_to_icons+"sinfg_icon."+IMAGE_EXT); + Gtk::Window::set_default_icon_from_file(path_to_icons+"synfig_icon."+IMAGE_EXT); } catch(...) { - sinfg::warning("Unable to open "+path_to_icons+"sinfg_icon."+IMAGE_EXT); + synfig::warning("Unable to open "+path_to_icons+"synfig_icon."+IMAGE_EXT); } /* #define INIT_STOCK_ICON(name,iconfile,desc) \ - stock_##name=Gtk::StockItem(Gtk::StockID("sinfg-" #name),desc); \ + stock_##name=Gtk::StockItem(Gtk::StockID("synfig-" #name),desc); \ Gtk::Stock::add(stock_##name); \ icon_source.set_filename(path_to_icons+iconfile); \ icon_##name.add_source(icon_source); \ icon_factory->add(stock_##name.get_stock_id(),icon_##name) */ #define INIT_STOCK_ICON(name,iconfile,desc){ \ - Gtk::StockItem stockitem(Gtk::StockID("sinfg-" #name),desc); \ + Gtk::StockItem stockitem(Gtk::StockID("synfig-" #name),desc); \ Gtk::Stock::add(stockitem); \ Gtk::IconSet icon_set; \ icon_source.set_filename(path_to_icons+iconfile); \ @@ -112,7 +121,7 @@ IconControler::IconControler(const sinfg::String& basepath) } #define INIT_STOCK_ICON_CLONE(name,stockid,desc){ \ - Gtk::StockItem stockitem(Gtk::StockID("sinfg-" #name),desc); \ + Gtk::StockItem stockitem(Gtk::StockID("synfig-" #name),desc); \ Gtk::Stock::add(stockitem); \ Gtk::IconSet icon_set; \ if(Gtk::Stock::lookup(stockitem.get_stock_id(),icon_set)) \ @@ -120,7 +129,7 @@ IconControler::IconControler(const sinfg::String& basepath) } #define INIT_STOCK_ITEM(name,desc) \ - stock_##name=Gtk::StockItem(Gtk::StockID("sinfg-" #name),desc); \ + stock_##name=Gtk::StockItem(Gtk::StockID("synfig-" #name),desc); \ Gtk::Stock::add(stock_##name); INIT_STOCK_ICON(swap_colors,"swap_colors_icon."IMAGE_EXT,_("Swap Colors")); @@ -190,7 +199,7 @@ IconControler::IconControler(const sinfg::String& basepath) icon_factory->add_default(); - Gtk::IconSize::register_new("sinfg-small_icon",12,12); + Gtk::IconSize::register_new("synfig-small_icon",12,12); for(int i(0);i<(int)ValueBase::TYPE_END;i++) _tree_pixbuf_table_value_type[i]=Gtk::Button().render_icon(value_icon(ValueBase::Type(i)),Gtk::ICON_SIZE_SMALL_TOOLBAR); @@ -222,7 +231,7 @@ IconControler::get_tool_cursor(const Glib::ustring& name,const Glib::RefPtr pixbuf; DEBUGPOINT(); - pixbuf=Gtk::Button().render_icon(Gtk::StockID("sinfg-"+name),Gtk::ICON_SIZE_SMALL_TOOLBAR); + pixbuf=Gtk::Button().render_icon(Gtk::StockID("synfig-"+name),Gtk::ICON_SIZE_SMALL_TOOLBAR); DEBUGPOINT(); pixbuf->render_to_drawable_alpha( @@ -256,55 +265,55 @@ IconControler::get_tool_cursor(const Glib::ustring& name,const Glib::RefPtr value_node) +studio::valuenode_icon(etl::handle value_node) { if(handle::cast_dynamic(value_node)) { @@ -312,19 +321,19 @@ studio::valuenode_icon(etl::handle value_node) } else { - return Gtk::StockID("sinfg-value_node"); + return Gtk::StockID("synfig-value_node"); } } Glib::RefPtr -studio::get_tree_pixbuf(sinfg::ValueBase::Type type) +studio::get_tree_pixbuf(synfig::ValueBase::Type type) { //return Gtk::Button().render_icon(value_icon(type),Gtk::ICON_SIZE_SMALL_TOOLBAR); return _tree_pixbuf_table_value_type[int(type)]; } Gtk::StockID -studio::get_action_stock_id(const sinfgapp::Action::BookEntry& action) +studio::get_action_stock_id(const synfigapp::Action::BookEntry& action) { Gtk::StockID stock_id; if(action.task=="raise") stock_id=Gtk::Stock::GO_UP; @@ -337,38 +346,38 @@ studio::get_action_stock_id(const sinfgapp::Action::BookEntry& action) else if(action.task=="set_on") stock_id=Gtk::Stock::YES; else if(action.task=="set_off") stock_id=Gtk::Stock::NO; else if(action.task=="remove") stock_id=Gtk::Stock::DELETE; - else stock_id=Gtk::StockID("sinfg-"+action.task); + else stock_id=Gtk::StockID("synfig-"+action.task); return stock_id; } Gtk::StockID -studio::layer_icon(const sinfg::String &layer) +studio::layer_icon(const synfig::String &layer) { if(layer=="PasteCanvas" || layer=="pastecanvas") - return Gtk::StockID("sinfg-layer_pastecanvas"); + return Gtk::StockID("synfig-layer_pastecanvas"); else if(layer=="rotate") - return Gtk::StockID("sinfg-rotate"); + return Gtk::StockID("synfig-rotate"); else if(layer=="zoom") - return Gtk::StockID("sinfg-zoom"); + return Gtk::StockID("synfig-zoom"); else if(layer=="region") - return Gtk::StockID("sinfg-bline"); + return Gtk::StockID("synfig-bline"); else if(layer=="polygon") - return Gtk::StockID("sinfg-polygon"); + return Gtk::StockID("synfig-polygon"); else if(layer=="outline") - return Gtk::StockID("sinfg-width"); + return Gtk::StockID("synfig-width"); else if(layer=="circle") - return Gtk::StockID("sinfg-circle"); + return Gtk::StockID("synfig-circle"); else if(layer=="rectangle") - return Gtk::StockID("sinfg-rectangle"); + return Gtk::StockID("synfig-rectangle"); else if(layer.find("gradient")!=String::npos) - return Gtk::StockID("sinfg-gradient"); + return Gtk::StockID("synfig-gradient"); else - return Gtk::StockID("sinfg-layer"); + return Gtk::StockID("synfig-layer"); } Glib::RefPtr -studio::get_tree_pixbuf_layer(const sinfg::String &layer) +studio::get_tree_pixbuf_layer(const synfig::String &layer) { return Gtk::Button().render_icon(layer_icon(layer),Gtk::ICON_SIZE_SMALL_TOOLBAR); }