[PD-cvs] pd/src desire.c, 1.1.2.210, 1.1.2.211 desire.h, 1.1.2.46, 1.1.2.47 m_pd.h, 1.4.4.11.2.32, 1.4.4.11.2.33

Mathieu Bouchard matju at users.sourceforge.net
Tue Nov 28 04:53:34 CET 2006


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

Modified Files:
      Tag: devel_0_39
	desire.c desire.h m_pd.h 
Log Message:
even more PD_PLUSPLUS_FACE


Index: m_pd.h
===================================================================
RCS file: /cvsroot/pure-data/pd/src/m_pd.h,v
retrieving revision 1.4.4.11.2.32
retrieving revision 1.4.4.11.2.33
diff -C2 -d -r1.4.4.11.2.32 -r1.4.4.11.2.33
*** m_pd.h	28 Nov 2006 02:53:33 -0000	1.4.4.11.2.32
--- m_pd.h	28 Nov 2006 03:53:32 -0000	1.4.4.11.2.33
***************
*** 75,80 ****
  EXTERN_STRUCT _clock;
  #define t_clock struct _clock
- EXTERN_STRUCT _outconnect;
- #define t_outconnect struct _outconnect
  EXTERN_STRUCT _glist;
  #define t_glist struct _glist
--- 75,78 ----
***************
*** 227,230 ****
--- 225,238 ----
  
  #ifdef PD_PLUSPLUS_FACE
+ typedef struct _outconnect : _gobj {
+     struct _outconnect *oc_next;
+     t_pd *oc_to;
+ } t_outconnect;
+ #else
+ EXTERN_STRUCT _outconnect;
+ #define t_outconnect struct _outconnect
+ #endif
+ 
+ #ifdef PD_PLUSPLUS_FACE
  typedef struct _scalar : t_gobj {
  #else
***************
*** 410,416 ****
  EXTERN void gobj_subscribe   (t_gobj *self, t_gobj *observer);
  EXTERN void gobj_unsubscribe (t_gobj *self, t_gobj *observer);
! EXTERN void gobj_changed     (void /*t_gobj*/ *self, const char *k);
! EXTERN void gobj_changed2    (void /*t_gobj*/ *self, int argc, t_atom *argv);
! EXTERN void gobj_changed3    (void /*t_gobj*/ *self, t_gobj *origin, int argc, t_atom *argv);
  #endif
  
--- 418,424 ----
  EXTERN void gobj_subscribe   (t_gobj *self, t_gobj *observer);
  EXTERN void gobj_unsubscribe (t_gobj *self, t_gobj *observer);
! EXTERN void gobj_changed     (t_gobj *self, const char *k);
! EXTERN void gobj_changed2    (t_gobj *self, int argc, t_atom *argv);
! EXTERN void gobj_changed3    (t_gobj *self, t_gobj *origin, int argc, t_atom *argv);
  #endif
  

Index: desire.h
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/desire.h,v
retrieving revision 1.1.2.46
retrieving revision 1.1.2.47
diff -C2 -d -r1.1.2.46 -r1.1.2.47
*** desire.h	28 Nov 2006 03:12:57 -0000	1.1.2.46
--- desire.h	28 Nov 2006 03:53:32 -0000	1.1.2.47
***************
*** 203,207 ****
  } t_template;
  
! struct _array {
      int n;            /* number of elements */
      int elemsize;     /* size in bytes; LATER get this from template */
--- 203,208 ----
  } t_template;
  
! /* this is not really a gui object, but it needs to be observable. */
! struct _array : t_gobj {
      int n;            /* number of elements */
      int elemsize;     /* size in bytes; LATER get this from template */

Index: desire.c
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/desire.c,v
retrieving revision 1.1.2.210
retrieving revision 1.1.2.211
diff -C2 -d -r1.1.2.210 -r1.1.2.211
*** desire.c	28 Nov 2006 02:53:33 -0000	1.1.2.210
--- desire.c	28 Nov 2006 03:53:30 -0000	1.1.2.211
***************
*** 83,93 ****
  t_symbol *s_empty, *s_pd, *s_Pd;
  
- #define   pd_free(a)     pd_free((t_pd *)(a))
- #define   pd_bind(a,b)   pd_bind((t_pd *)(a),b)
- #define pd_unbind(a,b) pd_unbind((t_pd *)(a),b)
- #define pd_checkobject(a) pd_checkobject((t_pd *)(a))
- #define pd_pushsym(a) pd_pushsym((t_pd *)(a))
- #define  pd_popsym(a)  pd_popsym((t_pd *)(a))
- 
  //--------------------------------------------------------------------------
  // t_appendix: an extension to t_gobj made by matju so that
--- 83,86 ----
***************
*** 162,167 ****
  
  // 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->_class,k)) : -1;
  	t_atom argv[1];
--- 155,159 ----
  
  // 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->_class,k)) : -1;
  	t_atom argv[1];
***************
*** 172,182 ****
  // 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_;
  	gobj_changed3(self,self,argc,argv);
  }
  
! void gobj_changed3 (void *self_, t_gobj *origin, int argc, t_atom *argv) {
! 	t_gobj *self = (t_gobj *)self_;
  	t_appendix *d = self->g_adix;
  	//printf("gobj_changed3 self=%lx origin=%lx\n",(long)self,(long)origin);
--- 164,172 ----
  // if only a float is sent, it's a bitset of at most 25 elements
  // else it may mean whatever else...
! void gobj_changed2 (t_gobj *self, int argc, t_atom *argv) {
  	gobj_changed3(self,self,argc,argv);
  }
  
! void gobj_changed3 (t_gobj *self, t_gobj *origin, int argc, t_atom *argv) {
  	t_appendix *d = self->g_adix;
  	//printf("gobj_changed3 self=%lx origin=%lx\n",(long)self,(long)origin);
***************
*** 206,215 ****
  }
  
! void queue_put (t_queue *self, void *stuff) {
  #ifdef DEBUG_QUEUE
  	char *buf; int bufn;
  	t_binbuf *b = ((t_text *)stuff)->te_binbuf;
  	if (b) {char *buf; int bufn; binbuf_gettext(b,&buf,&bufn); printf("queue_put [%.*s]\n",bufn,buf);}
! 	else {printf("queue_put (%s)\n",(*(t_pd*)stuff)->c_name->s_name);}
  #endif
  	if (self->len==QUEUE_SIZE) {bug("queue full"); return;}
--- 196,205 ----
  }
  
! void queue_put (t_queue *self, t_pd *stuff) {
  #ifdef DEBUG_QUEUE
  	char *buf; int bufn;
  	t_binbuf *b = ((t_text *)stuff)->te_binbuf;
  	if (b) {char *buf; int bufn; binbuf_gettext(b,&buf,&bufn); printf("queue_put [%.*s]\n",bufn,buf);}
! 	else {printf("queue_put (%s)\n",stuff->_class->c_name->s_name);}
  #endif
  	if (self->len==QUEUE_SIZE) {bug("queue full"); return;}
***************
*** 347,351 ****
      canvas_list = x;
      if (x->havewindow || x->willvis) {
! 	gobj_subscribe((t_gobj *)x,(t_gobj *)manager);
  	gobj_changed(x,0);
      }
--- 337,341 ----
      canvas_list = x;
      if (x->havewindow || x->willvis) {
! 	gobj_subscribe(x,manager);
  	gobj_changed(x,0);
      }
***************
*** 489,493 ****
      x->ylabel = (t_symbol **)getbytes(0);
      if (hack) { /* only manage this canvas if it's not one of the 3 invisible builtin canvases */
! 	gobj_subscribe((t_gobj *)x,(t_gobj *)manager);
  	gobj_changed(x,0);
      }
--- 479,483 ----
      x->ylabel = (t_symbol **)getbytes(0);
      if (hack) { /* only manage this canvas if it's not one of the 3 invisible builtin canvases */
! 	gobj_subscribe(x,manager);
  	gobj_changed(x,0);
      }
***************
*** 552,556 ****
      x->connectbuf = binbuf_new();
      sprintf(buf, ".x%lx", (long)x);
!     x->guiconnect = guiconnect_new((t_pd *)x, gensym(buf));
      return x;
  }
--- 542,546 ----
      x->connectbuf = binbuf_new();
      sprintf(buf, ".x%lx", (long)x);
!     x->guiconnect = guiconnect_new(x,gensym(buf));
      return x;
  }
***************
*** 680,686 ****
  	if (x->isgraph && x->goprect) canvas_drawredrect(x, 1); /*perdu*/
      }
!     if (f==0 && canvas_isvisible(x)) {
! 	gobj_unsubscribe((t_gobj *)x,(t_gobj *)manager);
!     }
      x->mapped = (unsigned)f;
  }
--- 670,674 ----
  	if (x->isgraph && x->goprect) canvas_drawredrect(x, 1); /*perdu*/
      }
!     if (f==0 && canvas_isvisible(x)) gobj_unsubscribe(x,manager);
      x->mapped = (unsigned)f;
  }
***************
*** 812,819 ****
  static void canvas_loadbangabstractions(t_canvas *x) {
      canvas_each(y,x) if (y->_class == canvas_class) {
!         if (canvas_isabstraction((t_canvas *)y))
!             canvas_loadbang((t_canvas *)y);
!         else
!             canvas_loadbangabstractions((t_canvas *)y);
      }
  }
--- 800,805 ----
  static void canvas_loadbangabstractions(t_canvas *x) {
      canvas_each(y,x) if (y->_class == canvas_class) {
! 	t_canvas *z = (t_canvas *)y;
! 	if (canvas_isabstraction(z)) canvas_loadbang(z); else canvas_loadbangabstractions(z);
      }
  }
***************
*** 821,826 ****
  void canvas_loadbangsubpatches(t_canvas *x) {
      t_symbol *s = gensym("loadbang");
!     canvas_each(y,x) if (y->_class == canvas_class)
!         if (!canvas_isabstraction((t_canvas *)y)) canvas_loadbangsubpatches((t_canvas *)y);
      canvas_each(y,x) if ((y->_class != canvas_class) && zgetfn(y,s)) pd_vmess(y,s,"");
  }
--- 807,814 ----
  void canvas_loadbangsubpatches(t_canvas *x) {
      t_symbol *s = gensym("loadbang");
!     canvas_each(y,x) if (y->_class == canvas_class) {
! 	t_canvas *z = (t_canvas *)y;
!         if (!canvas_isabstraction(z)) canvas_loadbangsubpatches(z);
!     }
      canvas_each(y,x) if ((y->_class != canvas_class) && zgetfn(y,s)) pd_vmess(y,s,"");
  }
***************
*** 831,839 ****
  }
  
!     /* When you ask a canvas its size the result is 2 pixels more than what
!     you gave it to open it; perhaps there's a 1-pixel border all around it
!     or something.  Anyway, we just add the 2 pixels back here; seems we
!     have to do this for linux but not MSW; not sure about MacOS. */
! 
  #ifdef MSW
  #define HORIZBORDER 0
--- 819,826 ----
  }
  
! /* When you ask a canvas its size the result is 2 pixels more than what
!    you gave it to open it; perhaps there's a 1-pixel border all around it
!    or something.  Anyway, we just add the 2 pixels back here; seems we
!    have to do this for linux but not MSW; not sure about MacOS. */
  #ifdef MSW
  #define HORIZBORDER 0
***************
*** 855,859 ****
  /* called by m_class.c */
  extern "C" void canvas_popabstraction(t_canvas *x) {
!     newest = (t_pd *)x;
      pd_popsym(x);
      x->loading = 0;
--- 842,846 ----
  /* called by m_class.c */
  extern "C" void canvas_popabstraction(t_canvas *x) {
!     newest = x;
      pd_popsym(x);
      x->loading = 0;
***************
*** 1153,1157 ****
  }
  
! /* recursively check for abstractions to reload as result of a save. 
     Don't reload the one we just saved ("except") though. */
  /*  LATER try to do the same trick for externs. */
--- 1140,1144 ----
  }
  
! /* recursively check for abstractions to reload as result of a save.
     Don't reload the one we just saved ("except") though. */
  /*  LATER try to do the same trick for externs. */
***************
*** 1159,1178 ****
      int i=0, nobj = canvas_getindex(gl, 0);  /* number of objects */
      for (t_gobj *g = gl->list; g && i < nobj; i++) {
!         if (g != except && g->_class == canvas_class && canvas_isabstraction((t_canvas *)g) &&
!                 ((t_canvas *)g)->name == name && canvas_getdir((t_canvas *)g) == dir)
!         {
!             /* we're going to remake the object, so "g" will go stale. Get its index here,
!                and afterward restore g.  Also, the replacement will be at the end of the list,
!                so we don't do g = g->g_next in this case. */
!             int j = canvas_getindex(gl, g);
!             int hadwindow = gl->havewindow;
!             if (!hadwindow) canvas_vis(canvas_getcanvas(gl), 1);
!             g = canvas_nth(gl, j);
!             if (!hadwindow) canvas_vis(canvas_getcanvas(gl), 0);
!         } else {
!             if (g != except && g->_class == canvas_class)
!                 canvas_doreload((t_canvas *)g, name, dir, except);
!              g = g->g_next;
!         }
      }
  }
--- 1146,1165 ----
      int i=0, nobj = canvas_getindex(gl, 0);  /* number of objects */
      for (t_gobj *g = gl->list; g && i < nobj; i++) {
! 	if (g != except && g->_class == canvas_class) {
! 	    t_canvas *c = (t_canvas *)g;
! 	    if (canvas_isabstraction(c) && c->name==name && canvas_getdir(c) == dir) {
! 		/* we're going to remake the object, so "g" will go stale. Get its index here,
! 		and afterward restore g.  Also, the replacement will be at the end of the list,
! 		so we don't do g = g->g_next in this case. */
! 		int j = canvas_getindex(gl, g);
! 		int hadwindow = gl->havewindow;
! 		if (!hadwindow) canvas_vis(canvas_getcanvas(gl), 1);
! 		g = canvas_nth(gl, j);
! 		if (!hadwindow) canvas_vis(canvas_getcanvas(gl), 0);
! 		continue;
!             }
! 	    canvas_doreload(c,name,dir,except);
! 	}
! 	g = g->g_next;
      }
  }
***************
*** 1272,1276 ****
                          canvas_find_index1 = myindex1;
                          canvas_find_index2 = myindex2;
!                         vmess((t_pd *)x, gensym("menu-open"), "");
                          return 1;
                      }
--- 1259,1263 ----
                          canvas_find_index1 = myindex1;
                          canvas_find_index2 = myindex2;
!                         vmess(x,gensym("menu-open"),"");
                          return 1;
                      }
***************
*** 1325,1329 ****
  static int canvas_dofinderror(t_canvas *gl, void *error_object) {
      canvas_each(g,gl) {
!         if ((void *)g == error_object) {
              /* got it... now show it. */
              canvas_vis(canvas_getcanvas(gl), 1);
--- 1312,1316 ----
  static int canvas_dofinderror(t_canvas *gl, void *error_object) {
      canvas_each(g,gl) {
!         if (g==error_object) {
              /* got it... now show it. */
              canvas_vis(canvas_getcanvas(gl), 1);
***************
*** 1397,1401 ****
      gobj_changed(x,0);
      if (!(oc = obj_connect(from,outlet,to,inlet))) goto bad;
!     newest = (t_pd *)oc;
      return;
  bad:
--- 1384,1388 ----
      gobj_changed(x,0);
      if (!(oc = obj_connect(from,outlet,to,inlet))) goto bad;
!     newest = oc;
      return;
  bad:
***************
*** 1463,1467 ****
      t_array *a2 = array;
      while (STUB(a2)->gs_which == GP_ARRAY) a2 = STUB(a2)->gs_un.gs_array;
!     array_resize(array, n);
      gobj_changed(array,0);
  }
--- 1450,1454 ----
      t_array *a2 = array;
      while (STUB(a2)->gs_which == GP_ARRAY) a2 = STUB(a2)->gs_un.gs_array;
!     array_resize(array,n);
      gobj_changed(array,0);
  }
***************
*** 1583,1587 ****
      t_canvas *gl = x->canvas;
      if (gl->list == x && !x->g_next) {
!         vmess((t_pd *)gl, gensym("bounds"), "ffff", 0., gl->y1,
  		(double)(style == PLOTSTYLE_POINTS || n == 1 ? n : n-1), gl->y2);
                  /* close any dialogs that might have the wrong info now... */
--- 1570,1574 ----
      t_canvas *gl = x->canvas;
      if (gl->list == x && !x->g_next) {
!         vmess(gl,gensym("bounds"),"ffff",0.,gl->y1,
  		(double)(style == PLOTSTYLE_POINTS || n == 1 ? n : n-1), gl->y2);
                  /* close any dialogs that might have the wrong info now... */
***************
*** 1708,1712 ****
      x->listviewing = 1;
      sprintf(cmdbuf, "pdtk_array_listview_new %%s %s %d\n", x->realname->s_name, 0);
!     gfxstub_new((t_pd *)x, x, cmdbuf);
      for (int i=0; i < ARRAYPAGESIZE && i < a->n; i++) {
          yval = *(float *)(a->vec + elemsize*i + yonset);
--- 1695,1699 ----
      x->listviewing = 1;
      sprintf(cmdbuf, "pdtk_array_listview_new %%s %s %d\n", x->realname->s_name, 0);
!     gfxstub_new(x,x,cmdbuf);
      for (int i=0; i < ARRAYPAGESIZE && i < a->n; i++) {
          yval = *(float *)(a->vec + elemsize*i + yonset);
***************
*** 2130,2142 ****
  
  static void garray_bounds(t_garray *x, t_floatarg x1, t_floatarg y1, t_floatarg x2, t_floatarg y2)
! {vmess((t_pd *)x->canvas, gensym("bounds"), "ffff", x1, y1, x2, y2);}
  static void garray_xticks(t_garray *x, t_floatarg point, t_floatarg inc, t_floatarg f)
! {vmess((t_pd *)x->canvas, gensym("xticks"), "fff", point, inc, f);}
  static void garray_yticks(t_garray *x, t_floatarg point, t_floatarg inc, t_floatarg f)
! {vmess((t_pd *)x->canvas, gensym("yticks"), "fff", point, inc, f);}
  static void garray_xlabel(t_garray *x, t_symbol *s, int argc, t_atom *argv)
! {typedmess((t_pd *)x->canvas, s, argc, argv);}
  static void garray_ylabel(t_garray *x, t_symbol *s, int argc, t_atom *argv)
! {typedmess((t_pd *)x->canvas, s, argc, argv);}
  
  static void garray_rename(t_garray *x, t_symbol *s) {
--- 2117,2129 ----
  
  static void garray_bounds(t_garray *x, t_floatarg x1, t_floatarg y1, t_floatarg x2, t_floatarg y2)
! {vmess(x->canvas, gensym("bounds"), "ffff", x1, y1, x2, y2);}
  static void garray_xticks(t_garray *x, t_floatarg point, t_floatarg inc, t_floatarg f)
! {vmess(x->canvas, gensym("xticks"), "fff", point, inc, f);}
  static void garray_yticks(t_garray *x, t_floatarg point, t_floatarg inc, t_floatarg f)
! {vmess(x->canvas, gensym("yticks"), "fff", point, inc, f);}
  static void garray_xlabel(t_garray *x, t_symbol *s, int argc, t_atom *argv)
! {typedmess(x->canvas, s, argc, argv);}
  static void garray_ylabel(t_garray *x, t_symbol *s, int argc, t_atom *argv)
! {typedmess(x->canvas, s, argc, argv);}
  
  static void garray_rename(t_garray *x, t_symbol *s) {
***************
*** 2265,2269 ****
  #endif
  
!     gobj_subscribe(y,(t_gobj *)x);
  
      /* delay first uploading of object (DesireData <= 2006.08.19) */
--- 2252,2256 ----
  #endif
  
!     gobj_subscribe(y,x);
  
      /* delay first uploading of object (DesireData <= 2006.08.19) */
***************
*** 3170,3174 ****
          int to   = canvas_getindex(x,t.to);
          binbuf_addv(b, "ssiiii;", gensym("#X"), gensym("connect"), from, t.outlet, to, t.inlet);
! 	appendix_save((t_gobj *)oc,b);
      }
      canvas_savecoordsto(x,b);
--- 3157,3161 ----
          int to   = canvas_getindex(x,t.to);
          binbuf_addv(b, "ssiiii;", gensym("#X"), gensym("connect"), from, t.outlet, to, t.inlet);
! 	appendix_save(oc,b);
      }
      canvas_savecoordsto(x,b);
***************
*** 5452,5456 ****
      }
      if (argc && argv->a_type == A_SYMBOL)
!         pd_typedmess((t_pd *)canvas_getcanvas(canvas), argv->a_w.w_symbol, argc-1, argv+1);
      else pd_error(x, "send-window: no message?");
  }
--- 5439,5443 ----
      }
      if (argc && argv->a_type == A_SYMBOL)
!         pd_typedmess(canvas_getcanvas(canvas), argv->a_w.w_symbol, argc-1, argv+1);
      else pd_error(x, "send-window: no message?");
  }
***************
*** 5577,5582 ****
              else sp->w.w_float = 0;
              if (i) {
!                 if (x->issymbol) symbolinlet_new((t_text *)x, &sp->w.w_symbol);
!                 else              floatinlet_new((t_text *)x, &sp->w.w_float);
              }
          }
--- 5564,5569 ----
              else sp->w.w_float = 0;
              if (i) {
!                 if (x->issymbol) symbolinlet_new(x,&sp->w.w_symbol);
!                 else              floatinlet_new(x, &sp->w.w_float);
              }
          }
***************
*** 6292,6309 ****
  void canvas_atom(t_canvas *gl, t_atomtype type, t_symbol *s, int argc, t_atom *argv) {
      t_gatom *x = (t_gatom *)pd_new(gatom_class);
-     t_text *t = (t_text *)x;
      if (type == A_FLOAT) {x->te_width =  5; SETFLOAT(&x->atom, 0);}
      else                 {x->te_width = 10; SETSYMBOL(&x->atom, &s_symbol);}
!     t->te_type = T_ATOM;
      x->canvas = gl;
      x->min = x->max = 0;
      x->wherelabel = 0;
      x->label = x->rcv = x->snd = x->expanded_to = &s_;
!     t->te_binbuf = binbuf_new();
!     binbuf_add(t->te_binbuf, 1, &x->atom);
!     t->te_xpix = atom_getintarg(0, argc, argv);
!     t->te_ypix = atom_getintarg(1, argc, argv);
!     inlet_new(t, (t_pd *)x, 0, 0);
!     outlet_new(t, type == A_FLOAT ? &s_float: &s_symbol);
      if (argc >= 2) gatom_reload(x,&s_,argc-2,argv+2);
      canvas_add(gl,x);
--- 6279,6295 ----
  void canvas_atom(t_canvas *gl, t_atomtype type, t_symbol *s, int argc, t_atom *argv) {
      t_gatom *x = (t_gatom *)pd_new(gatom_class);
      if (type == A_FLOAT) {x->te_width =  5; SETFLOAT(&x->atom, 0);}
      else                 {x->te_width = 10; SETSYMBOL(&x->atom, &s_symbol);}
!     x->te_type = T_ATOM;
      x->canvas = gl;
      x->min = x->max = 0;
      x->wherelabel = 0;
      x->label = x->rcv = x->snd = x->expanded_to = &s_;
!     x->te_binbuf = binbuf_new();
!     binbuf_add(x->te_binbuf, 1, &x->atom);
!     x->te_xpix = atom_getintarg(0, argc, argv);
!     x->te_ypix = atom_getintarg(1, argc, argv);
!     inlet_new(x,x,0,0);
!     outlet_new(x, type == A_FLOAT ? &s_float: &s_symbol);
      if (argc >= 2) gatom_reload(x,&s_,argc-2,argv+2);
      canvas_add(gl,x);
***************
*** 6363,6367 ****
  	  vec1[0].a_type == A_SYMBOL && vec1[0].a_w.w_symbol == s_pd &&
  	  vec2[0].a_type == A_SYMBOL && vec2[0].a_w.w_symbol == s_pd) {
! 	    typedmess((t_pd *)x, gensym("rename"), natom2-1, vec2+1);
  	    binbuf_free(x->te_binbuf);
  	    x->te_binbuf = b;
--- 6349,6353 ----
  	  vec1[0].a_type == A_SYMBOL && vec1[0].a_w.w_symbol == s_pd &&
  	  vec2[0].a_type == A_SYMBOL && vec2[0].a_w.w_symbol == s_pd) {
! 	    typedmess(x,gensym("rename"),natom2-1,vec2+1);
  	    binbuf_free(x->te_binbuf);
  	    x->te_binbuf = b;
***************
*** 6663,6668 ****
  }
  
! static int pd_savehead(t_binbuf *b, t_iemgui *x_, char *name) {
!     t_text *x = (t_text *)x_;
      binbuf_addv(b, "ssiis", gensym("#X"),gensym("obj"),
  	(t_int)x->te_xpix, (t_int)x->te_ypix, gensym(name));
--- 6649,6653 ----
  }
  
! static int pd_savehead(t_binbuf *b, t_iemgui *x, char *name) {
      binbuf_addv(b, "ssiis", gensym("#X"),gensym("obj"),
  	(t_int)x->te_xpix, (t_int)x->te_ypix, gensym(name));
***************
*** 6770,6774 ****
  t_iemgui *iemgui_new(t_class *qlass) {
  	t_iemgui *x = (t_iemgui *)pd_new(qlass);
! 	x->canvas = (t_canvas *)canvas_getcurrent();
  	x->w = x->h = 15;
  	x->ldx=0;
--- 6755,6759 ----
  t_iemgui *iemgui_new(t_class *qlass) {
  	t_iemgui *x = (t_iemgui *)pd_new(qlass);
! 	x->canvas = canvas_getcurrent();
  	x->w = x->h = 15;
  	x->ldx=0;
***************
*** 6783,6787 ****
  	x->fcol = 0x000000;
  	x->lcol = 0x000000;
! 	pd_bind(x,pd_makebindsym((t_pd *)x));
  	return x;
  }
--- 6768,6772 ----
  	x->fcol = 0x000000;
  	x->lcol = 0x000000;
! 	pd_bind(x,pd_makebindsym(x));
  	return x;
  }
***************
*** 7464,7469 ****
      x->peak = x->rms = 0; /* ??? */
      x->fp = x->fr = -101.0;
!     vu_check_height(x, x->h);
!     inlet_new(x, (t_pd *)x, &s_float, gensym("ft1"));
      vu_reload(x,0,argc,argv);
      return x;
--- 7449,7454 ----
      x->peak = x->rms = 0; /* ??? */
      x->fp = x->fr = -101.0;
!     vu_check_height(x,x->h);
!     inlet_new(x,x,&s_float,gensym("ft1"));
      vu_reload(x,0,argc,argv);
      return x;
***************
*** 7871,7875 ****
  later. */
  
! static void *error_object;
  static char error_string[256];
  void canvas_finderror(void *object);
--- 7856,7860 ----
  later. */
  
! static t_pd *error_object;
  static char error_string[256];
  void canvas_finderror(void *object);
***************
*** 7885,7889 ****
      strcat(buf, "\n");
      dopost(buf);
!     error_object = object;
      if (!saidit) {
          post("... you might be able to track this down from the Find menu.");
--- 7870,7874 ----
      strcat(buf, "\n");
      dopost(buf);
!     error_object = (t_pd *)object;
      if (!saidit) {
          post("... you might be able to track this down from the Find menu.");





More information about the Pd-cvs mailing list