void magicGlass_unbind(t_magicGlass *x) { if (x->x_connectedObj) { obj_disconnect(x->x_connectedObj, x->x_connectedOutno, &x->x_obj, 0); } x->x_dspOn = 0; x->x_maxSample = -999999; x->x_sampleCount = 0; x->x_connectedObj = NULL; x->x_connectedOutno = 0; x->x_maxSize = 1; }
static void canvas_deletelines_for_io(t_canvas *x, t_text *text, t_inlet *inp, t_outlet *outp) { t_linetraverser t; t_outconnect *oc; linetraverser_start(&t, x); while((oc = linetraverser_next(&t))) { if ((t.tr_ob == text && t.tr_outlet == outp) || (t.tr_ob2 == text && t.tr_inlet == inp)) { if(glist_isvisible(x)) { sys_vgui(".x%lx.c delete l%lx\n", glist_getcanvas(x), oc); } obj_disconnect(t.tr_ob, t.tr_outno, t.tr_ob2, t.tr_inno); } } }
void magicGlass_unbind(t_magicGlass *x) { //fprintf(stderr,"magicglass_unbind %lx\n", (t_int)x); if (x->x_connectedObj) { obj_disconnect(x->x_connectedObj, x->x_connectedOutno, &x->x_obj, 0); } x->x_dspOn = 0; x->x_maxSample = -999999; x->x_sampleCount = 0; x->x_connectedObj = NULL; x->x_connectedOutno = 0; x->x_maxSize = 1; }
void magicGlass_bind(t_magicGlass *x, t_object *obj, int outno) { if (x->x_connectedObj != obj) { if (x->x_connectedObj) { obj_disconnect(x->x_connectedObj, x->x_connectedOutno, &x->x_obj, 0); } x->x_connectedObj = obj; x->x_connectedOutno = outno; x->x_maxSize = 1; magicGlass_clearText(x); obj_connect(obj, outno, &x->x_obj, 0); } }
void magicGlass_bind(t_magicGlass *x, t_object *obj, int outno) { //fprintf(stderr,"magicglass_bind %lx\n", (t_int)x); if (x->x_connectedObj != obj) { if (x->x_connectedObj) { obj_disconnect(x->x_connectedObj, x->x_connectedOutno, &x->x_obj, 0); } x->x_connectedObj = obj; x->x_connectedOutno = outno; x->x_maxSize = 1; magicGlass_clearText(x); obj_connect(obj, outno, &x->x_obj, 0); } }
static void dereconnect(t_glist*cnv, t_object*org, t_object*replace) { t_gobj*gobj; int replace_i = canvas_getindex(cnv, o2g(replace)); for(gobj=cnv->gl_list; gobj; gobj=gobj->g_next) { t_object*obj=g2o(gobj); int obj_i = canvas_getindex(cnv, gobj); int obj_nout=0; int nout; if(!obj)continue; obj_nout=obj_noutlets(obj); for(nout=0; nout<obj_nout; nout++) { t_outlet*out=0; t_outconnect*conn=obj_starttraverseoutlet(obj, &out, nout); while(conn) { int which; t_object*dest=0; t_inlet *in =0; int dest_i; conn=obj_nexttraverseoutlet(conn, &dest, &in, &which); if(dest!=org) continue; dest_i = canvas_getindex(cnv, o2g(dest)); obj_disconnect(obj, nout, dest, which); canvas_undo_add(cnv, UNDO_DISCONNECT, "disconnect", canvas_undo_set_disconnect(cnv, obj_i, nout, dest_i, which)); obj_connect(obj, nout, replace, which); canvas_undo_add(cnv, UNDO_CONNECT, "connect", canvas_undo_set_connect(cnv, obj_i, nout, replace_i, which)); } } } }