Clip narrow columns in rtl-oriented tree views (#128089,

Tue Feb  3 01:38:06 2004  Matthias Clasen  <maclas@gmx.de>

	Clip narrow columns in rtl-oriented tree views (#128089,
	chinen@jp.ibm.com):

	* gtk/gtkstyle.c (gtk_default_draw_option):
	* gtk/gtkstyle.c (gtk_default_draw_check): Clip to the
	given area.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
	Use the right clip area when calling gtk_cell_renderer_render().
	* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_draw_focus):
	Use the right clip area when calling gtk_paint_focus().
	* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
	Use the right clip area when calling gtk_paint_toggle() or
	gtk_paint_check().
	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
	Clip to the expose_area when drawing the background rectangle.
This commit is contained in:
Matthias Clasen
2004-02-03 00:40:56 +00:00
committed by Matthias Clasen
parent 01440e457e
commit 6c935950b2
9 changed files with 121 additions and 8 deletions

View File

@ -1371,6 +1371,7 @@ gtk_cell_renderer_text_render (GtkCellRenderer *cell,
gtk_cell_renderer_text_get_size (cell, widget, cell_area, &x_offset, &y_offset, NULL, NULL);
if ((flags & GTK_CELL_RENDERER_SELECTED) == GTK_CELL_RENDERER_SELECTED)
{
if (GTK_WIDGET_HAS_FOCUS (widget))
@ -1398,7 +1399,9 @@ gtk_cell_renderer_text_render (GtkCellRenderer *cell,
gc = gdk_gc_new (window);
gdk_gc_set_rgb_fg_color (gc, &color);
if (expose_area)
gdk_gc_set_clip_rectangle (gc, expose_area);
gdk_draw_rectangle (window,
gc,
TRUE,
@ -1406,7 +1409,8 @@ gtk_cell_renderer_text_render (GtkCellRenderer *cell,
background_area->y,
background_area->width,
background_area->height);
if (expose_area)
gdk_gc_set_clip_rectangle (gc, NULL);
g_object_unref (gc);
}
@ -1414,7 +1418,7 @@ gtk_cell_renderer_text_render (GtkCellRenderer *cell,
window,
state,
TRUE,
cell_area,
expose_area,
widget,
"cellrenderertext",
cell_area->x + x_offset + cell->xpad,