summaryrefslogtreecommitdiff
path: root/libs/surfaces
diff options
context:
space:
mode:
authorLen Ovens <len@ovenwerks.net>2017-01-11 19:57:19 -0800
committerLen Ovens <len@ovenwerks.net>2017-01-11 19:57:19 -0800
commitc9715af5d9b505eb0e66fa514bcede4cc5bfd323 (patch)
tree89044647a68cf42940ed635c14e46e63650a5645 /libs/surfaces
parent90202f76757a171b1d53f44a44a45e26fed03de4 (diff)
OSC: We want to see aux buses even if the gui has them hidden
Diffstat (limited to 'libs/surfaces')
-rw-r--r--libs/surfaces/osc/osc.cc13
-rw-r--r--libs/surfaces/osc/osc.h2
2 files changed, 8 insertions, 7 deletions
diff --git a/libs/surfaces/osc/osc.cc b/libs/surfaces/osc/osc.cc
index d7e86d86b0..2a4b1b7d99 100644
--- a/libs/surfaces/osc/osc.cc
+++ b/libs/surfaces/osc/osc.cc
@@ -1386,7 +1386,8 @@ OSC::get_surface (lo_address addr)
s.sel_obs = 0;
s.expand = 0;
s.expand_enable = false;
- s.strips = get_sorted_stripables(s.strip_types);
+ s.cue = false;
+ s.strips = get_sorted_stripables(s.strip_types, s.cue);
s.nstrips = s.strips.size();
_surface.push_back (s);
@@ -1514,7 +1515,7 @@ OSC::_set_bank (uint32_t bank_start, lo_address addr)
usleep ((uint32_t) 10);
}
- s->strips = get_sorted_stripables(s->strip_types);
+ s->strips = get_sorted_stripables(s->strip_types, s->cue);
s->nstrips = s->strips.size();
uint32_t b_size;
@@ -3667,7 +3668,7 @@ OSC::set_state (const XMLNode& node, int version)
s.sel_obs = 0;
s.expand = 0;
s.expand_enable = false;
- s.strips = get_sorted_stripables(s.strip_types);
+ s.strips = get_sorted_stripables(s.strip_types, s.cue);
s.nstrips = s.strips.size();
_surface.push_back (s);
}
@@ -3699,7 +3700,7 @@ struct StripableByPresentationOrder
};
OSC::Sorted
-OSC::get_sorted_stripables(std::bitset<32> types)
+OSC::get_sorted_stripables(std::bitset<32> types, bool cue)
{
Sorted sorted;
@@ -3712,7 +3713,7 @@ OSC::get_sorted_stripables(std::bitset<32> types)
for (StripableList::iterator it = stripables.begin(); it != stripables.end(); ++it) {
boost::shared_ptr<Stripable> s = *it;
- if ((!types[9]) && (s->presentation_info().flags() & PresentationInfo::Hidden)) {
+ if ((!cue) && (!types[9]) && (s->presentation_info().flags() & PresentationInfo::Hidden)) {
// do nothing... skip it
} else {
@@ -3831,7 +3832,7 @@ OSC::_cue_set (uint32_t aux, lo_address addr)
s->gainmode = 1;
s->cue = true;
s->aux = aux;
- s->strips = get_sorted_stripables(s->strip_types);
+ s->strips = get_sorted_stripables(s->strip_types, s->cue);
s->nstrips = s->strips.size();
// get rid of any old CueObsevers for this address
diff --git a/libs/surfaces/osc/osc.h b/libs/surfaces/osc/osc.h
index dbd603d247..134593b1e5 100644
--- a/libs/surfaces/osc/osc.h
+++ b/libs/surfaces/osc/osc.h
@@ -96,7 +96,7 @@ class OSC : public ARDOUR::ControlProtocol, public AbstractUI<OSCUIRequest>
};
typedef std::vector<boost::shared_ptr<ARDOUR::Stripable> > Sorted;
- Sorted get_sorted_stripables(std::bitset<32> types);
+ Sorted get_sorted_stripables(std::bitset<32> types, bool cue);
// keep a surface's global setup by remote server url
struct OSCSurface {