Enable tooltips and allow use the 'hint' descriptor for some types for the linkable...
[synfig.git] / synfig-studio / src / gui / trees / layertree.cpp
index ee976da..66884c4 100644 (file)
@@ -186,16 +186,11 @@ LayerTree::create_layer_tree()
        const LayerTreeStore::Model model;
 
        {       // --- O N / O F F ----------------------------------------------------
-               //int index;
-               //index=get_layer_tree_view().append_column_editable(_(" "),layer_model.active);
-               //Gtk::TreeView::Column* column = get_layer_tree_view().get_column(index-1);
-
                Gtk::TreeView::Column* column = Gtk::manage( new Gtk::TreeView::Column(_(" ")) );
 
-               // Set up the icon cell-renderer
+               // Set up the on/off cell-renderer
                Gtk::CellRendererToggle* cellrenderer = Gtk::manage( new Gtk::CellRendererToggle() );
                cellrenderer->signal_toggled().connect(sigc::mem_fun(*this, &studio::LayerTree::on_layer_toggle));
-
                column->pack_start(*cellrenderer,false);
                column->add_attribute(cellrenderer->property_active(), layer_model.active);
                get_layer_tree_view().append_column(*column);
@@ -203,24 +198,15 @@ LayerTree::create_layer_tree()
 
        {       // --- I C O N --------------------------------------------------------
                int index;
-               index=get_layer_tree_view().append_column(_("Z"),layer_model.icon);
+               // Set up the icon cell-renderer
+               index=get_layer_tree_view().append_column(_("Icon"),layer_model.icon);
                Gtk::TreeView::Column* column = get_layer_tree_view().get_column(index-1);
                get_layer_tree_view().set_expander_column(*column);
-
-               column->set_sort_column(layer_model.z_depth);
-               //column->set_reorderable();
-               //column->set_resizable();
-               //column->set_clickable();
-
-               //Gtk::CellRendererPixbuf* icon_cellrenderer = Gtk::manage( new Gtk::CellRendererPixbuf() );
-               //column->pack_start(*icon_cellrenderer,false);
-               //column->add_attribute(icon_cellrenderer->property_pixbuf(), layer_model.icon);
        }
-       //get_layer_tree_view().append_column(_("Z"),layer_model.z_depth);
        {       // --- N A M E --------------------------------------------------------
                Gtk::TreeView::Column* column = Gtk::manage( new Gtk::TreeView::Column(_("Name")) );
 
-               // Set up the icon cell-renderer
+               // Set up the Layer label cell-renderer
                Gtk::CellRendererText* cellrenderer = Gtk::manage( new Gtk::CellRendererText() );
                column->pack_start(*cellrenderer,false);
                column->add_attribute(cellrenderer->property_text(), layer_model.label);
@@ -228,27 +214,18 @@ LayerTree::create_layer_tree()
                cellrenderer->property_editable()=true;
 
                column->set_reorderable();
-               // column->set_resizable();
+               column->set_resizable();
                column->set_clickable(true);
                column->set_sort_column(layer_model.label);
 
                get_layer_tree_view().append_column(*column);
-
-               //              int index;
-//             index=get_layer_tree_view().append_column_editable(_("Layer"),layer_model.label);
-               //Gtk::TreeView::Column* column = get_layer_tree_view().get_column(index-1);
-
-               //get_layer_tree_view().set_expander_column(*column);
-
-               //Gtk::CellRendererPixbuf* icon_cellrenderer = Gtk::manage( new Gtk::CellRendererPixbuf() );
-               //column->pack_start(*icon_cellrenderer,false);
-               //column->add_attribute(icon_cellrenderer->property_pixbuf(), layer_model.icon);
        }
        {       // --- Z D E P T H ----------------------------------------------------
                int index;
-               index=get_layer_tree_view().append_column(_("Z"),layer_model.z_depth);
-               column_z_depth=get_layer_tree_view().get_column(index-1);
+               index=get_layer_tree_view().append_column(_("Z Depth"),layer_model.z_depth);
+               // Set up the Z-Depth label cell-renderer
 
+               column_z_depth=get_layer_tree_view().get_column(index-1);
                column_z_depth->set_reorderable();
                column_z_depth->set_resizable();
                column_z_depth->set_clickable();
@@ -338,6 +315,7 @@ LayerTree::create_param_tree()
                cellrenderer_value->signal_edited().connect(sigc::mem_fun(*this, &studio::LayerTree::on_edited_value));
                cellrenderer_value->property_value()=synfig::ValueBase();
                column->add_attribute(cellrenderer_value->property_param_desc(), param_model.param_desc);
+               column->add_attribute(cellrenderer_value->property_child_param_desc(), param_model.child_param_desc);
                column->add_attribute(cellrenderer_value->property_inconsistent(),param_model.is_inconsistent);
                //cellrenderer_value->property_canvas()=canvas_interface->get_canvas(); // Is this line necessary?
                cellrenderer_value->property_attributes()=attr_list;
@@ -940,12 +918,12 @@ LayerTree::on_param_tree_event(GdkEvent *event)
 #endif // TIMETRACK_IN_PARAMS_PANEL
                        if(last_tooltip_path.get_depth()<=0 || path!=last_tooltip_path)
                        {
-                               tooltips_.unset_tip(*this);
-                               Glib::ustring tooltips_string(row[layer_model.tooltip]);
+                               tooltips_.unset_tip(get_param_tree_view());
+                               Glib::ustring tooltips_string(row[param_model.tooltip]);
                                last_tooltip_path=path;
                                if(!tooltips_string.empty())
                                {
-                                       tooltips_.set_tip(*this,tooltips_string);
+                                       tooltips_.set_tip(get_param_tree_view(),tooltips_string);
                                        tooltips_.force_window();
                                }
                        }