X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Faudio_time_axis.h;h=ca4af997a3f7f2ff8e245bfbdfab4362f60e5b8f;hb=fddb3778120e25b3b8e8134084e260dac07c1365;hp=565d7cda9fed9302f8d952352d5a82e2c4bd598a;hpb=997e4b1f9cd7ccfc704b7c035051da7f60d831e7;p=ardour.git diff --git a/gtk2_ardour/audio_time_axis.h b/gtk2_ardour/audio_time_axis.h index 565d7cda9f..ca4af997a3 100644 --- a/gtk2_ardour/audio_time_axis.h +++ b/gtk2_ardour/audio_time_axis.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2000-2006 Paul Davis + Copyright (C) 2000-2006 Paul Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -31,7 +31,7 @@ #include #include -#include +#include "ardour/types.h" #include "ardour_dialog.h" #include "route_ui.h" @@ -42,7 +42,6 @@ namespace ARDOUR { class Session; - class AudioDiskstream; class RouteGroup; class IOProcessor; class Processor; @@ -66,40 +65,34 @@ class AutomationTimeAxisView; class AudioTimeAxisView : public RouteTimeAxisView { public: - AudioTimeAxisView (PublicEditor&, ARDOUR::Session&, boost::shared_ptr, ArdourCanvas::Canvas& canvas); + AudioTimeAxisView (PublicEditor&, ARDOUR::Session*, boost::shared_ptr, ArdourCanvas::Canvas& canvas); virtual ~AudioTimeAxisView (); - + AudioStreamView* audio_view(); - void set_show_waveforms (bool yn); void set_show_waveforms_recording (bool yn); void show_all_xfades (); void hide_all_xfades (); void hide_dependent_views (TimeAxisViewItem&); void reveal_dependent_views (TimeAxisViewItem&); - + /* Overridden from parent to store display state */ guint32 show_at (double y, int& nth, Gtk::VBox *parent); void hide (); - - void create_automation_child (ARDOUR::Parameter param, bool show); - - void first_idle (); - void set_waveform_shape (Editing::WaveformShape); - void set_waveform_scale (Editing::WaveformScale); + void create_automation_child (const Evoral::Parameter& param, bool show); + + void first_idle (); private: friend class AudioStreamView; friend class AudioRegionView; - + void route_active_changed (); void append_extra_display_menu_items (); Gtk::Menu* build_mode_menu(); - - void toggle_show_waveforms (); - void toggle_waveforms (); + void build_automation_action_menu (); void show_all_automation (); void show_existing_automation (); @@ -108,14 +101,18 @@ class AudioTimeAxisView : public RouteTimeAxisView void gain_hidden (); void pan_hidden (); - void update_pans (bool show=true); + void ensure_pan_views (bool show = true); void update_control_names (); - Gtk::CheckMenuItem* waveform_item; - Gtk::RadioMenuItem* traditional_item; - Gtk::RadioMenuItem* rectified_item; - Gtk::RadioMenuItem* linearscale_item; - Gtk::RadioMenuItem* logscale_item; + void update_gain_track_visibility (); + void update_pan_track_visibility (); + + void add_processor_to_subplugin_menu (boost::weak_ptr); + + boost::shared_ptr gain_track; + Gtk::CheckMenuItem* gain_automation_item; + std::list > pan_tracks; + Gtk::CheckMenuItem* pan_automation_item; }; #endif /* __ardour_audio_time_axis_h__ */