save custom favorite plugin order (revert when merging VCA2)
authorRobin Gareus <robin@gareus.org>
Thu, 28 Apr 2016 23:39:39 +0000 (01:39 +0200)
committerRobin Gareus <robin@gareus.org>
Fri, 29 Apr 2016 00:58:01 +0000 (02:58 +0200)
gtk2_ardour/mixer_ui.cc

index d6617d99d592178cb16772f60dfdb46b4e0f7794..75c15e18c5516f714d80dde45acdbbec7eb0b593 100644 (file)
@@ -1733,6 +1733,21 @@ Mixer_UI::get_state ()
        node->add_property ("show-mixer-list", _show_mixer_list ? "yes" : "no");
        node->add_property ("maximised", _maximised ? "yes" : "no");
 
+       store_current_favorite_order ();
+       XMLNode* plugin_order = new XMLNode ("PluginOrder");
+       int cnt = 0;
+       for (PluginInfoList::const_iterator i = favorite_order.begin(); i != favorite_order.end(); ++i, ++cnt) {
+               XMLNode* p = new XMLNode ("PluginInfo");
+               p->add_property ("sort", cnt);
+               p->add_property ("unique-id", (*i)->unique_id);
+               if (favorite_ui_state.find ((*i)->unique_id) != favorite_ui_state.end ()) {
+                       p->add_property ("expanded", favorite_ui_state[(*i)->unique_id]);
+               }
+               plugin_order->add_child_nocopy (*p);
+               ;
+       }
+       node->add_child_nocopy (*plugin_order);
+
        return *node;
 }