Preferences/Config changes for image-surface settings
[ardour.git] / gtk2_ardour / monitor_section.cc
index 808c9d8e032cdb8a51071accf662df0827d8e4dc..8c24afe56841dc5cf439f0111e49d0251e680ef6 100644 (file)
@@ -1,21 +1,25 @@
 /*
-  Copyright (C) 2012 Paul Davis
-
-  This program is free software; you can redistribute it and/or modify
-  it under the terms of the GNU General Public License as published by
-  the Free Software Foundation; either version 2 of the License, or
-  (at your option) any later version.
-
-  This program is distributed in the hope that it will be useful,
-  but WITHOUT ANY WARRANTY; without even the implied warranty of
-  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  GNU General Public License for more details.
-
-  You should have received a copy of the GNU General Public License
-  along with this program; if not, write to the Free Software
-  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-*/
+ * Copyright (C) 2010-2019 Paul Davis <paul@linuxaudiosystems.com>
+ * Copyright (C) 2011-2012 David Robillard <d@drobilla.net>
+ * Copyright (C) 2011 Carl Hetherington <carl@carlh.net>
+ * Copyright (C) 2014-2015 Tim Mayberry <mojofunk@gmail.com>
+ * Copyright (C) 2014-2018 Ben Loftis <ben@harrisonconsoles.com>
+ * Copyright (C) 2014-2019 Robin Gareus <robin@gareus.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
 
 #include <gdkmm/pixbuf.h>
 
@@ -108,7 +112,6 @@ MonitorSection::MonitorSection ()
 
        channel_size_group = SizeGroup::create (SIZE_GROUP_HORIZONTAL);
 
-       _plugin_selector = new PluginSelector (PluginManager::instance());
        insert_box = new ProcessorBox (0, boost::bind (&MonitorSection::plugin_selector, this), _rr_selection, 0);
        insert_box->set_no_show_all ();
        insert_box->show ();
@@ -338,6 +341,8 @@ MonitorSection::MonitorSection ()
         * LAYOUT  top to bottom
         */
 
+       Gtk::Label *top_spacer = manage (new Gtk::Label);
+
        // solo, iso information
        HBox* rude_box = manage (new HBox);
        rude_box->set_spacing (PX_SCALE(4));
@@ -427,6 +432,7 @@ MonitorSection::MonitorSection ()
         * TOP LEVEL LAYOUT
         */
        vpacker.set_border_width (PX_SCALE(3));
+       vpacker.pack_start (*top_spacer,          false, false, PX_SCALE(3));
        vpacker.pack_start (*rude_box,            false, false, PX_SCALE(3));
        vpacker.pack_start (rude_audition_button, false, false, 0);
        vpacker.pack_start (*solo_tbl,            false, false, PX_SCALE(8));
@@ -436,9 +442,9 @@ MonitorSection::MonitorSection ()
        vpacker.pack_start (master_packer,        false, false, PX_SCALE(10));
        vpacker.pack_end   (*out_packer,          false, false,
 #ifdef MIXBUS
-                       scrollbar_height - 2 /* no outer sample */
+                       scrollbar_height /* no outer frame */
 #else
-                       scrollbar_height + 2 /* sample borders */
+                       scrollbar_height + 2 /* frame borders */
 #endif
                        );
 
@@ -587,7 +593,6 @@ void
 MonitorSection::set_session (Session* s)
 {
        RouteUI::set_session (s);
-       _plugin_selector->set_session (_session);
        insert_box->set_session (_session);
 
        Glib::RefPtr<ActionGroup> global_monitor_actions = ActionManager::get_action_group (X_("Monitor Section"));
@@ -1613,6 +1618,12 @@ MonitorSection::processors_changed (ARDOUR::RouteProcessorChange)
        update_processor_box ();
 }
 
+PluginSelector*
+MonitorSection::plugin_selector ()
+{
+       return Mixer_UI::instance()->plugin_selector ();
+}
+
 void
 MonitorSection::use_others_actions ()
 {