Add API to set TriggerTrack flag
This is intended to decide if a track will be visible on the Trigger-Tab/Page. It should be kept in sync with trigger-processor enable.
This commit is contained in:
parent
7edbf06420
commit
3a2566b4af
@ -41,6 +41,7 @@ namespace Properties {
|
|||||||
LIBARDOUR_API extern PBD::PropertyDescriptor<uint32_t> order;
|
LIBARDOUR_API extern PBD::PropertyDescriptor<uint32_t> order;
|
||||||
LIBARDOUR_API extern PBD::PropertyDescriptor<uint32_t> color;
|
LIBARDOUR_API extern PBD::PropertyDescriptor<uint32_t> color;
|
||||||
LIBARDOUR_API extern PBD::PropertyDescriptor<bool> selected;
|
LIBARDOUR_API extern PBD::PropertyDescriptor<bool> selected;
|
||||||
|
LIBARDOUR_API extern PBD::PropertyDescriptor<bool> trigger_track;
|
||||||
/* we use this; declared in region.cc */
|
/* we use this; declared in region.cc */
|
||||||
LIBARDOUR_API extern PBD::PropertyDescriptor<bool> hidden;
|
LIBARDOUR_API extern PBD::PropertyDescriptor<bool> hidden;
|
||||||
}
|
}
|
||||||
@ -128,8 +129,16 @@ class LIBARDOUR_API PresentationInfo : public PBD::Stateful
|
|||||||
/* bus type for monitor mixes */
|
/* bus type for monitor mixes */
|
||||||
FoldbackBus = 0x2000,
|
FoldbackBus = 0x2000,
|
||||||
|
|
||||||
|
/* has TriggerBox, show on TriggerUI page */
|
||||||
|
TriggerTrack = 0x4000,
|
||||||
|
|
||||||
/* special mask to delect out "state" bits */
|
/* special mask to delect out "state" bits */
|
||||||
StatusMask = (Hidden),
|
#ifdef MIXBUS
|
||||||
|
StatusMask = (Hidden | MixbusEditorHidden | TriggerTrack),
|
||||||
|
#else
|
||||||
|
StatusMask = (Hidden | TriggerTrack),
|
||||||
|
#endif
|
||||||
|
|
||||||
/* special mask to delect select type bits */
|
/* special mask to delect select type bits */
|
||||||
TypeMask = (AudioBus|AudioTrack|MidiTrack|MidiBus|VCA|MasterOut|MonitorOut|Auditioner|FoldbackBus)
|
TypeMask = (AudioBus|AudioTrack|MidiTrack|MidiBus|VCA|MasterOut|MonitorOut|Auditioner|FoldbackBus)
|
||||||
};
|
};
|
||||||
@ -160,6 +169,7 @@ class LIBARDOUR_API PresentationInfo : public PBD::Stateful
|
|||||||
|
|
||||||
void set_color (color_t);
|
void set_color (color_t);
|
||||||
void set_hidden (bool yn);
|
void set_hidden (bool yn);
|
||||||
|
void set_trigger_track (bool yn);
|
||||||
void set_flags (Flag f) { _flags = f; }
|
void set_flags (Flag f) { _flags = f; }
|
||||||
|
|
||||||
bool order_set() const { return _flags & OrderSet; }
|
bool order_set() const { return _flags & OrderSet; }
|
||||||
@ -167,6 +177,7 @@ class LIBARDOUR_API PresentationInfo : public PBD::Stateful
|
|||||||
int selection_cnt() const { return _selection_cnt; }
|
int selection_cnt() const { return _selection_cnt; }
|
||||||
|
|
||||||
bool hidden() const { return _flags & Hidden; }
|
bool hidden() const { return _flags & Hidden; }
|
||||||
|
bool trigger_track () const { return _flags & TriggerTrack; }
|
||||||
bool special(bool with_master = true) const { return _flags & ((with_master ? MasterOut : 0)|MonitorOut|Auditioner); }
|
bool special(bool with_master = true) const { return _flags & ((with_master ? MasterOut : 0)|MonitorOut|Auditioner); }
|
||||||
|
|
||||||
bool flag_match (Flag f) const {
|
bool flag_match (Flag f) const {
|
||||||
|
@ -757,6 +757,10 @@ setup_enum_writer ()
|
|||||||
REGISTER_CLASS_ENUM (PresentationInfo, Hidden);
|
REGISTER_CLASS_ENUM (PresentationInfo, Hidden);
|
||||||
REGISTER_CLASS_ENUM (PresentationInfo, OrderSet);
|
REGISTER_CLASS_ENUM (PresentationInfo, OrderSet);
|
||||||
REGISTER_CLASS_ENUM (PresentationInfo, FoldbackBus);
|
REGISTER_CLASS_ENUM (PresentationInfo, FoldbackBus);
|
||||||
|
REGISTER_CLASS_ENUM (PresentationInfo, TriggerTrack);
|
||||||
|
#ifdef MIXBUS
|
||||||
|
REGISTER_CLASS_ENUM (PresentationInfo, MixbusEditorHidden);
|
||||||
|
#endif
|
||||||
REGISTER_BITS (_PresentationInfo_Flag);
|
REGISTER_BITS (_PresentationInfo_Flag);
|
||||||
|
|
||||||
REGISTER_CLASS_ENUM (MusicalMode,Dorian);
|
REGISTER_CLASS_ENUM (MusicalMode,Dorian);
|
||||||
|
@ -1944,7 +1944,9 @@ LuaBindings::common (lua_State* L)
|
|||||||
.addConst ("Auditioner", ARDOUR::PresentationInfo::Flag(PresentationInfo::Auditioner))
|
.addConst ("Auditioner", ARDOUR::PresentationInfo::Flag(PresentationInfo::Auditioner))
|
||||||
.addConst ("Hidden", ARDOUR::PresentationInfo::Flag(PresentationInfo::Hidden))
|
.addConst ("Hidden", ARDOUR::PresentationInfo::Flag(PresentationInfo::Hidden))
|
||||||
.addConst ("GroupOrderSet", ARDOUR::PresentationInfo::Flag(PresentationInfo::OrderSet))
|
.addConst ("GroupOrderSet", ARDOUR::PresentationInfo::Flag(PresentationInfo::OrderSet))
|
||||||
|
.addConst ("TriggerTrack", ARDOUR::PresentationInfo::Flag(PresentationInfo::TriggerTrack))
|
||||||
.addConst ("StatusMask", ARDOUR::PresentationInfo::Flag(PresentationInfo::StatusMask))
|
.addConst ("StatusMask", ARDOUR::PresentationInfo::Flag(PresentationInfo::StatusMask))
|
||||||
|
.addConst ("TypeMask", ARDOUR::PresentationInfo::Flag(PresentationInfo::TypeMask))
|
||||||
.endNamespace ()
|
.endNamespace ()
|
||||||
.endNamespace ()
|
.endNamespace ()
|
||||||
|
|
||||||
|
@ -56,6 +56,7 @@ namespace ARDOUR {
|
|||||||
PBD::PropertyDescriptor<bool> selected;
|
PBD::PropertyDescriptor<bool> selected;
|
||||||
PBD::PropertyDescriptor<uint32_t> order;
|
PBD::PropertyDescriptor<uint32_t> order;
|
||||||
PBD::PropertyDescriptor<uint32_t> color;
|
PBD::PropertyDescriptor<uint32_t> color;
|
||||||
|
PBD::PropertyDescriptor<bool> trigger_track;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -190,6 +191,9 @@ PresentationInfo::set_state (XMLNode const& node, int /* version */)
|
|||||||
if ((f&Hidden) != (_flags&Hidden)) {
|
if ((f&Hidden) != (_flags&Hidden)) {
|
||||||
pc.add (Properties::hidden);
|
pc.add (Properties::hidden);
|
||||||
}
|
}
|
||||||
|
if ((f&TriggerTrack) != (_flags&TriggerTrack)) {
|
||||||
|
pc.add (Properties::trigger_track);
|
||||||
|
}
|
||||||
_flags = f;
|
_flags = f;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -285,6 +289,22 @@ PresentationInfo::set_order (order_t order)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
PresentationInfo::set_trigger_track (bool yn)
|
||||||
|
{
|
||||||
|
if (yn != trigger_track ()) {
|
||||||
|
|
||||||
|
if (yn) {
|
||||||
|
_flags = Flag (_flags | TriggerTrack);
|
||||||
|
} else {
|
||||||
|
_flags = Flag (_flags & ~TriggerTrack);
|
||||||
|
}
|
||||||
|
|
||||||
|
send_change (PropertyChange (Properties::trigger_track));
|
||||||
|
send_static_change (PropertyChange (Properties::trigger_track));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
PresentationInfo&
|
PresentationInfo&
|
||||||
PresentationInfo::operator= (PresentationInfo const& other)
|
PresentationInfo::operator= (PresentationInfo const& other)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user