Update of /cvsroot/pure-data/pd/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15845
Modified Files: Tag: devel_0_39 desire.c Log Message: .
Index: desire.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/desire.c,v retrieving revision 1.1.2.108 retrieving revision 1.1.2.109 diff -C2 -d -r1.1.2.108 -r1.1.2.109 *** desire.c 20 Aug 2006 05:21:36 -0000 1.1.2.108 --- desire.c 20 Aug 2006 06:04:52 -0000 1.1.2.109 *************** *** 589,594 **** glist_init(x); x->gl_obj.te_type = T_OBJECT; ! if (!*sym->s_name) ! { char buf[40]; sprintf(buf, "graph%d", ++gcount); --- 589,593 ---- glist_init(x); x->gl_obj.te_type = T_OBJECT; ! if (!*sym->s_name) { char buf[40]; sprintf(buf, "graph%d", ++gcount); *************** *** 607,626 **** zz = py2; py2 = py1; py1 = zz; } ! if (x1 == x2 || y1 == y2) ! x1 = 0, x2 = 100, y1 = 1, y2 = -1; ! if (px1 >= px2 || py1 >= py2) ! px1 = 100, py1 = 20, px2 = 100 + GLIST_DEFGRAPHWIDTH, ! py2 = 20 + GLIST_DEFGRAPHHEIGHT; x->gl_name = sym; ! x->gl_x1 = x1; ! x->gl_x2 = x2; ! x->gl_y1 = y1; ! x->gl_y2 = y2; ! x->gl_obj.te_xpix = px1; ! x->gl_obj.te_ypix = py1; ! x->gl_pixwidth = px2 - px1; ! x->gl_pixheight = py2 - py1; ! x->gl_font = (canvas_getcurrent() ? ! canvas_getcurrent()->gl_font : sys_defaultfont); x->gl_screenx1 = x->gl_screeny1 = 0; x->gl_screenx2 = 450; --- 606,617 ---- zz = py2; py2 = py1; py1 = zz; } ! if (x1 == x2 || y1 == y2) {x1=0; x2=100; y1=1; y2=-1;} ! if (px1 >= px2 || py1 >= py2) { ! px1=100; py1=20; px2=100+GLIST_DEFGRAPHWIDTH; py2=20+GLIST_DEFGRAPHHEIGHT; ! } x->gl_name = sym; ! x->gl_x1 = x1; x->gl_y1 = y1; x->gl_obj.te_xpix = px1; x->gl_pixwidth = px2-px1; ! x->gl_x2 = x2; x->gl_y2 = y2; x->gl_obj.te_ypix = py1; x->gl_pixheight = py2-py1; ! x->gl_font = (canvas_getcurrent() ? canvas_getcurrent()->gl_font : sys_defaultfont); x->gl_screenx1 = x->gl_screeny1 = 0; x->gl_screenx2 = 450; *************** *** 633,641 **** x->gl_obj.te_binbuf = binbuf_new(); binbuf_addv(x->gl_obj.te_binbuf, "s", gensym("graph")); ! if (!menu) ! pd_pushsym(&x->gl_pd); glist_add(g, &x->gl_gobj); ! if (glist_isvisible(g)) ! canvas_create_editor(x, 1); return (x); } --- 624,630 ---- x->gl_obj.te_binbuf = binbuf_new(); binbuf_addv(x->gl_obj.te_binbuf, "s", gensym("graph")); ! if (!menu) pd_pushsym(&x->gl_pd); glist_add(g, &x->gl_gobj); ! if (glist_isvisible(g)) canvas_create_editor(x, 1); return (x); } *************** *** 644,648 **** void glist_glist(t_glist *g, t_symbol *s, int argc, t_atom *argv) { ! t_symbol *sym; float x1,y1,x2,y2,px1,py1,px2,py2; pd_scanargs(argc,argv,"sffffffff",&sym,&x1,&y1,&x2,&y2,&px1,&py1,&px2,&py2); --- 633,637 ---- void glist_glist(t_glist *g, t_symbol *s, int argc, t_atom *argv) { ! t_symbol *sym; float x1,y1,x2,y2,px1,py1,px2,py2; pd_scanargs(argc,argv,"sffffffff",&sym,&x1,&y1,&x2,&y2,&px1,&py1,&px2,&py2); *************** *** 662,666 **** { int heightwas = y2 - y1; ! int heightchange = y2 - y1 - (x->gl_screeny2 - x->gl_screeny1); if (x->gl_screenx1 == x1 && x->gl_screeny1 == y1 && x->gl_screenx2 == x2 && x->gl_screeny2 == y2) --- 651,655 ---- { int heightwas = y2 - y1; ! int heightchange = y2 - y1 - (x->gl_screeny2 - x->gl_screeny1); if (x->gl_screenx1 == x1 && x->gl_screeny1 == y1 && x->gl_screenx2 == x2 && x->gl_screeny2 == y2) *************** *** 3267,3272 **** while (inno >= obj_ninlets(objsink)) inlet_new(objsink, &objsink->ob_pd, &s_, &s_); ! post ("%d %d %d %d", whoout2, outno, whoin2, inno); ! post("canvas_connect: objsrc=%d outno=%d objsink=%d inno=%d",objsrc,outno,objsink,inno); // shouldn't use sys_mgui because it interferes with the queue // sys_mgui((t_canvas *)x,"wires_new","iiii", whoout2, outno, whoin2, inno); --- 3256,3261 ---- while (inno >= obj_ninlets(objsink)) inlet_new(objsink, &objsink->ob_pd, &s_, &s_); ! /*post ("%d %d %d %d", whoout2, outno, whoin2, inno); ! post("canvas_connect: objsrc=%d outno=%d objsink=%d inno=%d",objsrc,outno,objsink,inno);*/ // shouldn't use sys_mgui because it interferes with the queue // sys_mgui((t_canvas *)x,"wires_new","iiii", whoout2, outno, whoin2, inno); *************** *** 4946,4962 **** void glist_add(t_glist *x, t_gobj *y) { ! char *buf; int bufn; if (!y->g_pd->c_patchable) { printf("glist_add %p %p class=%s (non-t_text)\n",x,y,y->g_pd->c_name->s_name); } else { t_binbuf *bb = ((t_text *)y)->te_binbuf; if (bb->b_vec) { binbuf_gettext(bb,&buf,&bufn); printf("glist_add %p %p [%.*s]\n",x,y,bufn,buf); } else { printf("glist_add %p %p class=%s (binbuf without b_vec !)\n",x,y,y->g_pd->c_name->s_name); } } ! free(buf); gobj_subscribe(y,(t_gobj *)x);
--- 4935,4953 ---- void glist_add(t_glist *x, t_gobj *y) { ! /* if (!y->g_pd->c_patchable) { printf("glist_add %p %p class=%s (non-t_text)\n",x,y,y->g_pd->c_name->s_name); } else { + char *buf; int bufn; t_binbuf *bb = ((t_text *)y)->te_binbuf; if (bb->b_vec) { binbuf_gettext(bb,&buf,&bufn); printf("glist_add %p %p [%.*s]\n",x,y,bufn,buf); + free(buf); } else { printf("glist_add %p %p class=%s (binbuf without b_vec !)\n",x,y,y->g_pd->c_name->s_name); } } ! */ gobj_subscribe(y,(t_gobj *)x);
*************** *** 4964,4975 **** /* gobj_changed(y,0); */ /* don't delay first uploading of object (DesireData >= 2006.08.19) */ ! pd_upload(y);
y->g_next = 0; ! if (!x->gl_list) x->gl_list = y; ! else ! { t_gobj *y2; ! for (y2 = x->gl_list; y2->g_next; y2 = y2->g_next); y2->g_next = y; } --- 4955,4966 ---- /* gobj_changed(y,0); */ /* don't delay first uploading of object (DesireData >= 2006.08.19) */ ! /* pd_upload(y); */ ! /* if (glist_isvisible(x)) gobj_vis(y,x,1); */ ! if (glist_isvisible(x)) pd_upload(y);
y->g_next = 0; ! if (!x->gl_list) x->gl_list = y; else { t_gobj *y2; ! for (y2 = x->gl_list; y2->g_next; y2 = y2->g_next) {} y2->g_next = y; } *************** *** 4977,4988 **** /* voodoo */ /* if (x->gl_editor && (ob = pd_checkobject(&y->g_pd))) rtext_new(x, ob); */ ! if (x->gl_editor && x->gl_isgraph && !x->gl_goprect ! && pd_checkobject(&y->g_pd)) ! { x->gl_goprect = 1; canvas_drawredrect(x, 1); } ! if (glist_isvisible(x)) gobj_vis(y,x,1); ! if (class_isdrawcommand(y->g_pd)) canvas_redrawallfortemplate(template_findbyname(canvas_makebindsym( glist_getcanvas(x)->gl_name)), 0); --- 4968,4976 ---- /* voodoo */ /* if (x->gl_editor && (ob = pd_checkobject(&y->g_pd))) rtext_new(x, ob); */ ! if (x->gl_editor && x->gl_isgraph && !x->gl_goprect && pd_checkobject(&y->g_pd)) { x->gl_goprect = 1; canvas_drawredrect(x, 1); } ! if (class_isdrawcommand(y->g_pd)) canvas_redrawallfortemplate(template_findbyname(canvas_makebindsym( glist_getcanvas(x)->gl_name)), 0); *************** *** 5041,5046 **** glist_getcanvas(x)->gl_name)), 2); gobj_delete(y, x); ! if (glist_isvisible(canvas)) ! gobj_vis(y, x, 0); if (x->gl_editor && (ob = pd_checkobject(&y->g_pd))) rtext_new(x, ob); --- 5029,5038 ---- glist_getcanvas(x)->gl_name)), 2); gobj_delete(y, x); ! /*if (glist_isvisible(canvas)) gobj_vis(y,x,0);*/ ! if (glist_isvisible(canvas)) { ! /*!@#$ race condition because the queue might still contain something */ ! sys_mgui(y,"_delete"); ! } ! if (x->gl_editor && (ob = pd_checkobject(&y->g_pd))) rtext_new(x, ob); *************** *** 6524,6529 **** t_outconnect *oc; canvas_savecontainerto(x,b); ! for (y = x->gl_list; y; y = y->g_next) ! gobj_save(y, b);
linetraverser_start(&t, x); --- 6516,6520 ---- t_outconnect *oc; canvas_savecontainerto(x,b); ! glist_each(y,x) gobj_save(y, b);
linetraverser_start(&t, x); *************** *** 6663,6669 **** { t_canvas *x2 = canvas_getrootfor(x); ! post("canvas_save_as: old name: %s\n",x2->gl_name->s_name); x2->gl_name = name; ! post("canvas_save_as: new name: %s\n",x2->gl_name->s_name); canvas_savetofile(x2, x2->gl_name, canvas_getdir(x2)); } --- 6654,6660 ---- { t_canvas *x2 = canvas_getrootfor(x); ! /* post("canvas_save_as: old name: %s\n",x2->gl_name->s_name); */ x2->gl_name = name; ! /* post("canvas_save_as: new name: %s\n",x2->gl_name->s_name); */ canvas_savetofile(x2, x2->gl_name, canvas_getdir(x2)); }