try to restore original semantics for scheduling butler transport work in Session...
[ardour.git] / gtk2_ardour / panner2d.h
index 60534d04c6b952b3f39db1abbb5f98cb93b7e5b5..99377bdd509bf8817a855dcd75276e7f6e05bbcd 100644 (file)
@@ -46,7 +46,7 @@ namespace Gtk {
 }
 
 namespace Pango {
-       class Layout;
+       class Container;
 }
 
 class Panner2dWindow;
@@ -63,6 +63,7 @@ class Panner2d : public Gtk::DrawingArea
        int  add_signal (const char* text, const PBD::AngularVector&);
        void move_signal (int which, const PBD::AngularVector&);
        void reset (uint32_t n_inputs);
+       void set_send_drawing_mode (bool);
 
        boost::shared_ptr<ARDOUR::PannerShell> get_panner_shell() const { return panner_shell; }
 
@@ -117,6 +118,7 @@ class Panner2d : public Gtk::DrawingArea
        double  last_width;
        bool    did_move;
        bool    have_elevation;
+       bool    _send_mode;
 
        Target *find_closest_object (gdouble x, gdouble y, bool& is_signal);
 
@@ -127,8 +129,8 @@ class Panner2d : public Gtk::DrawingArea
        void handle_position_change ();
        void label_signals ();
 
-       PBD::ScopedConnectionList connections;
-       PBD::ScopedConnectionList panconnect;
+       PBD::ScopedConnectionList panshell_connections;
+       PBD::ScopedConnectionList panner_connections;
 
        /* cartesian coordinates in GTK units ; adjust to same but on a circle of radius 1.0
           and centered in the middle of our area
@@ -156,10 +158,12 @@ class Panner2dWindow : public ArdourWindow
        Gtk::Adjustment   width_adjustment;
        Gtk::SpinButton   width_spinner;
 
-       PBD::ScopedConnectionList connections;
+       PBD::ScopedConnectionList panshell_connections;
+       PBD::ScopedConnectionList panvalue_connections;
        void set_bypassed();
        void set_width();
 
+       void pannable_handler ();
        void bypass_toggled ();
        void width_changed ();
        bool on_key_press_event (GdkEventKey*);