Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25546
Modified Files:
Tag: desiredata
desire.c m_pd.h
Log Message:
GP_GLIST renamed to GP_CANVAS
Index: m_pd.h
===================================================================
RCS file: /cvsroot/pure-data/pd/src/m_pd.h,v
retrieving revision 1.4.4.11.2.33.2.21
retrieving revision 1.4.4.11.2.33.2.22
diff -C2 -d -r1.4.4.11.2.33.2.21 -r1.4.4.11.2.33.2.22
*** m_pd.h 31 Dec 2006 19:21:40 -0000 1.4.4.11.2.33.2.21
--- m_pd.h 3 Jan 2007 02:03:21 -0000 1.4.4.11.2.33.2.22
***************
*** 96,100 ****
#define GP_NONE 0 /* the stub points nowhere (has been cut off) */
! #define GP_GLIST 1 /* the stub points to a glist element */
#define GP_ARRAY 2 /* ... or array */
--- 96,101 ----
#define GP_NONE 0 /* the stub points nowhere (has been cut off) */
! #define GP_CANVAS 1 /* the stub points to a glist element */
! #define GP_GLIST 1
#define GP_ARRAY 2 /* ... or array */
Index: desire.c
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/desire.c,v
retrieving revision 1.1.2.217.2.100
retrieving revision 1.1.2.217.2.101
diff -C2 -d -r1.1.2.217.2.100 -r1.1.2.217.2.101
*** desire.c 31 Dec 2006 19:21:38 -0000 1.1.2.217.2.100
--- desire.c 3 Jan 2007 02:03:18 -0000 1.1.2.217.2.101
***************
*** 5067,5071 ****
t_gstub *gstub_new(t_canvas *gl, t_array *a) {
t_gstub *gs = (t_gstub *)getbytes(sizeof(*gs));
! if (gl) {gs->gs_which = GP_GLIST; gs->gs_un.gs_glist = gl;}
else {gs->gs_which = GP_ARRAY; gs->gs_un.gs_array = a;}
gs->gs_refcount = 0;
--- 5067,5071 ----
t_gstub *gstub_new(t_canvas *gl, t_array *a) {
t_gstub *gs = (t_gstub *)getbytes(sizeof(*gs));
! if (gl) {gs->gs_which = GP_CANVAS; gs->gs_un.gs_glist = gl;}
else {gs->gs_which = GP_ARRAY; gs->gs_un.gs_array = a;}
gs->gs_refcount = 0;
***************
*** 5100,5104 ****
if (!gs) return 0;
if (gs->gs_which == GP_ARRAY) return gs->gs_un.gs_array->valid == gp->gp_valid;
! if (gs->gs_which == GP_GLIST) {
if (!headok && !gp->gp_un.gp_scalar) return 0;
if (gs->gs_un.gs_glist->valid != gp->gp_valid) return 0;
--- 5100,5104 ----
if (!gs) return 0;
if (gs->gs_which == GP_ARRAY) return gs->gs_un.gs_array->valid == gp->gp_valid;
! if (gs->gs_which == GP_CANVAS) {
if (!headok && !gp->gp_un.gp_scalar) return 0;
if (gs->gs_un.gs_glist->valid != gp->gp_valid) return 0;
***************
*** 5111,5115 ****
static t_symbol *gpointer_gettemplatesym(const t_gpointer *gp) {
t_gstub *gs = gp->gp_stub;
! if (gs->gs_which == GP_GLIST) {t_scalar *sc = gp->gp_un.gp_scalar; return sc ? sc->t : 0;}
else {t_array *a = gs->gs_un.gs_array; return a->templatesym;}
}
--- 5111,5115 ----
static t_symbol *gpointer_gettemplatesym(const t_gpointer *gp) {
t_gstub *gs = gp->gp_stub;
! if (gs->gs_which == GP_CANVAS) {t_scalar *sc = gp->gp_un.gp_scalar; return sc ? sc->t : 0;}
else {t_array *a = gs->gs_un.gs_array; return a->templatesym;}
}
***************
*** 5193,5197 ****
if (!gs) {pd_error(x, "next: no current pointer"); return;}
! if (gs->gs_which != GP_GLIST) {pd_error(x, "next: lists only, not arrays"); return;}
canvas = gs->gs_un.gs_glist;
if (canvas->valid != gp->gp_valid) {pd_error(x, "next: stale pointer"); return;}
--- 5193,5197 ----
if (!gs) {pd_error(x, "next: no current pointer"); return;}
! if (gs->gs_which != GP_CANVAS) {pd_error(x, "next: lists only, not arrays"); return;}
canvas = gs->gs_un.gs_glist;
if (canvas->valid != gp->gp_valid) {pd_error(x, "next: stale pointer"); return;}
***************
*** 5221,5225 ****
if (!gpointer_check(&x->gp, 1)) {pd_error(x, "bang: empty pointer"); return;}
gs = x->gp.gp_stub;
! if (gs->gs_which == GP_GLIST) canvas = gs->gs_un.gs_glist;
else {
t_array *owner_array = gs->gs_un.gs_array;
--- 5221,5225 ----
if (!gpointer_check(&x->gp, 1)) {pd_error(x, "bang: empty pointer"); return;}
gs = x->gp.gp_stub;
! if (gs->gs_which == GP_CANVAS) canvas = gs->gs_un.gs_glist;
else {
t_array *owner_array = gs->gs_un.gs_array;
***************
*** 5253,5257 ****
if (!gpointer_check(&x->gp, 1)) {pd_error(x, "rewind: empty pointer"); return;}
gs = x->gp.gp_stub;
! if (gs->gs_which != GP_GLIST) {pd_error(x, "rewind: sorry, unavailable for arrays"); return;}
canvas = gs->gs_un.gs_glist;
gpointer_setcanvas(&x->gp, canvas, 0);
--- 5253,5257 ----
if (!gpointer_check(&x->gp, 1)) {pd_error(x, "rewind: empty pointer"); return;}
gs = x->gp.gp_stub;
! if (gs->gs_which != GP_CANVAS) {pd_error(x, "rewind: sorry, unavailable for arrays"); return;}
canvas = gs->gs_un.gs_glist;
gpointer_setcanvas(&x->gp, canvas, 0);
***************
*** 5381,5385 ****
for (int i=0; i<nitems; i++,vp++) template_setsymbol(t, vp->sym, vec, vp->w.w_symbol, 1);
else for (int i=0; i<nitems; i++,vp++) template_setfloat(t, vp->sym, vec, vp->w.w_float, 1);
! if (gs->gs_which == GP_GLIST) scalar_redraw(gp->gp_un.gp_scalar, gs->gs_un.gs_glist);
else {
t_array *owner_array = gs->gs_un.gs_array;
--- 5381,5385 ----
for (int i=0; i<nitems; i++,vp++) template_setsymbol(t, vp->sym, vec, vp->w.w_symbol, 1);
else for (int i=0; i<nitems; i++,vp++) template_setfloat(t, vp->sym, vec, vp->w.w_float, 1);
! if (gs->gs_which == GP_CANVAS) scalar_redraw(gp->gp_un.gp_scalar, gs->gs_un.gs_glist);
else {
t_array *owner_array = gs->gs_un.gs_array;
***************
*** 5557,5561 ****
but if we belong to an element of another array we have to search back until we get to a
scalar to erase. When graphics updates become queueable this may fall apart... */
! if (gs->gs_which == GP_GLIST) {
if (canvas_isvisible(gs->gs_un.gs_glist)) sys_mgui(gp->gp_un.gp_scalar,"delete","");
} else {
--- 5557,5561 ----
but if we belong to an element of another array we have to search back until we get to a
scalar to erase. When graphics updates become queueable this may fall apart... */
! if (gs->gs_which == GP_CANVAS) {
if (canvas_isvisible(gs->gs_un.gs_glist)) sys_mgui(gp->gp_un.gp_scalar,"delete","");
} else {
***************
*** 5576,5580 ****
}
}
! if (gs->gs_which == GP_GLIST) {
gobj_changed(gp->gp_un.gp_scalar,0);
} else {/*is there something missing here?*/
--- 5576,5580 ----
}
}
! if (gs->gs_which == GP_CANVAS) {
gobj_changed(gp->gp_un.gp_scalar,0);
} else {/*is there something missing here?*/
***************
*** 5632,5636 ****
TEMPLATE_CHECK(x,x->templatesym,)
if (!gs) {pd_error(x, "no current pointer"); return;}
! if (gs->gs_which != GP_GLIST) {pd_error(x, "lists only, not arrays"); return;}
t_canvas *canvas = gs->gs_un.gs_glist;
if (canvas->valid != gp->gp_valid) {pd_error(x, "stale pointer"); return;}
--- 5632,5636 ----
TEMPLATE_CHECK(x,x->templatesym,)
if (!gs) {pd_error(x, "no current pointer"); return;}
! if (gs->gs_which != GP_CANVAS) {pd_error(x, "lists only, not arrays"); return;}
t_canvas *canvas = gs->gs_un.gs_glist;
if (canvas->valid != gp->gp_valid) {pd_error(x, "stale pointer"); return;}
***************
*** 6242,6247 ****
dummy_class = class_new(gensym("dummy"), 0, 0, sizeof(t_text), CLASS_NOINLET|CLASS_PATCHABLE, 0);
! c = mresp_class = class_new(gensym("messresponder"), 0, 0,
! sizeof(t_text), CLASS_PD, 0);
class_addbang( c, mresp_bang);
class_addfloat( c, (t_method) mresp_float);
--- 6242,6246 ----
dummy_class = class_new(gensym("dummy"), 0, 0, sizeof(t_text), CLASS_NOINLET|CLASS_PATCHABLE, 0);
! c = mresp_class = class_new(gensym("messresponder"), 0, 0, sizeof(t_text), CLASS_PD, 0);
class_addbang( c, mresp_bang);
class_addfloat( c, (t_method) mresp_float);
***************
*** 6250,6255 ****
class_addanything(c, mresp_anything);
! c = message_class = class_new(gensym("message"), 0,0,
! sizeof(t_message), CLASS_PATCHABLE, 0);
class_addbang(c, message_bang);
class_addfloat(c, message_float);
--- 6249,6253 ----
class_addanything(c, mresp_anything);
! c = message_class = class_new(gensym("message"), 0,0, sizeof(t_message), CLASS_PATCHABLE, 0);
class_addbang(c, message_bang);
class_addfloat(c, message_float);
***************
*** 7841,7844 ****
--- 7839,7843 ----
pd_bind((t_pd *)&maxclass, gensym("max"));
+ /* this smells bad... a conflict with [pd] subpatches */
t_class *c = glob_pdobject = class_new(gensym("pd"), 0, 0, sizeof(t_pd), CLASS_DEFAULT, A_NULL);