[PD-cvs] pd/src desire.c,1.1.2.33,1.1.2.34

Mathieu Bouchard matju at users.sourceforge.net
Fri Oct 21 17:38:30 CEST 2005


Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13637

Modified Files:
      Tag: devel_0_39
	desire.c 
Log Message:
simplified observers (part 4)


Index: desire.c
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/desire.c,v
retrieving revision 1.1.2.33
retrieving revision 1.1.2.34
diff -C2 -d -r1.1.2.33 -r1.1.2.34
*** desire.c	21 Oct 2005 13:17:01 -0000	1.1.2.33
--- desire.c	21 Oct 2005 15:38:28 -0000	1.1.2.34
***************
*** 60,64 ****
  
  // if !k then suppose all of the object might have changed.
! void gobj_changed (t_gobj *self, const char *k) {
  	int dirty = k ? (1<<class_getfieldindex(self->g_pd,k)) : -1;
  	t_atom argv[1];
--- 60,65 ----
  
  // if !k then suppose all of the object might have changed.
! void gobj_changed (void *self_, const char *k) {
! 	t_gobj *self = (t_gobj *)self_;
  	int dirty = k ? (1<<class_getfieldindex(self->g_pd,k)) : -1;
  	t_atom argv[1];
***************
*** 67,71 ****
  }
  
! void gobj_changed2 (t_gobj *self, int argc, t_atom *argv) {
  	t_appendix *d = self->g_adix;
  	int i;
--- 68,75 ----
  }
  
! // if only a float is sent, it's a bitset of at most 25 elements
! // else it may mean whatever else...
! void gobj_changed2 (void *self_, int argc, t_atom *argv) {
! 	t_gobj *self = (t_gobj *)self_;
  	t_appendix *d = self->g_adix;
  	int i;
***************
*** 1387,1392 ****
  }
  
! void gobj_vis(t_gobj *x, struct _glist *glist, int flag)
! {
      t_widgetbehavior *w = x->g_pd->c_wb;
      if (w && w->w_visfn)
--- 1391,1397 ----
  }
  
! void gobj_vis(t_gobj *x, struct _glist *glist, int flag) {
! 	post("warning: t_visfn shouldn't do anything anymore");
! /*  
      t_widgetbehavior *w = x->g_pd->c_wb;
      if (w && w->w_visfn)
***************
*** 1395,1411 ****
              glist->gl_owner && (pd_class(&glist->gl_pd) != garray_class))
          {
!             /* if we're graphing-on-parent and the object falls outside the
!             graph rectangle, don't draw it. */
              int x1, y1, x2, y2, gx1, gy1, gx2, gy2, m;
              gobj_getrect(&glist->gl_gobj, glist->gl_owner, &x1, &y1, &x2, &y2);
!             if (x1 > x2) m = x1, x1 = x2, x2 = m;
!             if (y1 > y2) m = y1, y1 = y2, x2 = m;
              gobj_getrect(x, glist, &gx1, &gy1, &gx2, &gy2);
!             if (gx1 < x1 || gx1 > x2 || gx2 < x1 || gx2 > x2 ||
!                 gy1 < y1 || gy1 > y2 || gy2 < y1 || gy2 > y2)
                      return;
          }
          w->w_visfn(x, glist, flag);
      }
  }
  
--- 1400,1417 ----
              glist->gl_owner && (pd_class(&glist->gl_pd) != garray_class))
          {
!             // if we're graphing-on-parent and the object falls outside the
!             // graph rectangle, don't draw it.
              int x1, y1, x2, y2, gx1, gy1, gx2, gy2, m;
              gobj_getrect(&glist->gl_gobj, glist->gl_owner, &x1, &y1, &x2, &y2);
!             if (x1>x2) m=x1, x1=x2, x2=m;
!             if (y1>y2) m=y1, y1=y2, x2=m;
              gobj_getrect(x, glist, &gx1, &gy1, &gx2, &gy2);
!             if (gx1<x1 || gx1>x2 || gx2<x1 || gx2>WWWWx2 ||
!                 gy1<y1 || gy1>y2 || gy2<y1 || gy2>y2)
                      return;
          }
          w->w_visfn(x, glist, flag);
      }
+ */
  }
  
***************
*** 5213,5219 ****
  void glist_add(t_glist *x, t_gobj *y)
  {
-     t_object *ob;
      y->g_adix = appendix_new(y); /* mb: i found no better place for initing this */
!     gobj_subscribe(y,x);
      y->g_next = 0;
      if (!x->gl_list) x->gl_list = y;
--- 5219,5225 ----
  void glist_add(t_glist *x, t_gobj *y)
  {
      y->g_adix = appendix_new(y); /* mb: i found no better place for initing this */
!     gobj_subscribe(y,(t_gobj *)x);
!     gobj_changed(y,"");
      y->g_next = 0;
      if (!x->gl_list) x->gl_list = y;
***************
*** 11500,11512 ****
  void pd_upload(t_gobj *self);
  
- /* Todo: this will instead maintain a hashtable of objects that should redrawn,
- and the scheduler will flush it (or part of it) once in a while... */
- static void pd_changed (/*t_gobj*/ void *x) {
- 	t_gobj *self = (t_gobj *)x;
- 	pd_upload(self);
- 	//if (!glist_isvisible(glist_getcanvas(glist))) return; /* <-- doesn't really work */
- 	//sys_mgui(self,"draw","");
- }
- 
  void glist_text(t_glist *gl, t_symbol *s, int argc, t_atom *argv) {
      t_text *x = (t_text *)pd_new(text_class);
--- 11506,11509 ----
***************
*** 11573,11577 ****
      x->te_width = 0;
      x->te_type = T_OBJECT;
-     pd_changed(x);
      glist_add(gl, &x->te_g);
      if (selected) {
--- 11570,11573 ----
***************
*** 12022,12027 ****
  static void text_vis(t_gobj *z, t_glist *glist, int vis) {
      t_text *x = (t_text *)z;
!     pd_changed(x);
!     if (vis) {if (text_shouldvis(x, glist)) /*pd_changed(x)*/;}
  }
  
--- 12018,12022 ----
  static void text_vis(t_gobj *z, t_glist *glist, int vis) {
      t_text *x = (t_text *)z;
!     gobj_changed(x,0);
  }
  
***************
*** 12172,12184 ****
  }
  
! static void iemgui_send(t_iemgui *x, t_symbol *s)
! {
      x->snd = canvas_realizedollar(x->glist, s);
!     if (x->snd==s_empty) x->snd=0;
!     pd_changed(x);
  }
  
! static void iemgui_receive(t_iemgui *x, t_symbol *s)
! {
      t_symbol *rcv = canvas_realizedollar(x->glist, s);
      if (rcv==s_empty) rcv=0;
--- 12167,12176 ----
  }
  
! static void iemgui_send(t_iemgui *x, t_symbol *s) {
      x->snd = canvas_realizedollar(x->glist, s);
!     if (x->snd==s_empty) {x->snd=0; gobj_changed(x,"snd");}
  }
  
! static void iemgui_receive(t_iemgui *x, t_symbol *s) {
      t_symbol *rcv = canvas_realizedollar(x->glist, s);
      if (rcv==s_empty) rcv=0;
***************
*** 12193,12219 ****
  	x->rcv = rcv;
      }
!     pd_changed(x);
  }
  
  static void iemgui_label(t_iemgui *x, t_symbol *s) {
      x->lab = s;
!     pd_changed(x);
  }
  static void iemgui_label_pos(t_iemgui *x, t_float ldx, t_float ldy) {
      x->ldx = (int)ldx;
      x->ldy = (int)ldy;
!     pd_changed(x);
  }
  static void iemgui_label_font(t_iemgui *x, t_symbol *s, int ac, t_atom *av) {
      x->fontsize = MAX(4,(int)atom_getintarg(1, ac, av));
      x->font_style = atom_getintarg(0, ac, av);
!     pd_changed(x);
  }
! static
! void iemgui_size(t_iemgui *x) {
!     if(glist_isvisible(x->glist)) {
! 	pd_changed(x);
! 	canvas_fixlinesfor(glist_getcanvas(x->glist), (t_text*)x);
!     }
  }
  static void iemgui_delta(t_iemgui *x, t_symbol *s, int ac, t_atom *av) {
--- 12185,12208 ----
  	x->rcv = rcv;
      }
!     gobj_changed(x,"rcv");
  }
  
  static void iemgui_label(t_iemgui *x, t_symbol *s) {
      x->lab = s;
!     gobj_changed(x,"lab");
  }
  static void iemgui_label_pos(t_iemgui *x, t_float ldx, t_float ldy) {
      x->ldx = (int)ldx;
      x->ldy = (int)ldy;
!     gobj_changed(x,0);
  }
  static void iemgui_label_font(t_iemgui *x, t_symbol *s, int ac, t_atom *av) {
      x->fontsize = MAX(4,(int)atom_getintarg(1, ac, av));
      x->font_style = atom_getintarg(0, ac, av);
!     gobj_changed(x,0);
  }
! static void iemgui_size(t_iemgui *x) { /*useless?*/
!     gobj_changed(x,0);
!     canvas_fixlinesfor(glist_getcanvas(x->glist), (t_text*)x);
  }
  static void iemgui_delta(t_iemgui *x, t_symbol *s, int ac, t_atom *av) {
***************
*** 12237,12241 ****
      if(ac > 2) x->fcol = iemgui_compatible_col(atom_getintarg(i++, ac, av));
      x->lcol = iemgui_compatible_col(atom_getintarg(i++, ac, av));
!     pd_changed(x);
  }
  
--- 12226,12230 ----
      if(ac > 2) x->fcol = iemgui_compatible_col(atom_getintarg(i++, ac, av));
      x->lcol = iemgui_compatible_col(atom_getintarg(i++, ac, av));
!     gobj_changed(x,0);
  }
  
***************
*** 12490,12494 ****
  }
  
! static void bng_set(t_bng *x) {x->count++; pd_changed(x);}
  static void bng_bout2(t_bng *x) {
      outlet_bang(x->obj.ob_outlet);
--- 12479,12483 ----
  }
  
! static void bng_set(t_bng *x) {x->count++; gobj_changed(x,"count");}
  static void bng_bout2(t_bng *x) {
      outlet_bang(x->obj.ob_outlet);
***************
*** 12537,12541 ****
      iemgui_constrain((t_iemgui *)x);
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
!     pd_changed(x);
  }
  
--- 12526,12530 ----
      iemgui_constrain((t_iemgui *)x);
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
!     gobj_changed(x,0);
  }
  
***************
*** 12589,12593 ****
  static void toggle_bang(t_toggle *x) {
      x->on = x->on?0.0:x->nonzero;
!     pd_changed(x);
      toggle_action(x);
  }
--- 12578,12582 ----
  static void toggle_bang(t_toggle *x) {
      x->on = x->on?0.0:x->nonzero;
!     gobj_changed(x,"on");
      toggle_action(x);
  }
***************
*** 12597,12601 ****
      x->on=f;
      if(f) x->nonzero=f;
!     if (on!=x->on) pd_changed(x);
  }
  
--- 12586,12590 ----
      x->on=f;
      if(f) x->nonzero=f;
!     if (on!=x->on) gobj_changed(x,"on");
  }
  
***************
*** 12636,12640 ****
      iemgui_constrain((t_iemgui *)x);
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
!     pd_changed(x);
  }
  
--- 12625,12629 ----
      iemgui_constrain((t_iemgui *)x);
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
!     gobj_changed(x,0);
  }
  
***************
*** 12681,12685 ****
      if(x->on!=old) x->on_old = x->on;
      x->on = i;
!     pd_changed(x);
      if(x->on!=old) x->on_old = old;
  }
--- 12670,12674 ----
      if(x->on!=old) x->on_old = x->on;
      x->on = i;
!     gobj_changed(x,"on");
      if(x->on!=old) x->on_old = old;
  }
***************
*** 12711,12761 ****
  }
  
! static void radio_fout(t_radio *x, t_floatarg f)
! {
!     int i=(int)f;
!     CLAMP(i,0,x->number-1);
!     if (x->flavor == sym_vdl || x->flavor == sym_hdl)
!     {
! 	/* compatibility with earlier  "hdial" behavior */
! 	if(x->change && i!=x->on_old) radio_send2(x,x->on_old,0.0);
! 	x->on_old = x->on;
! 	x->on = i;
! 	pd_changed(x);
! 	x->on_old = x->on;
! 	radio_send2(x,x->on,1.0);
!     } else {
! 	x->on = i;
! 	radio_send(x,x->on);
! 	pd_changed(x);
! 	x->on_old = x->on;
!     }
! }
! 
! static void radio_float(t_radio *x, t_floatarg f)
! {
      int i=(int)f;
      CLAMP(i,0,x->number-1);
!     if (x->flavor == sym_vdl || x->flavor == sym_hdl)
!     {
! 	/* compatibility with earlier "vdial" behavior */
! 	if (x->change && i!=x->on_old && iemgui_forward(x))
  		radio_send2(x,x->on_old,0.0);
  	x->on_old = x->on;
  	x->on = i;
! 	pd_changed(x);
  	x->on_old = x->on;
! 	if(iemgui_forward(x)) radio_send2(x,x->on,1.0);
      } else {
      	x->on = i;
! 	if (iemgui_forward(x)) radio_send(x,x->on);
! 	pd_changed(x);
  	x->on_old = x->on;
      }
  }
  
  static void radio_loadbang(t_radio *x) {if(iemgui_loadbang(x)) radio_bang(x);}
  
! static void radio_number(t_radio *x, t_floatarg num)
! {
      int n=(int)num;
      CLAMP(n,1,128);
--- 12700,12730 ----
  }
  
! static void radio_fout2(t_radio *x, t_floatarg f, int forwardonly) {
!     int isdial = x->flavor == sym_vdl || x->flavor == sym_hdl;
      int i=(int)f;
      CLAMP(i,0,x->number-1);
!     if (isdial) {
! 	/* compatibility with earlier "hdial" behavior */
! 	if(x->change && i!=x->on_old && (!forwardonly || iemgui_forward(x)))
  		radio_send2(x,x->on_old,0.0);
  	x->on_old = x->on;
  	x->on = i;
! 	gobj_changed(x,"on");
  	x->on_old = x->on;
! 	radio_send2(x,x->on,1.0);
! 	if(!forwardonly || iemgui_forward(x)) radio_send2(x,x->on,1.0);
      } else {
      	x->on = i;
! 	if (!forwardonly || iemgui_forward(x)) radio_send(x,x->on);
! 	gobj_changed(x,"on");
  	x->on_old = x->on;
      }
  }
  
+ static void radio_fout (t_radio *x, t_floatarg f) {radio_fout2(x,f,0);}
+ static void radio_float(t_radio *x, t_floatarg f) {radio_fout2(x,f,1);}
  static void radio_loadbang(t_radio *x) {if(iemgui_loadbang(x)) radio_bang(x);}
  
! static void radio_number(t_radio *x, t_floatarg num) {
      int n=(int)num;
      CLAMP(n,1,128);
***************
*** 12765,12774 ****
  	CLAMP(x->on,0,x->number-1);
  	x->on_old = x->on;
! 	pd_changed(x);
      }
  }
  
! static void radio_size(t_radio *x, t_float size)
! {
      x->h = x->w = iemgui_clip_size(size);
      iemgui_size((t_iemgui *)x);
--- 12734,12743 ----
  	CLAMP(x->on,0,x->number-1);
  	x->on_old = x->on;
! 	gobj_changed(x,"on");
! 	gobj_changed(x,"number");
      }
  }
  
! static void radio_size(t_radio *x, t_float size) {
      x->h = x->w = iemgui_clip_size(size);
      iemgui_size((t_iemgui *)x);
***************
*** 12799,12803 ****
      iemgui_constrain((t_iemgui *)x);
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
!     pd_changed(x);
  }
  
--- 12768,12772 ----
      iemgui_constrain((t_iemgui *)x);
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
!     gobj_changed(x,0);
  }
  
***************
*** 12887,12891 ****
      x->val = (int)(100.0*g + 0.49999);
      x->pos = x->val;
!     pd_changed(x);
  }
  
--- 12856,12861 ----
      x->val = (int)(100.0*g + 0.49999);
      x->pos = x->val;
!     gobj_changed(x,"val");
!     gobj_changed(x,"pos");
  }
  
***************
*** 12947,12954 ****
      iemgui_constrain((t_iemgui *)x);
      slider_check_minmax(x);
!     if (isvert(x)) slider_check_width(x, x->h);
!     else           slider_check_width(x, x->w);
      if(x->rcv) pd_bind((t_pd *)x, x->rcv);
!     pd_changed(x);
  }
  
--- 12917,12923 ----
      iemgui_constrain((t_iemgui *)x);
      slider_check_minmax(x);
!     slider_check_width(x, isvert(x) ? x->h : x->w);
      if(x->rcv) pd_bind((t_pd *)x, x->rcv);
!     gobj_changed(x,0);
  }
  
***************
*** 13018,13023 ****
  }
  
! static void nbbang(t_nbx *x)
! {
      outlet_float(x->obj.ob_outlet, x->val);
      if(x->snd && x->snd->s_thing)
--- 12987,12991 ----
  }
  
! static void nbbang(t_nbx *x) {
      outlet_float(x->obj.ob_outlet, x->val);
      if(x->snd && x->snd->s_thing)
***************
*** 13026,13030 ****
  
  static void nbset(t_nbx *x, t_floatarg f)
! {x->val=f; nbclip(x); pd_changed(x);}
  
  static void nblog_height(t_nbx *x, t_floatarg lh) {
--- 12994,12998 ----
  
  static void nbset(t_nbx *x, t_floatarg f)
! {x->val=f; nbclip(x); gobj_changed(x,0);}
  
  static void nblog_height(t_nbx *x, t_floatarg lh) {
***************
*** 13036,13041 ****
  {nbset(x, f); if(iemgui_forward(x)) nbbang(x);}
  
! static void nbsize(t_nbx *x, t_symbol *s, int ac, t_atom *av)
! {
      x->w = MAX(1,(int)atom_getintarg(0, ac, av));
      if(ac > 1) x->h = MAX(8,(int)atom_getintarg(1, ac, av));
--- 13004,13008 ----
  {nbset(x, f); if(iemgui_forward(x)) nbbang(x);}
  
! static void nbsize(t_nbx *x, t_symbol *s, int ac, t_atom *av) {
      x->w = MAX(1,(int)atom_getintarg(0, ac, av));
      if(ac > 1) x->h = MAX(8,(int)atom_getintarg(1, ac, av));
***************
*** 13044,13059 ****
  
  static void nbrange(t_nbx *x, t_float min, t_float max)
! {x->min=min; x->max=max;
!  if(nbcheck_minmax(x)) pd_changed(x);}
! 
! static void nblin(t_nbx *x) {x->is_log=0;}
! static void nblog(t_nbx *x) {x->is_log=1;
!     if(nbcheck_minmax(x)) pd_changed(x);}
  
! static void nbloadbang(t_nbx *x)
! {if(iemgui_loadbang(x)) nbbang(x);}
  
! static void nblist(t_nbx *x, t_symbol *s, int ac, t_atom *av)
! {
      if (!IS_A_FLOAT(av,0)) return;
      nbset(x, atom_getfloatarg(0, ac, av));
--- 13011,13021 ----
  
  static void nbrange(t_nbx *x, t_float min, t_float max)
! {x->min=min; x->max=max; if(nbcheck_minmax(x)) gobj_changed(x,0);}
  
! static void nblin(t_nbx *x) {x->is_log=0;                    gobj_changed(x,"is_log");}
! static void nblog(t_nbx *x) {x->is_log=1; nbcheck_minmax(x); gobj_changed(x,"is_log");}
! static void nbloadbang(t_nbx *x) {if(iemgui_loadbang(x)) nbbang(x);}
  
! static void nblist(t_nbx *x, t_symbol *s, int ac, t_atom *av) {
      if (!IS_A_FLOAT(av,0)) return;
      nbset(x, atom_getfloatarg(0, ac, av));
***************
*** 13076,13085 ****
  }
  
! static void nbreload(t_nbx *x, t_symbol *s, int argc, t_atom *argv)
! {
      t_foo foo = { argc, argv, 0 };
      binbuf_update((t_iemgui *)x,gensym("nbx"),argc,argv);
      if (!nbpickle(x,&foo)) return;
-     int w;
      if (!x->isa&1) x->val=0.0;
      w=x->w;
--- 13038,13046 ----
  }
  
! static void nbreload(t_nbx *x, t_symbol *s, int argc, t_atom *argv) {
      t_foo foo = { argc, argv, 0 };
+     int w;
      binbuf_update((t_iemgui *)x,gensym("nbx"),argc,argv);
      if (!nbpickle(x,&foo)) return;
      if (!x->isa&1) x->val=0.0;
      w=x->w;
***************
*** 13089,13093 ****
      x->w = MAX(x->w,1);
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
!     pd_changed(x);
  }
  
--- 13050,13054 ----
      x->w = MAX(x->w,1);
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
!     gobj_changed(x,0);
  }
  
***************
*** 13152,13158 ****
  static t_class *vu_class;
  
- static void vu_update(t_vu *x, t_glist *glist)
- {if(glist_isvisible(glist)) sys_mgui((t_gobj *)x,"set","ii",x->rms,x->peak);}
- 
  static void vu_check_height(t_vu *x, int h)
  {
--- 13113,13116 ----
***************
*** 13160,13175 ****
      x->led_size = n-1;
      x->h = IEM_VU_STEPS * n;
  }
  
  static void vu_scale(t_vu *x, t_floatarg fscale)
! {x->scale = !!fscale; pd_changed(x);}
  
  static void vu_size(t_vu *x, t_symbol *s, int ac, t_atom *av)
  {
      x->w = iemgui_clip_size((int)atom_getintarg(0, ac, av));
!     if(ac > 1) vu_check_height(x, (int)atom_getintarg(1, ac, av));
!     pd_changed(x);
!     if(glist_isvisible(x->glist))
! 	canvas_fixlinesfor(glist_getcanvas(x->glist), (t_text*)x);
  }
  
--- 13118,13133 ----
      x->led_size = n-1;
      x->h = IEM_VU_STEPS * n;
+     gobj_changed(x,0);
  }
  
  static void vu_scale(t_vu *x, t_floatarg fscale)
! {x->scale = !!fscale; gobj_changed(x,"scale");}
  
  static void vu_size(t_vu *x, t_symbol *s, int ac, t_atom *av)
  {
      x->w = iemgui_clip_size((int)atom_getintarg(0, ac, av));
!     if(ac>1) vu_check_height(x, (int)atom_getintarg(1, ac, av));
!     gobj_changed(x,0);
!     if(glist_isvisible(x->glist)) canvas_fixlinesfor(glist_getcanvas(x->glist), (t_text*)x);
  }
  
***************
*** 13180,13195 ****
  }
  
! static void vu_float0(t_vu *x, t_floatarg v) {
!  x->rms  = vuify(x,v); x->fr = 0.01*(int)(100.0*v+0.5);
!  outlet_float(x->out_rms, x->fr);  vu_update(x, x->glist);}
! static void vu_float1(t_vu *x, t_floatarg v) {
!  x->peak = vuify(x,v); x->fp = 0.01*(int)(100.0*v+0.5);
!  outlet_float(x->out_peak, x->fp); vu_update(x, x->glist);}
  
! static void vu_bang(t_vu *x)
! {
      outlet_float(x->out_peak, x->fp);
      outlet_float(x->out_rms,  x->fr);
-     vu_update(x, x->glist);
  }
  
--- 13138,13147 ----
  }
  
! static void vu_float0(t_vu *x, t_floatarg v) {x->rms =vuify(x,v); x->fr=0.01*(int)(100.0*v+0.5); outlet_float(x->out_rms,  x->fr); gobj_changed(x,"rms" );}
! static void vu_float1(t_vu *x, t_floatarg v) {x->peak=vuify(x,v); x->fp=0.01*(int)(100.0*v+0.5); outlet_float(x->out_peak, x->fp); gobj_changed(x,"peak");}
  
! static void vu_bang(t_vu *x) {
      outlet_float(x->out_peak, x->fp);
      outlet_float(x->out_rms,  x->fr);
  }
  
***************
*** 13207,13212 ****
  }
  
! static void vu_reload(t_vu *x, t_symbol *s, int argc, t_atom *argv)
! {
      t_foo foo = { argc, argv, 0 };
      binbuf_update((t_iemgui *)x,gensym("vu"),argc,argv);
--- 13159,13163 ----
  }
  
! static void vu_reload(t_vu *x, t_symbol *s, int argc, t_atom *argv) {
      t_foo foo = { argc, argv, 0 };
      binbuf_update((t_iemgui *)x,gensym("vu"),argc,argv);
***************
*** 13214,13218 ****
      iemgui_constrain((t_iemgui *)x);
      if(x->rcv) pd_bind((t_pd *)x, x->rcv);
!     pd_changed(x);
  }
  
--- 13165,13169 ----
      iemgui_constrain((t_iemgui *)x);
      if(x->rcv) pd_bind((t_pd *)x, x->rcv);
!     gobj_changed(x,0);
  }
  
***************
*** 13265,13271 ****
  static void cnv_vis_size(t_cnv *x, t_symbol *s, int ac, t_atom *av)
  {
!     x->vis_h = x->vis_w = MAX(1,(int)atom_getintarg(0, ac, av));
      if(ac > 1)   x->vis_h = MAX(1,(int)atom_getintarg(1, ac, av));
!     pd_changed(x);
  }
  
--- 13216,13222 ----
  static void cnv_vis_size(t_cnv *x, t_symbol *s, int ac, t_atom *av)
  {
!     x->vis_h   = x->vis_w = MAX(1,(int)atom_getintarg(0, ac, av));
      if(ac > 1)   x->vis_h = MAX(1,(int)atom_getintarg(1, ac, av));
!     gobj_changed(x,0);
  }
  
***************
*** 13295,13299 ****
      iemgui_constrain((t_iemgui *)x);
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
!     pd_changed(x);
  }
  #undef FOO
--- 13246,13250 ----
      iemgui_constrain((t_iemgui *)x);
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
!     gobj_changed(x,0);
  }
  #undef FOO
***************
*** 13361,13365 ****
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
      iemgui_constrain((t_iemgui *)x);
!     pd_changed(x);
  }
  
--- 13312,13316 ----
      if (x->rcv) pd_bind((t_pd *)x, x->rcv);
      iemgui_constrain((t_iemgui *)x);
!     gobj_changed(x,0);
  }
  





More information about the Pd-cvs mailing list