mirror of
https://github.com/cookiengineer/audacity
synced 2025-09-18 00:50:52 +02:00
TranslatableString for prompts of choice controls
This commit is contained in:
parent
1944ac2040
commit
21e7b9f2de
@ -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.*/
|
||||
|
@ -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);
|
||||
|
@ -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);
|
||||
}
|
||||
|
@ -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<int> * pInternalChoices,
|
||||
|
@ -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<int> * 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 );
|
||||
|
@ -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") ,
|
||||
|
@ -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();
|
||||
|
@ -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<int> * 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<int> * 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();
|
||||
|
@ -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();
|
||||
}
|
||||
|
@ -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);
|
||||
}
|
||||
|
@ -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();
|
||||
}
|
||||
|
@ -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 );
|
||||
}
|
||||
|
@ -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 );
|
||||
|
@ -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"))
|
||||
|
@ -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();
|
||||
|
||||
|
@ -369,7 +369,7 @@ void EffectDistortion::PopulateOrExchange(ShuttleGui & S)
|
||||
mTypeChoiceCtrl = S.Id(ID_Type)
|
||||
.MinSize( { -1, -1 } )
|
||||
.Validator<wxGenericValidator>(&mParams.mTableChoiceIndx)
|
||||
.AddChoice(_("Distortion type:"),
|
||||
.AddChoice(XO("Distortion type:"),
|
||||
Msgids(kTableTypeStrings, nTableTypes));
|
||||
|
||||
mDCBlockCheckBox = S.Id(ID_DCBlock).AddCheckBox(_("DC blocking filter"),
|
||||
|
@ -226,7 +226,7 @@ void EffectNoise::PopulateOrExchange(ShuttleGui & S)
|
||||
S.StartMultiColumn(2, wxCENTER);
|
||||
{
|
||||
S.Validator<wxGenericValidator>(&mType)
|
||||
.AddChoice(_("Noise type:"), Msgids(kTypeStrings, nTypes));
|
||||
.AddChoice(XO("Noise type:"), Msgids(kTypeStrings, nTypes));
|
||||
|
||||
S.Validator<FloatingPointValidator<double>>(
|
||||
6, &mAmp, NumValidatorStyle::NO_TRAILING_ZEROES, MIN_Amp, MAX_Amp
|
||||
|
@ -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;
|
||||
|
@ -465,7 +465,7 @@ void EffectScienFilter::PopulateOrExchange(ShuttleGui & S)
|
||||
.Focus()
|
||||
.Validator<wxGenericValidator>(&mFilterType)
|
||||
.MinSize( { -1, -1 } )
|
||||
.AddChoice(_("&Filter Type:"),
|
||||
.AddChoice(XO("&Filter Type:"),
|
||||
Msgids(kTypeStrings, nTypes)
|
||||
);
|
||||
|
||||
@ -473,7 +473,7 @@ void EffectScienFilter::PopulateOrExchange(ShuttleGui & S)
|
||||
.Validator<wxGenericValidator>(&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<wxGenericValidator>(&mFilterSubtype)
|
||||
.MinSize( { -1, -1 } )
|
||||
.AddChoice(_("&Subtype:"),
|
||||
.AddChoice(XO("&Subtype:"),
|
||||
Msgids(kSubTypeStrings, nSubTypes)
|
||||
);
|
||||
|
||||
|
@ -341,7 +341,7 @@ void EffectToneGen::PopulateOrExchange(ShuttleGui & S)
|
||||
S.StartMultiColumn(2, wxCENTER);
|
||||
{
|
||||
S.Validator<wxGenericValidator>(&mWaveform)
|
||||
.AddChoice(_("Waveform:"),
|
||||
.AddChoice(XO("Waveform:"),
|
||||
Msgids( kWaveStrings, nWaveforms ) );
|
||||
|
||||
if (mChirp)
|
||||
@ -422,7 +422,7 @@ void EffectToneGen::PopulateOrExchange(ShuttleGui & S)
|
||||
S.EndHorizontalLay();
|
||||
|
||||
S.Validator<wxGenericValidator>(&mInterpolation)
|
||||
.AddChoice(_("Interpolation:"),
|
||||
.AddChoice(XO("Interpolation:"),
|
||||
Msgids( kInterStrings, nInterpolations ) );
|
||||
}
|
||||
else
|
||||
|
@ -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") });
|
||||
}
|
||||
|
@ -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++)
|
||||
|
@ -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
|
||||
|
@ -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();
|
||||
}
|
||||
|
@ -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,
|
||||
|
@ -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) {
|
||||
|
@ -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"),
|
||||
{
|
||||
|
@ -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);
|
||||
}
|
||||
|
@ -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);
|
||||
}
|
||||
|
@ -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();
|
||||
|
@ -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"),
|
||||
|
@ -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 },
|
||||
|
@ -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,
|
||||
{} );
|
||||
*/
|
||||
|
@ -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" ) ,
|
||||
|
@ -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();
|
||||
|
@ -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
|
||||
|
@ -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();
|
||||
}
|
||||
|
@ -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 );
|
||||
}
|
||||
}
|
||||
|
@ -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);
|
||||
}
|
||||
|
@ -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<TranslatableStrings>( inputSources, Verbatim ),
|
||||
combo->GetSelection());
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user