aboutsummaryrefslogtreecommitdiff
path: root/pd/src/g_canvas.c
diff options
context:
space:
mode:
authorMiller Puckette <millerpuckette@users.sourceforge.net>2004-11-06 16:07:34 +0000
committerMiller Puckette <millerpuckette@users.sourceforge.net>2004-11-06 16:07:34 +0000
commit981f641ef44fe4d72dcb0e1248a2f96ba53cee69 (patch)
treed5871a901628db17e12e6204d13b4bdb4b8a07d9 /pd/src/g_canvas.c
parent5b0640e17d6db9e119d657fcadcf52ff317e704d (diff)
0.38 test 9 (mostly bug fixes)
svn path=/trunk/; revision=2226
Diffstat (limited to 'pd/src/g_canvas.c')
-rw-r--r--pd/src/g_canvas.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/pd/src/g_canvas.c b/pd/src/g_canvas.c
index 2d124ac3..a1beb8a8 100644
--- a/pd/src/g_canvas.c
+++ b/pd/src/g_canvas.c
@@ -84,7 +84,7 @@ static void glist_doupdatewindowlist(t_glist *gl, char *sbuf)
{
char tbuf[1024];
sprintf(tbuf, "{%s .x%lx} ", gl->gl_name->s_name,
- (t_int)canvas);
+ (t_int)canvas);
strcat(sbuf, tbuf);
}
}
@@ -723,8 +723,11 @@ void canvas_vis(t_canvas *x, t_floatarg f)
int flag = (f != 0);
if (flag)
{
+ /* post("havewindow %d, isgraph %d, isvisible %d editor %d",
+ x->gl_havewindow, x->gl_isgraph, glist_isvisible(x),
+ (x->gl_editor != 0)); */
/* test if we're already visible and toplevel */
- if (glist_isvisible(x) && !x->gl_isgraph)
+ if (x->gl_editor)
{ /* just put us in front */
#ifdef MSW
canvas_vis(x, 0);
@@ -1114,6 +1117,14 @@ static void canvas_rename_method(t_canvas *x, t_symbol *s, int ac, t_atom *av)
{
if (ac && av->a_type == A_SYMBOL)
canvas_rename(x, av->a_w.w_symbol, 0);
+ else if (ac && av->a_type == A_DOLLSYM)
+ {
+ t_canvasenvironment *e = canvas_getenv(x);
+ canvas_setcurrent(x);
+ canvas_rename(x, binbuf_realizedollsym(av->a_w.w_symbol,
+ e->ce_argc, e->ce_argv, 1), 0);
+ canvas_unsetcurrent(x);
+ }
else canvas_rename(x, gensym("Pd"), 0);
}