Make smf_track_get_next_event gracefully handle empty tracks.
[ardour.git] / gtk2_ardour / plugin_ui.h
index 2dcaaf188c074c1fbdbfb6c5610133f0221ed630..b5202a932769d5b7358a3d5f3e3f501c58aa5c92 100644 (file)
@@ -34,6 +34,8 @@
 #include <gtkmm/scrolledwindow.h>
 #include <gtkmm/label.h>
 #include <gtkmm/menu.h>
+#include <gtkmm/image.h>
+#include <gtkmm/adjustment.h>
 #include <gtkmm/togglebutton.h>
 #include <gtkmm/socket.h>
 #include <gtkmm/comboboxtext.h>
@@ -87,11 +89,16 @@ class PlugUIBase : public virtual sigc::trackable
        Gtk::ComboBoxText preset_combo;
        Gtk::Button save_button;
        Gtk::ToggleButton bypass_button;
+       Gtk::EventBox focus_button;
 
        LatencyGUI latency_gui;
 
+       Gtk::Image* focus_out_image;
+       Gtk::Image* focus_in_image;
+
        void setting_selected();
        void save_plugin_setting (void);
+       bool focus_toggled(GdkEventButton*);
        void bypass_toggled();
        void processor_active_changed (boost::weak_ptr<ARDOUR::Processor> p);
 };
@@ -223,6 +230,8 @@ class PluginUIWindow : public Gtk::Window
 
        bool on_enter_notify_event (GdkEventCrossing*);
        bool on_leave_notify_event (GdkEventCrossing*);
+       bool on_focus_in_event (GdkEventFocus*);
+       bool on_focus_out_event (GdkEventFocus*);
        bool on_key_press_event (GdkEventKey*);
        bool on_key_release_event (GdkEventKey*);
        void on_show ();