X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Fsrc%2Fgui%2Ftrees%2Fcanvastreestore.cpp;h=77ffe4bbb4df16a0adc955696275517100ea4181;hb=ae598c51295d2018f1f8e5853b9be255eab449ed;hp=33bf9a7ef47016352c7e3d4aed20f88faf6e52de;hpb=077db16bb2200d3f6e936c9da3d8fe2950317eae;p=synfig.git diff --git a/synfig-studio/src/gui/trees/canvastreestore.cpp b/synfig-studio/src/gui/trees/canvastreestore.cpp index 33bf9a7..77ffe4b 100644 --- a/synfig-studio/src/gui/trees/canvastreestore.cpp +++ b/synfig-studio/src/gui/trees/canvastreestore.cpp @@ -193,6 +193,7 @@ CanvasTreeStore::get_value_vfunc(const Gtk::TreeModel::iterator& iter, int colum if(column==model.type.index()) { synfigapp::ValueDesc value_desc((*iter)[model.value_desc]); + String stype, lname; Glib::Value x; g_value_init(x.gobj(),x.value_type()); @@ -205,16 +206,22 @@ CanvasTreeStore::get_value_vfunc(const Gtk::TreeModel::iterator& iter, int colum } else { - if(!value_desc.is_value_node() || value_desc.get_value_node()->get_name()=="constant") + stype=ValueBase::type_local_name(value_desc.get_value_type()); + if(value_desc.get_value_node()) { - x.set(ValueBase::type_local_name(value_desc.get_value_type())); + lname=value_desc.get_value_node()->get_name(); + if (lname=="animated" || lname=="static" || + synfig::LinkableValueNode::Handle::cast_dynamic(value_desc.get_value_node()) + ) + stype+=" (" + value_desc.get_value_node()->get_local_name() + ")"; } - else + else if(value_desc.parent_is_layer_param()) { - x.set(value_desc.get_value_node()->get_local_name()); + if(value_desc.get_value().get_static()) + stype+=_(" (Static)"); } } - + x.set(stype.c_str()); g_value_init(value.gobj(),x.value_type()); g_value_copy(x.gobj(),value.gobj()); } @@ -420,12 +427,16 @@ CanvasTreeStore::set_row(Gtk::TreeRow row,synfigapp::ValueDesc value_desc, bool if(linkable && do_children) { row[model.link_count] = linkable->link_count(); - for(int i=0;ilink_count();i++) + LinkableValueNode::Vocab vocab(linkable->get_param_vocab()); + LinkableValueNode::Vocab::iterator iter(vocab.begin()); + for(int i=0;ilink_count();i++, iter++) { Gtk::TreeRow child_row=*(append(row.children())); child_row[model.link_id] = i; child_row[model.canvas] = static_cast(row[model.canvas]); child_row[model.name] = linkable->link_local_name(i); + child_row[model.tooltip] = iter->get_description(); + child_row[model.child_param_desc] = *iter; set_row(child_row,synfigapp::ValueDesc(linkable,i)); } }