return 48;
}
- double pixels_per_time_unit () const {
+ boost::optional<double> pixels_per_time_unit () const {
return _pixels_per_time_unit;
}
void setup_pixels_per_time_unit ();
+ void set_snap (bool s) {
+ _snap = s;
+ }
+
+ bool snap () const {
+ return _snap;
+ }
+
private:
void paint ();
void left_down (wxMouseEvent &);
void right_down (wxMouseEvent &);
void mouse_moved (wxMouseEvent &);
void playlist_changed ();
+ void playlist_content_changed (int);
void resized ();
void assign_tracks ();
void set_position_from_event (wxMouseEvent &);
ViewList _views;
boost::shared_ptr<TimeAxisView> _time_axis_view;
int _tracks;
- double _pixels_per_time_unit;
+ boost::optional<double> _pixels_per_time_unit;
bool _left_down;
wxPoint _down_point;
boost::shared_ptr<ContentView> _down_view;
Time _down_view_position;
bool _first_move;
ContentMenu _menu;
+ bool _snap;
- boost::signals2::scoped_connection _playlist_connection;
+ boost::signals2::scoped_connection _playlist_changed_connection;
+ boost::signals2::scoped_connection _playlist_content_changed_connection;
};