Prefer General MIDI Synth as default instrument
authorRobin Gareus <robin@gareus.org>
Mon, 30 Jan 2017 15:42:11 +0000 (16:42 +0100)
committerRobin Gareus <robin@gareus.org>
Mon, 30 Jan 2017 15:42:11 +0000 (16:42 +0100)
gtk2_ardour/instrument_selector.cc
gtk2_ardour/instrument_selector.h

index f692a902b4189a5ae2db33004c187413ac5cebe5..a5edfd8bffe34a32b242605ece7a8f4fc12ab721 100644 (file)
@@ -29,6 +29,7 @@ using namespace ARDOUR;
 
 InstrumentSelector::InstrumentSelector()
        : _reasonable_synth_id(0)
+       , _gmsynth_id(UINT32_MAX)
 {
        refill ();
 
@@ -51,7 +52,11 @@ InstrumentSelector::refill()
        set_model(_instrument_list);
        pack_start(_instrument_list_columns.name);
        if (selected.empty ()) {
-               set_active(_reasonable_synth_id);
+               if (_gmsynth_id != UINT32_MAX) {
+                       set_active(_gmsynth_id);
+               } else {
+                       set_active(_reasonable_synth_id);
+               }
        } else {
                TreeModel::Children rows = _instrument_list->children();
                TreeModel::Children::iterator i;
@@ -147,6 +152,9 @@ InstrumentSelector::build_instrument_list()
                if (p->unique_id == "https://community.ardour.org/node/7596") {
                        _reasonable_synth_id = n;
                }
+               if (p->unique_id == "http://gareus.org/oss/lv2/gmsynth") {
+                       _reasonable_synth_id = n;
+               }
                prev = p->name;
                n++;
        }
index 7fe6c8cbf22b10805318dde6d698fb7b23ce73b6..6df9a86e0a43b4059d8dbc43458c050a1ae7fffd 100644 (file)
@@ -59,6 +59,7 @@ private:
        Glib::RefPtr<Gtk::ListStore> _instrument_list;
        InstrumentListColumns        _instrument_list_columns;
        uint32_t                     _reasonable_synth_id;
+       uint32_t                     _gmsynth_id;
        PBD::ScopedConnection        _update_connection;
 };