do not pass a non-zero offset to plugins AFTER the first call to connect_and_run...
[ardour.git] / gtk2_ardour / panner2d.h
index d1bbfb9add85a4b9b16fa67583cd613b29eda93a..fb4929ad2d30685602fa6e694132b485632d5001 100644 (file)
@@ -15,7 +15,6 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id$
 */
 
 #ifndef __ardour_panner_2d_h__
@@ -24,7 +23,9 @@
 #include <sys/types.h>
 #include <map>
 #include <string>
-#include <gtkmm.h>
+
+#include <glibmm/refptr.h>
+#include <gtkmm/drawingarea.h>
 
 using std::map;
 using std::string;
@@ -33,10 +34,19 @@ namespace ARDOUR {
        class Panner;
 }
 
+namespace Gtk {
+       class Menu;
+       class CheckMenuItem;
+}
+
+namespace Pango {
+       class Layout;
+}
+
 class Panner2d : public Gtk::DrawingArea
 {
   public:
-       Panner2d (ARDOUR::Panner&, int32_t width, int32_t height);
+       Panner2d (ARDOUR::Panner&, int32_t height);
        ~Panner2d ();
        
        int puck_position (int which_puck, float& x, float& y);
@@ -67,7 +77,7 @@ class Panner2d : public Gtk::DrawingArea
        bool on_button_press_event (GdkEventButton *);
        bool on_button_release_event (GdkEventButton *);
        bool on_motion_notify_event (GdkEventMotion *);
-       void on_size_allocate (Gtk::Allocation alloc);
+       void on_size_allocate (Gtk::Allocation& alloc);
 
   private:
        struct Target {
@@ -84,6 +94,7 @@ class Panner2d : public Gtk::DrawingArea
        ARDOUR::Panner& panner;
        Gtk::Menu* context_menu;
        Gtk::CheckMenuItem* bypass_menu_item;
+       Glib::RefPtr<Pango::Layout> layout;
 
        typedef std::map<int,Target *> Targets;
        Targets targets;