removed xor_gc, use clists xor_gc instead removed
Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org> * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists xor_gc instead * gtk/gtkctree.c (create_xor_gc): removed (gtk_ctree_button_press): set correct line_attributes for clist->xor_gc on drag start (gtk_ctree_button_release): reset clist->xor_gc
This commit is contained in:
@ -1,3 +1,12 @@
|
|||||||
|
Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
|
||||||
|
xor_gc instead
|
||||||
|
* gtk/gtkctree.c (create_xor_gc): removed
|
||||||
|
(gtk_ctree_button_press): set correct line_attributes for
|
||||||
|
clist->xor_gc on drag start
|
||||||
|
(gtk_ctree_button_release): reset clist->xor_gc
|
||||||
|
|
||||||
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* gtk/gtk*.h:
|
* gtk/gtk*.h:
|
||||||
|
|||||||
@ -1,3 +1,12 @@
|
|||||||
|
Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
|
||||||
|
xor_gc instead
|
||||||
|
* gtk/gtkctree.c (create_xor_gc): removed
|
||||||
|
(gtk_ctree_button_press): set correct line_attributes for
|
||||||
|
clist->xor_gc on drag start
|
||||||
|
(gtk_ctree_button_release): reset clist->xor_gc
|
||||||
|
|
||||||
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* gtk/gtk*.h:
|
* gtk/gtk*.h:
|
||||||
|
|||||||
@ -1,3 +1,12 @@
|
|||||||
|
Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
|
||||||
|
xor_gc instead
|
||||||
|
* gtk/gtkctree.c (create_xor_gc): removed
|
||||||
|
(gtk_ctree_button_press): set correct line_attributes for
|
||||||
|
clist->xor_gc on drag start
|
||||||
|
(gtk_ctree_button_release): reset clist->xor_gc
|
||||||
|
|
||||||
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* gtk/gtk*.h:
|
* gtk/gtk*.h:
|
||||||
|
|||||||
@ -1,3 +1,12 @@
|
|||||||
|
Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
|
||||||
|
xor_gc instead
|
||||||
|
* gtk/gtkctree.c (create_xor_gc): removed
|
||||||
|
(gtk_ctree_button_press): set correct line_attributes for
|
||||||
|
clist->xor_gc on drag start
|
||||||
|
(gtk_ctree_button_release): reset clist->xor_gc
|
||||||
|
|
||||||
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* gtk/gtk*.h:
|
* gtk/gtk*.h:
|
||||||
|
|||||||
@ -1,3 +1,12 @@
|
|||||||
|
Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
|
||||||
|
xor_gc instead
|
||||||
|
* gtk/gtkctree.c (create_xor_gc): removed
|
||||||
|
(gtk_ctree_button_press): set correct line_attributes for
|
||||||
|
clist->xor_gc on drag start
|
||||||
|
(gtk_ctree_button_release): reset clist->xor_gc
|
||||||
|
|
||||||
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* gtk/gtk*.h:
|
* gtk/gtk*.h:
|
||||||
|
|||||||
@ -1,3 +1,12 @@
|
|||||||
|
Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
|
||||||
|
xor_gc instead
|
||||||
|
* gtk/gtkctree.c (create_xor_gc): removed
|
||||||
|
(gtk_ctree_button_press): set correct line_attributes for
|
||||||
|
clist->xor_gc on drag start
|
||||||
|
(gtk_ctree_button_release): reset clist->xor_gc
|
||||||
|
|
||||||
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* gtk/gtk*.h:
|
* gtk/gtk*.h:
|
||||||
|
|||||||
@ -1,3 +1,12 @@
|
|||||||
|
Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
|
||||||
|
xor_gc instead
|
||||||
|
* gtk/gtkctree.c (create_xor_gc): removed
|
||||||
|
(gtk_ctree_button_press): set correct line_attributes for
|
||||||
|
clist->xor_gc on drag start
|
||||||
|
(gtk_ctree_button_release): reset clist->xor_gc
|
||||||
|
|
||||||
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* gtk/gtk*.h:
|
* gtk/gtk*.h:
|
||||||
|
|||||||
@ -63,7 +63,6 @@ static void draw_row (GtkCList *clist,
|
|||||||
GdkRectangle *area,
|
GdkRectangle *area,
|
||||||
gint row,
|
gint row,
|
||||||
GtkCListRow *clist_row);
|
GtkCListRow *clist_row);
|
||||||
static void create_xor_gc (GtkCTree *ctree);
|
|
||||||
static void draw_xor_line (GtkCTree *ctree);
|
static void draw_xor_line (GtkCTree *ctree);
|
||||||
static void draw_xor_rect (GtkCTree *ctree);
|
static void draw_xor_rect (GtkCTree *ctree);
|
||||||
static void create_drag_icon (GtkCTree *ctree,
|
static void create_drag_icon (GtkCTree *ctree,
|
||||||
@ -392,7 +391,6 @@ gtk_ctree_class_init (GtkCTreeClass *klass)
|
|||||||
static void
|
static void
|
||||||
gtk_ctree_init (GtkCTree *ctree)
|
gtk_ctree_init (GtkCTree *ctree)
|
||||||
{
|
{
|
||||||
ctree->xor_gc = NULL;
|
|
||||||
ctree->drag_icon = NULL;
|
ctree->drag_icon = NULL;
|
||||||
ctree->tree_indent = 20;
|
ctree->tree_indent = 20;
|
||||||
ctree->tree_column = 0;
|
ctree->tree_column = 0;
|
||||||
@ -476,9 +474,6 @@ gtk_ctree_realize (GtkWidget *widget)
|
|||||||
GDK_LINE_ON_OFF_DASH, None, None);
|
GDK_LINE_ON_OFF_DASH, None, None);
|
||||||
gdk_gc_set_dashes (ctree->lines_gc, 0, "\1\1", 2);
|
gdk_gc_set_dashes (ctree->lines_gc, 0, "\1\1", 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ctree->reorderable)
|
|
||||||
create_xor_gc (ctree);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -494,9 +489,6 @@ gtk_ctree_unrealize (GtkWidget *widget)
|
|||||||
ctree = GTK_CTREE (widget);
|
ctree = GTK_CTREE (widget);
|
||||||
|
|
||||||
gdk_gc_destroy (ctree->lines_gc);
|
gdk_gc_destroy (ctree->lines_gc);
|
||||||
|
|
||||||
if (ctree->reorderable)
|
|
||||||
gdk_gc_destroy (ctree->xor_gc);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static gint
|
static gint
|
||||||
@ -544,6 +536,9 @@ gtk_ctree_button_press (GtkWidget *widget,
|
|||||||
ctree->in_drag = TRUE;
|
ctree->in_drag = TRUE;
|
||||||
ctree->drag_source = work;
|
ctree->drag_source = work;
|
||||||
ctree->drag_target = NULL;
|
ctree->drag_target = NULL;
|
||||||
|
gdk_gc_set_line_attributes (clist->xor_gc, 1, GDK_LINE_ON_OFF_DASH,
|
||||||
|
None, None);
|
||||||
|
gdk_gc_set_dashes (clist->xor_gc, 0, "\2\2", 2);
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
else if (event->button == 1 &&
|
else if (event->button == 1 &&
|
||||||
@ -805,6 +800,12 @@ gtk_ctree_button_release (GtkWidget *widget,
|
|||||||
ctree->drag_row = -1;
|
ctree->drag_row = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (GTK_CLIST_ADD_MODE (clist))
|
||||||
|
gdk_gc_set_dashes (clist->xor_gc, 0, "\4\4", 2);
|
||||||
|
else
|
||||||
|
gdk_gc_set_line_attributes (clist->xor_gc, 1,
|
||||||
|
GDK_LINE_SOLID, 0, 0);
|
||||||
|
|
||||||
/* nop if out of bounds / source == target */
|
/* nop if out of bounds / source == target */
|
||||||
if (event->x < 0 || event->y < -3 ||
|
if (event->x < 0 || event->y < -3 ||
|
||||||
event->x > clist->clist_window_width ||
|
event->x > clist->clist_window_width ||
|
||||||
@ -933,26 +934,6 @@ create_drag_icon (GtkCTree *ctree,
|
|||||||
ctree->drag_icon = window;
|
ctree->drag_icon = window;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
create_xor_gc (GtkCTree *ctree)
|
|
||||||
{
|
|
||||||
GtkCList *clist;
|
|
||||||
GdkGCValues values;
|
|
||||||
|
|
||||||
clist = GTK_CLIST (ctree);
|
|
||||||
|
|
||||||
values.foreground = GTK_WIDGET (clist)->style->bg[GTK_STATE_NORMAL];
|
|
||||||
values.function = GDK_XOR;
|
|
||||||
values.subwindow_mode = GDK_INCLUDE_INFERIORS;
|
|
||||||
ctree->xor_gc = gdk_gc_new_with_values (clist->clist_window, &values,
|
|
||||||
GDK_GC_FOREGROUND |
|
|
||||||
GDK_GC_FUNCTION |
|
|
||||||
GDK_GC_SUBWINDOW);
|
|
||||||
gdk_gc_set_line_attributes (ctree->xor_gc, 1, GDK_LINE_ON_OFF_DASH,
|
|
||||||
None, None);
|
|
||||||
gdk_gc_set_dashes (ctree->xor_gc, 0, "\2\2", 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
draw_xor_line (GtkCTree *ctree)
|
draw_xor_line (GtkCTree *ctree)
|
||||||
{
|
{
|
||||||
@ -976,12 +957,12 @@ draw_xor_line (GtkCTree *ctree)
|
|||||||
case GTK_JUSTIFY_FILL:
|
case GTK_JUSTIFY_FILL:
|
||||||
case GTK_JUSTIFY_LEFT:
|
case GTK_JUSTIFY_LEFT:
|
||||||
if (ctree->tree_column > 0)
|
if (ctree->tree_column > 0)
|
||||||
gdk_draw_line (clist->clist_window, ctree->xor_gc,
|
gdk_draw_line (clist->clist_window, clist->xor_gc,
|
||||||
COLUMN_LEFT_XPIXEL(clist, 0), y,
|
COLUMN_LEFT_XPIXEL(clist, 0), y,
|
||||||
COLUMN_LEFT_XPIXEL(clist, ctree->tree_column - 1) +
|
COLUMN_LEFT_XPIXEL(clist, ctree->tree_column - 1) +
|
||||||
clist->column[ctree->tree_column - 1].area.width, y);
|
clist->column[ctree->tree_column - 1].area.width, y);
|
||||||
|
|
||||||
gdk_draw_line (clist->clist_window, ctree->xor_gc,
|
gdk_draw_line (clist->clist_window, clist->xor_gc,
|
||||||
COLUMN_LEFT_XPIXEL(clist, ctree->tree_column) +
|
COLUMN_LEFT_XPIXEL(clist, ctree->tree_column) +
|
||||||
ctree->tree_indent * level -
|
ctree->tree_indent * level -
|
||||||
(ctree->tree_indent - PM_SIZE) / 2, y,
|
(ctree->tree_indent - PM_SIZE) / 2, y,
|
||||||
@ -989,12 +970,12 @@ draw_xor_line (GtkCTree *ctree)
|
|||||||
break;
|
break;
|
||||||
case GTK_JUSTIFY_RIGHT:
|
case GTK_JUSTIFY_RIGHT:
|
||||||
if (ctree->tree_column < clist->columns - 1)
|
if (ctree->tree_column < clist->columns - 1)
|
||||||
gdk_draw_line (clist->clist_window, ctree->xor_gc,
|
gdk_draw_line (clist->clist_window, clist->xor_gc,
|
||||||
COLUMN_LEFT_XPIXEL(clist, ctree->tree_column + 1), y,
|
COLUMN_LEFT_XPIXEL(clist, ctree->tree_column + 1), y,
|
||||||
COLUMN_LEFT_XPIXEL(clist, clist->columns - 1) +
|
COLUMN_LEFT_XPIXEL(clist, clist->columns - 1) +
|
||||||
clist->column[clist->columns - 1].area.width, y);
|
clist->column[clist->columns - 1].area.width, y);
|
||||||
|
|
||||||
gdk_draw_line (clist->clist_window, ctree->xor_gc,
|
gdk_draw_line (clist->clist_window, clist->xor_gc,
|
||||||
0, y, COLUMN_LEFT_XPIXEL(clist, ctree->tree_column)
|
0, y, COLUMN_LEFT_XPIXEL(clist, ctree->tree_column)
|
||||||
+ clist->column[ctree->tree_column].area.width -
|
+ clist->column[ctree->tree_column].area.width -
|
||||||
ctree->tree_indent * level +
|
ctree->tree_indent * level +
|
||||||
@ -1002,7 +983,7 @@ draw_xor_line (GtkCTree *ctree)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
gdk_draw_line (clist->clist_window, ctree->xor_gc,
|
gdk_draw_line (clist->clist_window, clist->xor_gc,
|
||||||
0, y, clist->clist_window_width, y);
|
0, y, clist->clist_window_width, y);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1038,7 +1019,7 @@ draw_xor_rect (GtkCTree *ctree)
|
|||||||
points[2].y = points[3].y;
|
points[2].y = points[3].y;
|
||||||
|
|
||||||
for (i = 0; i < 3; i++)
|
for (i = 0; i < 3; i++)
|
||||||
gdk_draw_line (clist->clist_window, ctree->xor_gc,
|
gdk_draw_line (clist->clist_window, clist->xor_gc,
|
||||||
points[i].x, points[i].y,
|
points[i].x, points[i].y,
|
||||||
points[i+1].x, points[i+1].y);
|
points[i+1].x, points[i+1].y);
|
||||||
|
|
||||||
@ -1055,7 +1036,7 @@ draw_xor_rect (GtkCTree *ctree)
|
|||||||
points[2].y = points[3].y;
|
points[2].y = points[3].y;
|
||||||
|
|
||||||
for (i = 0; i < 3; i++)
|
for (i = 0; i < 3; i++)
|
||||||
gdk_draw_line (clist->clist_window, ctree->xor_gc,
|
gdk_draw_line (clist->clist_window, clist->xor_gc,
|
||||||
points[i].x, points[i].y, points[i+1].x,
|
points[i].x, points[i].y, points[i+1].x,
|
||||||
points[i+1].y);
|
points[i+1].y);
|
||||||
}
|
}
|
||||||
@ -1073,7 +1054,7 @@ draw_xor_rect (GtkCTree *ctree)
|
|||||||
points[2].y = points[3].y;
|
points[2].y = points[3].y;
|
||||||
|
|
||||||
for (i = 0; i < 3; i++)
|
for (i = 0; i < 3; i++)
|
||||||
gdk_draw_line (clist->clist_window, ctree->xor_gc,
|
gdk_draw_line (clist->clist_window, clist->xor_gc,
|
||||||
points[i].x, points[i].y,
|
points[i].x, points[i].y,
|
||||||
points[i+1].x, points[i+1].y);
|
points[i+1].x, points[i+1].y);
|
||||||
|
|
||||||
@ -1089,14 +1070,14 @@ draw_xor_rect (GtkCTree *ctree)
|
|||||||
points[2].y = points[3].y;
|
points[2].y = points[3].y;
|
||||||
|
|
||||||
for (i = 0; i < 3; i++)
|
for (i = 0; i < 3; i++)
|
||||||
gdk_draw_line (clist->clist_window, ctree->xor_gc,
|
gdk_draw_line (clist->clist_window, clist->xor_gc,
|
||||||
points[i].x, points[i].y,
|
points[i].x, points[i].y,
|
||||||
points[i+1].x, points[i+1].y);
|
points[i+1].x, points[i+1].y);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
gdk_draw_rectangle (clist->clist_window, ctree->xor_gc, FALSE,
|
gdk_draw_rectangle (clist->clist_window, clist->xor_gc, FALSE,
|
||||||
0, y - clist->row_height,
|
0, y - clist->row_height,
|
||||||
clist->clist_window_width - 1, clist->row_height);
|
clist->clist_window_width - 1, clist->row_height);
|
||||||
}
|
}
|
||||||
@ -5262,20 +5243,7 @@ gtk_ctree_set_reorderable (GtkCTree *ctree,
|
|||||||
g_return_if_fail (ctree != NULL);
|
g_return_if_fail (ctree != NULL);
|
||||||
g_return_if_fail (GTK_IS_CTREE (ctree));
|
g_return_if_fail (GTK_IS_CTREE (ctree));
|
||||||
|
|
||||||
reorderable = reorderable != FALSE;
|
|
||||||
|
|
||||||
if (ctree->reorderable == reorderable)
|
|
||||||
return;
|
|
||||||
|
|
||||||
ctree->reorderable = reorderable;
|
ctree->reorderable = reorderable;
|
||||||
|
|
||||||
if (GTK_WIDGET_REALIZED (ctree))
|
|
||||||
{
|
|
||||||
if (ctree->reorderable)
|
|
||||||
create_xor_gc (ctree);
|
|
||||||
else
|
|
||||||
gdk_gc_destroy (ctree->xor_gc);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|||||||
@ -91,7 +91,6 @@ struct _GtkCTree
|
|||||||
{
|
{
|
||||||
GtkCList clist;
|
GtkCList clist;
|
||||||
|
|
||||||
GdkGC *xor_gc;
|
|
||||||
GdkGC *lines_gc;
|
GdkGC *lines_gc;
|
||||||
GdkWindow *drag_icon;
|
GdkWindow *drag_icon;
|
||||||
gint icon_width;
|
gint icon_width;
|
||||||
|
|||||||
Reference in New Issue
Block a user