Don't draw with GTK_STATE_ACTIVE.

2001-09-18  Alex Larsson  <alexl@redhat.com>

        * gtk/gtkcheckbutton.c:
	* gtk/gtkradiobutton.c:
	Don't draw with GTK_STATE_ACTIVE.

	* gtk/gtkclist.c:
	* gtk/gtkctree.c:
	Draw lines between rows with base_gc[GTK_STATE_NORMAL].

	* gtk/gtktextdisplay.c:
	Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
	unfocused with base_gc [GTK_STATE_ACTIVE].

	* gtk/gtkentry.c:
	Add select all menu-item.
	Default cursor color is red.
	Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
	unfocused with base_gc [GTK_STATE_ACTIVE].

	* gtk/gtklabel.[ch]:
	Add keynav + menu to selectable lables.
	Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
	unfocused with base_gc [GTK_STATE_ACTIVE].

	* gtk/gtkfilesel.c:
	Add drag and drop support.

	* gtk/gtkstyle.c:
	(This was checked in earlier)
	New default values for text/base SELECTED and ACTIVE
This commit is contained in:
Alex Larsson
2001-09-19 00:49:52 +00:00
committed by Alexander Larsson
parent 07fd245421
commit 1a46d3d534
16 changed files with 1404 additions and 97 deletions

View File

@ -250,7 +250,10 @@ render_layout_line (GdkDrawable *drawable,
if (selected)
{
fg_gc = render_state->widget->style->text_gc[GTK_STATE_SELECTED];
if (GTK_WIDGET_HAS_FOCUS (render_state->widget))
fg_gc = render_state->widget->style->text_gc[GTK_STATE_SELECTED];
else
fg_gc = render_state->widget->style->text_gc [GTK_STATE_ACTIVE];
}
else
{
@ -494,6 +497,8 @@ render_para (GdkDrawable *drawable,
PangoLayoutIter *iter;
PangoRectangle layout_logical;
int screen_width;
GdkGC *fg_gc, *bg_gc;
gint state;
gboolean first = TRUE;
@ -508,6 +513,14 @@ render_para (GdkDrawable *drawable,
screen_width = line_display->total_width;
if (GTK_WIDGET_HAS_FOCUS (render_state->widget))
state = GTK_STATE_SELECTED;
else
state = GTK_STATE_ACTIVE;
fg_gc = render_state->widget->style->text_gc [state];
bg_gc = render_state->widget->style->base_gc [state];
do
{
PangoLayoutLine *line = pango_layout_iter_get_line (iter);
@ -547,7 +560,7 @@ render_para (GdkDrawable *drawable,
selection_end_index > line->length + byte_offset) /* All selected */
{
gdk_draw_rectangle (drawable,
render_state->widget->style->base_gc[GTK_STATE_SELECTED],
bg_gc,
TRUE,
x + line_display->left_margin,
selection_y,
@ -577,12 +590,11 @@ render_para (GdkDrawable *drawable,
selection_y,
selection_height,
selection_start_index, selection_end_index);
gdk_gc_set_clip_region (render_state->widget->style->text_gc [GTK_STATE_SELECTED], clip_region);
gdk_gc_set_clip_region (render_state->widget->style->base_gc [GTK_STATE_SELECTED], clip_region);
gdk_gc_set_clip_region (fg_gc, clip_region);
gdk_gc_set_clip_region (bg_gc, clip_region);
gdk_draw_rectangle (drawable,
render_state->widget->style->base_gc[GTK_STATE_SELECTED],
bg_gc,
TRUE,
x + PANGO_PIXELS (line_rect.x),
selection_y,
@ -594,8 +606,8 @@ render_para (GdkDrawable *drawable,
y + PANGO_PIXELS (baseline),
TRUE);
gdk_gc_set_clip_region (render_state->widget->style->text_gc [GTK_STATE_SELECTED], NULL);
gdk_gc_set_clip_region (render_state->widget->style->base_gc [GTK_STATE_SELECTED], NULL);
gdk_gc_set_clip_region (fg_gc, NULL);
gdk_gc_set_clip_region (bg_gc, NULL);
gdk_region_destroy (clip_region);
@ -605,7 +617,7 @@ render_para (GdkDrawable *drawable,
(line_display->direction == GTK_TEXT_DIR_RTL && selection_end_index > byte_offset + line->length)))
{
gdk_draw_rectangle (drawable,
render_state->widget->style->base_gc[GTK_STATE_SELECTED],
bg_gc,
TRUE,
x + line_display->left_margin,
selection_y,
@ -625,7 +637,7 @@ render_para (GdkDrawable *drawable,
PANGO_PIXELS (line_rect.x) - PANGO_PIXELS (line_rect.width);
gdk_draw_rectangle (drawable,
render_state->widget->style->base_gc[GTK_STATE_SELECTED],
bg_gc,
TRUE,
x + PANGO_PIXELS (line_rect.x) + PANGO_PIXELS (line_rect.width),
selection_y,