20 #ifndef __ardour_gtk_automation_time_axis_h__
21 #define __ardour_gtk_automation_time_axis_h__
27 #include <boost/shared_ptr.hpp>
33 #include "canvas/rectangle.h"
42 class AutomationControl;
66 ArdourCanvas::Canvas& canvas,
67 const std::string &
name,
68 const std::string & plug_name =
"");
84 std::list<boost::shared_ptr<AutomationLine> >
lines ()
const;
Gtk::Menu * automation_menu
void cut_copy_clear_one(AutomationLine &, Selection &, Editing::CutCopyOp)
Gtk::CheckMenuItem * mode_line_item
Gtk::CheckMenuItem * auto_touch_item
boost::shared_ptr< ARDOUR::AutomationControl > control()
void set_interpolation(ARDOUR::AutomationList::InterpolationStyle)
Gtk::CheckMenuItem * auto_play_item
boost::shared_ptr< ARDOUR::Route > _route
std::string state_id() const
boost::shared_ptr< AutomationLine > _line
boost::shared_ptr< ARDOUR::Route > parent_route()
Lists of selected things.
Representation of the interface of the Editor class.
std::list< boost::shared_ptr< AutomationLine > > lines() const
void show_timestretch(framepos_t, framepos_t, int, int)
int set_state(const XMLNode &, int version)
AutomationStreamView * _view
static Pango::FontDescription name_font
LIBARDOUR_API PBD::PropertyDescriptor< framepos_t > start
boost::shared_ptr< ARDOUR::AutomationControl > _control
virtual void set_height(uint32_t, TrackHeightMode m=OnlySelf)
bool has_automation() const
Gtk::CheckMenuItem * auto_off_item
AutomationTimeAxisView(ARDOUR::Session *, boost::shared_ptr< ARDOUR::Route >, boost::shared_ptr< ARDOUR::Automatable >, boost::shared_ptr< ARDOUR::AutomationControl >, Evoral::Parameter, PublicEditor &, TimeAxisView &parent, bool show_regions, ArdourCanvas::Canvas &canvas, const std::string &name, const std::string &plug_name="")
virtual bool can_edit_name() const
void interpolation_changed(ARDOUR::AutomationList::InterpolationStyle)
void get_selectables(ARDOUR::framepos_t start, ARDOUR::framepos_t end, double top, double bot, std::list< Selectable * > &, bool within=false)
static bool parse_state_id(std::string const &, PBD::ID &, bool &, Evoral::Parameter &)
boost::shared_ptr< ARDOUR::Automatable > _automatable
~AutomationTimeAxisView()
Evoral::Parameter parameter() const
bool show_regions() const
bool ignore_state_request
Gtk::CheckMenuItem * mode_discrete_item
void set_selected_points(PointSelection &)
void cut_copy_clear(Selection &, Editing::CutCopyOp)
void add_line(boost::shared_ptr< AutomationLine >)
ArdourCanvas::Item * base_item() const
void automation_state_changed()
PBD::ScopedConnectionList _route_connections
PBD::ScopedConnectionList _list_connections
ArdourCanvas::Rectangle * _base_rect
Gtk::CheckMenuItem * auto_write_item
static void what_has_visible_automation(const boost::shared_ptr< ARDOUR::Automatable > &automatable, std::set< Evoral::Parameter > &visible)
boost::shared_ptr< AutomationController > controller()
bool paste_one(ARDOUR::framepos_t, unsigned, float times, const Selection &, ItemCounts &counts, bool greedy=false)
int set_state_2X(const XMLNode &, int)
Evoral::Parameter _parameter
static bool have_name_font
void add_automation_event(GdkEvent *, framepos_t, double, bool with_guard_points)
void set_samples_per_pixel(double)
boost::shared_ptr< AutomationController > _controller
void get_inverted_selectables(Selection &, std::list< Selectable * > &results)
void build_display_menu()
void set_automation_state(ARDOUR::AutoState)
boost::shared_ptr< AutomationLine > line()
bool first_call_to_set_height
bool paste(ARDOUR::framepos_t, const Selection &, PasteContext &)