projects
/
ardour.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
52eea55
)
Show (# outs) in instrument-selector menu when the instrument is multi-out.
author
Ben Loftis
<ben@harrisonconsoles.com>
Sun, 13 Oct 2019 18:26:44 +0000
(13:26 -0500)
committer
Ben Loftis
<ben@harrisonconsoles.com>
Sun, 13 Oct 2019 18:27:07 +0000
(13:27 -0500)
gtk2_ardour/instrument_selector.cc
patch
|
blob
|
history
diff --git
a/gtk2_ardour/instrument_selector.cc
b/gtk2_ardour/instrument_selector.cc
index 91550139bb2dec7ff3287edd223d15356b4637ae..c51b441d0916774ec458bdf01f5cd29e45deabe3 100644
(file)
--- a/
gtk2_ardour/instrument_selector.cc
+++ b/
gtk2_ardour/instrument_selector.cc
@@
-18,6
+18,7
@@
#include "pbd/convert.h"
#include "pbd/enumwriter.h"
#include "pbd/convert.h"
#include "pbd/enumwriter.h"
+#include "ardour/chan_count.h"
#include "ardour/plugin_manager.h"
#include "gtkmm2ext/gui_thread.h"
#include "instrument_selector.h"
#include "ardour/plugin_manager.h"
#include "gtkmm2ext/gui_thread.h"
#include "instrument_selector.h"
@@
-124,12
+125,20
@@
InstrumentSelector::build_instrument_list()
for (PluginInfoList::const_iterator i = all_plugs.begin(); i != all_plugs.end();) {
PluginInfoPtr p = *i;
++i;
for (PluginInfoList::const_iterator i = all_plugs.begin(); i != all_plugs.end();) {
PluginInfoPtr p = *i;
++i;
+
+ std::string name = p->name;
+
+ /* in the instrument menu,we need to differentiate the different output configs here*/
+ int n_outs = p->n_outputs.n_audio();
+ if (n_outs > 2) {
+ name += string_compose( " (%1 outs)", n_outs);
+ }
+
+ /*if a plugin appears in multiple types, we need to differentiate the different types here */
bool suffix_type = prev == p->name;
if (!suffix_type && i != all_plugs.end() && (*i)->name == p->name) {
suffix_type = true;
}
bool suffix_type = prev == p->name;
if (!suffix_type && i != all_plugs.end() && (*i)->name == p->name) {
suffix_type = true;
}
-
- row = *(_instrument_list->append());
if (suffix_type) {
std::string pt;
switch (p->type) {
if (suffix_type) {
std::string pt;
switch (p->type) {
@@
-144,10
+153,12
@@
InstrumentSelector::build_instrument_list()
default:
pt = enum_2_string (p->type);
}
default:
pt = enum_2_string (p->type);
}
- row[_instrument_list_columns.name] = p->name + " (" + pt + ")";
- } else {
- row[_instrument_list_columns.name] = p->name;
+ name += " (" + pt + ")";
}
}
+
+ row = *(_instrument_list->append());
+ row[_instrument_list_columns.name] = name;
+
row[_instrument_list_columns.info_ptr] = p;
if (p->unique_id == "https://community.ardour.org/node/7596") {
_reasonable_synth_id = n;
row[_instrument_list_columns.info_ptr] = p;
if (p->unique_id == "https://community.ardour.org/node/7596") {
_reasonable_synth_id = n;