namespace ArdourCanvas {
class Canvas;
- class Group;
+ class Container;
class Item;
}
virtual void enter_internal_edit_mode () {}
virtual void leave_internal_edit_mode () {}
- ArdourCanvas::Group* canvas_display () { return _canvas_display; }
- ArdourCanvas::Group* ghost_group () { return _ghost_group; }
+ ArdourCanvas::Container* canvas_display () { return _canvas_display; }
+ ArdourCanvas::Container* ghost_group () { return _ghost_group; }
/** @return effective height (taking children into account) in canvas units, or
0 if this TimeAxisView has not yet been shown */
virtual void reset_visual_state ();
- std::pair<TimeAxisView*, double> covers_y_position (double);
+ std::pair<TimeAxisView*, double> covers_y_position (double) const;
+ bool covered_by_y_range (double y0, double y1) const;
virtual void step_height (bool);
virtual void set_selected_regionviews (RegionSelection&) {}
virtual void set_selected_points (PointSelection&) {}
+ virtual void fade_range (TimeSelection&) {}
+
virtual boost::shared_ptr<ARDOUR::Region> find_next_region (framepos_t /*pos*/, ARDOUR::RegionPoint, int32_t /*dir*/) {
return boost::shared_ptr<ARDOUR::Region> ();
}
/* The Standard LHS Controls */
Gtk::HBox controls_hbox;
Gtk::Table controls_table;
+ Gtk::Table name_table;
Gtk::EventBox controls_ebox;
Gtk::VBox controls_vbox;
+ Gtk::VBox name_vbox;
Gtk::VBox time_axis_vbox;
+ Gtk::Frame time_axis_frame;
Gtk::HBox name_hbox;
+ Gtk::HBox top_hbox;
Gtk::Label name_label;
bool _name_editing;
uint32_t height; /* in canvas units */
std::string controls_base_selected_name;
Gtk::Menu* display_menu; /* The standard LHS Track control popup-menus */
TimeAxisView* parent;
- ArdourCanvas::Group* selection_group;
+ ArdourCanvas::Container* selection_group;
+ ArdourCanvas::Container* _ghost_group;
std::list<GhostRegion*> ghosts;
std::list<SelectionRect*> free_selection_rects;
std::list<SelectionRect*> used_selection_rects;
bool _hidden;
bool in_destructor;
Gtk::Menu* _size_menu;
- ArdourCanvas::Group* _canvas_display;
+ ArdourCanvas::Container* _canvas_display;
double _y_position;
PublicEditor& _editor;
double _resize_drag_start;
GdkCursor* _preresize_cursor;
bool _have_preresize_cursor;
- ArdourCanvas::Group* _ghost_group;
bool _ebox_release_can_act;
static uint32_t button_height;