From de1e8d96dec032ce887ea1bab02989bd5507e3f2 Mon Sep 17 00:00:00 2001 From: James Crook Date: Sun, 22 Apr 2018 18:08:52 +0100 Subject: [PATCH] Fix TimerRecord ASSERT in debug builds. Caused by misuse of sizers. --- src/TimerRecordDialog.cpp | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/src/TimerRecordDialog.cpp b/src/TimerRecordDialog.cpp index bee490e9d..ad5897eeb 100644 --- a/src/TimerRecordDialog.cpp +++ b/src/TimerRecordDialog.cpp @@ -923,23 +923,28 @@ void TimerRecordDialog::PopulateOrExchange(ShuttleGui& S) S.StartStatic(_("Options"), true); { - wxArrayString arrayOptions; - arrayOptions.Add(_("Do nothing")); - arrayOptions.Add(_("Exit Audacity")); - arrayOptions.Add(_("Restart system")); - arrayOptions.Add(_("Shutdown system")); + S.StartMultiColumn(1, wxEXPAND); + { + S.SetStretchyCol( 0 ); + wxArrayString arrayOptions; + arrayOptions.Add(_("Do nothing")); + arrayOptions.Add(_("Exit Audacity")); + arrayOptions.Add(_("Restart system")); + arrayOptions.Add(_("Shutdown system")); - m_sTimerAfterCompleteOptionsArray.Add(arrayOptions.Item(0)); - m_sTimerAfterCompleteOptionsArray.Add(arrayOptions.Item(1)); + m_sTimerAfterCompleteOptionsArray.Add(arrayOptions.Item(0)); + m_sTimerAfterCompleteOptionsArray.Add(arrayOptions.Item(1)); #ifdef __WINDOWS__ - m_sTimerAfterCompleteOptionsArray.Add(arrayOptions.Item(2)); - m_sTimerAfterCompleteOptionsArray.Add(arrayOptions.Item(3)); + m_sTimerAfterCompleteOptionsArray.Add(arrayOptions.Item(2)); + m_sTimerAfterCompleteOptionsArray.Add(arrayOptions.Item(3)); #endif - m_sTimerAfterCompleteOption = arrayOptions.Item(iPostTimerRecordAction); + m_sTimerAfterCompleteOption = arrayOptions.Item(iPostTimerRecordAction); - m_pTimerAfterCompleteChoiceCtrl = S.AddChoice(_("After Recording completes:"), - m_sTimerAfterCompleteOption, - &m_sTimerAfterCompleteOptionsArray); + m_pTimerAfterCompleteChoiceCtrl = S.AddChoice(_("After Recording completes:"), + m_sTimerAfterCompleteOption, + &m_sTimerAfterCompleteOptionsArray); + } + S.EndMultiColumn(); } S.EndStatic();