Bug 539733 – No way to control treeview separator height

svn path=/trunk/; revision=20932
This commit is contained in:
Matthias Clasen 2008-08-02 04:32:12 +00:00
parent 5478721aba
commit 0b66b244a4
2 changed files with 19 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2008-08-02 Matthias Clasen <mclasen@redhat.com>
Bug 539733 No way to control treeview separator height
* gtk/gtktreeview.c: Respect the wide-separators and
separator-height style properties when drawing separators.
Patch by Christian Dywan
2008-08-02 Matthias Clasen <mclasen@redhat.com> 2008-08-02 Matthias Clasen <mclasen@redhat.com>
Bug 65818 rename gtk_window_set_default() and add getter for it Bug 65818 rename gtk_window_set_default() and add getter for it

View File

@ -777,7 +777,7 @@ gtk_tree_view_class_init (GtkTreeViewClass *class)
#define _TREE_VIEW_EXPANDER_SIZE 12 #define _TREE_VIEW_EXPANDER_SIZE 12
#define _TREE_VIEW_VERTICAL_SEPARATOR 2 #define _TREE_VIEW_VERTICAL_SEPARATOR 2
#define _TREE_VIEW_HORIZONTAL_SEPARATOR 2 #define _TREE_VIEW_HORIZONTAL_SEPARATOR 2
gtk_widget_class_install_style_property (widget_class, gtk_widget_class_install_style_property (widget_class,
g_param_spec_int ("expander-size", g_param_spec_int ("expander-size",
P_("Expander Size"), P_("Expander Size"),
@ -5577,6 +5577,8 @@ validate_row (GtkTreeView *tree_view,
gboolean draw_vgrid_lines, draw_hgrid_lines; gboolean draw_vgrid_lines, draw_hgrid_lines;
gint focus_pad; gint focus_pad;
gint grid_line_width; gint grid_line_width;
gboolean wide_separators;
gint separator_height;
/* double check the row needs validating */ /* double check the row needs validating */
if (! GTK_RBNODE_FLAG_SET (node, GTK_RBNODE_INVALID) && if (! GTK_RBNODE_FLAG_SET (node, GTK_RBNODE_INVALID) &&
@ -5591,6 +5593,8 @@ validate_row (GtkTreeView *tree_view,
"horizontal-separator", &horizontal_separator, "horizontal-separator", &horizontal_separator,
"vertical-separator", &vertical_separator, "vertical-separator", &vertical_separator,
"grid-line-width", &grid_line_width, "grid-line-width", &grid_line_width,
"wide-separators", &wide_separators,
"separator-height", &separator_height,
NULL); NULL);
draw_vgrid_lines = draw_vgrid_lines =
@ -5637,7 +5641,12 @@ validate_row (GtkTreeView *tree_view,
height = MAX (height, tree_view->priv->expander_size); height = MAX (height, tree_view->priv->expander_size);
} }
else else
height = 2 + 2 * focus_pad; {
if (wide_separators)
height = separator_height + 2 * focus_pad;
else
height = 2 + 2 * focus_pad;
}
if (gtk_tree_view_is_expander_column (tree_view, column)) if (gtk_tree_view_is_expander_column (tree_view, column))
{ {