diff options
author | Len Ovens <len@ovenwerks.net> | 2018-03-10 12:58:14 -0800 |
---|---|---|
committer | Len Ovens <len@ovenwerks.net> | 2018-03-10 13:07:13 -0800 |
commit | b2259e11d0f6499dee9f9e5fac634342e165a688 (patch) | |
tree | 0ffec068a0f24425c0953c9cdd5b4e0ebf7dd454 /libs/surfaces/osc/osc.cc | |
parent | ed0466094029afdb7028e888f2ae72b8e0ba0327 (diff) |
OSC: change group sharing to individual commands
Send less feedback for group name and sharing
Diffstat (limited to 'libs/surfaces/osc/osc.cc')
-rw-r--r-- | libs/surfaces/osc/osc.cc | 82 |
1 files changed, 51 insertions, 31 deletions
diff --git a/libs/surfaces/osc/osc.cc b/libs/surfaces/osc/osc.cc index 0bf1e79448..6e38b88344 100644 --- a/libs/surfaces/osc/osc.cc +++ b/libs/surfaces/osc/osc.cc @@ -2593,38 +2593,58 @@ OSC::parse_sel_group (const char *path, const char* types, lo_arg **argv, int ar ret = 0; } } - else if (!strncmp (path, X_("/select/group/sharing"), 21)) { - if (argc == 9) { - if (rg->is_gain() != (bool) argv[0]->i) { - rg->set_gain ((bool) argv[0]->i); - } - if (rg->is_relative() != (bool) argv[1]->i) { - rg->set_relative ((bool) argv[1]->i, this); - } - if (rg->is_mute() != (bool) argv[2]->i) { - rg->set_mute ((bool) argv[2]->i); - } - if (rg->is_solo() != (bool) argv[3]->i) { - rg->set_solo ((bool) argv[3]->i); - } - if (rg->is_recenable() != (bool) argv[4]->i) { - rg->set_recenable ((bool) argv[4]->i); - } - if (rg->is_select() != (bool) argv[5]->i) { - rg->set_select ((bool) argv[5]->i); - } - if (rg->is_route_active() != (bool) argv[6]->i) { - rg->set_route_active ((bool) argv[6]->i); - } - if (rg->is_color() != (bool) argv[7]->i) { - rg->set_color ((bool) argv[7]->i); - } - if (rg->is_monitoring() != (bool) argv[8]->i) { - rg->set_monitoring ((bool) argv[8]->i); - } + else if (strcmp (path, X_("/select/group/gain")) == 0) { + if (argc == 1) { + rg->set_gain ((bool) value); + ret = 0; + } + } + else if (strcmp (path, X_("/select/group/relative")) == 0) { + if (argc == 1) { + rg->set_relative ((bool) value, this); + ret = 0; + } + } + else if (strcmp (path, X_("/select/group/mute")) == 0) { + if (argc == 1) { + rg->set_mute ((bool) value); + ret = 0; + } + } + else if (strcmp (path, X_("/select/group/solo")) == 0) { + if (argc == 1) { + rg->set_solo ((bool) value); + ret = 0; + } + } + else if (strcmp (path, X_("/select/group/recenable")) == 0) { + if (argc == 1) { + rg->set_recenable ((bool) value); + ret = 0; + } + } + else if (strcmp (path, X_("/select/group/select")) == 0) { + if (argc == 1) { + rg->set_select ((bool) value); + ret = 0; + } + } + else if (strcmp (path, X_("/select/group/active")) == 0) { + if (argc == 1) { + rg->set_route_active ((bool) value); + ret = 0; + } + } + else if (strcmp (path, X_("/select/group/color")) == 0) { + if (argc == 1) { + rg->set_color ((bool) value); + ret = 0; + } + } + else if (strcmp (path, X_("/select/group/monitoring")) == 0) { + if (argc == 1) { + rg->set_monitoring ((bool) value); ret = 0; - } else { - PBD::warning << "OSC: Sharing can only be set if all 9 parameters are sent." << endmsg; } } } |