[PD-cvs] pd/src desire.c,1.1.2.217.2.52,1.1.2.217.2.53

Mathieu Bouchard matju at users.sourceforge.net
Tue Dec 12 17:33:01 CET 2006


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

Modified Files:
      Tag: desiredata
	desire.c 
Log Message:
new serial code


Index: desire.c
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/desire.c,v
retrieving revision 1.1.2.217.2.52
retrieving revision 1.1.2.217.2.53
diff -C2 -d -r1.1.2.217.2.52 -r1.1.2.217.2.53
*** desire.c	9 Dec 2006 03:04:06 -0000	1.1.2.217.2.52
--- desire.c	12 Dec 2006 16:32:54 -0000	1.1.2.217.2.53
***************
*** 574,580 ****
         the toplevel abstraction from showing up. */
      if (vis && gensym("#X")->s_thing && gensym("#X")->s_thing->_class == canvas_class) {
!         t_canvas *zzz = (t_canvas *)(gensym("#X")->s_thing);
!         while (zzz && !zzz->env) zzz = zzz->owner;
!         if (zzz && canvas_isabstraction(zzz) && zzz->owner) vis = 0;
      }
      x->willvis = vis;
--- 574,580 ----
         the toplevel abstraction from showing up. */
      if (vis && gensym("#X")->s_thing && gensym("#X")->s_thing->_class == canvas_class) {
!         t_canvas *z = (t_canvas *)(gensym("#X")->s_thing);
!         while (z && !z->env) z = z->owner;
!         if (z && canvas_isabstraction(z) && z->owner) vis = 0;
      }
      x->willvis = vis;
***************
*** 582,589 ****
      x->next_add = -1;
      pd_pushsym(x);
-     pd_set_newest(x);
      return x;
  }
  
  void canvas_setgraph(t_canvas *x, int flag, int nogoprect);
  
--- 582,595 ----
      x->next_add = -1;
      pd_pushsym(x);
      return x;
  }
  
+ /* this one should be used instead, when not used as a t_newmethod. */
+ static t_canvas *canvas_new_2(void *dummy, t_symbol *sel, int argc, t_atom *argv) {
+ 	t_canvas *x = canvas_new(dummy,sel,argc,argv);
+ 	pd_set_newest(x);
+ 	return x;
+ }
+ 
  void canvas_setgraph(t_canvas *x, int flag, int nogoprect);
  
***************
*** 864,868 ****
  
  void pd_set_newest (t_pd *x) {
- 	if (newest == x) return; /* hack because otherwise it's complicated to remove duplicates */
  	newest = x;
  	if (!pd_origin()) return; /* the following only applies to objects created by client */
--- 870,873 ----
***************
*** 935,939 ****
      SETSYMBOL(a+4, s);
      SETFLOAT(a+5, 0);
!     t_canvas *x = canvas_new(0, 0, 6, a);
      x->owner = z;
      /* create a graph for the table */
--- 940,944 ----
      SETSYMBOL(a+4, s);
      SETFLOAT(a+5, 0);
!     t_canvas *x = canvas_new_2(0,0,6,a);
      x->owner = z;
      /* create a graph for the table */
***************
*** 3691,3695 ****
          else if (type == DT_LIST) {
              /* LATER test this and get it to work */
!             wp->w_list = canvas_new(0, 0, 0, 0);
          }
      }
--- 3696,3700 ----
          else if (type == DT_LIST) {
              /* LATER test this and get it to work */
!             wp->w_list = canvas_new_2(0,0,0,0);
          }
      }
***************
*** 7758,7762 ****
      /* here is the real creator function, invoked in patch files
         by sending the "canvas" message to #N, which is bound to pd_canvasmaker. */
!     class_addmethod3(pd_canvasmaker._class,canvas_new,"canvas","*");
      class_addmethod3(c,canvas_restore,"restore","*");
      class_addmethod3(c,canvas_coords,"coords","*");
--- 7763,7767 ----
      /* here is the real creator function, invoked in patch files
         by sending the "canvas" message to #N, which is bound to pd_canvasmaker. */
!     class_addmethod3(pd_canvasmaker._class,canvas_new_2,"canvas","*");
      class_addmethod3(c,canvas_restore,"restore","*");
      class_addmethod3(c,canvas_coords,"coords","*");





More information about the Pd-cvs mailing list