diff --git a/pd/src/g_editor.c b/pd/src/g_editor.c index 0d40081f75d24258612dde2333d7b1fa6a8dc3d5..ff664ddf6d1c817be39d682f617f60101f39334e 100644 --- a/pd/src/g_editor.c +++ b/pd/src/g_editor.c @@ -5184,7 +5184,7 @@ extern void graph_checkgop_rect(t_gobj *z, t_glist *glist, void canvas_motion(t_canvas *x, t_floatarg xpos, t_floatarg ypos, t_floatarg fmod) -{ +{ //fprintf(stderr,"motion %d %d %d %d\n", // (int)xpos, (int)ypos, (int)fmod, canvas_last_glist_mod); //fprintf(stderr,"canvas_motion=%d\n",x->gl_editor->e_onmotion); diff --git a/pd/src/g_graph.c b/pd/src/g_graph.c index 05eccc20f26d1217a626f5545c8939907d90ff43..1f1d2b0e8c2779f2df02215d0edf2861ef26bd3e 100644 --- a/pd/src/g_graph.c +++ b/pd/src/g_graph.c @@ -803,7 +803,7 @@ int text_ypix(t_text *x, t_glist *glist) This is too conservative -- for instance, when you draw an "open" rectangle on the parent, you shouldn't have to redraw the window! */ void glist_redraw(t_glist *x) -{ +{ if (glist_isvisible(x)) { /* LATER fix the graph_vis() code to handle both cases */ diff --git a/pd/src/g_scalar.c b/pd/src/g_scalar.c index 444e7b602422af784e7084c6a951c4df85877e2e..f962034ba965e69d9ff0f5f1bc9f72ebcdcf431d 100644 --- a/pd/src/g_scalar.c +++ b/pd/src/g_scalar.c @@ -833,7 +833,6 @@ int scalar_groupclick(struct _glist *groupcanvas, if (pd_class(&y->g_pd) == canvas_class && ((t_glist *)y)->gl_svg) { -// fprintf(stderr, "fuck dolphins"); if (hit = scalar_groupclick((t_glist *)y, data, template, sc, ap, owner, xloc, yloc, xpix, ypix, shift, alt, dbl, doit, basex, basey)) diff --git a/pd/src/g_template.c b/pd/src/g_template.c index ebd3ac82689d1e45b59496c1e84601bc06e73c41..ffc853ed58e564fe8a3322e26595e3ea55bc682e 100644 --- a/pd/src/g_template.c +++ b/pd/src/g_template.c @@ -5121,14 +5121,16 @@ static void plot_vis(t_gobj *z, t_glist *glist, t_glist *parentglist, fielddesc_cvttocoord(yfielddesc, yval); for (y = elemtemplatecanvas->gl_list; y; y = y->g_next) { + /* We're setting up a special group that will get set as + the parent by array elements */ + sys_vgui(".x%lx.c create group -tags {.scelem%lx.%lx} " + "-parent {.dgroup%lx.%lx}\n", + glist_getcanvas(glist), elemtemplatecanvas, + (t_word *)(elem + elemsize * i), + x->x_canvas, data); if (pd_class(&y->g_pd) == canvas_class && ((t_glist *)y)->gl_svg) { - sys_vgui(".x%lx.c create group -tags {.scelem%lx.%lx} " - "-parent {.dgroup%lx.%lx}\n", - glist_getcanvas(glist), elemtemplatecanvas, - (t_word *)(elem + elemsize * i), - x->x_canvas, data); plot_groupvis(sc, glist, (t_word *)(elem + elemsize * i), template, (t_glist *)y,