From: dooglus Date: Thu, 7 Feb 2008 22:17:54 +0000 (+0000) Subject: Don't let 'select all' select the green ducks of a plant layer. X-Git-Url: https://git.pterodactylus.net/?a=commitdiff_plain;h=d8b000c637f56647d30a929b4fa4b7950c814c3b;p=synfig.git Don't let 'select all' select the green ducks of a plant layer. git-svn-id: http://svn.voria.com/code@1621 1f10aa63-cdf2-0310-b900-c93c546f37ac --- diff --git a/synfig-studio/trunk/src/gtkmm/duckmatic.cpp b/synfig-studio/trunk/src/gtkmm/duckmatic.cpp index d6cc012..118d339 100644 --- a/synfig-studio/trunk/src/gtkmm/duckmatic.cpp +++ b/synfig-studio/trunk/src/gtkmm/duckmatic.cpp @@ -248,20 +248,17 @@ Duckmatic::is_duck_group_selectable(const etl::handle& x)const const Type type(get_type_mask()); if(( x->get_type() && (!(type & x->get_type())) ) ) - { return false; - } + if(x->get_value_desc().parent_is_layer_param() && type & Duck::TYPE_POSITION) { Layer::Handle layer(x->get_value_desc().get_layer()); String layer_name(layer->get_name()); - if( - layer_name=="outline" || - layer_name=="region" || - layer_name=="polygon" || - layer_name=="curve_gradient" - ) + + if (layer_name == "outline" || layer_name == "region" || layer_name == "plant" || + layer_name == "polygon" || layer_name == "curve_gradient") return false; + if((layer_name=="PasteCanvas"|| layer_name=="paste_canvas") && !layer->get_param("children_lock").get(bool())) return false;