20 #ifndef __ardour_gtk_time_axis_h__
21 #define __ardour_gtk_time_axis_h__
26 #include <gtkmm/box.h>
27 #include <gtkmm/fixed.h>
28 #include <gtkmm/frame.h>
29 #include <gtkmm/drawingarea.h>
30 #include <gtkmm/eventbox.h>
31 #include <gtkmm/table.h>
32 #include <gtkmm/entry.h>
33 #include <gtkmm/label.h>
34 #include <gtkmm/sizegroup.h>
45 #include "canvas/line.h"
128 virtual guint32
show_at (
double y,
int& nth, Gtk::VBox *
parent);
129 virtual void hide ();
131 bool touched (
double top,
double bot);
213 typedef std::vector<boost::shared_ptr<TimeAxisView> >
Children;
static PBD::Signal1< void, TimeAxisView * > CatchDeletion
double _resize_drag_start
bool _have_preresize_cursor
virtual bool can_edit_name() const
virtual bool paste(ARDOUR::framepos_t pos, const Selection &selection, PasteContext &ctx)
virtual void set_selected_points(PointSelection &)
virtual void selection_click(GdkEventButton *)
virtual bool controls_ebox_button_press(GdkEventButton *)
virtual guint32 show_at(double y, int &nth, Gtk::VBox *parent)
virtual bool handle_display_menu_map_event(GdkEventAny *)
void remove_ghost(RegionView *)
void conditionally_add_to_selection()
PublicEditor & editor() const
std::pair< TimeAxisView *, double > covers_y_position(double) const
uint32_t effective_height() const
SelectionRect * get_selection_rect(uint32_t id)
TimeAxisView * get_parent()
static void setup_sizes()
LIBARDOUR_API PBD::PropertyDescriptor< layer_t > layer
static unsigned int name_width_px
void order_selection_trims(ArdourCanvas::Item *item, bool put_start_on_top)
bool touched(double top, double bot)
virtual void set_height(uint32_t h, TrackHeightMode m=OnlySelf)
virtual void hide_timestretch()
virtual bool controls_ebox_button_release(GdkEventButton *)
bool _ebox_release_can_act
virtual bool controls_ebox_scroll(GdkEventScroll *)
bool name_entry_key_press(GdkEventKey *ev)
Lists of selected things.
std::vector< boost::shared_ptr< TimeAxisView > > Children
bool name_entry_focus_out(GdkEventFocus *ev)
virtual StreamView * view() const
Representation of the interface of the Editor class.
virtual bool controls_ebox_leave(GdkEventCrossing *)
Gtk::Table controls_table
virtual boost::shared_ptr< ARDOUR::Region > find_next_region(framepos_t, ARDOUR::RegionPoint, int32_t)
virtual void step_height(bool)
uint32_t _effective_height
LIBARDOUR_API PBD::PropertyDescriptor< framepos_t > start
uint32_t current_height() const
virtual void fade_range(TimeSelection &)
Gtk::Frame time_axis_frame
bool name_entry_key_release(GdkEventKey *ev)
double y_position() const
virtual void name_entry_changed()
virtual void reshow_selection(TimeSelection &)
virtual void popup_display_menu(guint32 when)
virtual void build_display_menu()
virtual void set_selected_regionviews(RegionSelection &)
std::string controls_base_selected_name
ArdourCanvas::Container * _canvas_display
virtual void show_timestretch(framepos_t start, framepos_t end, int layers, int layer)
static Glib::RefPtr< Gtk::SizeGroup > controls_meters_size_group
void idle_resize(int32_t)
std::list< SelectionRect * > free_selection_rects
ArdourCanvas::Container * _ghost_group
void add_ghost(RegionView *)
Gtk::Fixed scroomer_placeholder
virtual void first_idle()
virtual void get_selectables(ARDOUR::framepos_t, ARDOUR::framepos_t, double, double, std::list< Selectable * > &, bool within=false)
ArdourCanvas::Container * canvas_display()
virtual void show_selection(TimeSelection &)
bool is_child(TimeAxisView *)
void set_height_enum(Height, bool apply_to_selection=false)
ArdourCanvas::Container * ghost_group()
bool covered_by_y_range(double y0, double y1) const
static int const _max_order
virtual void get_inverted_selectables(Selection &, std::list< Selectable * > &results)
virtual void cut_copy_clear(Selection &, Editing::CutCopyOp)
std::list< GhostRegion * > ghosts
virtual void reset_visual_state()
void set_parent(TimeAxisView &p)
std::list< SelectionRect * > used_selection_rects
Glib::RefPtr< Gtk::SizeGroup > controls_button_size_group
ArdourCanvas::Container * selection_group
virtual void set_samples_per_pixel(double)
GdkCursor * _preresize_cursor
void add_child(boost::shared_ptr< TimeAxisView >)
ArdourCanvas::Line * _canvas_separator
virtual bool controls_ebox_motion(GdkEventMotion *)
virtual void hide_selection()
static uint32_t extra_height
virtual LayerDisplay layer_display() const
std::string controls_base_unselected_name
TimeAxisView(ARDOUR::Session *sess, PublicEditor &ed, TimeAxisView *parent, ArdourCanvas::Canvas &canvas)
static uint32_t preset_height(Height)
Gtk::VBox * control_parent
virtual boost::shared_ptr< ARDOUR::Playlist > playlist() const
virtual ARDOUR::RouteGroup * route_group() const
bool maybe_set_cursor(int y)
virtual void remove_child(boost::shared_ptr< TimeAxisView >)
static uint32_t button_height
Gtk::EventBox controls_ebox
static Glib::RefPtr< Gtk::SizeGroup > midi_scroomer_size_group
void erase_ghost(GhostRegion *)
Children get_child_list()