diff --git a/src/Dependencies.cpp b/src/Dependencies.cpp index f3e374fe3..a9a796701 100644 --- a/src/Dependencies.cpp +++ b/src/Dependencies.cpp @@ -397,7 +397,7 @@ void DependencyDialog::PopulateOrExchange(ShuttleGui& S) { mFutureActionChoice = S.Id(FutureActionChoiceID).AddChoice( - _("Whenever a project depends on other files:"), + XO("Whenever a project depends on other files:"), { /*i18n-hint: One of the choices of what you want Audacity to do when * Audacity finds a project depends on another file.*/ diff --git a/src/FreqWindow.cpp b/src/FreqWindow.cpp index f51a627ec..1059342f6 100644 --- a/src/FreqWindow.cpp +++ b/src/FreqWindow.cpp @@ -458,13 +458,13 @@ FrequencyPlotDialog::FrequencyPlotDialog(wxWindow * parent, wxWindowID id, mAlgChoice = S.Id(FreqAlgChoiceID).Focus() .MinSize( { wxDefaultCoord, wxDefaultCoord } ) - .AddChoice(_("&Algorithm:"), algChoices, mAlg); + .AddChoice(XO("&Algorithm:"), algChoices, mAlg); S.AddSpace(5); mSizeChoice = S.Id(FreqSizeChoiceID) .MinSize( { wxDefaultCoord, wxDefaultCoord } ) - .AddChoice(_("&Size:"), sizeChoices, mSize); + .AddChoice(XO("&Size:"), sizeChoices, mSize); S.AddSpace(5); @@ -481,14 +481,14 @@ FrequencyPlotDialog::FrequencyPlotDialog(wxWindow * parent, wxWindowID id, mFuncChoice = S.Id(FreqFuncChoiceID) .MinSize( { wxDefaultCoord, wxDefaultCoord } ) - .AddChoice(_("&Function:"), funcChoices, mFunc); + .AddChoice(XO("&Function:"), funcChoices, mFunc); mFuncChoice->MoveAfterInTabOrder(mSizeChoice); S.AddSpace(5); mAxisChoice = S.Id(FreqAxisChoiceID) .MinSize( { wxDefaultCoord, wxDefaultCoord } ) - .AddChoice(_("&Axis:"), axisChoices, mAxis); + .AddChoice(XO("&Axis:"), axisChoices, mAxis); mAxisChoice->MoveAfterInTabOrder(mFuncChoice); S.AddSpace(5); diff --git a/src/LangChoice.cpp b/src/LangChoice.cpp index bbb9d1ba3..47880d90f 100644 --- a/src/LangChoice.cpp +++ b/src/LangChoice.cpp @@ -86,7 +86,7 @@ LangChoiceDialog::LangChoiceDialog(wxWindow * parent, S.StartHorizontalLay(); { S.SetBorder(15); - mChoice = S.AddChoice(_("Choose Language for Audacity to use:"), + mChoice = S.AddChoice(XO("Choose Language for Audacity to use:"), mLangNames, lang); } diff --git a/src/ShuttleGui.cpp b/src/ShuttleGui.cpp index e30401849..19f51885b 100644 --- a/src/ShuttleGui.cpp +++ b/src/ShuttleGui.cpp @@ -382,9 +382,10 @@ wxBitmapButton * ShuttleGuiBase::AddBitmapButton( return pBtn; } -wxChoice * ShuttleGuiBase::AddChoice( const wxString &Prompt, +wxChoice * ShuttleGuiBase::AddChoice( const TranslatableString &inPrompt, const TranslatableStrings &choices, int Selected ) { + const auto Prompt = inPrompt.Translation(); HandleOptionality( Prompt ); AddPrompt( Prompt ); UseUpId(); @@ -417,7 +418,7 @@ wxChoice * ShuttleGuiBase::AddChoice( const wxString &Prompt, return pChoice; } -wxChoice * ShuttleGuiBase::AddChoice( const wxString &Prompt, +wxChoice * ShuttleGuiBase::AddChoice( const TranslatableString &Prompt, const TranslatableStrings &choices, const TranslatableString &Selected ) { return AddChoice( @@ -1439,11 +1440,11 @@ wxSlider * ShuttleGuiBase::DoTieSlider( const wxString &Prompt, WrappedType & Wr wxChoice * ShuttleGuiBase::DoTieChoice( - const wxString &Prompt, + const TranslatableString &Prompt, WrappedType &WrappedRef, const TranslatableStrings &choices ) { - HandleOptionality( Prompt ); + HandleOptionality( Prompt.Translation() ); // The Add function does a UseUpId(), so don't do it here in that case. if( mShuttleMode != eIsCreating ) @@ -1680,7 +1681,7 @@ wxSlider * ShuttleGuiBase::TieVSlider( const wxString &Prompt, float &pos, const } wxChoice * ShuttleGuiBase::TieChoice( - const wxString &Prompt, + const TranslatableString &Prompt, wxString &Selected, const TranslatableStrings &choices ) { @@ -1689,7 +1690,7 @@ wxChoice * ShuttleGuiBase::TieChoice( } wxChoice * ShuttleGuiBase::TieChoice( - const wxString &Prompt, + const TranslatableString &Prompt, int &Selected, const TranslatableStrings &choices ) { @@ -1928,7 +1929,7 @@ wxTextCtrl * ShuttleGuiBase::TieNumericTextBox( /// choice strings, and a designation of one of /// those as default. wxChoice *ShuttleGuiBase::TieChoice( - const wxString &Prompt, + const TranslatableString &Prompt, const ChoiceSetting &choiceSetting ) { // Do this to force any needed migrations first @@ -1968,7 +1969,7 @@ wxChoice *ShuttleGuiBase::TieChoice( /// @param pInternalChoices The corresponding values (as an integer array) /// if null, then use 0, 1, 2, ... wxChoice * ShuttleGuiBase::TieNumberAsChoice( - const wxString &Prompt, + const TranslatableString &Prompt, const SettingSpec< int > &Setting, const TranslatableStrings & Choices, const std::vector * pInternalChoices, diff --git a/src/ShuttleGui.h b/src/ShuttleGui.h index db81170b2..35759bd03 100644 --- a/src/ShuttleGui.h +++ b/src/ShuttleGui.h @@ -328,9 +328,9 @@ public: wxCheckBox * AddCheckBox( const wxString &Prompt, bool Selected); wxCheckBox * AddCheckBoxOnRight( const wxString &Prompt, bool Selected); wxComboBox * AddCombo( const wxString &Prompt, const wxString &Selected,const wxArrayStringEx & choices ); - wxChoice * AddChoice( const wxString &Prompt, + wxChoice * AddChoice( const TranslatableString &Prompt, const TranslatableStrings &choices, int Selected = -1 ); - wxChoice * AddChoice( const wxString &Prompt, + wxChoice * AddChoice( const TranslatableString &Prompt, const TranslatableStrings &choices, const TranslatableString &selected ); wxMenuBar * AddMenuBar( ); wxMenu * AddMenu( const wxString & Title ); @@ -399,9 +399,9 @@ public: wxCheckBox * TieCheckBoxOnRight( const wxString & Prompt, bool & Var ); wxChoice * TieChoice( - const wxString &Prompt, wxString &Selected, const TranslatableStrings &choices ); + const TranslatableString &Prompt, wxString &Selected, const TranslatableStrings &choices ); wxChoice * TieChoice( - const wxString &Prompt, int &Selected, const TranslatableStrings &choices ); + const TranslatableString &Prompt, int &Selected, const TranslatableStrings &choices ); wxSlider * TieSlider( const wxString &Prompt, int &pos, const int max, const int min = 0); wxSlider * TieSlider( const wxString &Prompt, double &pos, const double max, const double min = 0.0); @@ -427,7 +427,7 @@ public: const SettingSpec< bool > &Setting); virtual wxChoice *TieChoice( - const wxString &Prompt, + const TranslatableString &Prompt, const ChoiceSetting &choiceSetting ); // This overload presents what is really a numerical setting as a choice among @@ -436,7 +436,7 @@ public: // behavior is different when the call is intercepted for purposes of // emitting scripting information about Preferences. virtual wxChoice * TieNumberAsChoice( - const wxString &Prompt, + const TranslatableString &Prompt, const SettingSpec< int > &Setting, const TranslatableStrings & Choices, const std::vector * pInternalChoices = nullptr, @@ -539,7 +539,7 @@ private: wxTextCtrl * DoTieNumericTextBox( const wxString &Prompt, WrappedType & WrappedRef, const int nChars); wxCheckBox * DoTieCheckBox( const wxString &Prompt, WrappedType & WrappedRef ); wxChoice * DoTieChoice( - const wxString &Prompt, WrappedType & WrappedRef, + const TranslatableString &Prompt, WrappedType & WrappedRef, const TranslatableStrings & choices ); wxSlider * DoTieSlider( const wxString &Prompt, WrappedType & WrappedRef, const int max, const int min = 0 ); wxSpinCtrl * DoTieSpinCtrl( const wxString &Prompt, WrappedType & WrappedRef, const int max, const int min = 0 ); diff --git a/src/TimerRecordDialog.cpp b/src/TimerRecordDialog.cpp index 918670295..08e51959a 100644 --- a/src/TimerRecordDialog.cpp +++ b/src/TimerRecordDialog.cpp @@ -970,7 +970,7 @@ void TimerRecordDialog::PopulateOrExchange(ShuttleGui& S) S.StartMultiColumn(1, wxEXPAND); { S.SetStretchyCol( 0 ); - m_pTimerAfterCompleteChoiceCtrl = S.AddChoice(_("After Recording completes:"), + m_pTimerAfterCompleteChoiceCtrl = S.AddChoice(XO("After Recording completes:"), { XO("Do nothing") , XO("Exit Audacity") , diff --git a/src/commands/DragCommand.cpp b/src/commands/DragCommand.cpp index 0ae6e8e98..be75b64d1 100644 --- a/src/commands/DragCommand.cpp +++ b/src/commands/DragCommand.cpp @@ -73,7 +73,7 @@ void DragCommand::PopulateOrExchange(ShuttleGui & S) S.Optional( bHasFromY ).TieNumericTextBox( _("From Y:"), mFromY ); S.Optional( bHasToX ).TieNumericTextBox( _("To X:"), mToX ); S.Optional( bHasToY ).TieNumericTextBox( _("To Y:"), mToY ); - S.Optional( bHasRelativeTo ).TieChoice( _("Relative To:"), mRelativeTo, + S.Optional( bHasRelativeTo ).TieChoice( XO("Relative To:"), mRelativeTo, Msgids( kCoordTypeStrings, nCoordTypes ) ); } S.EndMultiColumn(); diff --git a/src/commands/GetInfoCommand.cpp b/src/commands/GetInfoCommand.cpp index 42832ac06..c748bcf95 100644 --- a/src/commands/GetInfoCommand.cpp +++ b/src/commands/GetInfoCommand.cpp @@ -108,9 +108,9 @@ void GetInfoCommand::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2, wxALIGN_CENTER); { - S.TieChoice( _("Type:"), + S.TieChoice( XO("Type:"), mInfoType, Msgids( kTypes, nTypes )); - S.TieChoice( _("Format:"), + S.TieChoice( XO("Format:"), mFormat, Msgids( kFormats, nFormats )); } S.EndMultiColumn(); @@ -206,7 +206,7 @@ public: const SettingSpec< bool > &Setting) override; wxChoice * TieNumberAsChoice( - const wxString &Prompt, + const TranslatableString &Prompt, const SettingSpec< int > &Setting, const TranslatableStrings & Choices, const std::vector * pInternalChoices, int iNoMatchSelector ) override; @@ -271,7 +271,7 @@ wxCheckBox * ShuttleGuiGetDefinition::TieCheckBoxOnRight( return ShuttleGui::TieCheckBoxOnRight( Prompt, Setting ); } wxChoice * ShuttleGuiGetDefinition::TieNumberAsChoice( - const wxString &Prompt, + const TranslatableString &Prompt, const SettingSpec< int > &Setting, const TranslatableStrings & Choices, const std::vector * pInternalChoices, int iNoMatchSelector) @@ -281,7 +281,7 @@ wxChoice * ShuttleGuiGetDefinition::TieNumberAsChoice( // "Other..." StartStruct(); AddItem( Setting.GetPath(), "id" ); - AddItem( Prompt, "prompt" ); + AddItem( Prompt.Translation(), "prompt" ); AddItem( "number", "type" ); // not "enum" ! AddItem( Setting.GetDefault(), "default" ); EndStruct(); diff --git a/src/commands/GetTrackInfoCommand.cpp b/src/commands/GetTrackInfoCommand.cpp index 84dd00a27..15696d408 100644 --- a/src/commands/GetTrackInfoCommand.cpp +++ b/src/commands/GetTrackInfoCommand.cpp @@ -51,7 +51,7 @@ void GetTrackInfoCommand::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2, wxALIGN_CENTER); { - S.TieChoice( _("Types:"), mInfoType, Msgids( kTypes, nTypes )); + S.TieChoice( XO("Types:"), mInfoType, Msgids( kTypes, nTypes )); } S.EndMultiColumn(); } diff --git a/src/commands/ScreenshotCommand.cpp b/src/commands/ScreenshotCommand.cpp index 37f20fa4c..22eed2075 100644 --- a/src/commands/ScreenshotCommand.cpp +++ b/src/commands/ScreenshotCommand.cpp @@ -120,9 +120,9 @@ void ScreenshotCommand::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2, wxALIGN_CENTER); { S.TieTextBox( _("Path:"), mPath); - S.TieChoice( _("Capture What:"), + S.TieChoice( XO("Capture What:"), mWhat, Msgids(kCaptureWhatStrings, nCaptureWhats)); - S.TieChoice( _("Background:"), + S.TieChoice( XO("Background:"), mBack, Msgids(kBackgroundStrings, nBackgrounds)); S.TieCheckBox( _("Bring To Top:"), mbBringToTop); } diff --git a/src/commands/SelectCommand.cpp b/src/commands/SelectCommand.cpp index ff0c7475f..46578afa3 100644 --- a/src/commands/SelectCommand.cpp +++ b/src/commands/SelectCommand.cpp @@ -77,7 +77,7 @@ void SelectTimeCommand::PopulateOrExchange(ShuttleGui & S) S.Optional( bHasT1 ).TieTextBox(_("End Time:"), mT1); // Chooses what time is relative to. S.Optional( bHasRelativeSpec ).TieChoice( - _("Relative To:"), + XO("Relative To:"), mRelativeTo, Msgids( kRelativeTo, nRelativeTos )); } S.EndMultiColumn(); @@ -203,7 +203,7 @@ void SelectTracksCommand::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2, wxALIGN_CENTER); { // Always used, so no check box. - S.TieChoice( _("Mode:"), mMode, Msgids( kModes, nModes )); + S.TieChoice( XO("Mode:"), mMode, Msgids( kModes, nModes )); } S.EndMultiColumn(); } diff --git a/src/commands/SetClipCommand.cpp b/src/commands/SetClipCommand.cpp index 188732fb6..52f317643 100644 --- a/src/commands/SetClipCommand.cpp +++ b/src/commands/SetClipCommand.cpp @@ -62,7 +62,7 @@ void SetClipCommand::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(3, wxALIGN_CENTER); { S.Optional( bHasContainsTime).TieNumericTextBox( _("At:"), mContainsTime ); - S.Optional( bHasColour ).TieChoice( _("Colour:"), mColour, + S.Optional( bHasColour ).TieChoice( XO("Colour:"), mColour, Msgids( kColourStrings, nColours ) ); S.Optional( bHasT0 ).TieNumericTextBox( _("Start:"), mT0 ); } diff --git a/src/commands/SetTrackInfoCommand.cpp b/src/commands/SetTrackInfoCommand.cpp index 2146ebcda..52e1aabbc 100644 --- a/src/commands/SetTrackInfoCommand.cpp +++ b/src/commands/SetTrackInfoCommand.cpp @@ -316,13 +316,13 @@ void SetTrackVisualsCommand::PopulateOrExchange(ShuttleGui & S) { S.SetStretchyCol( 2 ); S.Optional( bHasHeight ).TieNumericTextBox( _("Height:"), mHeight ); - S.Optional( bHasColour ).TieChoice( _("Colour:"), mColour, + S.Optional( bHasColour ).TieChoice( XO("Colour:"), mColour, Msgids( kColourStrings, nColours ) ); - S.Optional( bHasDisplayType ).TieChoice( _("Display:"), mDisplayType, + S.Optional( bHasDisplayType ).TieChoice( XO("Display:"), mDisplayType, Msgids( kDisplayTypeStrings, nDisplayTypes ) ); - S.Optional( bHasScaleType ).TieChoice( _("Scale:"), mScaleType, + S.Optional( bHasScaleType ).TieChoice( XO("Scale:"), mScaleType, Msgids( kScaleTypeStrings, nScaleTypes ) ); - S.Optional( bHasVZoom ).TieChoice( _("VZoom:"), mVZoom, + S.Optional( bHasVZoom ).TieChoice( XO("VZoom:"), mVZoom, Msgids( kZoomTypeStrings, nZoomTypes ) ); S.Optional( bHasVZoomTop ).TieTextBox( _("VZoom Top:"), mVZoomTop ); S.Optional( bHasVZoomBottom ).TieTextBox( _("VZoom Bottom:"), mVZoomBottom ); diff --git a/src/effects/ChangePitch.cpp b/src/effects/ChangePitch.cpp index 65bfd1e8b..b91b6c268 100644 --- a/src/effects/ChangePitch.cpp +++ b/src/effects/ChangePitch.cpp @@ -280,7 +280,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S) /* i18n-hint: changing a quantity "from" one value "to" another */ .Name(XO("from")) .MinSize( { 80, -1 } ) - .AddChoice(_("from"), pitch); + .AddChoice(XO("from"), pitch); m_pSpin_FromOctave = S.Id(ID_FromOctave) .Name(XO("from Octave")) @@ -291,7 +291,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S) /* i18n-hint: changing a quantity "from" one value "to" another */ .Name(XO("to")) .MinSize( { 80, -1 } ) - .AddChoice(_("to"), pitch); + .AddChoice(XO("to"), pitch); m_pSpin_ToOctave = S.Id(ID_ToOctave) .Name(XO("to Octave")) diff --git a/src/effects/ChangeSpeed.cpp b/src/effects/ChangeSpeed.cpp index 98c027377..b66eaa3a7 100644 --- a/src/effects/ChangeSpeed.cpp +++ b/src/effects/ChangeSpeed.cpp @@ -343,13 +343,13 @@ void EffectChangeSpeed::PopulateOrExchange(ShuttleGui & S) .Name(XO("From rpm")) .MinSize( { 100, -1 } ) /* i18n-hint: changing a quantity "from" one value "to" another */ - .AddChoice(_("from"), kVinylStrings); + .AddChoice(XO("from"), kVinylStrings); mpChoice_ToVinyl = S.Id(ID_ToVinyl) /* i18n-hint: changing a quantity "from" one value "to" another */ .Name(XO("To rpm")) .MinSize( { 100, -1 } ) - .AddChoice(_("to"), kVinylStrings); + .AddChoice(XO("to"), kVinylStrings); } S.EndMultiColumn(); diff --git a/src/effects/Distortion.cpp b/src/effects/Distortion.cpp index 3817f3512..1c2baa3d4 100644 --- a/src/effects/Distortion.cpp +++ b/src/effects/Distortion.cpp @@ -369,7 +369,7 @@ void EffectDistortion::PopulateOrExchange(ShuttleGui & S) mTypeChoiceCtrl = S.Id(ID_Type) .MinSize( { -1, -1 } ) .Validator(&mParams.mTableChoiceIndx) - .AddChoice(_("Distortion type:"), + .AddChoice(XO("Distortion type:"), Msgids(kTableTypeStrings, nTableTypes)); mDCBlockCheckBox = S.Id(ID_DCBlock).AddCheckBox(_("DC blocking filter"), diff --git a/src/effects/Noise.cpp b/src/effects/Noise.cpp index 0c8af6c53..bbe279e75 100644 --- a/src/effects/Noise.cpp +++ b/src/effects/Noise.cpp @@ -226,7 +226,7 @@ void EffectNoise::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2, wxCENTER); { S.Validator(&mType) - .AddChoice(_("Noise type:"), Msgids(kTypeStrings, nTypes)); + .AddChoice(XO("Noise type:"), Msgids(kTypeStrings, nTypes)); S.Validator>( 6, &mAmp, NumValidatorStyle::NO_TRAILING_ZEROES, MIN_Amp, MAX_Amp diff --git a/src/effects/NoiseReduction.cpp b/src/effects/NoiseReduction.cpp index b88787e05..046631694 100644 --- a/src/effects/NoiseReduction.cpp +++ b/src/effects/NoiseReduction.cpp @@ -1762,7 +1762,7 @@ void EffectNoiseReduction::Dialog::PopulateOrExchange(ShuttleGui & S) { S.StartMultiColumn(2); { - S.TieChoice(_("&Window types:"), + S.TieChoice(XO("&Window types:"), mTempSettings.mWindowTypes, []{ wxArrayStringEx windowTypeChoices; @@ -1772,7 +1772,7 @@ void EffectNoiseReduction::Dialog::PopulateOrExchange(ShuttleGui & S) }() ); - S.TieChoice(_("Window si&ze:")), + S.TieChoice(XO("Window si&ze:")), mTempSettings.mWindowSizeChoice, { _("8") , @@ -1790,7 +1790,7 @@ void EffectNoiseReduction::Dialog::PopulateOrExchange(ShuttleGui & S) } ); - S.TieChoice(_("S&teps per window:"), + S.TieChoice(XO("S&teps per window:"), mTempSettings.mStepsPerWindowChoice, { _("2") , @@ -1803,7 +1803,7 @@ void EffectNoiseReduction::Dialog::PopulateOrExchange(ShuttleGui & S) ); S.Id(ID_CHOICE_METHOD) - .TieChoice(_("Discrimination &method:"), + .TieChoice(XO("Discrimination &method:"), mTempSettings.mMethod, []{ wxArrayStringEx methodChoices; diff --git a/src/effects/ScienFilter.cpp b/src/effects/ScienFilter.cpp index 7ebf515a6..29d17176b 100644 --- a/src/effects/ScienFilter.cpp +++ b/src/effects/ScienFilter.cpp @@ -465,7 +465,7 @@ void EffectScienFilter::PopulateOrExchange(ShuttleGui & S) .Focus() .Validator(&mFilterType) .MinSize( { -1, -1 } ) - .AddChoice(_("&Filter Type:"), + .AddChoice(XO("&Filter Type:"), Msgids(kTypeStrings, nTypes) ); @@ -473,7 +473,7 @@ void EffectScienFilter::PopulateOrExchange(ShuttleGui & S) .Validator(&mOrderIndex) /*i18n-hint: 'Order' means the complexity of the filter, and is a number between 1 and 10.*/ .MinSize( { -1, -1 } ) - .AddChoice(_("O&rder:"), + .AddChoice(XO("O&rder:"), []{ TranslatableStrings orders; for (int i = 1; i <= 10; i++) @@ -495,7 +495,7 @@ void EffectScienFilter::PopulateOrExchange(ShuttleGui & S) mFilterSubTypeCtl = S.Id(ID_SubType) .Validator(&mFilterSubtype) .MinSize( { -1, -1 } ) - .AddChoice(_("&Subtype:"), + .AddChoice(XO("&Subtype:"), Msgids(kSubTypeStrings, nSubTypes) ); diff --git a/src/effects/ToneGen.cpp b/src/effects/ToneGen.cpp index ec46b3142..fd324b0c9 100644 --- a/src/effects/ToneGen.cpp +++ b/src/effects/ToneGen.cpp @@ -341,7 +341,7 @@ void EffectToneGen::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2, wxCENTER); { S.Validator(&mWaveform) - .AddChoice(_("Waveform:"), + .AddChoice(XO("Waveform:"), Msgids( kWaveStrings, nWaveforms ) ); if (mChirp) @@ -422,7 +422,7 @@ void EffectToneGen::PopulateOrExchange(ShuttleGui & S) S.EndHorizontalLay(); S.Validator(&mInterpolation) - .AddChoice(_("Interpolation:"), + .AddChoice(XO("Interpolation:"), Msgids( kInterStrings, nInterpolations ) ); } else diff --git a/src/effects/audiounits/AudioUnitEffect.cpp b/src/effects/audiounits/AudioUnitEffect.cpp index ba406da0c..0aa5fb091 100644 --- a/src/effects/audiounits/AudioUnitEffect.cpp +++ b/src/effects/audiounits/AudioUnitEffect.cpp @@ -409,7 +409,7 @@ void AudioUnitEffectOptionsDialog::PopulateOrExchange(ShuttleGui & S) S.StartHorizontalLay(wxALIGN_LEFT); { - S.TieChoice(_("Select &interface"), + S.TieChoice(XO("Select &interface"), mUIType, { XO("Full"), XO("Generic"), XO("Basic") }); } diff --git a/src/export/ExportFFmpeg.cpp b/src/export/ExportFFmpeg.cpp index 451667ae2..03b2eabe2 100644 --- a/src/export/ExportFFmpeg.cpp +++ b/src/export/ExportFFmpeg.cpp @@ -1064,7 +1064,7 @@ int ExportFFmpeg::AskResample(int bitrate, int rate, int lowrate, int highrate, S.StartHorizontalLay(wxALIGN_CENTER, false); { - choice = S.AddChoice(_("Sample Rates"), + choice = S.AddChoice(XO("Sample Rates"), [&]{ TranslatableStrings choices; for (int i = 0; sampRates[i] > 0; i++) diff --git a/src/export/ExportFFmpegDialogs.cpp b/src/export/ExportFFmpegDialogs.cpp index 458079f0b..85423ff61 100644 --- a/src/export/ExportFFmpegDialogs.cpp +++ b/src/export/ExportFFmpegDialogs.cpp @@ -215,7 +215,7 @@ void ExportFFmpegAC3Options::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2, wxCENTER); { S.TieNumberAsChoice( - _("Bit Rate:"), + XO("Bit Rate:"), {wxT("/FileFormats/AC3BitRate"), 160000}, AC3BitRateNames, @@ -366,7 +366,7 @@ void ExportFFmpegAMRNBOptions::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2, wxCENTER); { S.TieNumberAsChoice( - _("Bit Rate:"), + XO("Bit Rate:"), {wxT("/FileFormats/AMRNBBitRate"), 12200}, AMRNBBitRateNames, @@ -468,7 +468,7 @@ void ExportFFmpegWMAOptions::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2, wxCENTER); { S.TieNumberAsChoice( - _("Bit Rate:"), + XO("Bit Rate:"), {wxT("/FileFormats/WMABitRate"), 128000}, WMABitRateNames, @@ -1621,7 +1621,7 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S) mProfileChoice = S.Id(FEProfileID) .ToolTip(XO("AAC Profile\nLow Complexity - default\nMost players won't play anything other than LC")) .MinSize( { 100, -1 } ) - .TieChoice(_("Profile:"), AACProfiles); + .TieChoice(XO("Profile:"), AACProfiles); } S.EndMultiColumn(); } @@ -1646,7 +1646,7 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S) .ToolTip(XO("Prediction Order Method\nEstimate - fastest, lower compression\nLog search - slowest, best compression\nFull search - default")) .MinSize( { 100, -1 } ) .TieNumberAsChoice( - _("PdO Method:"), + XO("PdO Method:"), {wxT("/FileFormats/FFmpegPredOrderMethod"), 4}, // Full search PredictionOrderMethodNames diff --git a/src/export/ExportFLAC.cpp b/src/export/ExportFLAC.cpp index d9cabbdc5..d78ffb481 100644 --- a/src/export/ExportFLAC.cpp +++ b/src/export/ExportFLAC.cpp @@ -127,8 +127,8 @@ void ExportFLACOptions::PopulateOrExchange(ShuttleGui & S) { S.StartMultiColumn(2, wxCENTER); { - S.TieChoice( _("Level:"), FLACLevel); - S.TieChoice( _("Bit depth:"), FLACBitDepth); + S.TieChoice( XO("Level:"), FLACLevel); + S.TieChoice( XO("Bit depth:"), FLACBitDepth); } S.EndMultiColumn(); } diff --git a/src/export/ExportMP2.cpp b/src/export/ExportMP2.cpp index bf54c5de4..af9476e86 100644 --- a/src/export/ExportMP2.cpp +++ b/src/export/ExportMP2.cpp @@ -160,7 +160,7 @@ void ExportMP2Options::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2, wxCENTER); { S.TieNumberAsChoice( - _("Bit Rate:"), + XO("Bit Rate:"), {wxT("/FileFormats/MP2Bitrate"), 160}, BitRateNames, diff --git a/src/export/ExportMP3.cpp b/src/export/ExportMP3.cpp index ffd2028fd..cbc31f85c 100644 --- a/src/export/ExportMP3.cpp +++ b/src/export/ExportMP3.cpp @@ -387,7 +387,7 @@ void ExportMP3Options::PopulateOrExchange(ShuttleGui & S) S.EndHorizontalLay(); mRate = S.Id(ID_QUALITY).TieNumberAsChoice( - _("Quality"), + XO("Quality"), { wxT("/FileFormats/MP3Bitrate"), defrate }, *choices, codes @@ -395,7 +395,7 @@ void ExportMP3Options::PopulateOrExchange(ShuttleGui & S) mMode = S.Disable(!enable) .TieNumberAsChoice( - _("Variable Speed:"), + XO("Variable Speed:"), { wxT("/FileFormats/MP3VarMode"), ROUTINE_FAST }, varModeNames ); @@ -2029,7 +2029,7 @@ int ExportMP3::AskResample(int bitrate, int rate, int lowrate, int highrate) S.StartHorizontalLay(wxALIGN_CENTER, false); { - choice = S.AddChoice(_("Sample Rates"), + choice = S.AddChoice(XO("Sample Rates"), [&]{ TranslatableStrings choices; for (size_t ii = 0, nn = sampRates.size(); ii < nn; ++ii) { diff --git a/src/export/ExportMultiple.cpp b/src/export/ExportMultiple.cpp index d5bda73ea..b9e0991b1 100644 --- a/src/export/ExportMultiple.cpp +++ b/src/export/ExportMultiple.cpp @@ -283,7 +283,7 @@ void ExportMultipleDialog::PopulateOrExchange(ShuttleGui& S) S.Id(CreateID).AddButton(XO("Create")); mFormat = S.Id(FormatID) - .TieChoice( _("Format:"), + .TieChoice( XO("Format:"), { wxT("/Export/MultipleFormat"), { diff --git a/src/export/ExportPCM.cpp b/src/export/ExportPCM.cpp index e20c46ea3..b2dff42eb 100644 --- a/src/export/ExportPCM.cpp +++ b/src/export/ExportPCM.cpp @@ -189,11 +189,11 @@ void ExportPCMOptions::PopulateOrExchange(ShuttleGui & S) { S.SetStretchyCol(1); mHeaderChoice = S.Id(ID_HEADER_CHOICE) - .AddChoice(_("Header:"), + .AddChoice(XO("Header:"), mHeaderNames, mHeaderFromChoice); mEncodingChoice = S.Id(ID_ENCODING_CHOICE) - .AddChoice(_("Encoding:"), + .AddChoice(XO("Encoding:"), mEncodingNames, mEncodingFromChoice); } diff --git a/src/import/ImportRaw.cpp b/src/import/ImportRaw.cpp index 38bddecb7..85bc54bee 100644 --- a/src/import/ImportRaw.cpp +++ b/src/import/ImportRaw.cpp @@ -391,13 +391,13 @@ ImportRawDialog::ImportRawDialog(wxWindow * parent, S.SetBorder(5); S.StartTwoColumn(); { - mEncodingChoice = S.Id(ChoiceID).AddChoice(_("Encoding:"), + mEncodingChoice = S.Id(ChoiceID).AddChoice(XO("Encoding:"), encodings, selection); - mEndianChoice = S.Id(ChoiceID).AddChoice(_("Byte order:"), + mEndianChoice = S.Id(ChoiceID).AddChoice(XO("Byte order:"), endians, endian); - mChannelChoice = S.Id(ChoiceID).AddChoice(_("Channels:"), + mChannelChoice = S.Id(ChoiceID).AddChoice(XO("Channels:"), chans, mChannels - 1); } diff --git a/src/prefs/DevicePrefs.cpp b/src/prefs/DevicePrefs.cpp index ac757ea3e..a4b5e5838 100644 --- a/src/prefs/DevicePrefs.cpp +++ b/src/prefs/DevicePrefs.cpp @@ -134,7 +134,7 @@ void DevicePrefs::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2); { S.Id(HostID); - mHost = S.TieChoice( _("&Host:"), + mHost = S.TieChoice( XO("&Host:"), { wxT("/AudioIO/Host"), { ByColumns, mHostNames, mHostLabels } @@ -153,7 +153,7 @@ void DevicePrefs::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2); { S.Id(PlayID); - mPlay = S.AddChoice(_("&Device:"), + mPlay = S.AddChoice(XO("&Device:"), {} ); } S.EndMultiColumn(); @@ -165,11 +165,11 @@ void DevicePrefs::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2); { S.Id(RecordID); - mRecord = S.AddChoice(_("De&vice:"), + mRecord = S.AddChoice(XO("De&vice:"), {} ); S.Id(ChannelsID); - mChannels = S.AddChoice(_("Cha&nnels:"), + mChannels = S.AddChoice(XO("Cha&nnels:"), {} ); } S.EndMultiColumn(); diff --git a/src/prefs/EffectsPrefs.cpp b/src/prefs/EffectsPrefs.cpp index fe63bb11d..b80c839af 100644 --- a/src/prefs/EffectsPrefs.cpp +++ b/src/prefs/EffectsPrefs.cpp @@ -201,7 +201,7 @@ void EffectsPrefs::PopulateOrExchange(ShuttleGui & S) { wxChoice *c = S .MinSize() - .TieChoice( _("S&ort or Group:"), EffectsGroupBy); + .TieChoice( XO("S&ort or Group:"), EffectsGroupBy); S.TieIntegerTextBox(_("&Maximum effects per group (0 to disable):"), {wxT("/Effects/MaxPerGroup"), diff --git a/src/prefs/GUIPrefs.cpp b/src/prefs/GUIPrefs.cpp index 45fae7d65..0e5bcf4a4 100644 --- a/src/prefs/GUIPrefs.cpp +++ b/src/prefs/GUIPrefs.cpp @@ -188,18 +188,18 @@ void GUIPrefs::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2); { - S.TieChoice( _("&Language:"), + S.TieChoice( XO("&Language:"), { wxT("/Locale/Language"), { ByColumns, mLangNames, mLangCodes } } ); - S.TieChoice( _("Location of &Manual:"), GUIManualLocation); + S.TieChoice( XO("Location of &Manual:"), GUIManualLocation); - S.TieChoice( _("Th&eme:"), GUITheme); + S.TieChoice( XO("Th&eme:"), GUITheme); - S.TieChoice( _("Meter dB &range:"), + S.TieChoice( XO("Meter dB &range:"), { ENV_DB_KEY, { ByColumns, mRangeChoices, mRangeCodes }, diff --git a/src/prefs/MidiIOPrefs.cpp b/src/prefs/MidiIOPrefs.cpp index 676aef399..f3656ad54 100644 --- a/src/prefs/MidiIOPrefs.cpp +++ b/src/prefs/MidiIOPrefs.cpp @@ -139,7 +139,7 @@ void MidiIOPrefs::PopulateOrExchange( ShuttleGui & S ) { { S.Id(HostID); /* i18n-hint: (noun) */ - mHost = S.TieChoice( _("&Host:"), + mHost = S.TieChoice( XO("&Host:"), { wxT("/MidiIO/Host"), { ByColumns, mHostNames, mHostLabels } @@ -157,7 +157,7 @@ void MidiIOPrefs::PopulateOrExchange( ShuttleGui & S ) { S.StartMultiColumn(2); { S.Id(PlayID); - mPlay = S.AddChoice(_("&Device:"), + mPlay = S.AddChoice(XO("&Device:"), {} ); mLatency = S.TieIntegerTextBox(_("MIDI Synth L&atency (ms):"), {wxT("/MidiIO/SynthLatency"), @@ -172,12 +172,12 @@ void MidiIOPrefs::PopulateOrExchange( ShuttleGui & S ) { S.StartMultiColumn(2); { S.Id(RecordID); - mRecord = S.AddChoice(_("De&vice:"), + mRecord = S.AddChoice(XO("De&vice:"), {} ); S.Id(ChannelsID); /* - mChannels = S.AddChoice(_("&Channels:"), + mChannels = S.AddChoice(XO("&Channels:"), wxEmptyString, {} ); */ diff --git a/src/prefs/ModulePrefs.cpp b/src/prefs/ModulePrefs.cpp index 183c9b214..b043f413a 100644 --- a/src/prefs/ModulePrefs.cpp +++ b/src/prefs/ModulePrefs.cpp @@ -123,7 +123,7 @@ void ModulePrefs::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn( 2 ); int i; for(i=0;i<(int)mModules.size();i++) - S.TieChoice( mModules[i], + S.TieChoice( Verbatim( mModules[i] ), mStatuses[i], { XO("Disabled" ) , diff --git a/src/prefs/QualityPrefs.cpp b/src/prefs/QualityPrefs.cpp index d42290735..91a5be8a1 100644 --- a/src/prefs/QualityPrefs.cpp +++ b/src/prefs/QualityPrefs.cpp @@ -167,7 +167,7 @@ void QualityPrefs::PopulateOrExchange(ShuttleGui & S) } S.EndHorizontalLay(); - S.TieChoice(_("Default Sample &Format:"), + S.TieChoice(XO("Default Sample &Format:"), formatSetting); } S.EndMultiColumn(); @@ -178,11 +178,11 @@ void QualityPrefs::PopulateOrExchange(ShuttleGui & S) { S.StartMultiColumn(2, wxEXPAND); { - S.TieChoice(_("Sample Rate Con&verter:"), + S.TieChoice(XO("Sample Rate Con&verter:"), Resample::FastMethodSetting); /* i18n-hint: technical term for randomization to reduce undesirable resampling artifacts */ - S.TieChoice(_("&Dither:"), + S.TieChoice(XO("&Dither:"), Dither::FastSetting); } S.EndMultiColumn(); @@ -193,11 +193,11 @@ void QualityPrefs::PopulateOrExchange(ShuttleGui & S) { S.StartMultiColumn(2); { - S.TieChoice(_("Sample Rate Conver&ter:"), + S.TieChoice(XO("Sample Rate Conver&ter:"), Resample::BestMethodSetting); /* i18n-hint: technical term for randomization to reduce undesirable resampling artifacts */ - S.TieChoice(_("Dit&her:"), + S.TieChoice(XO("Dit&her:"), Dither::BestSetting); } S.EndMultiColumn(); diff --git a/src/prefs/SpectrumPrefs.cpp b/src/prefs/SpectrumPrefs.cpp index 1c80a8bf2..9b1a46c5b 100644 --- a/src/prefs/SpectrumPrefs.cpp +++ b/src/prefs/SpectrumPrefs.cpp @@ -188,7 +188,7 @@ void SpectrumPrefs::PopulateOrExchange(ShuttleGui & S) { S.SetStretchyCol( 0 ); S.SetStretchyCol( 1 ); - S.Id(ID_SCALE).TieChoice(_("S&cale:"), + S.Id(ID_SCALE).TieChoice(XO("S&cale:"), mTempSettings.scaleType, SpectrogramSettings::GetScaleNames() ); mMinFreq = @@ -238,11 +238,11 @@ void SpectrumPrefs::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2); { mAlgorithmChoice = - S.Id(ID_ALGORITHM).TieChoice(_("A&lgorithm:"), + S.Id(ID_ALGORITHM).TieChoice(XO("A&lgorithm:"), mTempSettings.algorithm, SpectrogramSettings::GetAlgorithmNames() ); - S.Id(ID_WINDOW_SIZE).TieChoice(_("Window &size:"), + S.Id(ID_WINDOW_SIZE).TieChoice(XO("Window &size:"), mTempSettings.windowSize, { XO("8 - most wideband"), @@ -261,13 +261,13 @@ void SpectrumPrefs::PopulateOrExchange(ShuttleGui & S) } ); - S.Id(ID_WINDOW_TYPE).TieChoice(_("Window &type:"), + S.Id(ID_WINDOW_TYPE).TieChoice(XO("Window &type:"), mTempSettings.windowType, mTypeChoices); #ifdef EXPERIMENTAL_ZERO_PADDED_SPECTROGRAMS mZeroPaddingChoiceCtrl = - S.Id(ID_PADDING_SIZE).TieChoice(_("&Zero padding factor:"), + S.Id(ID_PADDING_SIZE).TieChoice(XO("&Zero padding factor:"), mTempSettings.zeroPaddingFactor, mZeroPaddingChoices); #endif diff --git a/src/prefs/TracksBehaviorsPrefs.cpp b/src/prefs/TracksBehaviorsPrefs.cpp index 789a3d6c8..4a30820b0 100644 --- a/src/prefs/TracksBehaviorsPrefs.cpp +++ b/src/prefs/TracksBehaviorsPrefs.cpp @@ -115,7 +115,7 @@ void TracksBehaviorsPrefs::PopulateOrExchange(ShuttleGui & S) S.StartMultiColumn(2); { - S.TieChoice( _("Solo &Button:"), TracksBehaviorsSolo); + S.TieChoice( XO("Solo &Button:"), TracksBehaviorsSolo); } S.EndMultiColumn(); } diff --git a/src/prefs/TracksPrefs.cpp b/src/prefs/TracksPrefs.cpp index 048e84716..578849a13 100644 --- a/src/prefs/TracksPrefs.cpp +++ b/src/prefs/TracksPrefs.cpp @@ -299,10 +299,10 @@ void TracksPrefs::PopulateOrExchange(ShuttleGui & S) 30 ); #endif - S.TieChoice(_("Default &view mode:"), + S.TieChoice(XO("Default &view mode:"), viewModeSetting ); - S.TieChoice(_("Display &samples:"), + S.TieChoice(XO("Display &samples:"), sampleDisplaySetting ); S.TieTextBox(_("Default audio track &name:"), @@ -318,10 +318,10 @@ void TracksPrefs::PopulateOrExchange(ShuttleGui & S) { S.StartMultiColumn(4); { - S.TieChoice(_("Preset 1:"), + S.TieChoice(XO("Preset 1:"), zoom1Setting ); - S.TieChoice(_("Preset 2:"), + S.TieChoice(XO("Preset 2:"), zoom2Setting ); } } diff --git a/src/prefs/WaveformPrefs.cpp b/src/prefs/WaveformPrefs.cpp index 2b7db2c77..d03694fc2 100644 --- a/src/prefs/WaveformPrefs.cpp +++ b/src/prefs/WaveformPrefs.cpp @@ -108,12 +108,12 @@ void WaveformPrefs::PopulateOrExchange(ShuttleGui & S) S.StartTwoColumn(); { mScaleChoice = - S.Id(ID_SCALE).TieChoice(_("S&cale:"), + S.Id(ID_SCALE).TieChoice(XO("S&cale:"), mTempSettings.scaleType, WaveformSettings::GetScaleNames() ); mRangeChoice = - S.Id(ID_RANGE).TieChoice(_("Waveform dB &range:"), + S.Id(ID_RANGE).TieChoice(XO("Waveform dB &range:"), mTempSettings.dBRange, mRangeChoices); } diff --git a/src/toolbars/DeviceToolBar.cpp b/src/toolbars/DeviceToolBar.cpp index f24ed2fe8..50a9d4a8f 100644 --- a/src/toolbars/DeviceToolBar.cpp +++ b/src/toolbars/DeviceToolBar.cpp @@ -845,7 +845,7 @@ void DeviceToolBar::ShowComboDialog(wxChoice *combo, const TranslatableString &t { S.StartHorizontalLay(wxCENTER, false); { - c = S.AddChoice(combo->GetName(), + c = S.AddChoice( Verbatim( combo->GetName() ), transform_container( inputSources, Verbatim ), combo->GetSelection()); }