X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Fsrc%2Fgui%2Ftrees%2Fcanvastreestore.cpp;h=7c9a4b669feb0b877265b415470e8aa2895859fe;hb=d4cb326591ea23f82d341eb368b3d183b46f56c7;hp=8673c355406cd855f80ae6ae345e7b1f4033f766;hpb=27b5a5e825ecd199f7ef353e1ed45eb678991087;p=synfig.git diff --git a/synfig-studio/src/gui/trees/canvastreestore.cpp b/synfig-studio/src/gui/trees/canvastreestore.cpp index 8673c35..7c9a4b6 100644 --- a/synfig-studio/src/gui/trees/canvastreestore.cpp +++ b/synfig-studio/src/gui/trees/canvastreestore.cpp @@ -37,8 +37,8 @@ #include #include #include -#include "cellrenderer_value.h" -#include "cellrenderer_timetrack.h" +#include "cellrenderer/cellrenderer_value.h" +#include "cellrenderer/cellrenderer_timetrack.h" #include #include "general.h" @@ -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_children_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)); } }