[PD-cvs] SF.net SVN: pure-data: [9728] branches/pd-extended/v0-40/pd/src
eighthave at users.sourceforge.net
eighthave at users.sourceforge.net
Mon Apr 28 06:13:52 CEST 2008
Revision: 9728
http://pure-data.svn.sourceforge.net/pure-data/?rev=9728&view=rev
Author: eighthave
Date: 2008-04-27 21:13:52 -0700 (Sun, 27 Apr 2008)
Log Message:
-----------
Wrote a function to switch the [pd filename] callback message to use a
A_GIMME instead of two symbols, thereby correctly receiving any directory
names with spaces in it.
Modified Paths:
--------------
branches/pd-extended/v0-40/pd/src/g_canvas.c
branches/pd-extended/v0-40/pd/src/m_glob.c
Modified: branches/pd-extended/v0-40/pd/src/g_canvas.c
===================================================================
--- branches/pd-extended/v0-40/pd/src/g_canvas.c 2008-04-28 00:20:13 UTC (rev 9727)
+++ branches/pd-extended/v0-40/pd/src/g_canvas.c 2008-04-28 04:13:52 UTC (rev 9728)
@@ -138,6 +138,18 @@
canvas_newdirectory = dirsym;
}
+void glob_setfilename_gimme(void *dummy, t_symbol *s, int argc, t_atom *argv)
+{
+ int bufsize;
+ char *buf;
+ t_binbuf *b = binbuf_new();
+ canvas_newfilename = atom_getsymbolarg(0, argc, argv);
+ binbuf_add(b, argc - 1, argv + 1);
+ binbuf_gettext(b, &buf, &bufsize);
+ buf[bufsize] = 0;
+ canvas_newdirectory = gensym(buf);
+}
+
t_canvas *canvas_getcurrent(void)
{
return ((t_canvas *)pd_findbyclass(&s__X, canvas_class));
Modified: branches/pd-extended/v0-40/pd/src/m_glob.c
===================================================================
--- branches/pd-extended/v0-40/pd/src/m_glob.c 2008-04-28 00:20:13 UTC (rev 9727)
+++ branches/pd-extended/v0-40/pd/src/m_glob.c 2008-04-28 04:13:52 UTC (rev 9728)
@@ -11,7 +11,7 @@
/* These "glob" routines, which implement messages to Pd, are from all
over. Some others are prototyped in m_imp.h as well. */
-void glob_setfilename(void *dummy, t_symbol *name, t_symbol *dir);
+void glob_setfilename_gimme(void *dummy, t_symbol *s, int argc, t_atom *argv);
void glob_verifyquit(void *dummy, t_floatarg f);
void glob_dsp(void *dummy, t_symbol *s, int argc, t_atom *argv);
void glob_meters(void *dummy, t_floatarg f);
@@ -74,8 +74,8 @@
CLASS_DEFAULT, A_NULL);
class_addmethod(glob_pdobject, (t_method)glob_initfromgui, gensym("init"),
A_GIMME, 0);
- class_addmethod(glob_pdobject, (t_method)glob_setfilename, gensym("filename"),
- A_SYMBOL, A_SYMBOL, 0);
+ class_addmethod(glob_pdobject, (t_method)glob_setfilename_gimme,
+ gensym("filename"), A_GIMME, 0);
class_addmethod(glob_pdobject, (t_method)glob_evalfile, gensym("open"),
A_SYMBOL, A_SYMBOL, 0);
class_addmethod(glob_pdobject, (t_method)glob_quit, gensym("quit"), 0);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Pd-cvs
mailing list