From 1ba9060c44c6240256b533c3700ac1c6bf74f30f Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Tue, 31 Aug 2010 14:16:29 +0000 Subject: fix up the port insert I/O GUI git-svn-id: svn://localhost/ardour2/branches/3.0@7722 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/port_insert_ui.h | 75 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 gtk2_ardour/port_insert_ui.h (limited to 'gtk2_ardour/port_insert_ui.h') diff --git a/gtk2_ardour/port_insert_ui.h b/gtk2_ardour/port_insert_ui.h new file mode 100644 index 0000000000..297621beec --- /dev/null +++ b/gtk2_ardour/port_insert_ui.h @@ -0,0 +1,75 @@ +/* + Copyright (C) 2002-2010 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. + +*/ + +#ifndef __gtkardour_port_insert_ui_h__ +#define __gtkardour_port_insert_ui_h__ + +#include "ardour_dialog.h" +#include "io_selector.h" + +namespace ARDOUR { + class PortInsert; +} + +class PortInsertUI : public Gtk::VBox +{ + public: + PortInsertUI (Gtk::Window*, ARDOUR::Session *, boost::shared_ptr); + + void redisplay (); + void finished (IOSelector::Result); + + private: + boost::shared_ptr _pi; + + Gtk::Notebook notebook; + Gtk::ToggleButton latency_button; + IOSelector input_selector; + IOSelector output_selector; + Gtk::Label latency_display; + Gtk::HBox latency_hbox; + sigc::connection latency_timeout; + + bool check_latency_measurement (); + void latency_button_toggled (); + void update_latency_display (); +}; + +class PortInsertWindow : public ArdourDialog +{ + public: + PortInsertWindow (ARDOUR::Session *, boost::shared_ptr); + + protected: + void on_map (); + + private: + PortInsertUI _portinsertui; + Gtk::VBox vbox; + + void cancel (); + void accept (); + + void plugin_going_away (); + PBD::ScopedConnection going_away_connection; + + bool wm_delete (GdkEventAny*); +}; + +#endif /* __gtkardour_port_insert_ui_h__ */ -- cgit v1.2.3