summaryrefslogtreecommitdiff
path: root/libs/surfaces/osc/osc.cc
diff options
context:
space:
mode:
authorLen Ovens <len@ovenwerks.net>2018-03-10 12:58:14 -0800
committerLen Ovens <len@ovenwerks.net>2018-03-10 13:07:13 -0800
commitb2259e11d0f6499dee9f9e5fac634342e165a688 (patch)
tree0ffec068a0f24425c0953c9cdd5b4e0ebf7dd454 /libs/surfaces/osc/osc.cc
parented0466094029afdb7028e888f2ae72b8e0ba0327 (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.cc82
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;
}
}
}