X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Feditor.h;h=27e20e698ba02ad171d323a5b8b3ab0dc9d1cbfb;hb=7110f48619af3b93fd2b1e2893462a63f6bf96fd;hp=c4203efa1c97cc8f89efce52bdc61e64d79c0a8a;hpb=7898aabcaa08659cd0bee5bba61df4503b7fadc7;p=ardour.git diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h index c4203efa1c..27e20e698b 100644 --- a/gtk2_ardour/editor.h +++ b/gtk2_ardour/editor.h @@ -228,6 +228,7 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD void new_region_from_selection (); void separate_regions_between (const TimeSelection&); void separate_region_from_selection (); + void separate_under_selected_regions (); void separate_region_from_punch (); void separate_region_from_loop (); void separate_regions_using_location (ARDOUR::Location&); @@ -463,6 +464,7 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD static Gdk::Cursor* fade_out_cursor; static Gdk::Cursor* selector_cursor; static Gdk::Cursor* grabber_cursor; + static Gdk::Cursor* grabber_note_cursor; static Gdk::Cursor* grabber_edit_point_cursor; static Gdk::Cursor* zoom_cursor; static Gdk::Cursor* time_fx_cursor; @@ -921,10 +923,10 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD void select_all_selectables_between (bool within); void select_range_between (); - boost::shared_ptr find_next_region (nframes64_t, ARDOUR::RegionPoint, int32_t dir, TrackViewList&, TimeAxisView ** = 0); - nframes64_t find_next_region_boundary (nframes64_t, int32_t dir, const TrackViewList&); + boost::shared_ptr find_next_region (ARDOUR::framepos_t, ARDOUR::RegionPoint, int32_t dir, TrackViewList&, TimeAxisView ** = 0); + ARDOUR::framepos_t find_next_region_boundary (ARDOUR::framepos_t, int32_t dir, const TrackViewList&); - std::vector region_boundary_cache; + std::vector region_boundary_cache; void build_region_boundary_cache (); Gtk::HBox top_hbox; @@ -1124,6 +1126,11 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD void cut (); void copy (); void paste (float times); + + void place_transient (); + void remove_transient (ArdourCanvas::Item* item); + void snap_regions_to_grid (); + void close_region_gaps (); int get_prefix (float&, bool&); @@ -1364,6 +1371,7 @@ public: bool canvas_frame_handle_event (GdkEvent* event,ArdourCanvas::Item*, RegionView*); bool canvas_region_view_name_highlight_event (GdkEvent* event,ArdourCanvas::Item*, RegionView*); bool canvas_region_view_name_event (GdkEvent* event,ArdourCanvas::Item*, RegionView*); + bool canvas_feature_line_event (GdkEvent* event, ArdourCanvas::Item*, RegionView*); bool canvas_stream_view_event (GdkEvent* event,ArdourCanvas::Item*, RouteTimeAxisView*); bool canvas_marker_event (GdkEvent* event,ArdourCanvas::Item*, Marker*); bool canvas_zoom_rect_event (GdkEvent* event,ArdourCanvas::Item*); @@ -1456,7 +1464,7 @@ public: void marker_menu_edit (); void marker_menu_remove (); void marker_menu_rename (); - void marker_menu_lock (bool yn); + void toggle_marker_menu_lock (); void marker_menu_hide (); void marker_menu_loop_range (); void marker_menu_select_all_selectables_using_range (); @@ -1478,7 +1486,7 @@ public: void transport_marker_context_menu (GdkEventButton*, ArdourCanvas::Item*); void new_transport_marker_context_menu (GdkEventButton*, ArdourCanvas::Item*); void build_range_marker_menu (bool loop_or_punch); - void build_marker_menu (bool); + void build_marker_menu (bool, ARDOUR::Location *); void build_tempo_or_meter_marker_menu (bool); void build_new_transport_marker_menu (); void dynamic_cast_marker_object (void*, MeterMarker**, TempoMarker**) const; @@ -1578,10 +1586,8 @@ public: Glib::RefPtr zoom_focus_action (Editing::ZoomFocus); - Gtk::HBox zoom_box; - Gtk::HBox track_zoom_box; - Gtk::VBox zoom_vbox; - + Gtk::HBox _zoom_box; + Gtkmm2ext::TearOff* _zoom_tearoff; void zoom_adjustment_changed(); void setup_toolbar (); @@ -1928,6 +1934,9 @@ public: sigc::connection step_timeout; TimeAxisView* entered_track; + /** If the mouse is over a RegionView or one of its child canvas items, this is set up + to point to the RegionView. Otherwise it is 0. + */ RegionView* entered_regionview; @@ -2028,6 +2037,7 @@ public: EditorGroupTabs* _group_tabs; void fit_route_group (ARDOUR::RouteGroup *); + void step_edit_status_change (bool); void start_step_editing (); void stop_step_editing (); bool check_step_edit (); @@ -2061,6 +2071,7 @@ public: friend class EditorGroupTabs; friend class EditorRoutes; + friend class RhythmFerret; }; #endif /* __ardour_editor_h__ */