diff --git a/src/notes.txt b/src/notes.txt index ea8ed631d312e76b6330751c5b7816c96ccb0873..9d66d8eb4a999df052ec3418346aca17033233f1 100644 --- a/src/notes.txt +++ b/src/notes.txt @@ -50,6 +50,8 @@ real-time spectrum grapher document ||, |, etc, better features: +pasting should look at current mouse location +optionally suppress leading "." directories and files on "open" change config.h to #ifdef _MSC_VER (include MSW fake) else include a real one stick snprintf alias in the MSW fake. flag to prevent unlocking patches @@ -80,7 +82,6 @@ tables: flag to hide array names think of a way to embed abstractions in a patch make watchdog work for MACOSX -pasting should look at current mouse location delete-in-rectangle message to Pds put serial object in main dist (see rat@telecoma, Apr. 25; winfried May 22) open/save panel to take messages to init directory, and to set extent list diff --git a/src/x_time.c b/src/x_time.c index 60dcf9a50ffe801adeaeea235112a7af96a2e134..5dc9d37ffeda5b2b867b379b6b73aba4206b2c08 100644 --- a/src/x_time.c +++ b/src/x_time.c @@ -334,7 +334,7 @@ static void *pipe_new(t_symbol *s, int argc, t_atom *argv) { char stupid[80]; atom_string(&argv[argc-1], stupid, 79); - post("pipe: %s: bad time delay value", stupid); + pd_error(x, "pipe: %s: bad time delay value", stupid); deltime = 0; } else deltime = argv[argc-1].a_w.w_float; @@ -385,7 +385,7 @@ static void *pipe_new(t_symbol *s, int argc, t_atom *argv) } else { - if (c != 'f') error("pack: %s: bad type", + if (c != 'f') pd_error(x, "pipe: %s: bad type", ap->a_w.w_symbol->s_name); SETFLOAT(&vp->p_atom, 0); vp->p_outlet = outlet_new(&x->x_obj, &s_float); @@ -437,7 +437,7 @@ static void hang_tick(t_hang *h) case A_POINTER: if (gpointer_check(w->w_gpointer, 1)) outlet_pointer(p->p_outlet, w->w_gpointer); - else post("pipe: stale pointer"); + else pd_error(x, "pipe: stale pointer"); break; } } @@ -454,7 +454,13 @@ static void pipe_list(t_pipe *x, t_symbol *s, int ac, t_atom *av) t_atom *ap; t_word *w; h->h_gp = (t_gpointer *)getbytes(x->x_nptr * sizeof(t_gpointer)); - if (ac > n) ac = n; + if (ac > n) + { + if (av[n].a_type == A_FLOAT) + x->x_deltime = av[n].a_w.w_float; + else pd_error(x, "pipe: symbol or pointer in time inlet"); + ac = n; + } for (i = 0, gp = x->x_gp, p = x->x_vec, ap = av; i < ac; i++, p++, ap++) { @@ -465,7 +471,7 @@ static void pipe_list(t_pipe *x, t_symbol *s, int ac, t_atom *av) case A_POINTER: gpointer_unset(gp); if (ap->a_type != A_POINTER) - post("pipe: bad pointer"); + pd_error(x, "pipe: bad pointer"); else { *gp = *(ap->a_w.w_gpointer);