+ void color_handler ();
+
+ void region_view_added (RegionView*);
+
+ StreamView* _view;
+ ArdourCanvas::Canvas& parent_canvas;
+ bool no_redraw;
+
+ Gtk::HBox other_button_hbox;
+ Gtk::Table button_table;
+ Gtk::Button processor_button;
+ Gtk::Button edit_group_button;
+ Gtk::Button playlist_button;
+ Gtk::Button size_button;
+ Gtk::Button automation_button;
+ Gtk::Button hide_button;
+ Gtk::Button visual_button;
+
+ Gtk::Menu subplugin_menu;
+ Gtk::Menu* automation_action_menu;
+ Gtk::Menu edit_group_menu;
+ Gtk::RadioMenuItem* align_existing_item;
+ Gtk::RadioMenuItem* align_capture_item;
+ Gtk::RadioMenuItem* normal_track_mode_item;
+ Gtk::RadioMenuItem* non_layered_track_mode_item;
+ Gtk::RadioMenuItem* destructive_track_mode_item;
+ Gtk::Menu* playlist_menu;
+ Gtk::Menu* playlist_action_menu;
+ Gtk::MenuItem* playlist_item;
+ Gtk::Menu* mode_menu;
+ Gtk::Menu* color_mode_menu;
+
+ virtual Gtk::Menu* build_mode_menu() { return 0; }
+ virtual Gtk::Menu* build_color_mode_menu() { return 0; }
+
+ void use_playlist (boost::weak_ptr<ARDOUR::Playlist>);
+
+ ArdourCanvas::SimpleRect* timestretch_rect;
+
+ void set_track_mode (ARDOUR::TrackMode);
+ void _set_track_mode (ARDOUR::Track* track, ARDOUR::TrackMode mode, Gtk::RadioMenuItem* reset_item, Gtk::RadioMenuItem* reset_item_2);
+ void track_mode_changed ();
+
+ std::list<ProcessorAutomationInfo*> processor_automation;
+
+ typedef std::vector<boost::shared_ptr<AutomationLine> > ProcessorAutomationCurves;
+ ProcessorAutomationCurves processor_automation_curves;
+
+ // Set from XML so context menu automation buttons can be correctly initialized
+ std::set<Evoral::Parameter> _show_automation;
+
+ AutomationTracks _automation_tracks;
+
+ sigc::connection modified_connection;
+
+ void post_construct ();