diff options
Diffstat (limited to 'gtk2_ardour/audio_time_axis.cc')
-rw-r--r-- | gtk2_ardour/audio_time_axis.cc | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/gtk2_ardour/audio_time_axis.cc b/gtk2_ardour/audio_time_axis.cc index 34566d4de2..8eea568b7b 100644 --- a/gtk2_ardour/audio_time_axis.cc +++ b/gtk2_ardour/audio_time_axis.cc @@ -73,7 +73,6 @@ using namespace PBD; using namespace Gtk; using namespace Editing; - AudioTimeAxisView::AudioTimeAxisView (PublicEditor& ed, Session& sess, boost::shared_ptr<Route> rt, Canvas& canvas) : AxisView(sess) , RouteTimeAxisView(ed, sess, rt, canvas) @@ -115,16 +114,29 @@ AudioTimeAxisView::AudioTimeAxisView (PublicEditor& ed, Session& sess, boost::sh /* ask for notifications of any new RegionViews */ _view->RegionViewAdded.connect (mem_fun(*this, &AudioTimeAxisView::region_view_added)); - _view->attach (); - } - post_construct (); + if (!editor.have_idled()) { + /* first idle will do what we need */ + } else { + first_idle (); + } + + } else { + post_construct (); + } } AudioTimeAxisView::~AudioTimeAxisView () { } +void +AudioTimeAxisView::first_idle () +{ + _view->attach (); + post_construct (); +} + AudioStreamView* AudioTimeAxisView::audio_view() { @@ -457,24 +469,26 @@ AudioTimeAxisView::update_control_names () { if (is_audio_track()) { if (_route->active()) { - controls_ebox.set_name ("AudioTrackControlsBaseUnselected"); controls_base_selected_name = "AudioTrackControlsBaseSelected"; controls_base_unselected_name = "AudioTrackControlsBaseUnselected"; } else { - controls_ebox.set_name ("AudioTrackControlsBaseInactiveUnselected"); controls_base_selected_name = "AudioTrackControlsBaseInactiveSelected"; controls_base_unselected_name = "AudioTrackControlsBaseInactiveUnselected"; } } else { if (_route->active()) { - controls_ebox.set_name ("BusControlsBaseUnselected"); controls_base_selected_name = "BusControlsBaseSelected"; controls_base_unselected_name = "BusControlsBaseUnselected"; } else { - controls_ebox.set_name ("BusControlsBaseInactiveUnselected"); controls_base_selected_name = "BusControlsBaseInactiveSelected"; controls_base_unselected_name = "BusControlsBaseInactiveUnselected"; } } + + if (get_selected()) { + controls_ebox.set_name (controls_base_selected_name); + } else { + controls_ebox.set_name (controls_base_unselected_name); + } } |