retain Send control visibility state, fixes #6210
This commit is contained in:
parent
29abc678dd
commit
b34f26a7d0
@ -1721,14 +1721,25 @@ ProcessorBox::add_processor_to_display (boost::weak_ptr<Processor> p)
|
|||||||
if (!send && !plugin_insert && !ext)
|
if (!send && !plugin_insert && !ext)
|
||||||
e->set_selectable(false);
|
e->set_selectable(false);
|
||||||
|
|
||||||
|
bool mark_send_visible = false;
|
||||||
|
if (send && _parent_strip) {
|
||||||
|
/* show controls of new sends by default */
|
||||||
|
GUIObjectState& st = _parent_strip->gui_object_state ();
|
||||||
|
XMLNode* strip = st.get_or_add_node (_parent_strip->state_id ());
|
||||||
|
assert (strip);
|
||||||
|
/* check if state exists, if not it must be a new send */
|
||||||
|
if (!st.get_node(strip, e->state_id())) {
|
||||||
|
mark_send_visible = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Set up this entry's state from the GUIObjectState */
|
/* Set up this entry's state from the GUIObjectState */
|
||||||
XMLNode* proc = entry_gui_object_state (e);
|
XMLNode* proc = entry_gui_object_state (e);
|
||||||
if (proc) {
|
if (proc) {
|
||||||
e->set_control_state (proc);
|
e->set_control_state (proc);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (boost::dynamic_pointer_cast<Send> (processor)) {
|
if (mark_send_visible) {
|
||||||
/* Always show send controls */
|
|
||||||
e->show_all_controls ();
|
e->show_all_controls ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user