class NamedSelection;
class Session;
class Filter;
- class Crossfade;
class ChanCount;
class MidiOperator;
class Track;
class BundleManager;
class ButtonJoiner;
class ControlPoint;
-class CrossfadeView;
class DragManager;
class GroupedButtons;
class GUIObjectState;
void toggle_measure_visibility ();
void toggle_logo_visibility ();
- /* fades/xfades */
+ /* fades */
void toggle_region_fades (int dir);
void update_region_fade_visibility ();
- bool xfade_visibility() const { return _xfade_visibility; }
- void update_xfade_visibility ();
/* redirect shared ops menu. caller must free returned menu */
RegionView* clicked_regionview;
RegionSelection latest_regionviews;
uint32_t clicked_selection;
- CrossfadeView* clicked_crossfadeview;
ControlPoint* clicked_control_point;
void sort_track_selection (TrackViewList&);
void get_equivalent_regions (RegionView* rv, std::vector<RegionView*> &, PBD::PropertyID) const;
RegionSelection get_equivalent_regions (RegionSelection &, PBD::PropertyID) const;
- std::vector<boost::shared_ptr<ARDOUR::Crossfade> > get_equivalent_crossfades (
- RouteTimeAxisView&, boost::shared_ptr<ARDOUR::Crossfade>, PBD::PropertyID
- ) const;
void mapover_tracks (sigc::slot<void,RouteTimeAxisView&,uint32_t> sl, TimeAxisView*, PBD::PropertyID) const;
void mapover_tracks_with_unique_playlists (sigc::slot<void,RouteTimeAxisView&,uint32_t> sl, TimeAxisView*, PBD::PropertyID) const;
void mapped_use_new_playlist (RouteTimeAxisView&, uint32_t, std::vector<boost::shared_ptr<ARDOUR::Playlist> > const &);
void mapped_use_copy_playlist (RouteTimeAxisView&, uint32_t, std::vector<boost::shared_ptr<ARDOUR::Playlist> > const &);
void mapped_clear_playlist (RouteTimeAxisView&, uint32_t);
- void mapped_get_equivalent_crossfades (
- RouteTimeAxisView&, uint32_t, boost::shared_ptr<ARDOUR::Crossfade>, std::vector<boost::shared_ptr<ARDOUR::Crossfade> >*
- ) const;
void button_selection (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_type);
bool button_release_can_deselect;
void select_all_tracks ();
void select_all_internal_edit (Selection::Operation);
- bool set_selected_control_point_from_click (Selection::Operation op = Selection::Set, bool no_remove=false);
+ bool set_selected_control_point_from_click (bool press, Selection::Operation op = Selection::Set);
void set_selected_track_from_click (bool press, Selection::Operation op = Selection::Set, bool no_remove=false);
void set_selected_track_as_side_effect (Selection::Operation op);
bool set_selected_regionview_from_click (bool press, Selection::Operation op = Selection::Set);
Gtk::Menu track_context_menu;
Gtk::Menu track_region_context_menu;
Gtk::Menu track_selection_context_menu;
- Gtk::Menu track_crossfade_context_menu;
Gtk::MenuItem* region_edit_menu_split_item;
Gtk::MenuItem* region_edit_menu_split_multichannel_item;
Gtk::Menu* build_track_context_menu ();
Gtk::Menu* build_track_bus_context_menu ();
Gtk::Menu* build_track_region_context_menu ();
- Gtk::Menu* build_track_crossfade_context_menu ();
Gtk::Menu* build_track_selection_context_menu ();
void add_dstream_context_items (Gtk::Menu_Helpers::MenuList&);
void add_bus_context_items (Gtk::Menu_Helpers::MenuList&);
void add_region_context_items (Gtk::Menu_Helpers::MenuList&, boost::shared_ptr<ARDOUR::Track>);
- void add_crossfade_context_items (AudioStreamView*, boost::shared_ptr<ARDOUR::Crossfade>, Gtk::Menu_Helpers::MenuList&, bool many);
void add_selection_context_items (Gtk::Menu_Helpers::MenuList&);
Gtk::MenuItem* _popup_region_menu_item;
void control_vertical_zoom_out_all ();
void control_vertical_zoom_in_selected ();
void control_vertical_zoom_out_selected ();
+ void control_step_tracks_up ();
+ void control_step_tracks_down ();
void control_view (uint32_t);
void control_scroll (float);
void control_select (uint32_t rid, Selection::Operation);
Gtk::Menu fade_context_menu;
void popup_fade_context_menu (int, int, ArdourCanvas::Item*, ItemType);
+ Gtk::Menu xfade_in_context_menu;
+ Gtk::Menu xfade_out_context_menu;
+ void popup_xfade_in_context_menu (int, int, ArdourCanvas::Item*, ItemType);
+ void popup_xfade_out_context_menu (int, int, ArdourCanvas::Item*, ItemType);
+ void fill_xfade_menu (Gtk::Menu_Helpers::MenuList& items, bool start);
+
void set_fade_in_shape (ARDOUR::FadeShape);
void set_fade_out_shape (ARDOUR::FadeShape);
bool canvas_selection_rect_event (GdkEvent* event,ArdourCanvas::Item*, SelectionRect*);
bool canvas_selection_start_trim_event (GdkEvent* event,ArdourCanvas::Item*, SelectionRect*);
bool canvas_selection_end_trim_event (GdkEvent* event,ArdourCanvas::Item*, SelectionRect*);
- bool canvas_crossfade_view_event (GdkEvent* event,ArdourCanvas::Item*, CrossfadeView*);
+ bool canvas_start_xfade_event (GdkEvent* event,ArdourCanvas::Item*, AudioRegionView*);
+ bool canvas_end_xfade_event (GdkEvent* event,ArdourCanvas::Item*, AudioRegionView*);
bool canvas_fade_in_event (GdkEvent* event,ArdourCanvas::Item*, AudioRegionView*);
bool canvas_fade_in_handle_event (GdkEvent* event,ArdourCanvas::Item*, AudioRegionView*);
bool canvas_fade_out_event (GdkEvent* event,ArdourCanvas::Item*, AudioRegionView*);
void nudge_track (bool use_edit_point, bool forwards);
- /* xfades */
-
- bool _xfade_visibility;
-
#ifdef WITH_CMT
void handle_new_imageframe_time_axis_view(const std::string & track_name, void* src) ;
void handle_new_imageframe_marker_time_axis_view(const std::string & track_name, TimeAxisView* marked_track) ;
ImageFrameSocketHandler* image_socket_listener ;
#endif
- void toggle_xfade_active (RouteTimeAxisView *, boost::weak_ptr<ARDOUR::Crossfade>);
- void toggle_xfade_length (RouteTimeAxisView *, boost::weak_ptr<ARDOUR::Crossfade>);
- void edit_xfade (boost::weak_ptr<ARDOUR::Crossfade>);
- void xfade_edit_left_region ();
- void xfade_edit_right_region ();
-
static const int32_t default_width = 995;
static const int32_t default_height = 765;
gint left_automation_track ();
void reset_canvas_action_sensitivity (bool);
- void set_gain_envelope_visibility (bool);
- void set_region_gain_visibility (RegionView*, bool);
+ void set_gain_envelope_visibility ();
+ void set_region_gain_visibility (RegionView*);
void toggle_gain_envelope_active ();
void reset_region_gain_envelopes ();
void setup_fade_images ();
std::map<ARDOUR::FadeShape, Gtk::Image*> _fade_in_images;
std::map<ARDOUR::FadeShape, Gtk::Image*> _fade_out_images;
+ std::map<ARDOUR::FadeShape, Gtk::Image*> _xfade_in_images;
+ std::map<ARDOUR::FadeShape, Gtk::Image*> _xfade_out_images;
Gtk::MenuItem& action_menu_item (std::string const &);
void action_pre_activated (Glib::RefPtr<Gtk::Action> const &);