[PD-cvs] pd/src g_all_guis.c,1.1.1.4.2.4.2.7,1.1.1.4.2.4.2.8 g_all_guis.h,1.1.1.4.2.2.2.4,1.1.1.4.2.2.2.5
Mathieu Bouchard
matju at users.sourceforge.net
Sun Mar 28 08:25:10 CEST 2004
- Previous message: [PD-cvs] pd/src g_all_guis.c,1.1.1.4.2.4.2.6,1.1.1.4.2.4.2.7 g_all_guis.h,1.1.1.4.2.2.2.3,1.1.1.4.2.2.2.4 g_vumeter.c,1.1.1.3.2.2.2.4,1.1.1.3.2.2.2.5
- Next message: [PD-cvs] pd/src g_all_guis.c,1.1.1.4.2.4.2.8,1.1.1.4.2.4.2.9 g_all_guis.h,1.1.1.4.2.2.2.5,1.1.1.4.2.2.2.6
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3582
Modified Files:
Tag: impd_0_37
g_all_guis.c g_all_guis.h
Log Message:
new function sys_mgui()
Index: g_all_guis.h
===================================================================
RCS file: /cvsroot/pure-data/pd/src/g_all_guis.h,v
retrieving revision 1.1.1.4.2.2.2.4
retrieving revision 1.1.1.4.2.2.2.5
diff -C2 -d -r1.1.1.4.2.2.2.4 -r1.1.1.4.2.2.2.5
*** g_all_guis.h 28 Mar 2004 04:18:18 -0000 1.1.1.4.2.2.2.4
--- g_all_guis.h 28 Mar 2004 06:25:07 -0000 1.1.1.4.2.2.2.5
***************
*** 83,87 ****
#define IEM_GUI_DRAW_MODE_IO 6
-
#define IS_A_POINTER(atom,index) ((atom+index)->a_type == A_POINTER)
#define IS_A_FLOAT(atom,index) ((atom+index)->a_type == A_FLOAT)
--- 83,86 ----
***************
*** 95,100 ****
#define IEM_GUI_OLD_SND_FLAG 1
#define IEM_GUI_OLD_RCV_FLAG 2
!
! #define IEM_GUI_COLOR_EDITED 16711680
#define IEMGUI_MAX_NUM_LEN 32
--- 94,98 ----
#define IEM_GUI_OLD_SND_FLAG 1
#define IEM_GUI_OLD_RCV_FLAG 2
! #define IEM_GUI_COLOR_EDITED 0xFF0000
#define IEMGUI_MAX_NUM_LEN 32
***************
*** 309,310 ****
--- 307,309 ----
EXTERN int pd_scanargs(int argc, t_atom *argv, char *format, ...);
EXTERN void pd_upload(t_gobj *self);
+ EXTERN void sys_mgui(t_iemgui *self, const char *sel, const char *fmt, ...);
Index: g_all_guis.c
===================================================================
RCS file: /cvsroot/pure-data/pd/src/g_all_guis.c,v
retrieving revision 1.1.1.4.2.4.2.7
retrieving revision 1.1.1.4.2.4.2.8
diff -C2 -d -r1.1.1.4.2.4.2.7 -r1.1.1.4.2.4.2.8
*** g_all_guis.c 28 Mar 2004 04:18:18 -0000 1.1.1.4.2.4.2.7
--- g_all_guis.c 28 Mar 2004 06:25:07 -0000 1.1.1.4.2.4.2.8
***************
*** 652,656 ****
return 1;
err:
! post("WARNING: pd_scanargs failed; fmt=%s, i=%d",fmt,i);
return 0;
}
--- 652,656 ----
return 1;
err:
! //post("WARNING: pd_scanargs failed; fmt=%s, i=%d",fmt,i);
return 0;
}
***************
*** 663,668 ****
c->c_savefn(self,buf);
binbuf_gettext(buf,&s,&n);
! sys_vgui("update_object %x {%s}\n",self,s);
binbuf_free(buf);
free(s);
}
--- 663,693 ----
c->c_savefn(self,buf);
binbuf_gettext(buf,&s,&n);
! sys_vgui("update_object %x {%s}\n",(unsigned)self,s);
binbuf_free(buf);
free(s);
}
+
+ void sys_mgui(t_iemgui *self, const char *sel, const char *fmt, ...) {
+ char buf[4096];
+ int i=0, n=4096;
+ t_class *c = self->x_obj.te_g.g_pd;
+ const char *cname = c->c_name->s_name;
+ t_canvas *canvas=glist_getcanvas(self->x_glist);
+ va_list val;
+ va_start(val,fmt);
+ i+=snprintf(buf,n-i,"%s_%s %x .x%x.c", cname, sel, (unsigned)self, (unsigned)canvas);
+ if (i>=n) goto over;
+ while (*fmt) {
+ switch (*fmt) {
+ case 'f': case 'd': i+=snprintf(buf,n-i," %f",va_arg(val,double)); break;
+ case 's': i+=snprintf(buf,n-i," \"%s\"",va_arg(val,t_symbol *)->s_name); break;
+ case 'S': i+=snprintf(buf,n-i," \"%s\"",va_arg(val,const char *)); break;
+ }
+ if (i>=n) goto over;
+ fmt++;
+ }
+ va_end(val);
+ return;
+ over:
+ post("sys_mgui: can't send: buffer overflow");
+ }
- Previous message: [PD-cvs] pd/src g_all_guis.c,1.1.1.4.2.4.2.6,1.1.1.4.2.4.2.7 g_all_guis.h,1.1.1.4.2.2.2.3,1.1.1.4.2.2.2.4 g_vumeter.c,1.1.1.3.2.2.2.4,1.1.1.3.2.2.2.5
- Next message: [PD-cvs] pd/src g_all_guis.c,1.1.1.4.2.4.2.8,1.1.1.4.2.4.2.9 g_all_guis.h,1.1.1.4.2.2.2.5,1.1.1.4.2.2.2.6
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Pd-cvs
mailing list