[PD-cvs] pd/src m_imp.h, 1.3.4.1.2.1, 1.3.4.1.2.2 m_class.c, 1.3.4.7.2.1, 1.3.4.7.2.2
Mathieu Bouchard
matju at users.sourceforge.net
Thu Oct 6 08:58:47 CEST 2005
Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28977
Modified Files:
Tag: devel_0_39
m_imp.h m_class.c
Log Message:
adding class_setfields
Index: m_class.c
===================================================================
RCS file: /cvsroot/pure-data/pd/src/m_class.c,v
retrieving revision 1.3.4.7.2.1
retrieving revision 1.3.4.7.2.2
diff -C2 -d -r1.3.4.7.2.1 -r1.3.4.7.2.2
*** m_class.c 5 Oct 2005 06:12:06 -0000 1.3.4.7.2.1
--- m_class.c 6 Oct 2005 06:58:45 -0000 1.3.4.7.2.2
***************
*** 234,237 ****
--- 234,239 ----
c->c_firstin = ((flags & CLASS_NOINLET) == 0);
c->c_firsttip = gensym("?");
+ c->c_fields = malloc(sizeof(t_symbol *)*31);
+ c->c_nfields = 0;
c->c_patchable = (typeflag == CLASS_PATCHABLE);
c->c_gobj = (typeflag >= CLASS_GOBJ);
***************
*** 927,928 ****
--- 929,945 ----
x->c_firsttip = s;
}
+
+ /* ---------------------------------------------------------------- */
+
+ /* must be called only once */
+ void class_setfieldnames(t_class *x, const char *s) {
+ char foo[64];
+ while (*s) {
+ int i = strchr(s,' ');
+ if (i<0) return;
+ memcpy(foo,s,i);
+ foo[i]=0;
+ x->c_fields[x->c_nfields++] = gensym(foo);
+ s=s+i+1;
+ }
+ }
Index: m_imp.h
===================================================================
RCS file: /cvsroot/pure-data/pd/src/m_imp.h,v
retrieving revision 1.3.4.1.2.1
retrieving revision 1.3.4.1.2.2
diff -C2 -d -r1.3.4.1.2.1 -r1.3.4.1.2.2
*** m_imp.h 21 Aug 2005 11:28:24 -0000 1.3.4.1.2.1
--- m_imp.h 6 Oct 2005 06:58:45 -0000 1.3.4.1.2.2
***************
*** 53,57 ****
char c_firstin; /* if patchable, true if draw first inlet */
char c_drawcommand; /* a drawing command for a template */
! t_symbol* c_firsttip;
};
--- 53,59 ----
char c_firstin; /* if patchable, true if draw first inlet */
char c_drawcommand; /* a drawing command for a template */
! t_symbol *c_firsttip;
! t_symbol **c_fields; /* names of fields aka attributes. */
! int c_nfields; /* ... and how many of them */
};
More information about the Pd-cvs
mailing list