TranslatableString for captions of text entry boxes

This commit is contained in:
Paul Licameli 2019-12-22 16:26:56 -05:00
parent b404eb7800
commit 5168d62e3d
59 changed files with 221 additions and 198 deletions

View File

@ -87,7 +87,7 @@ void MacroCommandDialog::PopulateOrExchange(ShuttleGui &S)
S.StartMultiColumn(4, wxEXPAND);
{
S.SetStretchyCol(1);
mCommand = S.AddTextBox(_("&Command"), wxT(""), 20);
mCommand = S.AddTextBox(XO("&Command"), wxT(""), 20);
mCommand->SetEditable(false);
mEditParams = S.Id(EditParamsButtonID)
.Disable() // disable button as box is empty
@ -101,7 +101,7 @@ void MacroCommandDialog::PopulateOrExchange(ShuttleGui &S)
S.StartMultiColumn(2, wxEXPAND);
{
S.SetStretchyCol(1);
mParameters = S.AddTextBox(_("&Parameters"), wxT(""), 0);
mParameters = S.AddTextBox(XO("&Parameters"), wxT(""), 0);
mParameters->SetEditable(false);
auto prompt = XO("&Details");
S.Prop(0).AddPrompt(prompt.Translation());

View File

@ -172,21 +172,21 @@ void BenchmarkDialog::MakeBenchmarkDialog()
//
S.Id(BlockSizeID)
.Validator<wxTextValidator>(wxFILTER_NUMERIC, &mBlockSizeStr)
.AddTextBox(_("Disk Block Size (KB):"),
.AddTextBox(XO("Disk Block Size (KB):"),
wxT(""),
12);
//
S.Id(NumEditsID)
.Validator<wxTextValidator>(wxFILTER_NUMERIC, &mNumEditsStr)
.AddTextBox(_("Number of Edits:"),
.AddTextBox(XO("Number of Edits:"),
wxT(""),
12);
//
S.Id(DataSizeID)
.Validator<wxTextValidator>(wxFILTER_NUMERIC, &mDataSizeStr)
.AddTextBox(_("Test Data Size (MB):"),
.AddTextBox(XO("Test Data Size (MB):"),
wxT(""),
12);
@ -195,7 +195,7 @@ void BenchmarkDialog::MakeBenchmarkDialog()
.Validator<wxTextValidator>(wxFILTER_NUMERIC, &mRandSeedStr)
/* i18n-hint: A "seed" is a number that initializes a
pseudorandom number generating algorithm */
.AddTextBox(_("Random Seed:"),
.AddTextBox(XO("Random Seed:"),
wxT(""),
12);

View File

@ -99,12 +99,12 @@ HistoryDialog::HistoryDialog(AudacityProject *parent, UndoManager *manager):
{
mTotal = S.Id(ID_TOTAL)
.ConnectRoot(wxEVT_KEY_DOWN, &HistoryDialog::OnChar)
.AddTextBox(_("&Total space used"), wxT("0"), 10);
.AddTextBox(XO("&Total space used"), wxT("0"), 10);
S.AddVariableText( {} )->Hide();
mAvail = S.Id(ID_AVAIL)
.ConnectRoot(wxEVT_KEY_DOWN, &HistoryDialog::OnChar)
.AddTextBox(_("&Undo levels available"), wxT("0"), 10);
.AddTextBox(XO("&Undo levels available"), wxT("0"), 10);
S.AddVariableText( {} )->Hide();
S.AddPrompt(_("&Levels to discard"));
@ -123,7 +123,7 @@ HistoryDialog::HistoryDialog(AudacityProject *parent, UndoManager *manager):
mClipboard = S
.ConnectRoot(wxEVT_KEY_DOWN, &HistoryDialog::OnChar)
.AddTextBox(_("Clipboard space used"), wxT("0"), 10);
.AddTextBox(XO("Clipboard space used"), wxT("0"), 10);
S.Id(ID_DISCARD_CLIPBOARD).AddButton(XO("Discard"));
}
S.EndMultiColumn();

View File

@ -329,7 +329,7 @@ void ScreenshotBigDialog::PopulateOrExchange(ShuttleGui & S)
mDirectoryTextBox =
S.Id(IdDirectory).AddTextBox(
_("Save images to:"),
XO("Save images to:"),
gPrefs->Read(wxT("/ScreenshotPath"), wxFileName::GetHomeDir()),
30
);

View File

@ -586,10 +586,12 @@ wxSpinCtrl * ShuttleGuiBase::AddSpinCtrl(const wxString &Prompt, int Value, int
return pSpinCtrl;
}
wxTextCtrl * ShuttleGuiBase::AddTextBox(const wxString &Caption, const wxString &Value, const int nChars)
wxTextCtrl * ShuttleGuiBase::AddTextBox(
const TranslatableString &Caption, const wxString &Value, const int nChars)
{
HandleOptionality( Caption );
AddPrompt( Caption );
const auto translated = Caption.Translation();
HandleOptionality( translated );
AddPrompt( translated );
UseUpId();
if( mShuttleMode != eIsCreating )
return wxDynamicCast(wxWindow::FindWindowById( miId, mpDlg), wxTextCtrl);
@ -613,15 +615,17 @@ wxTextCtrl * ShuttleGuiBase::AddTextBox(const wxString &Caption, const wxString
// so that name can be set on a standard control
mpWind->SetAccessible(safenew WindowAccessible(mpWind));
#endif
mpWind->SetName(wxStripMenuCodes(Caption));
mpWind->SetName(wxStripMenuCodes(translated));
UpdateSizers();
return pTextCtrl;
}
wxTextCtrl * ShuttleGuiBase::AddNumericTextBox(const wxString &Caption, const wxString &Value, const int nChars)
wxTextCtrl * ShuttleGuiBase::AddNumericTextBox(
const TranslatableString &Caption, const wxString &Value, const int nChars)
{
HandleOptionality( Caption );
AddPrompt( Caption );
const auto translated = Caption.Translation();
HandleOptionality( translated );
AddPrompt( translated );
UseUpId();
if( mShuttleMode != eIsCreating )
return wxDynamicCast(wxWindow::FindWindowById( miId, mpDlg), wxTextCtrl);
@ -648,7 +652,7 @@ wxTextCtrl * ShuttleGuiBase::AddNumericTextBox(const wxString &Caption, const wx
// so that name can be set on a standard control
mpWind->SetAccessible(safenew WindowAccessible(mpWind));
#endif
mpWind->SetName(wxStripMenuCodes(Caption));
mpWind->SetName(wxStripMenuCodes(translated));
UpdateSizers();
return pTextCtrl;
}
@ -1329,9 +1333,10 @@ wxSpinCtrl * ShuttleGuiBase::DoTieSpinCtrl( const wxString &Prompt, WrappedType
return pSpinCtrl;
}
wxTextCtrl * ShuttleGuiBase::DoTieTextBox( const wxString &Prompt, WrappedType & WrappedRef, const int nChars)
wxTextCtrl * ShuttleGuiBase::DoTieTextBox(
const TranslatableString &Prompt, WrappedType & WrappedRef, const int nChars)
{
HandleOptionality( Prompt );
HandleOptionality( Prompt.Translation() );
// The Add function does a UseUpId(), so don't do it here in that case.
if( mShuttleMode == eIsCreating )
return AddTextBox( Prompt, WrappedRef.ReadAsString(), nChars );
@ -1366,9 +1371,10 @@ wxTextCtrl * ShuttleGuiBase::DoTieTextBox( const wxString &Prompt, WrappedType &
return pTextBox;
}
wxTextCtrl * ShuttleGuiBase::DoTieNumericTextBox( const wxString &Prompt, WrappedType & WrappedRef, const int nChars)
wxTextCtrl * ShuttleGuiBase::DoTieNumericTextBox(
const TranslatableString &Prompt, WrappedType & WrappedRef, const int nChars)
{
HandleOptionality( Prompt );
HandleOptionality( Prompt.Translation() );
// The Add function does a UseUpId(), so don't do it here in that case.
if( mShuttleMode == eIsCreating )
return AddNumericTextBox( Prompt, WrappedRef.ReadAsString(), nChars );
@ -1622,31 +1628,36 @@ wxSpinCtrl * ShuttleGuiBase::TieSpinCtrl( const wxString &Prompt, int &Value, co
return DoTieSpinCtrl( Prompt, WrappedRef, max, min );
}
wxTextCtrl * ShuttleGuiBase::TieTextBox( const wxString &Prompt, wxString &Selected, const int nChars)
wxTextCtrl * ShuttleGuiBase::TieTextBox(
const TranslatableString &Prompt, wxString &Selected, const int nChars)
{
WrappedType WrappedRef(Selected);
return DoTieTextBox( Prompt, WrappedRef, nChars );
}
wxTextCtrl * ShuttleGuiBase::TieTextBox( const wxString &Prompt, int &Selected, const int nChars)
wxTextCtrl * ShuttleGuiBase::TieTextBox(
const TranslatableString &Prompt, int &Selected, const int nChars)
{
WrappedType WrappedRef( Selected );
return DoTieTextBox( Prompt, WrappedRef, nChars );
}
wxTextCtrl * ShuttleGuiBase::TieTextBox( const wxString &Prompt, double &Value, const int nChars)
wxTextCtrl * ShuttleGuiBase::TieTextBox(
const TranslatableString &Prompt, double &Value, const int nChars)
{
WrappedType WrappedRef( Value );
return DoTieTextBox( Prompt, WrappedRef, nChars );
}
wxTextCtrl * ShuttleGuiBase::TieNumericTextBox( const wxString &Prompt, int &Value, const int nChars)
wxTextCtrl * ShuttleGuiBase::TieNumericTextBox(
const TranslatableString &Prompt, int &Value, const int nChars)
{
WrappedType WrappedRef( Value );
return DoTieNumericTextBox( Prompt, WrappedRef, nChars );
}
wxTextCtrl * ShuttleGuiBase::TieNumericTextBox( const wxString &Prompt, double &Value, const int nChars)
wxTextCtrl * ShuttleGuiBase::TieNumericTextBox(
const TranslatableString &Prompt, double &Value, const int nChars)
{
WrappedType WrappedRef( Value );
return DoTieNumericTextBox( Prompt, WrappedRef, nChars );
@ -1877,7 +1888,7 @@ wxSpinCtrl * ShuttleGuiBase::TieSpinCtrl(
/// Variant of the standard TieTextBox which does the two step exchange
/// between gui and stack variable and stack variable and shuttle.
wxTextCtrl * ShuttleGuiBase::TieTextBox(
const wxString & Prompt,
const TranslatableString & Prompt,
const SettingSpec< wxString > &Setting,
const int nChars)
{
@ -1895,7 +1906,7 @@ wxTextCtrl * ShuttleGuiBase::TieTextBox(
/// between gui and stack variable and stack variable and shuttle.
/// This one does it for double values...
wxTextCtrl * ShuttleGuiBase::TieIntegerTextBox(
const wxString & Prompt,
const TranslatableString & Prompt,
const SettingSpec< int > &Setting,
const int nChars)
{
@ -1913,7 +1924,7 @@ wxTextCtrl * ShuttleGuiBase::TieIntegerTextBox(
/// between gui and stack variable and stack variable and shuttle.
/// This one does it for double values...
wxTextCtrl * ShuttleGuiBase::TieNumericTextBox(
const wxString & Prompt,
const TranslatableString & Prompt,
const SettingSpec< double > &Setting,
const int nChars)
{

View File

@ -300,8 +300,12 @@ public:
wxStaticText * AddVariableText(
const wxString &Str, bool bCenter = false,
int PositionFlags = 0, int wrapWidth = 0);
wxTextCtrl * AddTextBox(const wxString &Caption, const wxString &Value, const int nChars);
wxTextCtrl * AddNumericTextBox(const wxString &Caption, const wxString &Value, const int nChars);
wxTextCtrl * AddTextBox(
const TranslatableString &Caption,
const wxString &Value, const int nChars);
wxTextCtrl * AddNumericTextBox(
const TranslatableString &Caption,
const wxString &Value, const int nChars);
wxTextCtrl * AddTextWindow(const wxString &Value);
wxListBox * AddListBox(const wxArrayStringEx &choices);
@ -389,12 +393,15 @@ public:
//-- Tie functions both add controls and also read/write to them.
wxTextCtrl * TieTextBox( const wxString &Caption, wxString & Value, const int nChars=0);
wxTextCtrl * TieTextBox( const wxString &Prompt, int &Selected, const int nChars=0);
wxTextCtrl * TieTextBox( const wxString &Prompt, double &Value, const int nChars=0);
wxTextCtrl * TieTextBox(
const TranslatableString &Caption, wxString & Value, const int nChars=0);
wxTextCtrl * TieTextBox(
const TranslatableString &Prompt, int &Selected, const int nChars=0);
wxTextCtrl * TieTextBox(
const TranslatableString &Prompt, double &Value, const int nChars=0);
wxTextCtrl * TieNumericTextBox( const wxString &Prompt, int &Value, const int nChars=0);
wxTextCtrl * TieNumericTextBox( const wxString &Prompt, double &Value, const int nChars=0);
wxTextCtrl * TieNumericTextBox( const TranslatableString &Prompt, int &Value, const int nChars=0);
wxTextCtrl * TieNumericTextBox( const TranslatableString &Prompt, double &Value, const int nChars=0);
wxCheckBox * TieCheckBox( const wxString &Prompt, bool & Var );
wxCheckBox * TieCheckBoxOnRight( const wxString & Prompt, bool & Var );
@ -444,15 +451,15 @@ public:
int iNoMatchSelector = 0 );
virtual wxTextCtrl * TieTextBox(
const wxString &Prompt,
const TranslatableString &Prompt,
const SettingSpec< wxString > &Setting,
const int nChars);
virtual wxTextCtrl * TieIntegerTextBox(
const wxString & Prompt,
const TranslatableString & Prompt,
const SettingSpec< int > &Setting,
const int nChars);
virtual wxTextCtrl * TieNumericTextBox(
const wxString & Prompt,
const TranslatableString & Prompt,
const SettingSpec< double > &Setting,
const int nChars);
virtual wxSlider * TieSlider(
@ -536,8 +543,11 @@ protected:
private:
void DoDataShuttle( const wxString &Name, WrappedType & WrappedRef );
wxCheckBox * DoTieCheckBoxOnRight( const wxString & Prompt, WrappedType & WrappedRef );
wxTextCtrl * DoTieTextBox( const wxString &Prompt, WrappedType & WrappedRef, const int nChars);
wxTextCtrl * DoTieNumericTextBox( const wxString &Prompt, WrappedType & WrappedRef, const int nChars);
wxTextCtrl * DoTieTextBox(
const TranslatableString &Prompt,
WrappedType & WrappedRef, const int nChars);
wxTextCtrl * DoTieNumericTextBox(
const TranslatableString &Prompt, WrappedType & WrappedRef, const int nChars);
wxCheckBox * DoTieCheckBox( const wxString &Prompt, WrappedType & WrappedRef );
wxChoice * DoTieChoice(
const TranslatableString &Prompt, WrappedType & WrappedRef,

View File

@ -52,7 +52,7 @@ void CompareAudioCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(_("Threshold:"),errorThreshold);
S.TieTextBox(XO("Threshold:"),errorThreshold);
}
S.EndMultiColumn();
}

View File

@ -49,8 +49,8 @@ void DemoCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(_("Delay time (seconds):"),delay);
S.TieTextBox(_("Decay factor:"),decay);
S.TieTextBox(XO("Delay time (seconds):"),delay);
S.TieTextBox(XO("Decay factor:"),decay);
}
S.EndMultiColumn();
}

View File

@ -67,12 +67,12 @@ void DragCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxALIGN_CENTER);
{
/* i18n-hint abbreviates "Identity" or "Identifier" */
S.Optional( bHasId ).TieNumericTextBox( _("Id:"), mId );
S.Optional( bHasWinName ).TieTextBox( _("Window Name:"), mWinName );
S.Optional( bHasFromX ).TieNumericTextBox( _("From X:"), mFromX );
S.Optional( bHasFromY ).TieNumericTextBox( _("From Y:"), mFromY );
S.Optional( bHasToX ).TieNumericTextBox( _("To X:"), mToX );
S.Optional( bHasToY ).TieNumericTextBox( _("To Y:"), mToY );
S.Optional( bHasId ).TieNumericTextBox( XO("Id:"), mId );
S.Optional( bHasWinName ).TieTextBox( XO("Window Name:"), mWinName );
S.Optional( bHasFromX ).TieNumericTextBox( XO("From X:"), mFromX );
S.Optional( bHasFromY ).TieNumericTextBox( XO("From Y:"), mFromY );
S.Optional( bHasToX ).TieNumericTextBox( XO("To X:"), mToX );
S.Optional( bHasToY ).TieNumericTextBox( XO("To Y:"), mToY );
S.Optional( bHasRelativeTo ).TieChoice( XO("Relative To:"), mRelativeTo,
Msgids( kCoordTypeStrings, nCoordTypes ) );
}

View File

@ -212,15 +212,15 @@ public:
const std::vector<int> * pInternalChoices, int iNoMatchSelector ) override;
wxTextCtrl * TieTextBox(
const wxString &Prompt,
const TranslatableString &Prompt,
const SettingSpec< wxString > &Setting,
const int nChars) override;
wxTextCtrl * TieIntegerTextBox(
const wxString & Prompt,
const TranslatableString & Prompt,
const SettingSpec< int > &Setting,
const int nChars) override;
wxTextCtrl * TieNumericTextBox(
const wxString & Prompt,
const TranslatableString & Prompt,
const SettingSpec< double > &Setting,
const int nChars) override;
wxSlider * TieSlider(
@ -289,39 +289,39 @@ wxChoice * ShuttleGuiGetDefinition::TieNumberAsChoice(
Prompt, Setting, Choices, pInternalChoices, iNoMatchSelector );
}
wxTextCtrl * ShuttleGuiGetDefinition::TieTextBox(
const wxString &Prompt,
const TranslatableString &Prompt,
const SettingSpec< wxString > &Setting,
const int nChars)
{
StartStruct();
AddItem( Setting.GetPath(), "id" );
AddItem( Prompt, "prompt" );
AddItem( Prompt.Translation(), "prompt" );
AddItem( "string", "type" );
AddItem( Setting.GetDefault(), "default" );
EndStruct();
return ShuttleGui::TieTextBox( Prompt, Setting, nChars );
}
wxTextCtrl * ShuttleGuiGetDefinition::TieIntegerTextBox(
const wxString & Prompt,
const TranslatableString & Prompt,
const SettingSpec< int > &Setting,
const int nChars)
{
StartStruct();
AddItem( Setting.GetPath(), "id" );
AddItem( Prompt, "prompt" );
AddItem( Prompt.Translation(), "prompt" );
AddItem( "number", "type" );
AddItem( Setting.GetDefault(), "default" );
EndStruct();
return ShuttleGui::TieIntegerTextBox( Prompt, Setting, nChars );
}
wxTextCtrl * ShuttleGuiGetDefinition::TieNumericTextBox(
const wxString & Prompt,
const TranslatableString & Prompt,
const SettingSpec< double > &Setting,
const int nChars)
{
StartStruct();
AddItem( Setting.GetPath(), "id" );
AddItem( Prompt, "prompt" );
AddItem( Prompt.Translation(), "prompt" );
AddItem( "number", "type" );
AddItem( Setting.GetDefault(), "default" );
EndStruct();

View File

@ -33,7 +33,7 @@ void HelpCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(_("Command:"),mCommandName);
S.TieTextBox(XO("Command:"),mCommandName);
}
S.EndMultiColumn();
}

View File

@ -35,7 +35,7 @@ void ImportCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(_("File Name:"),mFileName);
S.TieTextBox(XO("File Name:"),mFileName);
}
S.EndMultiColumn();
}
@ -58,8 +58,8 @@ void ExportCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(_("File Name:"),mFileName);
S.TieTextBox(_("Number of Channels:"),mnChannels);
S.TieTextBox(XO("File Name:"),mFileName);
S.TieTextBox(XO("Number of Channels:"),mnChannels);
}
S.EndMultiColumn();
}

View File

@ -31,7 +31,7 @@ void MessageCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(_("Text:"),mMessage,60);
S.TieTextBox(XO("Text:"),mMessage,60);
}
S.EndMultiColumn();
}

View File

@ -38,7 +38,7 @@ void OpenProjectCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(_("File Name:"),mFileName);
S.TieTextBox(XO("File Name:"),mFileName);
S.TieCheckBox(_("Add to History"), mbAddToHistory );
}
S.EndMultiColumn();
@ -78,7 +78,7 @@ void SaveProjectCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(_("File Name:"),mFileName);
S.TieTextBox(XO("File Name:"),mFileName);
S.TieCheckBox(_("Add to History:"), mbAddToHistory );
S.TieCheckBox(_("Compress:"), mbCompress );
}

View File

@ -35,7 +35,7 @@ void GetPreferenceCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(_("Name:"),mName);
S.TieTextBox(XO("Name:"),mName);
}
S.EndMultiColumn();
}
@ -64,8 +64,8 @@ void SetPreferenceCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(_("Name:"),mName);
S.TieTextBox(_("Value:"),mValue);
S.TieTextBox(XO("Name:"),mName);
S.TieTextBox(XO("Value:"),mValue);
S.TieCheckBox(_("Reload:"),mbReload);
}
S.EndMultiColumn();

View File

@ -119,7 +119,7 @@ void ScreenshotCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox( _("Path:"), mPath);
S.TieTextBox( XO("Path:"), mPath);
S.TieChoice( XO("Capture What:"),
mWhat, Msgids(kCaptureWhatStrings, nCaptureWhats));
S.TieChoice( XO("Background:"),

View File

@ -73,8 +73,8 @@ void SelectTimeCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasT0 ).TieTextBox(_("Start Time:"), mT0);
S.Optional( bHasT1 ).TieTextBox(_("End Time:"), mT1);
S.Optional( bHasT0 ).TieTextBox(XO("Start Time:"), mT0);
S.Optional( bHasT1 ).TieTextBox(XO("End Time:"), mT1);
// Chooses what time is relative to.
S.Optional( bHasRelativeSpec ).TieChoice(
XO("Relative To:"),
@ -149,8 +149,8 @@ void SelectFrequenciesCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasTop ).TieTextBox(_("High:"), mTop);
S.Optional( bHasBottom ).TieTextBox(_("Low:"), mBottom);
S.Optional( bHasTop ).TieTextBox(XO("High:"), mTop);
S.Optional( bHasBottom ).TieTextBox(XO("Low:"), mBottom);
}
S.EndMultiColumn();
}
@ -196,8 +196,8 @@ void SelectTracksCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasFirstTrack).TieTextBox(_("First Track:"),mFirstTrack);
S.Optional( bHasNumTracks).TieTextBox(_("Track Count:"),mNumTracks);
S.Optional( bHasFirstTrack).TieTextBox(XO("First Track:"),mFirstTrack);
S.Optional( bHasNumTracks).TieTextBox(XO("Track Count:"),mNumTracks);
}
S.EndMultiColumn();
S.StartMultiColumn(2, wxALIGN_CENTER);

View File

@ -61,10 +61,10 @@ void SetClipCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxALIGN_CENTER);
{
S.Optional( bHasContainsTime).TieNumericTextBox( _("At:"), mContainsTime );
S.Optional( bHasContainsTime).TieNumericTextBox( XO("At:"), mContainsTime );
S.Optional( bHasColour ).TieChoice( XO("Colour:"), mColour,
Msgids( kColourStrings, nColours ) );
S.Optional( bHasT0 ).TieNumericTextBox( _("Start:"), mT0 );
S.Optional( bHasT0 ).TieNumericTextBox( XO("Start:"), mT0 );
}
S.EndMultiColumn();
}

View File

@ -43,8 +43,8 @@ void SetEnvelopeCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxALIGN_CENTER);
{
S.Optional( bHasT ).TieNumericTextBox( _("Time:"), mT );
S.Optional( bHasV ).TieNumericTextBox( _("Value:"), mV );
S.Optional( bHasT ).TieNumericTextBox( XO("Time:"), mT );
S.Optional( bHasV ).TieNumericTextBox( XO("Value:"), mV );
S.Optional( bHasDelete ).TieCheckBox( _("Delete:"), mbDelete );
}
S.EndMultiColumn();

View File

@ -47,14 +47,14 @@ void SetLabelCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieNumericTextBox( _("Label Index"), mLabelIndex );
S.TieNumericTextBox( XO("Label Index"), mLabelIndex );
}
S.EndMultiColumn();
S.StartMultiColumn(3, wxALIGN_CENTER);
{
S.Optional( bHasText ).TieTextBox( _("Text:"), mText );
S.Optional( bHasT0 ).TieNumericTextBox( _("Start:"), mT0 );
S.Optional( bHasT1 ).TieNumericTextBox( _("End:"), mT1 );
S.Optional( bHasText ).TieTextBox( XO("Text:"), mText );
S.Optional( bHasT0 ).TieNumericTextBox( XO("Start:"), mT0 );
S.Optional( bHasT1 ).TieNumericTextBox( XO("End:"), mT1 );
S.Optional( bHasSelected ).TieCheckBox( _("Selected:"), mbSelected );
}
S.EndMultiColumn();

View File

@ -49,18 +49,18 @@ void SetProjectCommand::PopulateOrExchange(ShuttleGui & S)
S.AddSpace(0, 5);
S.StartMultiColumn(3, wxALIGN_CENTER);
{
S.Optional( bHasName ).TieTextBox( _("Name:"), mName );
S.Optional( bHasRate ).TieTextBox( _("Rate:"), mRate );
S.Optional( bHasName ).TieTextBox( XO("Name:"), mName );
S.Optional( bHasRate ).TieTextBox( XO("Rate:"), mRate );
S.TieCheckBox( _("Resize:"), bHasSizing );
S.AddSpace(0,0);
}
S.EndMultiColumn();
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieNumericTextBox( _("X:"), mPosX );
S.TieNumericTextBox( _("Y:"), mPosY );
S.TieNumericTextBox( _("Width:"), mWidth );
S.TieNumericTextBox( _("Height:"), mHeight );
S.TieNumericTextBox( XO("X:"), mPosX );
S.TieNumericTextBox( XO("Y:"), mPosY );
S.TieNumericTextBox( XO("Width:"), mWidth );
S.TieNumericTextBox( XO("Height:"), mHeight );
}
S.EndMultiColumn();
}

View File

@ -86,8 +86,8 @@ void SetTrackBase::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasTrackIndex ).TieNumericTextBox( _("Track Index:"), mTrackIndex );
S.Optional( bHasChannelIndex).TieNumericTextBox( _("Channel Index:"), mChannelIndex );
S.Optional( bHasTrackIndex ).TieNumericTextBox( XO("Track Index:"), mTrackIndex );
S.Optional( bHasChannelIndex).TieNumericTextBox( XO("Channel Index:"), mChannelIndex );
}
S.EndMultiColumn();
#endif
@ -136,7 +136,7 @@ void SetTrackStatusCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasTrackName ).TieTextBox( _("Name:"), mTrackName );
S.Optional( bHasTrackName ).TieTextBox( XO("Name:"), mTrackName );
}
S.EndMultiColumn();
S.StartMultiColumn(2, wxEXPAND);
@ -315,7 +315,7 @@ void SetTrackVisualsCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasHeight ).TieNumericTextBox( _("Height:"), mHeight );
S.Optional( bHasHeight ).TieNumericTextBox( XO("Height:"), mHeight );
S.Optional( bHasColour ).TieChoice( XO("Colour:"), mColour,
Msgids( kColourStrings, nColours ) );
S.Optional( bHasDisplayType ).TieChoice( XO("Display:"), mDisplayType,
@ -324,8 +324,8 @@ void SetTrackVisualsCommand::PopulateOrExchange(ShuttleGui & S)
Msgids( kScaleTypeStrings, nScaleTypes ) );
S.Optional( bHasVZoom ).TieChoice( XO("VZoom:"), mVZoom,
Msgids( kZoomTypeStrings, nZoomTypes ) );
S.Optional( bHasVZoomTop ).TieTextBox( _("VZoom Top:"), mVZoomTop );
S.Optional( bHasVZoomBottom ).TieTextBox( _("VZoom Bottom:"), mVZoomBottom );
S.Optional( bHasVZoomTop ).TieTextBox( XO("VZoom Top:"), mVZoomTop );
S.Optional( bHasVZoomBottom ).TieTextBox( XO("VZoom Bottom:"), mVZoomBottom );
}
S.EndMultiColumn();
S.StartMultiColumn(2, wxEXPAND);

View File

@ -237,7 +237,7 @@ void EffectAmplify::PopulateOrExchange(ShuttleGui & S)
.Validator<FloatingPointValidator<double>>(
precision, &mAmp, NumValidatorStyle::ONE_TRAILING_ZERO, MIN_Amp, MAX_Amp
)
.AddTextBox(_("Amplification (dB):"), wxT(""), 12);
.AddTextBox(XO("Amplification (dB):"), wxT(""), 12);
}
S.EndMultiColumn();
@ -264,7 +264,7 @@ void EffectAmplify::PopulateOrExchange(ShuttleGui & S)
RoundValue( precision + 1, MIN_Amp + LINEAR_TO_DB(mPeak) ),
RoundValue( precision + 1, MAX_Amp + LINEAR_TO_DB(mPeak) )
)
.AddTextBox(_("New Peak Amplitude (dB):"), wxT(""), 12);
.AddTextBox(XO("New Peak Amplitude (dB):"), wxT(""), 12);
}
S.EndMultiColumn();

View File

@ -435,42 +435,42 @@ void EffectAutoDuck::PopulateOrExchange(ShuttleGui & S)
1, &mDuckAmountDb, NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_DuckAmountDb, MAX_DuckAmountDb
)
.AddTextBox(_("Duck amount:"), wxT(""), 10);
.AddTextBox(XO("Duck amount:"), wxT(""), 10);
S.AddUnits(_("dB"));
mMaximumPauseBox = S.Validator<FloatingPointValidator<double>>(
2, &mMaximumPause, NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_MaximumPause, MAX_MaximumPause
)
.AddTextBox(_("Maximum pause:"), wxT(""), 10);
.AddTextBox(XO("Maximum pause:"), wxT(""), 10);
S.AddUnits(_("seconds"));
mOuterFadeDownLenBox = S.Validator<FloatingPointValidator<double>>(
2, &mOuterFadeDownLen, NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_OuterFadeDownLen, MAX_OuterFadeDownLen
)
.AddTextBox(_("Outer fade down length:"), wxT(""), 10);
.AddTextBox(XO("Outer fade down length:"), wxT(""), 10);
S.AddUnits(_("seconds"));
mOuterFadeUpLenBox = S.Validator<FloatingPointValidator<double>>(
2, &mOuterFadeUpLen, NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_OuterFadeUpLen, MAX_OuterFadeUpLen
)
.AddTextBox(_("Outer fade up length:"), wxT(""), 10);
.AddTextBox(XO("Outer fade up length:"), wxT(""), 10);
S.AddUnits(_("seconds"));
mInnerFadeDownLenBox = S.Validator<FloatingPointValidator<double>>(
2, &mInnerFadeDownLen, NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_InnerFadeDownLen, MAX_InnerFadeDownLen
)
.AddTextBox(_("Inner fade down length:"), wxT(""), 10);
.AddTextBox(XO("Inner fade down length:"), wxT(""), 10);
S.AddUnits(_("seconds"));
mInnerFadeUpLenBox = S.Validator<FloatingPointValidator<double>>(
2, &mInnerFadeUpLen, NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_InnerFadeUpLen, MAX_InnerFadeUpLen
)
.AddTextBox(_("Inner fade up length:"), wxT(""), 10);
.AddTextBox(XO("Inner fade up length:"), wxT(""), 10);
S.AddUnits(_("seconds"));
}
S.EndMultiColumn();
@ -481,7 +481,7 @@ void EffectAutoDuck::PopulateOrExchange(ShuttleGui & S)
2, &mThresholdDb, NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_ThresholdDb, MAX_ThresholdDb
)
.AddTextBox(_("Threshold:"), wxT(""), 10);
.AddTextBox(XO("Threshold:"), wxT(""), 10);
S.AddUnits(_("dB"));
}
S.EndMultiColumn();

View File

@ -231,7 +231,7 @@ void EffectBassTreble::PopulateOrExchange(ShuttleGui & S)
.Name(XO("Bass (dB):"))
.Validator<FloatingPointValidator<double>>(
1, &mBass, NumValidatorStyle::DEFAULT, MIN_Bass, MAX_Bass)
.AddTextBox(_("Ba&ss (dB):"), wxT(""), 10);
.AddTextBox(XO("Ba&ss (dB):"), wxT(""), 10);
mBassS = S.Id(ID_Bass)
.Name(XO("Bass"))
@ -242,7 +242,7 @@ void EffectBassTreble::PopulateOrExchange(ShuttleGui & S)
mTrebleT = S.Id(ID_Treble)
.Validator<FloatingPointValidator<double>>(
1, &mTreble, NumValidatorStyle::DEFAULT, MIN_Treble, MAX_Treble)
.AddTextBox(_("&Treble (dB):"), wxT(""), 10);
.AddTextBox(XO("&Treble (dB):"), wxT(""), 10);
mTrebleS = S.Id(ID_Treble)
.Name(XO("Treble"))
@ -263,7 +263,7 @@ void EffectBassTreble::PopulateOrExchange(ShuttleGui & S)
mGainT = S.Id(ID_Gain)
.Validator<FloatingPointValidator<double>>(
1, &mGain, NumValidatorStyle::DEFAULT, MIN_Gain, MAX_Gain)
.AddTextBox(_("&Volume (dB):"), wxT(""), 10);
.AddTextBox(XO("&Volume (dB):"), wxT(""), 10);
mGainS = S.Id(ID_Gain)
.Name(XO("Level"))

View File

@ -308,7 +308,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S)
2, &m_dSemitonesChange,
NumValidatorStyle::TWO_TRAILING_ZEROES
)
.AddTextBox(_("Semitones (half-steps):"), wxT(""), 12);
.AddTextBox(XO("Semitones (half-steps):"), wxT(""), 12);
}
S.EndHorizontalLay();
}
@ -325,7 +325,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES,
0.0
)
.AddTextBox(_("from"), wxT(""), 12);
.AddTextBox(XO("from"), wxT(""), 12);
m_pTextCtrl_ToFrequency = S.Id(ID_ToFrequency)
.Name(XO("to (Hz)"))
@ -334,7 +334,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES,
0.0
)
.AddTextBox(_("to"), wxT(""), 12);
.AddTextBox(XO("to"), wxT(""), 12);
S.AddUnits(_("Hz"));
}
@ -348,7 +348,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES,
MIN_Percentage, MAX_Percentage
)
.AddTextBox(_("Percent Change:"), wxT(""), 12);
.AddTextBox(XO("Percent Change:"), wxT(""), 12);
}
S.EndHorizontalLay();

View File

@ -311,7 +311,7 @@ void EffectChangeSpeed::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES,
MIN_Percentage / 100.0, ((MAX_Percentage / 100.0) + 1)
)
.AddTextBox(_("Speed Multiplier:"), wxT(""), 12);
.AddTextBox(XO("Speed Multiplier:"), wxT(""), 12);
mpTextCtrl_PercentChange = S.Id(ID_PercentChange)
.Validator<FloatingPointValidator<double>>(
@ -319,7 +319,7 @@ void EffectChangeSpeed::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES,
MIN_Percentage, MAX_Percentage
)
.AddTextBox(_("Percent Change:"), wxT(""), 12);
.AddTextBox(XO("Percent Change:"), wxT(""), 12);
}
S.EndMultiColumn();

View File

@ -237,7 +237,7 @@ void EffectChangeTempo::PopulateOrExchange(ShuttleGui & S)
3, &m_PercentChange, NumValidatorStyle::THREE_TRAILING_ZEROES,
MIN_Percentage, MAX_Percentage
)
.AddTextBox(_("Percent Change:"), wxT(""), 12);
.AddTextBox(XO("Percent Change:"), wxT(""), 12);
}
S.EndMultiColumn();
@ -263,7 +263,7 @@ void EffectChangeTempo::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES
| NumValidatorStyle::ZERO_AS_BLANK)
/* i18n-hint: changing a quantity "from" one value "to" another */
.AddTextBox(_("from"), wxT(""), 12);
.AddTextBox(XO("from"), wxT(""), 12);
m_pTextCtrl_ToBPM = S.Id(ID_ToBPM)
/* i18n-hint: changing a quantity "from" one value "to" another */
@ -273,7 +273,7 @@ void EffectChangeTempo::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES
| NumValidatorStyle::ZERO_AS_BLANK)
/* i18n-hint: changing a quantity "from" one value "to" another */
.AddTextBox(_("to"), wxT(""), 12);
.AddTextBox(XO("to"), wxT(""), 12);
}
S.EndHorizontalLay();
}
@ -291,7 +291,7 @@ void EffectChangeTempo::PopulateOrExchange(ShuttleGui & S)
precision, &m_FromLength,
NumValidatorStyle::TWO_TRAILING_ZEROES)
/* i18n-hint: changing a quantity "from" one value "to" another */
.AddTextBox(_("from"), wxT(""), 12);
.AddTextBox(XO("from"), wxT(""), 12);
m_pTextCtrl_ToLength = S.Id(ID_ToLength)
.Validator<FloatingPointValidator<double>>(
2, &m_ToLength, NumValidatorStyle::TWO_TRAILING_ZEROES,
@ -302,7 +302,7 @@ void EffectChangeTempo::PopulateOrExchange(ShuttleGui & S)
(m_FromLength * 100.0) / (100.0 + MAX_Percentage) )
)
/* i18n-hint: changing a quantity "from" one value "to" another */
.AddTextBox(_("to"), wxT(""), 12);
.AddTextBox(XO("to"), wxT(""), 12);
}
S.EndHorizontalLay();
}

View File

@ -343,7 +343,7 @@ void EffectClickRemoval::PopulateOrExchange(ShuttleGui & S)
&mThresholdLevel, NumValidatorStyle::DEFAULT,
MIN_Threshold, MAX_Threshold
)
.AddTextBox(_("Threshold (lower is more sensitive):"),
.AddTextBox(XO("Threshold (lower is more sensitive):"),
wxT(""),
10);
@ -358,7 +358,7 @@ void EffectClickRemoval::PopulateOrExchange(ShuttleGui & S)
mWidthT = S.Id(ID_Width)
.Validator<IntegerValidator<int>>(
&mClickWidth, NumValidatorStyle::DEFAULT, MIN_Width, MAX_Width)
.AddTextBox(_("Max Spike Width (higher is more sensitive):"),
.AddTextBox(XO("Max Spike Width (higher is more sensitive):"),
wxT(""),
10);

View File

@ -332,13 +332,13 @@ void EffectDtmf::PopulateOrExchange(ShuttleGui & S)
vldDtmf.SetIncludes(wxArrayString(WXSIZEOF(kSymbols), kSymbols));
return vldDtmf;
})
.AddTextBox(_("DTMF sequence:"), wxT(""), 10);
.AddTextBox(XO("DTMF sequence:"), wxT(""), 10);
S.Id(ID_Amplitude)
.Validator<FloatingPointValidator<double>>(
3, &dtmfAmplitude, NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_Amplitude, MAX_Amplitude)
.AddTextBox(_("Amplitude (0-1):"), wxT(""), 10);
.AddTextBox(XO("Amplitude (0-1):"), wxT(""), 10);
S.AddPrompt(_("Duration:"));
mDtmfDurationT = safenew

View File

@ -171,12 +171,12 @@ void EffectEcho::PopulateOrExchange(ShuttleGui & S)
3, &delay, NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_Delay, MAX_Delay
)
.AddTextBox(_("Delay time (seconds):"), wxT(""), 10);
.AddTextBox(XO("Delay time (seconds):"), wxT(""), 10);
S.Validator<FloatingPointValidator<double>>(
3, &decay, NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_Decay, MAX_Decay)
.AddTextBox(_("Decay factor:"), wxT(""), 10);
.AddTextBox(XO("Decay factor:"), wxT(""), 10);
}
S.EndMultiColumn();
}

View File

@ -3472,7 +3472,7 @@ void EffectUIHost::OnSaveAs(wxCommandEvent & WXUNUSED(evt))
{
S.StartHorizontalLay(wxALIGN_LEFT, 0);
{
text = S.AddTextBox(_("Preset name:"), name, 30);
text = S.AddTextBox(XO("Preset name:"), name, 30);
}
S.EndHorizontalLay();
S.SetBorder(10);

View File

@ -240,11 +240,11 @@ void EffectFindClipping::PopulateOrExchange(ShuttleGui & S)
{
S.Validator<IntegerValidator<int>>(
&mStart, NumValidatorStyle::DEFAULT, MIN_Start)
.TieTextBox(_("Start threshold (samples):"), mStart, 10);
.TieTextBox(XO("Start threshold (samples):"), mStart, 10);
S.Validator<IntegerValidator<int>>(
&mStop, NumValidatorStyle::DEFAULT, MIN_Stop)
.TieTextBox(_("Stop threshold (samples):"), mStop, 10);
.TieTextBox(XO("Stop threshold (samples):"), mStop, 10);
}
S.EndMultiColumn();
}

View File

@ -231,7 +231,7 @@ void EffectNoise::PopulateOrExchange(ShuttleGui & S)
S.Validator<FloatingPointValidator<double>>(
6, &mAmp, NumValidatorStyle::NO_TRAILING_ZEROES, MIN_Amp, MAX_Amp
)
.AddTextBox(_("Amplitude (0-1):"), wxT(""), 12);
.AddTextBox(XO("Amplitude (0-1):"), wxT(""), 12);
S.AddPrompt(_("Duration:"));
mNoiseDurationT = safenew

View File

@ -1444,7 +1444,7 @@ struct ControlInfo {
NumValidatorStyle::DEFAULT,
valueMin, valueMax
)
.AddTextBox(textBoxCaption.Translation(), wxT(""), 0);
.AddTextBox(textBoxCaption, wxT(""), 0);
wxSlider *const slider =
S.Id(id)

View File

@ -719,7 +719,7 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
{
mGainT = S.Id(ID_GAIN_TEXT)
.Validator<wxTextValidator>(wxFILTER_NUMERIC)
.AddTextBox(_("Noise re&duction (dB):"), wxT(""), 0);
.AddTextBox(XO("Noise re&duction (dB):"), wxT(""), 0);
mGainS = S.Id(ID_GAIN_SLIDER)
.Name(XO("Noise reduction"))
@ -729,7 +729,7 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
mSensitivityT = S.Id(ID_SENSITIVITY_TEXT)
.Validator<wxTextValidator>(wxFILTER_NUMERIC)
.AddTextBox(_("&Sensitivity (dB):"), wxT(""), 0);
.AddTextBox(XO("&Sensitivity (dB):"), wxT(""), 0);
mSensitivityS = S.Id(ID_SENSITIVITY_SLIDER)
.Name(XO("Sensitivity"))
.Style(wxSL_HORIZONTAL)
@ -738,7 +738,7 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
mFreqT = S.Id(ID_FREQ_TEXT)
.Validator<wxTextValidator>(wxFILTER_NUMERIC)
.AddTextBox(_("Fr&equency smoothing (Hz):"), wxT(""), 0);
.AddTextBox(XO("Fr&equency smoothing (Hz):"), wxT(""), 0);
mFreqS = S.Id(ID_FREQ_SLIDER)
.Name(XO("Frequency smoothing"))
.Style(wxSL_HORIZONTAL)
@ -747,7 +747,7 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
mTimeT = S.Id(ID_TIME_TEXT)
.Validator<wxTextValidator>(wxFILTER_NUMERIC)
.AddTextBox(_("Attac&k/decay time (secs):"), wxT(""), 0);
.AddTextBox(XO("Attac&k/decay time (secs):"), wxT(""), 0);
mTimeS = S.Id(ID_TIME_SLIDER)
.Name(XO("Attack/decay time"))
.Style(wxSL_HORIZONTAL)

View File

@ -200,11 +200,11 @@ void EffectPaulstretch::PopulateOrExchange(ShuttleGui & S)
* the effect to a 1-second sample, with the default Stretch Factor of 10.0
* will give an (approximately) 10 second sound
*/
.AddTextBox(_("Stretch Factor:"), wxT(""), 10);
.AddTextBox(XO("Stretch Factor:"), wxT(""), 10);
S.Validator<FloatingPointValidator<float>>(
3, &mTime_resolution, NumValidatorStyle::ONE_TRAILING_ZERO, MIN_Time)
.AddTextBox(_("Time Resolution (seconds):"), wxT(""), 10);
.AddTextBox(XO("Time Resolution (seconds):"), wxT(""), 10);
}
S.EndMultiColumn();
};

View File

@ -259,7 +259,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mStagesT = S.Id(ID_Stages)
.Validator<IntegerValidator<int>>(
&mStages, NumValidatorStyle::DEFAULT, MIN_Stages, MAX_Stages)
.AddTextBox(_("&Stages:"), wxT(""), 15);
.AddTextBox(XO("&Stages:"), wxT(""), 15);
mStagesS = S.Id(ID_Stages)
.Name(XO("Stages"))
@ -271,7 +271,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mDryWetT = S.Id(ID_DryWet)
.Validator<IntegerValidator<int>>(
&mDryWet, NumValidatorStyle::DEFAULT, MIN_DryWet, MAX_DryWet)
.AddTextBox(_("&Dry/Wet:"), wxT(""), 15);
.AddTextBox(XO("&Dry/Wet:"), wxT(""), 15);
mDryWetS = S.Id(ID_DryWet)
.Name(XO("Dry Wet"))
@ -282,7 +282,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mFreqT = S.Id(ID_Freq)
.Validator<FloatingPointValidator<double>>(
5, &mFreq, NumValidatorStyle::ONE_TRAILING_ZERO, MIN_Freq, MAX_Freq)
.AddTextBox(_("LFO Freq&uency (Hz):"), wxT(""), 15);
.AddTextBox(XO("LFO Freq&uency (Hz):"), wxT(""), 15);
mFreqS = S.Id(ID_Freq)
.Name(XO("LFO frequency in hertz"))
@ -293,7 +293,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mPhaseT = S.Id(ID_Phase)
.Validator<FloatingPointValidator<double>>(
1, &mPhase, NumValidatorStyle::DEFAULT, MIN_Phase, MAX_Phase)
.AddTextBox(_("LFO Sta&rt Phase (deg.):"), wxT(""), 15);
.AddTextBox(XO("LFO Sta&rt Phase (deg.):"), wxT(""), 15);
mPhaseS = S.Id(ID_Phase)
.Name(XO("LFO start phase in degrees"))
@ -305,7 +305,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mDepthT = S.Id(ID_Depth)
.Validator<IntegerValidator<int>>(
&mDepth, NumValidatorStyle::DEFAULT, MIN_Depth, MAX_Depth)
.AddTextBox(_("Dept&h:"), wxT(""), 15);
.AddTextBox(XO("Dept&h:"), wxT(""), 15);
mDepthS = S.Id(ID_Depth)
.Name(XO("Depth in percent"))
@ -316,7 +316,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mFeedbackT = S.Id(ID_Feedback)
.Validator<IntegerValidator<int>>(
&mFeedback, NumValidatorStyle::DEFAULT, MIN_Feedback, MAX_Feedback)
.AddTextBox(_("Feedbac&k (%):"), wxT(""), 15);
.AddTextBox(XO("Feedbac&k (%):"), wxT(""), 15);
mFeedbackS = S.Id(ID_Feedback)
.Name(XO("Feedback in percent"))
@ -328,7 +328,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mOutGainT = S.Id(ID_OutGain)
.Validator<FloatingPointValidator<double>>(
1, &mOutGain, NumValidatorStyle::DEFAULT, MIN_OutGain, MAX_OutGain)
.AddTextBox(_("&Output gain (dB):"), wxT(""), 12);
.AddTextBox(XO("&Output gain (dB):"), wxT(""), 12);
mOutGainS = S.Id(ID_OutGain)
.Name(XO("Output gain (dB)"))

View File

@ -176,7 +176,7 @@ void EffectRepeat::PopulateOrExchange(ShuttleGui & S)
&repeatCount, NumValidatorStyle::DEFAULT,
MIN_Count, 2147483647 / mProjectRate
)
.AddTextBox(_("Number of repeats to add:"), wxT(""), 12);
.AddTextBox(XO("Number of repeats to add:"), wxT(""), 12);
}
S.EndHorizontalLay();

View File

@ -504,7 +504,7 @@ void EffectScienFilter::PopulateOrExchange(ShuttleGui & S)
.Validator<FloatingPointValidator<float>>(
1, &mCutoff, NumValidatorStyle::DEFAULT,
MIN_Cutoff, mNyquist - 1)
.AddTextBox(_("C&utoff:"), wxT(""), 10);
.AddTextBox(XO("C&utoff:"), wxT(""), 10);
S.AddUnits(_("Hz"));
mStopbandRippleCtlP = S.AddVariableText(_("Minimum S&topband Attenuation:"), false, wxALL | wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL);

View File

@ -259,7 +259,7 @@ void EffectTimeScale::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_HalfStepsStart, MAX_HalfStepsStart
)
.AddTextBox(_("(semitones) [-12 to 12]:"), wxT(""), 12);
.AddTextBox(XO("(semitones) [-12 to 12]:"), wxT(""), 12);
m_pTextCtrl_PitchPercentChangeStart = S.Id(ID_PitchPercentChangeStart)
@ -268,7 +268,7 @@ void EffectTimeScale::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_PitchPercentStart, MAX_PitchPercentStart
)
.AddTextBox(_("(%) [-50 to 100]:"), wxT(""), 12);
.AddTextBox(XO("(%) [-50 to 100]:"), wxT(""), 12);
}
S.EndMultiColumn();
}
@ -285,14 +285,14 @@ void EffectTimeScale::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_HalfStepsEnd, MAX_HalfStepsEnd
)
.AddTextBox(_("(semitones) [-12 to 12]:"), wxT(""), 12);
.AddTextBox(XO("(semitones) [-12 to 12]:"), wxT(""), 12);
m_pTextCtrl_PitchPercentChangeEnd = S.Id(ID_PitchPercentChangeEnd)
.Validator<FloatingPointValidator<double>>(
3, &m_PitchPercentChangeEnd,
NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_PitchPercentStart, MAX_PitchPercentStart)
.AddTextBox(_("(%) [-50 to 100]:"), wxT(""), 12);
.AddTextBox(XO("(%) [-50 to 100]:"), wxT(""), 12);
}
S.EndMultiColumn();
}

View File

@ -432,13 +432,13 @@ void EffectToneGen::PopulateOrExchange(ShuttleGui & S)
MIN_Frequency,
ProjectSettings::Get( *GetActiveProject() ).GetRate() / 2.0
)
.AddTextBox(_("Frequency (Hz):"), wxT(""), 12);
.AddTextBox(XO("Frequency (Hz):"), wxT(""), 12);
t = S.Validator<FloatingPointValidator<double>>(
6, &mAmplitude[0], NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_Amplitude, MAX_Amplitude
)
.AddTextBox(_("Amplitude (0-1):"), wxT(""), 12);
.AddTextBox(XO("Amplitude (0-1):"), wxT(""), 12);
}
S.AddPrompt(_("Duration:"));

View File

@ -761,7 +761,7 @@ void EffectTruncSilence::PopulateOrExchange(ShuttleGui & S)
3, &mThresholdDB, NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_Threshold, MAX_Threshold
)
.AddTextBox(_("Threshold:"), wxT(""), 0);
.AddTextBox(XO("Threshold:"), wxT(""), 0);
S.AddUnits(_("dB"));
// Ignored silence
@ -769,7 +769,7 @@ void EffectTruncSilence::PopulateOrExchange(ShuttleGui & S)
3, &mInitialAllowedSilence,
NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_Minimum, MAX_Minimum)
.AddTextBox(_("Duration:"), wxT(""), 12);
.AddTextBox(XO("Duration:"), wxT(""), 12);
S.AddUnits(_("seconds"));
}
S.EndMultiColumn();
@ -797,7 +797,7 @@ void EffectTruncSilence::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_Truncate, MAX_Truncate
)
.AddTextBox(_("Truncate to:"), wxT(""), 12);
.AddTextBox(XO("Truncate to:"), wxT(""), 12);
S.AddUnits(_("seconds"));
mSilenceCompressPercentT = S.Validator<FloatingPointValidator<double>>(
@ -805,7 +805,7 @@ void EffectTruncSilence::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_Compress, MAX_Compress
)
.AddTextBox(_("Compress to:"), wxT(""), 12);
.AddTextBox(XO("Compress to:"), wxT(""), 12);
S.AddUnits(_("%"));
}
S.EndMultiColumn();

View File

@ -825,7 +825,7 @@ void VSTEffectOptionsDialog::PopulateOrExchange(ShuttleGui & S)
t = S.Validator<IntegerValidator<int>>(
&mBufferSize, NumValidatorStyle::DEFAULT, 8, 1048576 * 1)
.MinSize( { 100, -1 } )
.TieNumericTextBox(_("&Buffer Size (8 to 1048576 samples):"),
.TieNumericTextBox(XO("&Buffer Size (8 to 1048576 samples):"),
mBufferSize,
12);
}

View File

@ -243,7 +243,7 @@ void EffectWahwah::PopulateOrExchange(ShuttleGui & S)
mFreqT = S.Id(ID_Freq)
.Validator<FloatingPointValidator<double>>(
5, &mFreq, NumValidatorStyle::ONE_TRAILING_ZERO, MIN_Freq, MAX_Freq)
.AddTextBox(_("LFO Freq&uency (Hz):"), wxT(""), 12);
.AddTextBox(XO("LFO Freq&uency (Hz):"), wxT(""), 12);
mFreqS = S.Id(ID_Freq)
.Name(XO("LFO frequency in hertz"))
@ -254,7 +254,7 @@ void EffectWahwah::PopulateOrExchange(ShuttleGui & S)
mPhaseT = S.Id(ID_Phase)
.Validator<FloatingPointValidator<double>>(
1, &mPhase, NumValidatorStyle::DEFAULT, MIN_Phase, MAX_Phase)
.AddTextBox(_("LFO Sta&rt Phase (deg.):"), wxT(""), 12);
.AddTextBox(XO("LFO Sta&rt Phase (deg.):"), wxT(""), 12);
mPhaseS = S.Id(ID_Phase)
.Name(XO("LFO start phase in degrees"))
@ -266,7 +266,7 @@ void EffectWahwah::PopulateOrExchange(ShuttleGui & S)
mDepthT = S.Id(ID_Depth)
.Validator<IntegerValidator<int>>(
&mDepth, NumValidatorStyle::DEFAULT, MIN_Depth, MAX_Depth)
.AddTextBox(_("Dept&h (%):"), wxT(""), 12);
.AddTextBox(XO("Dept&h (%):"), wxT(""), 12);
mDepthS = S.Id(ID_Depth)
.Name(XO("Depth in percent"))
@ -277,7 +277,7 @@ void EffectWahwah::PopulateOrExchange(ShuttleGui & S)
mResT = S.Id(ID_Res)
.Validator<FloatingPointValidator<double>>(
1, &mRes, NumValidatorStyle::DEFAULT, MIN_Res, MAX_Res)
.AddTextBox(_("Reso&nance:"), wxT(""), 12);
.AddTextBox(XO("Reso&nance:"), wxT(""), 12);
mResS = S.Id(ID_Res)
.Name(XO("Resonance"))
@ -288,7 +288,7 @@ void EffectWahwah::PopulateOrExchange(ShuttleGui & S)
mFreqOfsT = S.Id(ID_FreqOfs)
.Validator<IntegerValidator<int>>(
&mFreqOfs, NumValidatorStyle::DEFAULT, MIN_FreqOfs, MAX_FreqOfs)
.AddTextBox(_("Wah Frequency Offse&t (%):"), wxT(""), 12);
.AddTextBox(XO("Wah Frequency Offse&t (%):"), wxT(""), 12);
mFreqOfsS = S.Id(ID_FreqOfs)
.Name(XO("Wah frequency offset in percent"))
@ -299,7 +299,7 @@ void EffectWahwah::PopulateOrExchange(ShuttleGui & S)
mOutGainT = S.Id(ID_OutGain)
.Validator<FloatingPointValidator<double>>(
1, &mOutGain, NumValidatorStyle::DEFAULT, MIN_OutGain, MAX_OutGain)
.AddTextBox(_("&Output gain (dB):"), wxT(""), 12);
.AddTextBox(XO("&Output gain (dB):"), wxT(""), 12);
mOutGainS = S.Id(ID_OutGain)
.Name(XO("Output gain (dB)"))

View File

@ -259,9 +259,11 @@ void LV2EffectSettingsDialog::PopulateOrExchange(ShuttleGui &S)
S.StartHorizontalLay(wxALIGN_LEFT);
{
wxTextCtrl *t;
t = S.TieNumericTextBox(wxString::Format(_("&Buffer Size (8 to %d) samples):"), DEFAULT_BLOCKSIZE),
mBufferSize,
12);
t = S.TieNumericTextBox(
XO("&Buffer Size (8 to %d) samples):")
.Format( DEFAULT_BLOCKSIZE ),
mBufferSize,
12);
t->SetMinSize(wxSize(100, -1));
t->SetValidator(vld);
}

View File

@ -1584,7 +1584,7 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
{
mLanguageText = S.Id(FELanguageID)
.ToolTip(XO("ISO 639 3-letter language code\nOptional\nempty - automatic"))
.TieTextBox(_("Language:"), {wxT("/FileFormats/FFmpegLanguage"), wxEmptyString}, 9);
.TieTextBox(XO("Language:"), {wxT("/FileFormats/FFmpegLanguage"), wxEmptyString}, 9);
S.AddSpace( 20,0 );
S.AddVariableText(_("Bit Reservoir"));
@ -1600,7 +1600,7 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
mTag = S.Id(FETagID)
/* i18n-hint: "codec" is short for a "coder-decoder" algorithm */
.ToolTip(XO("Codec tag (FOURCC)\nOptional\nempty - automatic"))
.TieTextBox(_("Tag:"), {wxT("/FileFormats/FFmpegTag"), wxEmptyString}, 4);
.TieTextBox(XO("Tag:"), {wxT("/FileFormats/FFmpegTag"), wxEmptyString}, 4);
mBitrateSpin = S.Id(FEBitrateID)
.ToolTip(XO("Bit Rate (bits/second) - influences the resulting file size and quality\nSome codecs may only accept specific values (128k, 192k, 256k etc)\n0 - automatic\nRecommended - 192000"))

View File

@ -275,7 +275,7 @@ void ExportMultipleDialog::PopulateOrExchange(ShuttleGui& S)
S.StartMultiColumn(4, true);
{
mDir = S.Id(DirID)
.TieTextBox(_("Folder:"),
.TieTextBox(XO("Folder:"),
{wxT("/Export/MultiplePath"),
DefaultPath},
64);

View File

@ -408,20 +408,20 @@ ImportRawDialog::ImportRawDialog(wxWindow * parent,
{
// Offset text
/* i18n-hint: (noun)*/
mOffsetText = S.AddTextBox(_("Start offset:"),
mOffsetText = S.AddTextBox(XO("Start offset:"),
wxString::Format(wxT("%d"), mOffset),
12);
S.AddUnits(_("bytes"));
// Percent text
mPercentText = S.AddTextBox(_("Amount to import:"),
mPercentText = S.AddTextBox(XO("Amount to import:"),
wxT("100"),
12);
S.AddUnits(_("%"));
// Rate text
/* i18n-hint: (noun)*/
mRateText = S.AddTextBox(_("Sample rate:"),
mRateText = S.AddTextBox(XO("Sample rate:"),
wxString::Format(wxT("%d"), (int)mRate),
12);
/* i18n-hint: This is the abbreviation for "Hertz", or

View File

@ -188,7 +188,7 @@ void DevicePrefs::PopulateOrExchange(ShuttleGui & S)
// for Portaudio v18 we always use default buffer sizes
w = S
.NameSuffix(XO("milliseconds"))
.TieNumericTextBox(_("&Buffer length:"),
.TieNumericTextBox(XO("&Buffer length:"),
{wxT("/AudioIO/LatencyDuration"),
DEFAULT_LATENCY_DURATION},
9);
@ -196,7 +196,7 @@ void DevicePrefs::PopulateOrExchange(ShuttleGui & S)
w = S
.NameSuffix(XO("milliseconds"))
.TieNumericTextBox(_("&Latency compensation:"),
.TieNumericTextBox(XO("&Latency compensation:"),
{wxT("/AudioIO/LatencyCorrection"),
DEFAULT_LATENCY_CORRECTION},
9);

View File

@ -103,7 +103,7 @@ void DirectoriesPrefs::PopulateOrExchange(ShuttleGui & S)
S.SetStretchyCol(1);
S.Id(TempDirID);
mTempDir = S.TieTextBox(_("&Location:"),
mTempDir = S.TieTextBox(XO("&Location:"),
{wxT("/Directories/TempDir"),
wxT("")},
30);
@ -130,7 +130,7 @@ void DirectoriesPrefs::PopulateOrExchange(ShuttleGui & S)
S.StartTwoColumn();
{
S.TieIntegerTextBox(_("Mi&nimum Free Memory (MB):"),
S.TieIntegerTextBox(XO("Mi&nimum Free Memory (MB):"),
wxT("/Directories/CacheLowMem"),
16,
9);

View File

@ -203,7 +203,7 @@ void EffectsPrefs::PopulateOrExchange(ShuttleGui & S)
.MinSize()
.TieChoice( XO("S&ort or Group:"), EffectsGroupBy);
S.TieIntegerTextBox(_("&Maximum effects per group (0 to disable):"),
S.TieIntegerTextBox(XO("&Maximum effects per group (0 to disable):"),
{wxT("/Effects/MaxPerGroup"),
#if defined(__WXGTK__)
15

View File

@ -159,7 +159,7 @@ void MidiIOPrefs::PopulateOrExchange( ShuttleGui & S ) {
S.Id(PlayID);
mPlay = S.AddChoice(XO("&Device:"),
{} );
mLatency = S.TieIntegerTextBox(_("MIDI Synth L&atency (ms):"),
mLatency = S.TieIntegerTextBox(XO("MIDI Synth L&atency (ms):"),
{wxT("/MidiIO/SynthLatency"),
DEFAULT_SYNTH_LATENCY}, 3);
}

View File

@ -87,7 +87,7 @@ void PlaybackPrefs::PopulateOrExchange(ShuttleGui & S)
S.StartThreeColumn();
{
S.NameSuffix(suffix)
.TieNumericTextBox(_("&Length:"),
.TieNumericTextBox(XO("&Length:"),
{wxT("/AudioIO/EffectsPreviewLen"),
6.0},
9);
@ -103,14 +103,14 @@ void PlaybackPrefs::PopulateOrExchange(ShuttleGui & S)
S.StartThreeColumn();
{
S.NameSuffix(suffix)
.TieNumericTextBox(_("&Before cut region:"),
.TieNumericTextBox(XO("&Before cut region:"),
{wxT("/AudioIO/CutPreviewBeforeLen"),
2.0},
9);
S.AddUnits(_("seconds"));
S.NameSuffix(suffix)
.TieNumericTextBox(_("&After cut region:"),
.TieNumericTextBox(XO("&After cut region:"),
{wxT("/AudioIO/CutPreviewAfterLen"),
1.0},
9);
@ -125,14 +125,14 @@ void PlaybackPrefs::PopulateOrExchange(ShuttleGui & S)
S.StartThreeColumn();
{
S.NameSuffix(suffix)
.TieNumericTextBox(_("&Short period:"),
.TieNumericTextBox(XO("&Short period:"),
{wxT("/AudioIO/SeekShortPeriod"),
1.0},
9);
S.AddUnits(_("seconds"));
S.NameSuffix(suffix)
.TieNumericTextBox(_("Lo&ng period:"),
.TieNumericTextBox(XO("Lo&ng period:"),
{wxT("/AudioIO/SeekLongPeriod"),
15.0},
9);

View File

@ -216,13 +216,13 @@ void RecordingPrefs::PopulateOrExchange(ShuttleGui & S)
S.StartThreeColumn();
{
S.TieIntegerTextBox(_("Analysis Time:"),
S.TieIntegerTextBox(XO("Analysis Time:"),
{wxT("/AudioIO/AnalysisTime"),
AILA_DEF_ANALYSIS_TIME},
9);
S.AddUnits(_("milliseconds (time of one analysis)"));
S.TieIntegerTextBox(_("Number of consecutive analysis:"),
S.TieIntegerTextBox(XO("Number of consecutive analysis:"),
{wxT("/AudioIO/NumberAnalysis"),
AILA_DEF_NUMBER_ANALYSIS},
2);
@ -240,7 +240,7 @@ void RecordingPrefs::PopulateOrExchange(ShuttleGui & S)
{
auto w = S
.NameSuffix(XO("seconds"))
.TieNumericTextBox(_("Pre-ro&ll:"),
.TieNumericTextBox(XO("Pre-ro&ll:"),
{AUDIO_PRE_ROLL_KEY,
DEFAULT_PRE_ROLL_SECONDS},
9);
@ -249,7 +249,7 @@ void RecordingPrefs::PopulateOrExchange(ShuttleGui & S)
{
auto w = S
.NameSuffix(XO("milliseconds"))
.TieNumericTextBox(_("Cross&fade:"),
.TieNumericTextBox(XO("Cross&fade:"),
{AUDIO_ROLL_CROSSFADE_KEY,
DEFAULT_ROLL_CROSSFADE_MS},
9);

View File

@ -192,11 +192,11 @@ void SpectrumPrefs::PopulateOrExchange(ShuttleGui & S)
mTempSettings.scaleType,
SpectrogramSettings::GetScaleNames() );
mMinFreq =
S.Id(ID_MINIMUM).TieNumericTextBox(_("Mi&n Frequency (Hz):"),
S.Id(ID_MINIMUM).TieNumericTextBox(XO("Mi&n Frequency (Hz):"),
mTempSettings.minFreq,
12);
mMaxFreq =
S.Id(ID_MAXIMUM).TieNumericTextBox(_("Ma&x Frequency (Hz):"),
S.Id(ID_MAXIMUM).TieNumericTextBox(XO("Ma&x Frequency (Hz):"),
mTempSettings.maxFreq,
12);
}
@ -211,16 +211,16 @@ void SpectrumPrefs::PopulateOrExchange(ShuttleGui & S)
S.SetStretchyCol( 0 );
S.SetStretchyCol( 1 );
mGain =
S.Id(ID_GAIN).TieNumericTextBox(_("&Gain (dB):"),
S.Id(ID_GAIN).TieNumericTextBox(XO("&Gain (dB):"),
mTempSettings.gain,
8);
mRange =
S.Id(ID_RANGE).TieNumericTextBox(_("&Range (dB):"),
S.Id(ID_RANGE).TieNumericTextBox(XO("&Range (dB):"),
mTempSettings.range,
8);
mFrequencyGain =
S.Id(ID_FREQUENCY_GAIN).TieNumericTextBox(_("High &boost (dB/dec):"),
S.Id(ID_FREQUENCY_GAIN).TieNumericTextBox(XO("High &boost (dB/dec):"),
mTempSettings.frequencyGain,
8);
}
@ -293,12 +293,12 @@ void SpectrumPrefs::PopulateOrExchange(ShuttleGui & S)
S.StartTwoColumn();
{
mFindNotesMinA =
S.TieNumericTextBox(_("Minimum Amplitude (dB):"),
S.TieNumericTextBox(XO("Minimum Amplitude (dB):"),
mTempSettings.findNotesMinA,
8);
mFindNotesN =
S.TieNumericTextBox(_("Max. Number of Notes (1..128):"),
S.TieNumericTextBox(XO("Max. Number of Notes (1..128):"),
mTempSettings.numberOfMaxima,
8);
}

View File

@ -293,7 +293,7 @@ void TracksPrefs::PopulateOrExchange(ShuttleGui & S)
{
#ifdef SHOW_PINNED_POSITION_IN_PREFS
S.TieNumericTextBox(
_("Pinned &head position"),
XO("Pinned &head position"),
PinnedHeadPositionPreferenceKey(),
PinnedHeadPositionPreferenceDefault(),
30
@ -305,7 +305,7 @@ void TracksPrefs::PopulateOrExchange(ShuttleGui & S)
S.TieChoice(XO("Display &samples:"),
sampleDisplaySetting );
S.TieTextBox(_("Default audio track &name:"),
S.TieTextBox(XO("Default audio track &name:"),
{wxT("/GUI/TrackNames/DefaultTrackName"),
_("Audio Track")},
30);

View File

@ -199,7 +199,7 @@ void SetTrackNameCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(_("Name:"),mName,60);
S.TieTextBox(XO("Name:"),mName,60);
}
S.EndMultiColumn();
}

View File

@ -2009,7 +2009,7 @@ void MeterPanel::OnPreferences(wxCommandEvent & WXUNUSED(event))
.Validator<IntegerValidator<long>>(
&mMeterRefreshRate, NumValidatorStyle::DEFAULT,
MIN_REFRESH_RATE, MAX_REFRESH_RATE)
.AddTextBox(_("Meter refresh rate per second [1-100]: "),
.AddTextBox(XO("Meter refresh rate per second [1-100]: "),
wxString::Format(wxT("%d"), meterRefreshRate),
10);
}