mirror of
https://github.com/Ardour/ardour.git
synced 2026-01-03 04:09:29 +01:00
change RecallFlags enums to make way for new functionality
This commit is contained in:
parent
b52f27721a
commit
940c36468c
5 changed files with 68 additions and 42 deletions
|
|
@ -269,12 +269,14 @@ bool MixerSnapshotDialog::bootstrap_display_and_model(Gtkmm2ext::DnDTreeView<str
|
|||
appending, we can just put this in a vector and use it later */
|
||||
vector<int> column_counts {
|
||||
#ifdef MIXBUS
|
||||
display.append_column(_("EQ"), _columns.recall_eq),
|
||||
display.append_column(_("Comp"), _columns.recall_comp),
|
||||
display.append_column(_("EQ"), _columns.recall_eq),
|
||||
display.append_column(_("Comp."), _columns.recall_comp),
|
||||
display.append_column(_("Sends"), _columns.recall_sends),
|
||||
#endif
|
||||
display.append_column(_("I/O"), _columns.recall_io),
|
||||
display.append_column(_("Groups"), _columns.recall_groups),
|
||||
display.append_column(_("VCAs"), _columns.recall_vcas),
|
||||
display.append_column(_("Pan"), _columns.recall_pan),
|
||||
display.append_column(_("Plugins"), _columns.recall_plugins),
|
||||
display.append_column(_("Groups"), _columns.recall_groups),
|
||||
display.append_column(_("VCAs"), _columns.recall_vcas),
|
||||
};
|
||||
|
||||
for(vector<int>::iterator i = column_counts.begin(); i != column_counts.end(); i++) {
|
||||
|
|
@ -399,10 +401,12 @@ void MixerSnapshotDialog::new_row(Glib::RefPtr<ListStore> model, MixerSnapshot*
|
|||
#ifdef MIXBUS
|
||||
row[_columns.recall_eq] = snap->get_recall_eq();
|
||||
row[_columns.recall_comp] = snap->get_recall_comp();
|
||||
row[_columns.recall_sends] = snap->get_recall_sends();
|
||||
#endif
|
||||
row[_columns.recall_io] = snap->get_recall_io();
|
||||
row[_columns.recall_groups] = snap->get_recall_group();
|
||||
row[_columns.recall_vcas] = snap->get_recall_vca();
|
||||
row[_columns.recall_pan] = snap->get_recall_pan();
|
||||
row[_columns.recall_plugins] = snap->get_recall_plugins();
|
||||
row[_columns.recall_groups] = snap->get_recall_groups();
|
||||
row[_columns.recall_vcas] = snap->get_recall_vcas();
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -555,24 +559,34 @@ void MixerSnapshotDialog::recall_flag_cell_action(const std::string& path, bool
|
|||
(*iter)[_columns.recall_eq] = snap->get_recall_eq();
|
||||
}
|
||||
|
||||
if(title == "Comp") {
|
||||
if(title == "Comp.") {
|
||||
snap->set_recall_comp(!snap->get_recall_comp());
|
||||
(*iter)[_columns.recall_comp] = snap->get_recall_comp();
|
||||
}
|
||||
|
||||
if(title == "Sends") {
|
||||
snap->set_recall_sends(!snap->get_recall_sends());
|
||||
(*iter)[_columns.recall_comp] = snap->get_recall_sends();
|
||||
}
|
||||
#endif
|
||||
if(title == "I/O") {
|
||||
snap->set_recall_io(!snap->get_recall_io());
|
||||
(*iter)[_columns.recall_io] = snap->get_recall_io();
|
||||
if(title == "Pan") {
|
||||
snap->set_recall_pan(!snap->get_recall_pan());
|
||||
(*iter)[_columns.recall_pan] = snap->get_recall_pan();
|
||||
}
|
||||
|
||||
if(title == "Plugins") {
|
||||
snap->set_recall_plugins(!snap->get_recall_plugins());
|
||||
(*iter)[_columns.recall_plugins] = snap->get_recall_plugins();
|
||||
}
|
||||
|
||||
if(title == "Groups") {
|
||||
snap->set_recall_group(!snap->get_recall_group());
|
||||
(*iter)[_columns.recall_groups] = snap->get_recall_group();
|
||||
snap->set_recall_groups(!snap->get_recall_groups());
|
||||
(*iter)[_columns.recall_groups] = snap->get_recall_groups();
|
||||
}
|
||||
|
||||
if(title == "VCAs") {
|
||||
snap->set_recall_vca(!snap->get_recall_vca());
|
||||
(*iter)[_columns.recall_vcas] = snap->get_recall_vca();
|
||||
snap->set_recall_vcas(!snap->get_recall_vcas());
|
||||
(*iter)[_columns.recall_vcas] = snap->get_recall_vcas();
|
||||
}
|
||||
|
||||
snap->write((*iter)[_columns.full_path]);
|
||||
|
|
|
|||
|
|
@ -83,7 +83,9 @@ class MixerSnapshotDialog : public ArdourWindow
|
|||
add (snapshot);
|
||||
add (recall_eq);
|
||||
add (recall_comp);
|
||||
add (recall_io);
|
||||
add (recall_sends);
|
||||
add (recall_pan);
|
||||
add (recall_plugins);
|
||||
add (recall_groups);
|
||||
add (recall_vcas);
|
||||
}
|
||||
|
|
@ -100,7 +102,9 @@ class MixerSnapshotDialog : public ArdourWindow
|
|||
Gtk::TreeModelColumn<ARDOUR::MixerSnapshot*> snapshot;
|
||||
Gtk::TreeModelColumn<bool> recall_eq;
|
||||
Gtk::TreeModelColumn<bool> recall_comp;
|
||||
Gtk::TreeModelColumn<bool> recall_io;
|
||||
Gtk::TreeModelColumn<bool> recall_sends;
|
||||
Gtk::TreeModelColumn<bool> recall_pan;
|
||||
Gtk::TreeModelColumn<bool> recall_plugins;
|
||||
Gtk::TreeModelColumn<bool> recall_groups;
|
||||
Gtk::TreeModelColumn<bool> recall_vcas;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -34,10 +34,12 @@ class LIBARDOUR_API MixerSnapshot
|
|||
public:
|
||||
enum RecallFlags {
|
||||
RecallEQ = 0x1,
|
||||
RecallComp = 0x2,
|
||||
RecallIO = 0x4,
|
||||
RecallGroup = 0x8,
|
||||
RecallVCA = 0x10,
|
||||
RecallSends = 0x2,
|
||||
RecallComp = 0x4,
|
||||
RecallPan = 0x8,
|
||||
RecallPlugs = 0x10,
|
||||
RecallGroups = 0x20,
|
||||
RecallVCAs = 0x40
|
||||
};
|
||||
|
||||
MixerSnapshot(ARDOUR::Session*);
|
||||
|
|
@ -76,19 +78,23 @@ class LIBARDOUR_API MixerSnapshot
|
|||
std::vector<State> get_vcas() {return vca_states;};
|
||||
#ifdef MIXBUS
|
||||
bool get_recall_eq() const { return _flags & RecallEQ;};
|
||||
bool get_recall_sends() const { return _flags & RecallSends;};
|
||||
bool get_recall_comp() const { return _flags & RecallComp;};
|
||||
#endif
|
||||
bool get_recall_io() const { return _flags & RecallIO;};
|
||||
bool get_recall_group() const { return _flags & RecallGroup;};
|
||||
bool get_recall_vca() const { return _flags & RecallVCA;};
|
||||
bool get_recall_pan() const { return _flags & RecallPan;};
|
||||
bool get_recall_plugins() const { return _flags & RecallPlugs;};
|
||||
bool get_recall_groups() const { return _flags & RecallGroups;};
|
||||
bool get_recall_vcas() const { return _flags & RecallVCAs;};
|
||||
|
||||
#ifdef MIXBUS
|
||||
void set_recall_eq(bool);
|
||||
void set_recall_sends(bool);
|
||||
void set_recall_comp(bool);
|
||||
#endif
|
||||
void set_recall_io(bool);
|
||||
void set_recall_group(bool);
|
||||
void set_recall_vca(bool);
|
||||
void set_recall_pan(bool);
|
||||
void set_recall_plugins(bool);
|
||||
void set_recall_groups(bool);
|
||||
void set_recall_vcas(bool);
|
||||
|
||||
unsigned int get_id() {return id;};
|
||||
void set_id(unsigned int new_id) {id = new_id;};
|
||||
|
|
|
|||
|
|
@ -783,10 +783,12 @@ setup_enum_writer ()
|
|||
REGISTER (mode);
|
||||
|
||||
REGISTER_CLASS_ENUM (MixerSnapshot, RecallEQ);
|
||||
REGISTER_CLASS_ENUM (MixerSnapshot, RecallSends);
|
||||
REGISTER_CLASS_ENUM (MixerSnapshot, RecallComp);
|
||||
REGISTER_CLASS_ENUM (MixerSnapshot, RecallIO);
|
||||
REGISTER_CLASS_ENUM (MixerSnapshot, RecallGroup);
|
||||
REGISTER_CLASS_ENUM (MixerSnapshot, RecallVCA);
|
||||
REGISTER_CLASS_ENUM (MixerSnapshot, RecallPan);
|
||||
REGISTER_CLASS_ENUM (MixerSnapshot, RecallPlugs);
|
||||
REGISTER_CLASS_ENUM (MixerSnapshot, RecallGroups);
|
||||
REGISTER_CLASS_ENUM (MixerSnapshot, RecallVCAs);
|
||||
REGISTER_BITS (_Recall_Flags);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ MixerSnapshot::MixerSnapshot(Session* s)
|
|||
, label("snapshot")
|
||||
, timestamp(time(0))
|
||||
, last_modified_with(string_compose("%1 %2", PROGRAM_NAME, revision))
|
||||
, _flags(RecallFlags(31))
|
||||
, _flags(RecallFlags(127))
|
||||
{
|
||||
if(s) {
|
||||
_session = s;
|
||||
|
|
@ -66,7 +66,7 @@ MixerSnapshot::MixerSnapshot(Session* s, string file_path)
|
|||
, label("snapshot")
|
||||
, timestamp(time(0))
|
||||
, last_modified_with(string_compose("%1 %2", PROGRAM_NAME, revision))
|
||||
, _flags(RecallFlags(31))
|
||||
, _flags(RecallFlags(127))
|
||||
{
|
||||
if(s) {
|
||||
_session = s;
|
||||
|
|
@ -111,11 +111,13 @@ bool MixerSnapshot::set_flag(bool yn, RecallFlags flag)
|
|||
|
||||
#ifdef MIXBUS
|
||||
void MixerSnapshot::set_recall_eq(bool yn) { set_flag(yn, RecallEQ); };
|
||||
void MixerSnapshot::set_recall_sends(bool yn) { set_flag(yn, RecallSends);};
|
||||
void MixerSnapshot::set_recall_comp(bool yn) { set_flag(yn, RecallComp); };
|
||||
#endif
|
||||
void MixerSnapshot::set_recall_io(bool yn) { set_flag(yn, RecallIO); };
|
||||
void MixerSnapshot::set_recall_group(bool yn) { set_flag(yn, RecallGroup);};
|
||||
void MixerSnapshot::set_recall_vca(bool yn) { set_flag(yn, RecallVCA); };
|
||||
void MixerSnapshot::set_recall_pan(bool yn) { set_flag(yn, RecallPan); };
|
||||
void MixerSnapshot::set_recall_plugins(bool yn) { set_flag(yn, RecallPlugs); };
|
||||
void MixerSnapshot::set_recall_groups(bool yn) { set_flag(yn, RecallGroups);};
|
||||
void MixerSnapshot::set_recall_vcas(bool yn) { set_flag(yn, RecallVCAs); };
|
||||
|
||||
bool MixerSnapshot::has_specials()
|
||||
{
|
||||
|
|
@ -305,7 +307,7 @@ void MixerSnapshot::recall()
|
|||
|
||||
//vcas
|
||||
for(vector<State>::const_iterator i = vca_states.begin(); i != vca_states.end(); i++) {
|
||||
if(!get_recall_vca()) {
|
||||
if(!get_recall_vcas()) {
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -346,7 +348,7 @@ void MixerSnapshot::recall()
|
|||
|
||||
//groups
|
||||
for(vector<State>::const_iterator i = group_states.begin(); i != group_states.end(); i++) {
|
||||
if(!get_recall_group()) {
|
||||
if(!get_recall_groups()) {
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -543,10 +545,8 @@ XMLNode& MixerSnapshot::sanitize_node(XMLNode& node)
|
|||
}
|
||||
#endif
|
||||
|
||||
if(!get_recall_io()) {
|
||||
node.remove_node_and_delete("IO", "direction", "Input");
|
||||
node.remove_node_and_delete("IO", "direction", "Output");
|
||||
}
|
||||
node.remove_node_and_delete("IO", "direction", "Input");
|
||||
node.remove_node_and_delete("IO", "direction", "Output");
|
||||
|
||||
return node;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue