summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2015-09-21 13:14:29 +0200
committerRobin Gareus <robin@gareus.org>2015-09-21 13:14:29 +0200
commitcba31db6fe024fc535032c72c04adebcd7023828 (patch)
tree3ef3947a5b263e4a9397898e9e874b9c90034ee3
parente64e4e19bc3e44c3e087de6bfc3f1cf4f6e1fabc (diff)
processor-box: explicitly check for "Amp" (Fader)
-rw-r--r--gtk2_ardour/processor_box.cc8
-rw-r--r--libs/ardour/amp.cc2
-rw-r--r--libs/ardour/ardour/amp.h1
3 files changed, 6 insertions, 5 deletions
diff --git a/gtk2_ardour/processor_box.cc b/gtk2_ardour/processor_box.cc
index eb52ec074b..c7df111322 100644
--- a/gtk2_ardour/processor_box.cc
+++ b/gtk2_ardour/processor_box.cc
@@ -165,7 +165,7 @@ ProcessorEntry::ProcessorEntry (ProcessorBox* parent, boost::shared_ptr<Processo
_controls.push_back (c);
if (boost::dynamic_pointer_cast<Amp> (_processor) == 0) {
- /* Add non-Amp controls to the processor box */
+ /* Add non-Amp (Fader & Trim) controls to the processor box */
_vbox.pack_start (c->box);
}
}
@@ -1796,7 +1796,7 @@ ProcessorBox::help_count_visible_prefader_processors (boost::weak_ptr<Processor>
if (processor && processor->display_to_user()) {
- if (boost::dynamic_pointer_cast<Amp>(processor)) {
+ if (boost::dynamic_pointer_cast<Amp>(processor) && boost::dynamic_pointer_cast<Amp>(processor)->type() == X_("amp")) {
*amp_seen = true;
} else {
if (!*amp_seen) {
@@ -1872,7 +1872,7 @@ ProcessorBox::setup_entry_positions ()
uint32_t num = 0;
for (list<ProcessorEntry*>::iterator i = children.begin(); i != children.end(); ++i) {
- if (boost::dynamic_pointer_cast<Amp>((*i)->processor())) {
+ if (boost::dynamic_pointer_cast<Amp>((*i)->processor()) && boost::dynamic_pointer_cast<Amp>((*i)->processor())->type() == X_("amp")) {
pre_fader = false;
(*i)->set_position (ProcessorEntry::Fader, num++);
} else {
@@ -2444,7 +2444,7 @@ ProcessorBox::get_editor_window (boost::shared_ptr<Processor> processor, bool us
}
}
- if (boost::dynamic_pointer_cast<Amp> (processor)) {
+ if (boost::dynamic_pointer_cast<Amp> (processor) && boost::dynamic_pointer_cast<Amp> (processor)->type() == X_("amp")) {
if (_parent_strip) {
_parent_strip->revert_to_default_display ();
diff --git a/libs/ardour/amp.cc b/libs/ardour/amp.cc
index 880fe2575e..c62bb7ff69 100644
--- a/libs/ardour/amp.cc
+++ b/libs/ardour/amp.cc
@@ -59,7 +59,7 @@ Amp::Amp (Session& s, std::string type)
std::string
Amp::display_name() const
{
- return _("Fader");
+ return _type == "trim" ? _("Trim") : _("Fader");
}
bool
diff --git a/libs/ardour/ardour/amp.h b/libs/ardour/ardour/amp.h
index 04e4c16bf8..62f273e477 100644
--- a/libs/ardour/ardour/amp.h
+++ b/libs/ardour/ardour/amp.h
@@ -39,6 +39,7 @@ public:
Amp(Session& s, std::string type = "amp");
std::string display_name() const;
+ std::string type() const { return _type;}
bool visible () const;