X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Ftrunk%2Fsrc%2Fgtkmm%2Fdock_layers.cpp;h=955763cbf2a4b4d61edb130ff6dd803c97edbdb3;hb=756c0d29ac1742f231e6615f9a577e574e35a4af;hp=e506fc0936254a02d58e3b0262a0c1da140c8429;hpb=d479d04a68be54d17e5f37cb588b22c3fd2929c5;p=synfig.git diff --git a/synfig-studio/trunk/src/gtkmm/dock_layers.cpp b/synfig-studio/trunk/src/gtkmm/dock_layers.cpp index e506fc0..955763c 100644 --- a/synfig-studio/trunk/src/gtkmm/dock_layers.cpp +++ b/synfig-studio/trunk/src/gtkmm/dock_layers.cpp @@ -6,6 +6,7 @@ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley +** Copyright (c) 2007, 2008 Chris Moore ** ** This package is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as @@ -45,6 +46,8 @@ #include "layeractionmanager.h" //#include +#include "general.h" + #endif /* === U S I N G =========================================================== */ @@ -85,7 +88,7 @@ Dock_Layers::Dock_Layers(): { synfig::Layer::Book::value_type lyr(*iter); - if(lyr.second.category==_("Do Not Use")) + if(lyr.second.category==CATEGORY_DO_NOT_USE) continue; action_group_new_layers->add(Gtk::Action::create( @@ -124,11 +127,21 @@ Dock_Layers::Dock_Layers(): App::ui_manager()->insert_action_group(action_group_categories); App::ui_manager()->insert_action_group(action_group_new_layers); - App::ui_manager()->add_ui_from_string(layer_ui_info); + + try + { + App::ui_manager()->add_ui_from_string(layer_ui_info); + } + catch(Glib::MarkupError x) + { + error("%s:%d caught MarkupError code %d: %s", __FILE__, __LINE__, x.code(), x.what().c_str()); + error("%s:%d with markup: \"%s\"", __FILE__, __LINE__, layer_ui_info.c_str()); + exit(1); + } } - action_group_layer_ops->add( Gtk::Action::create("toolbar-layer", "Layer Ops") ); + action_group_layer_ops->add( Gtk::Action::create("toolbar-layer", _("Layer Ops")) ); App::ui_manager()->insert_action_group(action_group_layer_ops); @@ -207,7 +220,6 @@ Dock_Layers::init_canvas_view_vfunc(etl::loose_handle canvas_view) canvas_view->set_tree_model(get_name(),layer_tree_store); LayerTree* layer_tree(new LayerTree()); - layer_tree->set_model(layer_tree_store); layer_tree->set_time_adjustment(canvas_view->time_adjustment()); layer_tree->signal_edited_value().connect( @@ -216,10 +228,13 @@ Dock_Layers::init_canvas_view_vfunc(etl::loose_handle canvas_view) ) ); - canvas_view->set_ext_widget(get_name()+"_cmp",layer_tree); + // (a) should be before (b), (b) should be before (c) + canvas_view->set_ext_widget(get_name()+"_cmp",layer_tree); // (a) canvas_view->set_ext_widget(get_name(),&layer_tree->get_layer_tree_view()); canvas_view->set_ext_widget("params",&layer_tree->get_param_tree_view()); - canvas_view->set_tree_model("params",layer_tree->get_param_tree_view().get_model()); + + layer_tree->set_model(layer_tree_store); // (b) + canvas_view->set_tree_model("params",layer_tree->get_param_tree_view().get_model()); // (c) /* canvas_view->layermenu.items().push_back(Gtk::Menu_Helpers::StockMenuElem(Gtk::StockID("gtk-delete"),Gtk::AccelKey("Delete"),