aboutsummaryrefslogtreecommitdiff
path: root/midisettings.c
diff options
context:
space:
mode:
Diffstat (limited to 'midisettings.c')
-rw-r--r--midisettings.c39
1 files changed, 23 insertions, 16 deletions
diff --git a/midisettings.c b/midisettings.c
index 304b660..466915b 100644
--- a/midisettings.c
+++ b/midisettings.c
@@ -401,10 +401,10 @@ static void midisettings_params_apply(t_midisettings*x) {
int i=0;
- // ms_params_print(&x->x_params);
+ ms_params_print(&x->x_params);
- for(i=0; i<MIDIDIALOG_INDEVS+MIDIDIALOG_OUTDEVS+2; i++) {
- SETFLOAT(argv+i, 0);
+ for(i=0; i<argc; i++) {
+ SETFLOAT(argv+i, (t_float)0);
}
@@ -418,18 +418,28 @@ static void midisettings_params_apply(t_midisettings*x) {
SETFLOAT(argv+1*MIDIDIALOG_INDEVS+1*MIDIDIALOG_OUTDEVS+0,(t_float)x->x_params.num_indev );
SETFLOAT(argv+1*MIDIDIALOG_INDEVS+1*MIDIDIALOG_OUTDEVS+1,(t_float)x->x_params.num_outdev);
+
} else {
- for(i=0; i<MIDIDIALOG_INDEVS; i++) {
- SETFLOAT(argv+i+0*MIDIDIALOG_INDEVS, (t_float)x->x_params.indev[i]);
+ unsigned int pos=0;
+ for(i=0; i<x->x_params.num_indev; i++) {
+ pos=i+0*MIDIDIALOG_INDEVS;
+ SETFLOAT(argv+pos, (t_float)x->x_params.indev[i]);
}
- for(i=0; i<MIDIDIALOG_OUTDEVS; i++) {
- SETFLOAT(argv+i+1*MIDIDIALOG_INDEVS, (t_float)x->x_params.outdev[i]);
+ for(i=0; i<x->x_params.num_indev; i++) {
+ pos=i+1*MIDIDIALOG_INDEVS;
+ SETFLOAT(argv+pos, (t_float)x->x_params.outdev[i]);
}
-
- SETFLOAT(argv+1*MIDIDIALOG_INDEVS+1*MIDIDIALOG_OUTDEVS+0,(t_float)0);
- SETFLOAT(argv+1*MIDIDIALOG_INDEVS+1*MIDIDIALOG_OUTDEVS+1,(t_float)0);
+ pos=MIDIDIALOG_INDEVS+MIDIDIALOG_OUTDEVS;
+ SETFLOAT(argv+1*MIDIDIALOG_INDEVS+1*MIDIDIALOG_OUTDEVS+0,(t_float)x->x_params.num_indev );
+ SETFLOAT(argv+1*MIDIDIALOG_INDEVS+1*MIDIDIALOG_OUTDEVS+1,(t_float)x->x_params.num_outdev);
}
-
+
+ startpost("mididialog: ");
+ for(i=0; i<argc; i++) {
+ postatom(argv, argc);
+
+ }
+endpost();
if (s_pdsym->s_thing) typedmess(s_pdsym->s_thing,
gensym("midi-dialog"),
@@ -476,7 +486,7 @@ static int midisettings_setparams_inout( int argc, t_atom*argv, t_ms_symkeys*dev
const unsigned int length=midisettings_setparams_next(argc, argv);
unsigned int len=length;
unsigned int i;
-
+
if(len>maxnumdevices)
len=maxnumdevices;
@@ -490,7 +500,7 @@ static int midisettings_setparams_inout( int argc, t_atom*argv, t_ms_symkeys*dev
break;
case A_SYMBOL:
// LATER: get the device-id from the device-name
- dev=ms_symkeys_getid(devices, atom_getsymbol(argv+i));
+ dev=1+ms_symkeys_getid(devices, atom_getsymbol(argv+i));
if(dev<0) dev=0;
break;
default:
@@ -636,9 +646,6 @@ static void midisettings_setdriver(t_midisettings *x, t_symbol*s, int argc, t_at
#endif
}
-
-
-
/*
*/
static void midisettings_listdrivers(t_midisettings *x)