aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans-Christoph Steiner <eighthave@users.sourceforge.net>2007-11-22 02:50:23 +0000
committerHans-Christoph Steiner <eighthave@users.sourceforge.net>2007-11-22 02:50:23 +0000
commit9caf0964a9a29f8160c88a3f591a49c0894009bb (patch)
treed3494abaee6722bcf9f201753c8166383047a41d
parentff4298c30dfd8e4cee237b40acec599020d14ff1 (diff)
added displace function from text.c
svn path=/trunk/externals/tkwidgets/; revision=9022
-rw-r--r--checkbutton.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/checkbutton.c b/checkbutton.c
index a0694f1..e4866d6 100644
--- a/checkbutton.c
+++ b/checkbutton.c
@@ -41,6 +41,9 @@ typedef struct _checkbutton
int width;
int height;
+
+ int x_resizing;
+ int x_selected;
/* IDs for Tk widgets */
t_symbol* tcl_namespace;
@@ -175,6 +178,20 @@ static void checkbutton_getrect(t_gobj *z, t_glist *glist,
*yp2 = text_ypix(&x->x_obj, glist) + x->height;
}
+static void checkbutton_displace(t_gobj *z, t_glist *glist, int dx, int dy)
+{
+ t_checkbutton *x = (t_checkbutton *)z;
+ x->x_obj.te_xpix += dx;
+ x->x_obj.te_ypix += dy;
+ if (glist_isvisible(glist))
+ {
+ set_tkwidgets_ids(x,glist_getcanvas(glist));
+ sys_vgui("%s move %s %d %d\n", x->canvas_id->s_name, x->all_tag->s_name, dx, dy);
+ sys_vgui("%s move RSZ %d %d\n", x->canvas_id->s_name, dx, dy);
+ canvas_fixlinesfor(glist_getcanvas(glist), (t_text*) x);
+ }
+}
+
static void checkbutton_delete(t_gobj *z, t_glist *glist)
{
t_text *x = (t_text *)z;
@@ -270,7 +287,7 @@ void checkbutton_setup(void)
gensym("query_callback"), A_GIMME, 0);
checkbutton_widgetbehavior.w_getrectfn = checkbutton_getrect;
- checkbutton_widgetbehavior.w_displacefn = NULL;
+ checkbutton_widgetbehavior.w_displacefn = checkbutton_displace;
checkbutton_widgetbehavior.w_selectfn = NULL;
checkbutton_widgetbehavior.w_activatefn = NULL;
checkbutton_widgetbehavior.w_deletefn = checkbutton_delete;