Use fg_gc to draw the inter-row drop highlight. Also draw the line all the
2006-03-22 Matthias Clasen <mclasen@redhat.com> * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Use fg_gc to draw the inter-row drop highlight. Also draw the line all the way across, and flip it in RTL mode. (#334906, Ian McDonald)
This commit is contained in:
parent
2aaf27d7f2
commit
3fb3db9f7a
@ -1,3 +1,9 @@
|
|||||||
|
2006-03-22 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
|
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Use fg_gc to
|
||||||
|
draw the inter-row drop highlight. Also draw the line all the
|
||||||
|
way across, and flip it in RTL mode. (#334906, Ian McDonald)
|
||||||
|
|
||||||
2006-03-22 Johan Dahlin <jdahlin@async.com.br>
|
2006-03-22 Johan Dahlin <jdahlin@async.com.br>
|
||||||
|
|
||||||
* tests/testtreeview.c: Add a column that demonstrates how to use
|
* tests/testtreeview.c: Add a column that demonstrates how to use
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
2006-03-22 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
|
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Use fg_gc to
|
||||||
|
draw the inter-row drop highlight. Also draw the line all the
|
||||||
|
way across, and flip it in RTL mode. (#334906, Ian McDonald)
|
||||||
|
|
||||||
2006-03-22 Johan Dahlin <jdahlin@async.com.br>
|
2006-03-22 Johan Dahlin <jdahlin@async.com.br>
|
||||||
|
|
||||||
* tests/testtreeview.c: Add a column that demonstrates how to use
|
* tests/testtreeview.c: Add a column that demonstrates how to use
|
||||||
|
@ -3498,6 +3498,7 @@ gtk_tree_view_bin_expose (GtkWidget *widget,
|
|||||||
GdkRectangle cell_area;
|
GdkRectangle cell_area;
|
||||||
guint flags;
|
guint flags;
|
||||||
gint highlight_x;
|
gint highlight_x;
|
||||||
|
gint expander_cell_width;
|
||||||
gint bin_window_width;
|
gint bin_window_width;
|
||||||
gint bin_window_height;
|
gint bin_window_height;
|
||||||
GtkTreePath *cursor_path;
|
GtkTreePath *cursor_path;
|
||||||
@ -3519,11 +3520,12 @@ gtk_tree_view_bin_expose (GtkWidget *widget,
|
|||||||
|
|
||||||
tree_view = GTK_TREE_VIEW (widget);
|
tree_view = GTK_TREE_VIEW (widget);
|
||||||
|
|
||||||
|
_gtk_widget_get_focus_style (widget,
|
||||||
|
NULL, &focus_line_width, NULL, NULL);
|
||||||
gtk_widget_style_get (widget,
|
gtk_widget_style_get (widget,
|
||||||
"horizontal-separator", &horizontal_separator,
|
"horizontal-separator", &horizontal_separator,
|
||||||
"vertical-separator", &vertical_separator,
|
"vertical-separator", &vertical_separator,
|
||||||
"allow-rules", &allow_rules,
|
"allow-rules", &allow_rules,
|
||||||
"focus-line-width", &focus_line_width,
|
|
||||||
NULL);
|
NULL);
|
||||||
|
|
||||||
if (tree_view->priv->tree == NULL)
|
if (tree_view->priv->tree == NULL)
|
||||||
@ -3627,6 +3629,7 @@ gtk_tree_view_bin_expose (GtkWidget *widget,
|
|||||||
|
|
||||||
cell_offset = 0;
|
cell_offset = 0;
|
||||||
highlight_x = 0; /* should match x coord of first cell */
|
highlight_x = 0; /* should match x coord of first cell */
|
||||||
|
expander_cell_width = 0;
|
||||||
|
|
||||||
background_area.y = y_offset + event->area.y;
|
background_area.y = y_offset + event->area.y;
|
||||||
background_area.height = max_height;
|
background_area.height = max_height;
|
||||||
@ -3783,6 +3786,8 @@ gtk_tree_view_bin_expose (GtkWidget *widget,
|
|||||||
* level of the tree we're dropping at.
|
* level of the tree we're dropping at.
|
||||||
*/
|
*/
|
||||||
highlight_x = cell_area.x;
|
highlight_x = cell_area.x;
|
||||||
|
expander_cell_width = cell_area.width;
|
||||||
|
|
||||||
if (is_separator)
|
if (is_separator)
|
||||||
gtk_paint_hline (widget->style,
|
gtk_paint_hline (widget->style,
|
||||||
event->window,
|
event->window,
|
||||||
@ -3896,10 +3901,10 @@ gtk_tree_view_bin_expose (GtkWidget *widget,
|
|||||||
if (highlight_y >= 0)
|
if (highlight_y >= 0)
|
||||||
{
|
{
|
||||||
gdk_draw_line (event->window,
|
gdk_draw_line (event->window,
|
||||||
widget->style->black_gc,
|
widget->style->fg_gc[GTK_WIDGET_STATE (widget)],
|
||||||
highlight_x,
|
rtl ? highlight_x + expander_cell_width : highlight_x,
|
||||||
highlight_y,
|
highlight_y,
|
||||||
bin_window_width - highlight_x,
|
rtl ? 0 : bin_window_width,
|
||||||
highlight_y);
|
highlight_y);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -4662,9 +4667,9 @@ validate_row (GtkTreeView *tree_view,
|
|||||||
tree_view->priv->row_separator_data);
|
tree_view->priv->row_separator_data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_gtk_widget_get_focus_style (GTK_WIDGET (tree_view),
|
||||||
|
NULL, &focus_line_width, &focus_pad, NULL);
|
||||||
gtk_widget_style_get (GTK_WIDGET (tree_view),
|
gtk_widget_style_get (GTK_WIDGET (tree_view),
|
||||||
"focus-padding", &focus_pad,
|
|
||||||
"focus-line-width", &focus_line_width,
|
|
||||||
"horizontal-separator", &horizontal_separator,
|
"horizontal-separator", &horizontal_separator,
|
||||||
"vertical-separator", &vertical_separator,
|
"vertical-separator", &vertical_separator,
|
||||||
NULL);
|
NULL);
|
||||||
|
Loading…
Reference in New Issue
Block a user