Ardour  9.0-pre0-582-g084a23a80d
StripableTimeAxisView Class Referenceabstract

#include <stripable_time_axis.h>

Inheritance diagram for StripableTimeAxisView:
[legend]

Public Types

typedef std::map< Evoral::Parameter, std::shared_ptr< AutomationTimeAxisView > > AutomationTracks
 
- Public Types inherited from TimeAxisView
enum  TrackHeightMode { OnlySelf , TotalHeight , HeightPerLane }
 
typedef std::vector< std::shared_ptr< TimeAxisView > > Children
 

Public Member Functions

 StripableTimeAxisView (PublicEditor &, ARDOUR::Session *, ArdourCanvas::Canvas &canvas)
 
virtual ~StripableTimeAxisView ()
 
void set_stripable (std::shared_ptr< ARDOUR::Stripable >)
 
std::shared_ptr< ARDOUR::Stripablestripable () const
 
const AutomationTracksautomation_tracks () const
 
virtual Gtk::CheckMenuItemautomation_child_menu_item (Evoral::Parameter)
 
virtual void create_automation_child (const Evoral::Parameter &param, bool show)=0
 
virtual std::shared_ptr< AutomationTimeAxisViewautomation_child (Evoral::Parameter param, PBD::ID ctrl_id=PBD::ID(0))
 
virtual std::shared_ptr< AutomationLineautomation_child_by_alist_id (PBD::ID)
 
void request_redraw ()
 
virtual void show_all_automation (bool apply_to_selection=false)
 
virtual void show_existing_automation (bool apply_to_selection=false)
 
virtual void hide_all_automation (bool apply_to_selection=false)
 
- Public Member Functions inherited from TimeAxisView
 TimeAxisView (ARDOUR::Session *sess, PublicEditor &ed, TimeAxisView *parent, ArdourCanvas::Canvas &canvas)
 
virtual ~TimeAxisView ()
 
int order () const
 
ArdourCanvas::Containercanvas_display ()
 
ArdourCanvas::Containerghost_group ()
 
uint32_t effective_height () const
 
double y_position () const
 
PublicEditoreditor () const
 
uint32_t current_height () const
 
void idle_resize (int32_t)
 
virtual guint32 show_at (double y, int &nth, Gtk::VBox *parent)
 
virtual void hide ()
 
bool touched (double top, double bot)
 
bool hidden () const
 
void set_selected (bool)
 
virtual bool selectable () const
 
virtual void entered ()
 
virtual void exited ()
 
virtual void set_height (uint32_t h, TrackHeightMode m=OnlySelf, bool from_idle=false)
 
void set_height_enum (Height, bool apply_to_selection=false)
 
void reset_height ()
 
virtual void reset_visual_state ()
 
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 ARDOUR::RouteGrouproute_group () const
 
virtual std::shared_ptr< ARDOUR::Playlistplaylist () const
 
virtual void show_selection (TimeSelection &)
 
virtual void hide_selection ()
 
virtual void reshow_selection (TimeSelection &)
 
virtual void show_timestretch (Temporal::timepos_t const &start, Temporal::timepos_t const &end, int layers, int layer)
 
virtual void hide_timestretch ()
 
virtual void cut_copy_clear (Selection &, Editing::CutCopyOp)
 
virtual bool paste (Temporal::timepos_t const &pos, const Selection &selection, PasteContext &ctx)
 
virtual void set_selected_regionviews (RegionSelection &)
 
virtual void set_selected_points (PointSelection &)
 
virtual void fade_range (TimeSelection &)
 
virtual std::shared_ptr< ARDOUR::Regionfind_next_region (ARDOUR::timepos_t const &, ARDOUR::RegionPoint, int32_t)
 
void order_selection_trims (ArdourCanvas::Item *item, bool put_start_on_top)
 
void _get_selectables (Temporal::timepos_t const &, Temporal::timepos_t const &, double, double, std::list< Selectable * > &, bool within)
 
void get_inverted_selectables (Selection &, std::list< Selectable * > &results)
 
virtual void get_regionviews_at_or_after (Temporal::timepos_t const &, RegionSelection &)
 
void add_ghost (RegionView *)
 
void remove_ghost (RegionView *)
 
void erase_ghost (GhostRegion *)
 
virtual void first_idle ()
 
TimeAxisViewget_parent ()
 
void set_parent (TimeAxisView &p)
 
virtual LayerDisplay layer_display () const
 
virtual StreamViewview () const
 
Children get_child_list () const
 
- Public Member Functions inherited from AxisView
virtual Gdk::Color color () const =0
 
virtual std::shared_ptr< ARDOUR::AutomationControlcontrol () const
 
virtual std::string state_id () const =0
 
std::string gui_property (const std::string &property_name) const
 
bool get_gui_property (const std::string &property_name, std::string &value) const
 
template<typename T >
bool get_gui_property (const std::string &property_name, T &value) const
 
template<typename T >
bool get_gui_property (const std::string &state_id, const std::string &property_name, T &value) const
 
void set_gui_property (const std::string &property_name, const std::string &value)
 
void remove_gui_property (const std::string &property_name)
 
void set_gui_property (const std::string &property_name, const char *value)
 
template<typename T >
void set_gui_property (const std::string &property_name, const T &value)
 
void cleanup_gui_properties ()
 
virtual bool marked_for_display () const
 
virtual bool set_marked_for_display (bool)
 
void clear_property_cache ()
 
- Public Member Functions inherited from PBD::ScopedConnectionList
 ScopedConnectionList ()
 
 ScopedConnectionList (const ScopedConnectionList &)=delete
 
ScopedConnectionListoperator= (const ScopedConnectionList &)=delete
 
virtual ~ScopedConnectionList ()
 
void add_connection (const UnscopedConnection &c)
 
void drop_connections ()
 
- Public Member Functions inherited from ARDOUR::SessionHandlePtr
 SessionHandlePtr (ARDOUR::Session *s)
 
 SessionHandlePtr ()
 
virtual ~SessionHandlePtr ()
 
virtual void set_session (ARDOUR::Session *)
 
virtual ARDOUR::Sessionsession () const
 
- Public Member Functions inherited from Selectable
 Selectable ()
 
virtual ~Selectable ()
 
virtual bool selected () const
 
- Public Member Functions inherited from SelectableOwner
 SelectableOwner ()
 
virtual ~SelectableOwner ()
 
void get_selectables (Temporal::timepos_t const &start, Temporal::timepos_t const &end, double x, double y, std::list< Selectable * > &sl, bool within=false)
 

Protected Types

typedef std::map< Evoral::Parameter, Gtk::CheckMenuItem * > ParameterMenuMap
 

Protected Member Functions

void reset_samples_per_pixel ()
 
virtual void set_samples_per_pixel (double)
 
void add_automation_child (Evoral::Parameter param, std::shared_ptr< AutomationTimeAxisView > track, bool show=true)
 
virtual void create_gain_automation_child (const Evoral::Parameter &, bool)=0
 
virtual void create_trim_automation_child (const Evoral::Parameter &, bool)=0
 
virtual void create_mute_automation_child (const Evoral::Parameter &, bool)=0
 
void automation_track_hidden (Evoral::Parameter param)
 
void update_gain_track_visibility ()
 
void update_trim_track_visibility ()
 
void update_mute_track_visibility ()
 
- Protected Member Functions inherited from TimeAxisView
virtual bool can_edit_name () const
 
void begin_name_edit ()
 
void end_name_edit (std::string, int)
 
virtual std::string name () const
 
virtual bool name_entry_changed (std::string const &)
 
virtual bool controls_ebox_button_release (GdkEventButton *)
 
virtual bool controls_ebox_scroll (GdkEventScroll *)
 
virtual bool controls_ebox_button_press (GdkEventButton *)
 
virtual bool controls_ebox_motion (GdkEventMotion *)
 
virtual bool controls_ebox_leave (GdkEventCrossing *)
 
virtual void build_display_menu ()
 
virtual bool handle_display_menu_map_event (GdkEventAny *)
 
bool is_child (TimeAxisView *)
 
virtual bool propagate_time_selection () const
 
virtual void remove_child (std::shared_ptr< TimeAxisView >)
 
void add_child (std::shared_ptr< TimeAxisView >)
 
virtual void selection_click (GdkEventButton *)
 
void color_handler ()
 
void parameter_changed (std::string const &)
 
void conditionally_add_to_selection ()
 
void build_size_menu ()
 
- Protected Member Functions inherited from AxisView
 AxisView ()
 
virtual ~AxisView ()
 
void set_name_ellipsize_mode ()
 
- Protected Member Functions inherited from ARDOUR::SessionHandlePtr
virtual void session_going_away ()
 

Protected Attributes

std::shared_ptr< ARDOUR::Stripable_stripable
 
std::shared_ptr< AutomationTimeAxisViewgain_track
 
std::shared_ptr< AutomationTimeAxisViewtrim_track
 
std::shared_ptr< AutomationTimeAxisViewmute_track
 
ParameterMenuMap _main_automation_menu_map
 
Gtk::CheckMenuItemgain_automation_item
 
Gtk::CheckMenuItemtrim_automation_item
 
Gtk::CheckMenuItemmute_automation_item
 
AutomationTracks _automation_tracks
 
ArdourCanvas::Canvasparent_canvas
 
bool no_redraw
 
- Protected Attributes inherited from TimeAxisView
Gtk::Table controls_table
 
Glib::RefPtr< Gtk::SizeGroupcontrols_button_size_group
 
Gtk::EventBox controls_ebox
 
Gtk::VBox controls_vbox
 
Gtk::VBox time_axis_vbox
 
Gtk::HBox time_axis_hbox
 
Gtk::Frame time_axis_frame
 
Gtk::HBox top_hbox
 
Gtk::Fixed scroomer_placeholder
 
bool _name_editing
 
uint32_t height
 
std::string controls_base_unselected_name
 
std::string controls_base_selected_name
 
Gtk::Menudisplay_menu
 
TimeAxisViewparent
 
ArdourCanvas::Containerselection_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::Line_canvas_separator
 
ArdourCanvas::Container_canvas_display
 
double _y_position
 
PublicEditor_editor
 
Children children
 
- Protected Attributes inherited from AxisView
Gtk::Label name_label
 
Gtk::Label inactive_label
 
Gtk::Table inactive_table
 
std::unordered_map< std::string, std::string > property_hashtable
 
- Protected Attributes inherited from ARDOUR::SessionHandlePtr
ARDOUR::Session_session
 
PBD::ScopedConnectionList _session_connections
 
- Protected Attributes inherited from Selectable
bool _selected
 

Additional Inherited Members

- Static Public Member Functions inherited from TimeAxisView
static void setup_sizes ()
 
static int max_order ()
 
static uint32_t preset_height (Height)
 
- Static Public Member Functions inherited from AxisView
static GUIObjectStategui_object_state ()
 
static Gdk::Color round_robin_palette_color ()
 
- Public Attributes inherited from AxisView
sigc::signal< void > Hiding
 
- Static Public Attributes inherited from TimeAxisView
static PBD::Signal< void(TimeAxisView *)> CatchDeletion
 
- Static Protected Attributes inherited from TimeAxisView
static Glib::RefPtr< Gtk::SizeGroupcontrols_meters_size_group
 
static Glib::RefPtr< Gtk::SizeGroupmidi_scroomer_size_group
 
static unsigned int name_width_px
 

Detailed Description

Definition at line 24 of file stripable_time_axis.h.

Member Typedef Documentation

◆ AutomationTracks

Definition at line 33 of file stripable_time_axis.h.

◆ ParameterMenuMap

Constructor & Destructor Documentation

◆ StripableTimeAxisView()

StripableTimeAxisView::StripableTimeAxisView ( PublicEditor ,
ARDOUR::Session ,
ArdourCanvas::Canvas canvas 
)

◆ ~StripableTimeAxisView()

virtual StripableTimeAxisView::~StripableTimeAxisView ( )
virtual

Member Function Documentation

◆ add_automation_child()

void StripableTimeAxisView::add_automation_child ( Evoral::Parameter  param,
std::shared_ptr< AutomationTimeAxisView track,
bool  show = true 
)
protected

◆ automation_child()

virtual std::shared_ptr<AutomationTimeAxisView> StripableTimeAxisView::automation_child ( Evoral::Parameter  param,
PBD::ID  ctrl_id = PBD::ID(0) 
)
virtual

Reimplemented in RouteTimeAxisView.

◆ automation_child_by_alist_id()

virtual std::shared_ptr<AutomationLine> StripableTimeAxisView::automation_child_by_alist_id ( PBD::ID  )
virtual

Reimplemented in RouteTimeAxisView.

◆ automation_child_menu_item()

virtual Gtk::CheckMenuItem* StripableTimeAxisView::automation_child_menu_item ( Evoral::Parameter  )
virtual

Reimplemented in RouteTimeAxisView, and MidiTimeAxisView.

◆ automation_track_hidden()

void StripableTimeAxisView::automation_track_hidden ( Evoral::Parameter  param)
protected

◆ automation_tracks()

const AutomationTracks& StripableTimeAxisView::automation_tracks ( ) const
inline

Definition at line 34 of file stripable_time_axis.h.

◆ create_automation_child()

virtual void StripableTimeAxisView::create_automation_child ( const Evoral::Parameter param,
bool  show 
)
pure virtual

◆ create_gain_automation_child()

virtual void StripableTimeAxisView::create_gain_automation_child ( const Evoral::Parameter ,
bool   
)
protectedpure virtual

Implemented in VCATimeAxisView, and RouteTimeAxisView.

◆ create_mute_automation_child()

virtual void StripableTimeAxisView::create_mute_automation_child ( const Evoral::Parameter ,
bool   
)
protectedpure virtual

Implemented in VCATimeAxisView, and RouteTimeAxisView.

◆ create_trim_automation_child()

virtual void StripableTimeAxisView::create_trim_automation_child ( const Evoral::Parameter ,
bool   
)
protectedpure virtual

Implemented in VCATimeAxisView, and RouteTimeAxisView.

◆ hide_all_automation()

virtual void StripableTimeAxisView::hide_all_automation ( bool  apply_to_selection = false)
virtual

◆ request_redraw()

void StripableTimeAxisView::request_redraw ( )

◆ reset_samples_per_pixel()

void StripableTimeAxisView::reset_samples_per_pixel ( )
protected

◆ set_samples_per_pixel()

virtual void StripableTimeAxisView::set_samples_per_pixel ( double  )
protectedvirtual

Reimplemented from TimeAxisView.

Reimplemented in RouteTimeAxisView.

◆ set_stripable()

void StripableTimeAxisView::set_stripable ( std::shared_ptr< ARDOUR::Stripable )

◆ show_all_automation()

virtual void StripableTimeAxisView::show_all_automation ( bool  apply_to_selection = false)
virtual

◆ show_existing_automation()

virtual void StripableTimeAxisView::show_existing_automation ( bool  apply_to_selection = false)
virtual

◆ stripable()

std::shared_ptr<ARDOUR::Stripable> StripableTimeAxisView::stripable ( ) const
inlinevirtual

Implements AxisView.

Reimplemented in VCATimeAxisView.

Definition at line 31 of file stripable_time_axis.h.

◆ update_gain_track_visibility()

void StripableTimeAxisView::update_gain_track_visibility ( )
protected

◆ update_mute_track_visibility()

void StripableTimeAxisView::update_mute_track_visibility ( )
protected

◆ update_trim_track_visibility()

void StripableTimeAxisView::update_trim_track_visibility ( )
protected

Member Data Documentation

◆ _automation_tracks

AutomationTracks StripableTimeAxisView::_automation_tracks
protected

Definition at line 77 of file stripable_time_axis.h.

◆ _main_automation_menu_map

ParameterMenuMap StripableTimeAxisView::_main_automation_menu_map
protected

parameter -> menu item map for the main automation menu

Definition at line 71 of file stripable_time_axis.h.

◆ _stripable

std::shared_ptr<ARDOUR::Stripable> StripableTimeAxisView::_stripable
protected

Definition at line 63 of file stripable_time_axis.h.

◆ gain_automation_item

Gtk::CheckMenuItem* StripableTimeAxisView::gain_automation_item
protected

Definition at line 73 of file stripable_time_axis.h.

◆ gain_track

std::shared_ptr<AutomationTimeAxisView> StripableTimeAxisView::gain_track
protected

Definition at line 65 of file stripable_time_axis.h.

◆ mute_automation_item

Gtk::CheckMenuItem* StripableTimeAxisView::mute_automation_item
protected

Definition at line 75 of file stripable_time_axis.h.

◆ mute_track

std::shared_ptr<AutomationTimeAxisView> StripableTimeAxisView::mute_track
protected

Definition at line 67 of file stripable_time_axis.h.

◆ no_redraw

bool StripableTimeAxisView::no_redraw
protected

Definition at line 80 of file stripable_time_axis.h.

◆ parent_canvas

ArdourCanvas::Canvas& StripableTimeAxisView::parent_canvas
protected

Definition at line 79 of file stripable_time_axis.h.

◆ trim_automation_item

Gtk::CheckMenuItem* StripableTimeAxisView::trim_automation_item
protected

Definition at line 74 of file stripable_time_axis.h.

◆ trim_track

std::shared_ptr<AutomationTimeAxisView> StripableTimeAxisView::trim_track
protected

Definition at line 66 of file stripable_time_axis.h.


The documentation for this class was generated from the following file: