most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas...
[ardour.git] / libs / gtkmm2ext / gtkmm2ext / pixfader.h
index bb4176240a678193acb8189df7aa6866ebb791d9..519e1c9e1e6acf657d1f77a33c4b300d9657c26c 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: fastmeter.h 570 2006-06-07 21:21:21Z sampo $
 */
 
 #ifndef __gtkmm2ext_pixfader_h__
@@ -31,7 +30,7 @@ namespace Gtkmm2ext {
 
 class PixFader : public Gtk::DrawingArea {
   public:
-       PixFader (Glib::RefPtr<Gdk::Pixbuf> belt_image, Gtk::Adjustment& adjustment);
+       PixFader (Glib::RefPtr<Gdk::Pixbuf> belt_image, Gtk::Adjustment& adjustment, int orientation);
        virtual ~PixFader ();
        
   protected:
@@ -45,23 +44,32 @@ class PixFader : public Gtk::DrawingArea {
        bool on_motion_notify_event (GdkEventMotion*);
        bool on_scroll_event (GdkEventScroll* ev);
 
-  private:  
+       enum Orientation {
+               VERT=1,
+               HORIZ=2,
+       };
+
+  private:
        Glib::RefPtr<Gdk::Pixbuf> pixbuf;
-       gint pixheight;
+       int span, girth;
+       int _orien;
 
        GdkRectangle view;
 
        GdkWindow* grab_window;
-       double grab_y;
+       double grab_loc;
        double grab_start;
        int last_drawn;
        bool dragging;
        float default_value;
-       int unity_y;
+       int unity_loc;
 
        void adjustment_changed ();
 
-       int display_height ();
+       int display_span ();
+
+       static int fine_scale_modifier;
+       static int extra_fine_scale_modifier;
 };