X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Feditor_summary.h;h=507295cfffbad03198b0ceccf5d8905bc2700824;hb=154f9825ff72d691ba550de573948424b81a09a6;hp=0a9a5b960ce193cfc3a407ebeab8486e9fef195e;hpb=255d633eddc1d4b8242dd1c4601ace9ce637bccd;p=ardour.git diff --git a/gtk2_ardour/editor_summary.h b/gtk2_ardour/editor_summary.h index 0a9a5b960c..507295cfff 100644 --- a/gtk2_ardour/editor_summary.h +++ b/gtk2_ardour/editor_summary.h @@ -65,6 +65,8 @@ private: bool on_enter_notify_event (GdkEventCrossing*); bool on_leave_notify_event (GdkEventCrossing*); + void reset_to_extents (); + void centre_on_click (GdkEventButton *); void render (Cairo::RefPtr const&, cairo_rectangle_t*); void render_region (RegionView*, cairo_t*, double) const; @@ -73,25 +75,25 @@ private: void set_editor (std::pair); void set_editor_x (double); void set_editor_x (std::pair); - void playhead_position_changed (framepos_t); + void playhead_position_changed (samplepos_t); double editor_y_to_summary (double) const; Position get_position (double, double) const; void set_cursor (Position); void route_gui_changed (PBD::PropertyChange const&); bool suspending_editor_updates () const; - double playhead_frame_to_position (framepos_t) const; - framepos_t position_to_playhead_frame_to_position (double pos) const; - void set_overlays_dirty (int, int, int, int); + double playhead_sample_to_position (samplepos_t) const; + samplepos_t position_to_playhead_sample_to_position (double pos) const; + void set_overlays_dirty_rect (int, int, int, int); void summary_zoom_step ( int steps ); - framepos_t _start; ///< start frame of the overview - framepos_t _end; ///< end frame of the overview + samplepos_t _start; ///< start sample of the overview + samplepos_t _end; ///< end sample of the overview - /** fraction of the session length by which the overview size should extend past the start and end markers */ - double _overhang_fraction; + samplepos_t _leftmost; ///< the earliest sample we ever viewed + samplepos_t _rightmost; ///< the latest sample we ever viewed - double _x_scale; ///< pixels per frame for the x axis of the pixmap + double _x_scale; ///< pixels per sample for the x axis of the pixmap double _track_height; double _last_playhead; @@ -101,10 +103,15 @@ private: Position _start_position; - bool _begin_dragging; - bool _move_dragging; - bool _moved; + + //used for zooming + int _last_mx; + int _last_my; + int _last_dx; + int _last_dy; + int _last_y_delta; + std::pair _view_rectangle_x; std::pair _view_rectangle_y; @@ -115,9 +122,6 @@ private: bool _zoom_trim_dragging; Position _zoom_trim_position; - bool _zoom_dragging; - double _zoom_last_y; - bool _old_follow_playhead; cairo_surface_t* _image; void render_background_image ();