diff --git a/src/LabelTrack.cpp b/src/LabelTrack.cpp index bdcbf9992..7fc52314b 100644 --- a/src/LabelTrack.cpp +++ b/src/LabelTrack.cpp @@ -31,6 +31,9 @@ for drawing different aspects of the label and its text box. #include "Audacity.h" // for HAVE_GTK #include "LabelTrack.h" +#include "tracks/ui/TrackView.h" +#include "tracks/ui/TrackControls.h" + #include "Experimental.h" #include @@ -56,7 +59,10 @@ static ProjectFileIORegistry::Entry registerFactory{ []( AudacityProject &project ){ auto &trackFactory = TrackFactory::Get( project ); auto &tracks = TrackList::Get( project ); - return tracks.Add(trackFactory.NewLabelTrack()); + auto result = tracks.Add(trackFactory.NewLabelTrack()); + TrackView::Get( *result ); + TrackControls::Get( *result ); + return result; } }; diff --git a/src/NoteTrack.cpp b/src/NoteTrack.cpp index 9b9ad9dba..842ab04f7 100644 --- a/src/NoteTrack.cpp +++ b/src/NoteTrack.cpp @@ -38,6 +38,9 @@ #include "InconsistencyException.h" +#include "tracks/ui/TrackView.h" +#include "tracks/ui/TrackControls.h" + #include "AllThemeResources.h" #ifdef SONIFY @@ -108,7 +111,10 @@ static ProjectFileIORegistry::Entry registerFactory{ []( AudacityProject &project ){ auto &trackFactory = TrackFactory::Get( project ); auto &tracks = TrackList::Get( project ); - return tracks.Add(trackFactory.NewNoteTrack()); + auto result = tracks.Add(trackFactory.NewNoteTrack()); + TrackView::Get( *result ); + TrackControls::Get( *result ); + return result; } }; diff --git a/src/TimeTrack.cpp b/src/TimeTrack.cpp index 562f026f2..1428e846a 100644 --- a/src/TimeTrack.cpp +++ b/src/TimeTrack.cpp @@ -28,6 +28,10 @@ #include "ProjectSettings.h" #include "ProjectFileIORegistry.h" +#include "tracks/ui/TrackView.h" +#include "tracks/ui/TrackControls.h" + + //TODO-MB: are these sensible values? #define TIMETRACK_MIN 0.01 #define TIMETRACK_MAX 10.0 @@ -42,7 +46,10 @@ static ProjectFileIORegistry::Entry registerFactory{ []( AudacityProject &project ){ auto &trackFactory = TrackFactory::Get( project ); auto &tracks = TrackList::Get( project ); - return tracks.Add(trackFactory.NewTimeTrack()); + auto result = tracks.Add(trackFactory.NewTimeTrack()); + TrackView::Get( *result ); + TrackControls::Get( *result ); + return result; } }; diff --git a/src/WaveTrack.cpp b/src/WaveTrack.cpp index 7c88b1ab5..b8d83e693 100644 --- a/src/WaveTrack.cpp +++ b/src/WaveTrack.cpp @@ -61,6 +61,9 @@ Track classes. #include "InconsistencyException.h" +#include "tracks/ui/TrackView.h" +#include "tracks/ui/TrackControls.h" + using std::max; static ProjectFileIORegistry::Entry registerFactory{ @@ -68,7 +71,10 @@ static ProjectFileIORegistry::Entry registerFactory{ []( AudacityProject &project ){ auto &trackFactory = TrackFactory::Get( project ); auto &tracks = TrackList::Get( project ); - return tracks.Add(trackFactory.NewWaveTrack()); + auto result = tracks.Add(trackFactory.NewWaveTrack()); + TrackView::Get( *result ); + TrackControls::Get( *result ); + return result; } }; diff --git a/src/tracks/ui/TrackView.cpp b/src/tracks/ui/TrackView.cpp index 08e47c718..4f37693ef 100644 --- a/src/tracks/ui/TrackView.cpp +++ b/src/tracks/ui/TrackView.cpp @@ -93,7 +93,7 @@ void TrackView::WriteXMLAttributes( XMLWriter &xmlFile ) const bool TrackView::HandleXMLAttribute( const wxChar *attr, const wxChar *value ) { - wxString strValue; + wxString strValue( value ); long nValue; if (!wxStrcmp(attr, wxT("height")) && XMLValueChecker::IsGoodInt(strValue) && strValue.ToLong(&nValue)) {