Change XO to XXO in many more places, with no effects at all...

... because the two macros have the same expansion, and are both checked for
in the --keyword arguments passed to msgfmt by locale/update_po_files.sh.

This commit makes ONLY such changes, and comments in Internat.h.  It is big
but quite harmless.

The intention is to introduce a type distinction in a later release, by defining
XXO differently.  XXO is used where & characters in strings (for hotkeys of menu
items or control prompts) are permitted, XO where not.
This commit is contained in:
Paul Licameli 2020-05-11 11:28:14 -04:00
parent 1b2d4e26ba
commit 4d09705a73
137 changed files with 788 additions and 782 deletions

View File

@ -146,12 +146,12 @@ void RegisterMenuItems()
( FinderScope( ident ), Section( wxT("NullModule"),
Command(
_T("A New Command"), // internal name
XO("1st Experimental Command..."), //displayed name
XXO("1st Experimental Command..."), //displayed name
ModNullFN( OnFuncFirst ),
AudioIONotBusyFlag() ),
Command(
_T("Another New Command"),
XO("2nd Experimental Command"),
XXO("2nd Experimental Command"),
ModNullFN( OnFuncSecond ),
AudioIONotBusyFlag() )
) )

View File

@ -152,7 +152,7 @@ void RegisterMenuItems()
using namespace MenuTable;
static AttachedItem sAttachment{ wxT("Tools"),
( FinderScope( findme ), Section( wxT("NyquistWorkBench"),
Command( wxT("NyqBench"), XO("&Nyquist Workbench..."),
Command( wxT("NyqBench"), XXO("&Nyquist Workbench..."),
static_cast<CommandFunctorPointer>(&NyqBench::ShowNyqBench),
AudioIONotBusyFlag())
) )

View File

@ -300,7 +300,7 @@ AboutDialog::AboutDialog(wxWindow * parent)
S.Id(wxID_OK)
.Prop(0)
.AddButton(XO("OK"), wxALIGN_CENTER, true);
.AddButton(XXO("OK"), wxALIGN_CENTER, true);
Fit();
this->Centre();

View File

@ -167,9 +167,9 @@ void AudacityLogger::Show(bool show)
S.StartHorizontalLay(wxALIGN_CENTER, 0);
{
S.AddSpace(10, 0);
S.Id(LoggerID_Save).AddButton(XO("&Save..."));
S.Id(LoggerID_Clear).AddButton(XO("Cl&ear"));
S.Id(LoggerID_Close).AddButton(XO("&Close"));
S.Id(LoggerID_Save).AddButton(XXO("&Save..."));
S.Id(LoggerID_Clear).AddButton(XXO("Cl&ear"));
S.Id(LoggerID_Close).AddButton(XXO("&Close"));
S.AddSpace(10, 0);
}
S.EndHorizontalLay();

View File

@ -88,9 +88,9 @@ void AutoRecoveryDialog::PopulateOrExchange(ShuttleGui& S)
S.StartHorizontalLay();
{
S.Id(ID_QUIT_AUDACITY).AddButton(XO("Quit Audacity"));
S.Id(ID_RECOVER_NONE).AddButton(XO("Discard Projects"));
S.Id(ID_RECOVER_ALL).AddButton(XO("Recover Projects"));
S.Id(ID_QUIT_AUDACITY).AddButton(XXO("Quit Audacity"));
S.Id(ID_RECOVER_NONE).AddButton(XXO("Discard Projects"));
S.Id(ID_RECOVER_ALL).AddButton(XXO("Recover Projects"));
}
S.EndHorizontalLay();
}

View File

@ -88,23 +88,23 @@ void MacroCommandDialog::PopulateOrExchange(ShuttleGui &S)
S.StartMultiColumn(4, wxEXPAND);
{
S.SetStretchyCol(1);
mCommand = S.AddTextBox(XO("&Command"), wxT(""), 20);
mCommand = S.AddTextBox(XXO("&Command"), wxT(""), 20);
mCommand->SetEditable(false);
mEditParams = S.Id(EditParamsButtonID)
.Disable() // disable button as box is empty
.AddButton(XO("&Edit Parameters"));
.AddButton(XXO("&Edit Parameters"));
mUsePreset = S.Id(UsePresetButtonID)
.Disable() // disable button as box is empty
.AddButton(XO("&Use Preset"));
.AddButton(XXO("&Use Preset"));
}
S.EndMultiColumn();
S.StartMultiColumn(2, wxEXPAND);
{
S.SetStretchyCol(1);
mParameters = S.AddTextBox(XO("&Parameters"), wxT(""), 0);
mParameters = S.AddTextBox(XXO("&Parameters"), wxT(""), 0);
mParameters->SetEditable(false);
auto prompt = XO("&Details");
auto prompt = XXO("&Details");
S.Prop(0).AddPrompt(prompt);
mDetails = S
.Name( prompt )

View File

@ -147,10 +147,10 @@ void ApplyMacroDialog::PopulateOrExchange(ShuttleGui &S)
S.StartHorizontalLay(wxEXPAND, 0);
{
S.AddPrompt( XO("Apply Macro to:") );
S.AddPrompt( XXO("Apply Macro to:") );
wxButton* btn = S.Id(ApplyToProjectID)
.Name(XO("Apply macro to project"))
.AddButton(XO("&Project"));
.AddButton(XXO("&Project"));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
btn->SetAccessible(safenew WindowAccessible(btn));
@ -158,7 +158,7 @@ void ApplyMacroDialog::PopulateOrExchange(ShuttleGui &S)
btn = S.Id(ApplyToFilesID)
.Name(XO("Apply macro to files..."))
.AddButton(XO("&Files..."));
.AddButton(XXO("&Files..."));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
btn->SetAccessible(safenew WindowAccessible(btn));
@ -169,7 +169,7 @@ void ApplyMacroDialog::PopulateOrExchange(ShuttleGui &S)
S.StartHorizontalLay(wxEXPAND, 0);
{
/* i18n-hint: The Expand button makes the dialog bigger, with more in it */
mResize = S.Id(ExpandID).AddButton(XO("&Expand"));
mResize = S.Id(ExpandID).AddButton(XXO("&Expand"));
S.Prop(1).AddSpace( 10 );
S.AddStandardButtons( eCancelButton | eHelpButton);
}
@ -388,7 +388,7 @@ void ApplyMacroDialog::OnApplyToFiles(wxCommandEvent & WXUNUSED(event))
S.StartHorizontalLay(wxCENTER, false);
{
S.Id(wxID_CANCEL).AddButton(XO("&Cancel"));
S.Id(wxID_CANCEL).AddButton(XXO("&Cancel"));
}
S.EndHorizontalLay();
}
@ -594,10 +594,10 @@ void MacrosWindow::PopulateOrExchange(ShuttleGui & S)
.AddListControlReportMode( { XO("Macro") } );
S.StartVerticalLay(wxALIGN_TOP, 0);
{
S.Id(AddButtonID).AddButton(XO("&New"));
mRemove = S.Id(RemoveButtonID).AddButton(XO("Remo&ve"));
mRename = S.Id(RenameButtonID).AddButton(XO("&Rename..."));
mRestore = S.Id(RestoreButtonID).AddButton(XO("Re&store"));
S.Id(AddButtonID).AddButton(XXO("&New"));
mRemove = S.Id(RemoveButtonID).AddButton(XXO("Remo&ve"));
mRename = S.Id(RenameButtonID).AddButton(XXO("&Rename..."));
mRestore = S.Id(RestoreButtonID).AddButton(XXO("Re&store"));
// Not yet ready for prime time.
#if 0
S.Id(ImportButtonID)
@ -631,11 +631,11 @@ void MacrosWindow::PopulateOrExchange(ShuttleGui & S)
S.StartVerticalLay(wxALIGN_TOP, 0);
{
S.Id(InsertButtonID).AddButton(XO("&Insert"), wxALIGN_LEFT);
S.Id(EditButtonID).AddButton(XO("&Edit..."), wxALIGN_LEFT);
S.Id(DeleteButtonID).AddButton(XO("De&lete"), wxALIGN_LEFT);
S.Id(UpButtonID).AddButton(XO("Move &Up"), wxALIGN_LEFT);
S.Id(DownButtonID).AddButton(XO("Move &Down"), wxALIGN_LEFT);
S.Id(InsertButtonID).AddButton(XXO("&Insert"), wxALIGN_LEFT);
S.Id(EditButtonID).AddButton(XXO("&Edit..."), wxALIGN_LEFT);
S.Id(DeleteButtonID).AddButton(XXO("De&lete"), wxALIGN_LEFT);
S.Id(UpButtonID).AddButton(XXO("Move &Up"), wxALIGN_LEFT);
S.Id(DownButtonID).AddButton(XXO("Move &Down"), wxALIGN_LEFT);
}
S.EndVerticalLay();
}
@ -648,13 +648,13 @@ void MacrosWindow::PopulateOrExchange(ShuttleGui & S)
S.StartHorizontalLay(wxEXPAND, 0);
{
/* i18n-hint: The Shrink button makes the dialog smaller, with less in it */
mResize = S.Id(ShrinkID).AddButton(XO("Shrin&k"));
mResize = S.Id(ShrinkID).AddButton(XXO("Shrin&k"));
// Using variable text just to get the positioning options.
S.Prop(0).AddVariableText(
XO("Apply Macro to:"), false, wxALL | wxALIGN_CENTRE_VERTICAL );
wxButton* btn = S.Id(ApplyToProjectID)
.Name(XO("Apply macro to project"))
.AddButton(XO("&Project"));
.AddButton(XXO("&Project"));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
btn->SetAccessible(safenew WindowAccessible(btn));
@ -662,7 +662,7 @@ void MacrosWindow::PopulateOrExchange(ShuttleGui & S)
btn = S.Id(ApplyToFilesID)
.Name(XO("Apply macro to files..."))
.AddButton(XO("&Files..."));
.AddButton(XXO("&Files..."));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
btn->SetAccessible(safenew WindowAccessible(btn));

View File

@ -178,21 +178,21 @@ void BenchmarkDialog::MakeBenchmarkDialog()
//
S.Id(BlockSizeID)
.Validator<wxTextValidator>(wxFILTER_NUMERIC, &mBlockSizeStr)
.AddTextBox(XO("Disk Block Size (KB):"),
.AddTextBox(XXO("Disk Block Size (KB):"),
wxT(""),
12);
//
S.Id(NumEditsID)
.Validator<wxTextValidator>(wxFILTER_NUMERIC, &mNumEditsStr)
.AddTextBox(XO("Number of Edits:"),
.AddTextBox(XXO("Number of Edits:"),
wxT(""),
12);
//
S.Id(DataSizeID)
.Validator<wxTextValidator>(wxFILTER_NUMERIC, &mDataSizeStr)
.AddTextBox(XO("Test Data Size (MB):"),
.AddTextBox(XXO("Test Data Size (MB):"),
wxT(""),
12);
@ -201,7 +201,7 @@ void BenchmarkDialog::MakeBenchmarkDialog()
.Validator<wxTextValidator>(wxFILTER_NUMERIC, &mRandSeedStr)
/* i18n-hint: A "seed" is a number that initializes a
pseudorandom number generating algorithm */
.AddTextBox(XO("Random Seed:"),
.AddTextBox(XXO("Random Seed:"),
wxT(""),
12);
@ -210,12 +210,12 @@ void BenchmarkDialog::MakeBenchmarkDialog()
//
S.Validator<wxGenericValidator>(&mBlockDetail)
.AddCheckBox(XO("Show detailed info about each block file"),
.AddCheckBox(XXO("Show detailed info about each block file"),
false);
//
S.Validator<wxGenericValidator>(&mEditDetail)
.AddCheckBox(XO("Show detailed info about each editing operation"),
.AddCheckBox(XXO("Show detailed info about each editing operation"),
false);
//
@ -232,10 +232,10 @@ void BenchmarkDialog::MakeBenchmarkDialog()
{
S.StartHorizontalLay(wxALIGN_LEFT, false);
{
S.Id(RunID).AddButton(XO("Run"), wxALIGN_CENTRE, true);
S.Id(BSaveID).AddButton(XO("Save"));
S.Id(RunID).AddButton(XXO("Run"), wxALIGN_CENTRE, true);
S.Id(BSaveID).AddButton(XXO("Save"));
/* i18n-hint verb; to empty or erase */
S.Id(ClearID).AddButton(XO("Clear"));
S.Id(ClearID).AddButton(XXO("Clear"));
}
S.EndHorizontalLay();
@ -248,7 +248,7 @@ void BenchmarkDialog::MakeBenchmarkDialog()
S.StartHorizontalLay(wxALIGN_NOT | wxALIGN_LEFT, false);
{
/* i18n-hint verb */
S.Id(wxID_CANCEL).AddButton(XO("Close"));
S.Id(wxID_CANCEL).AddButton(XXO("Close"));
}
S.EndHorizontalLay();
}

View File

@ -365,7 +365,7 @@ void DependencyDialog::PopulateOrExchange(ShuttleGui& S)
.Focus()
.Disable(mFileListCtrl->GetSelectedItemCount() <= 0)
.AddButton(
XO("Copy Selected Files"),
XXO("Copy Selected Files"),
wxALIGN_LEFT, true);
}
S.EndStatic();
@ -373,18 +373,18 @@ void DependencyDialog::PopulateOrExchange(ShuttleGui& S)
S.StartHorizontalLay(wxALIGN_CENTRE,0);
{
if (mIsSaving) {
S.Id(wxID_CANCEL).AddButton(XO("Cancel Save"));
S.Id(wxID_NO).AddButton(XO("Save Without Copying"));
S.Id(wxID_CANCEL).AddButton(XXO("Cancel Save"));
S.Id(wxID_NO).AddButton(XXO("Save Without Copying"));
}
else
S.Id(wxID_NO).AddButton(XO("Do Not Copy"));
S.Id(wxID_NO).AddButton(XXO("Do Not Copy"));
mCopyAllFilesButton =
S.Id(wxID_YES)
// Enabling mCopyAllFilesButton is also done in PopulateList,
// but at its call above, mCopyAllFilesButton does not yet exist.
.Disable(mHasMissingFiles)
.AddButton(XO("Copy All Files (Safer)"));
.AddButton(XXO("Copy All Files (Safer)"));
}
S.EndHorizontalLay();
@ -395,7 +395,7 @@ void DependencyDialog::PopulateOrExchange(ShuttleGui& S)
{
mFutureActionChoice =
S.Id(FutureActionChoiceID).AddChoice(
XO("Whenever a project depends on other files:"),
XXO("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.*/

View File

@ -497,10 +497,10 @@ public:
else {
mPathText = S.AddTextBox( {}, mLibPath.GetFullPath(), 0);
}
S.Id(ID_FFMPEG_BROWSE).AddButton(XO("Browse..."), wxALIGN_RIGHT);
S.Id(ID_FFMPEG_BROWSE).AddButton(XXO("Browse..."), wxALIGN_RIGHT);
S.AddVariableText(
XO("To get a free copy of FFmpeg, click here -->"), true);
S.Id(ID_FFMPEG_DLOAD).AddButton(XO("Download"), wxALIGN_RIGHT);
S.Id(ID_FFMPEG_DLOAD).AddButton(XXO("Download"), wxALIGN_RIGHT);
}
S.EndMultiColumn();
@ -593,7 +593,7 @@ to download or locate the FFmpeg libraries."
));
mDontShow = S
.AddCheckBox(XO("Do not show this warning again"),
.AddCheckBox(XXO("Do not show this warning again"),
gPrefs->ReadBool(wxT("/FFmpeg/NotFoundDontShow"), false) );
S.AddStandardButtons(eOkButton);

View File

@ -343,11 +343,11 @@ ChoiceSetting FileFormatsCopyOrEditSetting{
{
EnumValueSymbol{
wxT("copy"),
XO("&Copy uncompressed files into the project (safer)")
XXO("&Copy uncompressed files into the project (safer)")
},
EnumValueSymbol{
wxT("edit"),
XO("&Read uncompressed files from original location (faster)")
XXO("&Read uncompressed files from original location (faster)")
},
},
0 // copy
@ -356,9 +356,9 @@ ChoiceSetting FileFormatsCopyOrEditSetting{
ChoiceSetting FileFormatsSaveWithDependenciesSetting{
wxT("/FileFormats/SaveProjectWithDependencies"),
{
{ wxT("copy"), XO("&Copy all audio into project (safest)") },
{ wxT("never"), XO("Do &not copy any audio") },
{ wxT("ask"), XO("As&k") },
{ wxT("copy"), XXO("&Copy all audio into project (safest)") },
{ wxT("never"), XXO("Do &not copy any audio") },
{ wxT("ask"), XXO("As&k") },
},
2 // ask
};

View File

@ -403,18 +403,18 @@ FrequencyPlotDialog::FrequencyPlotDialog(wxWindow * parent, wxWindowID id,
S.SetStretchyCol(1);
S.SetStretchyCol(3);
{
S.AddPrompt(XO("Cursor:"));
S.AddPrompt(XXO("Cursor:"));
mCursorText = S.Style(wxTE_READONLY)
.AddTextBox( {}, wxT(""), 10);
S.AddPrompt(XO("Peak:"));
S.AddPrompt(XXO("Peak:"));
mPeakText = S.Style(wxTE_READONLY)
.AddTextBox( {}, wxT(""), 10);
S.AddSpace(5);
mGridOnOff = S.Id(GridOnOffID).AddCheckBox(XO("&Grids"), mDrawGrid);
mGridOnOff = S.Id(GridOnOffID).AddCheckBox(XXO("&Grids"), mDrawGrid);
}
S.EndMultiColumn();
}
@ -442,17 +442,17 @@ FrequencyPlotDialog::FrequencyPlotDialog(wxWindow * parent, wxWindowID id,
mAlgChoice = S.Id(FreqAlgChoiceID).Focus()
.MinSize( { wxDefaultCoord, wxDefaultCoord } )
.AddChoice(XO("&Algorithm:"), algChoices, mAlg);
.AddChoice(XXO("&Algorithm:"), algChoices, mAlg);
S.AddSpace(5);
mSizeChoice = S.Id(FreqSizeChoiceID)
.MinSize( { wxDefaultCoord, wxDefaultCoord } )
.AddChoice(XO("&Size:"), sizeChoices, mSize);
.AddChoice(XXO("&Size:"), sizeChoices, mSize);
S.AddSpace(5);
mExportButton = S.Id(FreqExportButtonID).AddButton(XO("&Export..."));
mExportButton = S.Id(FreqExportButtonID).AddButton(XXO("&Export..."));
S.AddSpace(5);
@ -465,19 +465,19 @@ FrequencyPlotDialog::FrequencyPlotDialog(wxWindow * parent, wxWindowID id,
mFuncChoice = S.Id(FreqFuncChoiceID)
.MinSize( { wxDefaultCoord, wxDefaultCoord } )
.AddChoice(XO("&Function:"), funcChoices, mFunc);
.AddChoice(XXO("&Function:"), funcChoices, mFunc);
mFuncChoice->MoveAfterInTabOrder(mSizeChoice);
S.AddSpace(5);
mAxisChoice = S.Id(FreqAxisChoiceID)
.MinSize( { wxDefaultCoord, wxDefaultCoord } )
.AddChoice(XO("&Axis:"), axisChoices, mAxis);
.AddChoice(XXO("&Axis:"), axisChoices, mAxis);
mAxisChoice->MoveAfterInTabOrder(mFuncChoice);
S.AddSpace(5);
mReplotButton = S.Id(ReplotButtonID).AddButton(XO("&Replot..."));
mReplotButton = S.Id(ReplotButtonID).AddButton(XXO("&Replot..."));
S.AddSpace(5);

View File

@ -100,15 +100,15 @@ HistoryDialog::HistoryDialog(AudacityProject *parent, UndoManager *manager):
{
mTotal = S.Id(ID_TOTAL)
.ConnectRoot(wxEVT_KEY_DOWN, &HistoryDialog::OnChar)
.AddTextBox(XO("&Total space used"), wxT("0"), 10);
.AddTextBox(XXO("&Total space used"), wxT("0"), 10);
S.AddVariableText( {} )->Hide();
mAvail = S.Id(ID_AVAIL)
.ConnectRoot(wxEVT_KEY_DOWN, &HistoryDialog::OnChar)
.AddTextBox(XO("&Undo levels available"), wxT("0"), 10);
.AddTextBox(XXO("&Undo levels available"), wxT("0"), 10);
S.AddVariableText( {} )->Hide();
S.AddPrompt(XO("&Levels to discard"));
S.AddPrompt(XXO("&Levels to discard"));
mLevels = safenew wxSpinCtrl(S.GetParent(),
ID_LEVELS,
wxT("1"),
@ -120,12 +120,12 @@ HistoryDialog::HistoryDialog(AudacityProject *parent, UndoManager *manager):
0);
S.AddWindow(mLevels);
/* i18n-hint: (verb)*/
mDiscard = S.Id(ID_DISCARD).AddButton(XO("&Discard"));
mDiscard = S.Id(ID_DISCARD).AddButton(XXO("&Discard"));
mClipboard = S
.ConnectRoot(wxEVT_KEY_DOWN, &HistoryDialog::OnChar)
.AddTextBox(XO("Clipboard space used"), wxT("0"), 10);
S.Id(ID_DISCARD_CLIPBOARD).AddButton(XO("Discard"));
.AddTextBox(XXO("Clipboard space used"), wxT("0"), 10);
S.Id(ID_DISCARD_CLIPBOARD).AddButton(XXO("Discard"));
}
S.EndMultiColumn();
}
@ -134,7 +134,7 @@ HistoryDialog::HistoryDialog(AudacityProject *parent, UndoManager *manager):
S.StartHorizontalLay(wxALIGN_RIGHT, false);
{
S.SetBorder(10);
S.Id(wxID_OK).AddButton(XO("&OK"), wxALIGN_CENTER, true);
S.Id(wxID_OK).AddButton(XXO("&OK"), wxALIGN_CENTER, true);
}
S.EndHorizontalLay();
}

View File

@ -29,9 +29,13 @@ extern AUDACITY_DLL_API const wxString& GetCustomSubstitution(const wxString& st
#define _TS( s ) GetCustomSubstitution( s )
// Marks strings for extraction only... use .Translate() to translate.
// '&', preceding menu accelerators, should NOT occur in the argument.
#define XO(s) (TranslatableString{ wxT(s), {} })
// XXO is used instead of XO in some places, for reasons that are
// no longer important. The two are equivalent now.
// Marks strings for extraction only, where '&', preceding men accelerators, MAY
// occur.
// For now, expands eactly as macro XO does, but in future there will be a
// type distinction.
#define XXO(s) XO(s)
#ifdef _

View File

@ -264,11 +264,11 @@ void LabelDialog::PopulateOrExchange( ShuttleGui & S )
S.StartVerticalLay(0);
{
//S.Id(ID_INSERTA).AddButton(XO("&Insert"), wxALIGN_LEFT);
S.Id(ID_INSERTB).AddButton(XO("&Insert"), wxALIGN_LEFT);
S.Id(ID_INSERTB).AddButton(XXO("&Insert"), wxALIGN_LEFT);
//S.Id(EditButtonID).AddButton(XO("&Edit"), wxALIGN_LEFT);
S.Id(ID_REMOVE).AddButton(XO("De&lete"), wxALIGN_LEFT);
S.Id(ID_IMPORT).AddButton(XO("I&mport..."), wxALIGN_LEFT);
S.Id(ID_EXPORT).AddButton(XO("&Export..."), wxALIGN_LEFT);
S.Id(ID_REMOVE).AddButton(XXO("De&lete"), wxALIGN_LEFT);
S.Id(ID_IMPORT).AddButton(XXO("I&mport..."), wxALIGN_LEFT);
S.Id(ID_EXPORT).AddButton(XXO("&Export..."), wxALIGN_LEFT);
}
S.EndVerticalLay();
}

View File

@ -86,7 +86,7 @@ LangChoiceDialog::LangChoiceDialog(wxWindow * parent,
S.StartHorizontalLay();
{
S.SetBorder(15);
mChoice = S.AddChoice(XO("Choose Language for Audacity to use:"),
mChoice = S.AddChoice(XXO("Choose Language for Audacity to use:"),
mLangNames,
lang);
}

View File

@ -1242,25 +1242,27 @@ void MenuManager::ModifyUndoMenuItems(AudacityProject &project)
if (undoManager.UndoAvailable()) {
undoManager.GetShortDescription(cur, &desc);
commandManager.Modify(wxT("Undo"),
XO("&Undo %s").Format( desc ));
XXO("&Undo %s")
.Format( desc ));
commandManager.Enable(wxT("Undo"),
ProjectHistory::Get( project ).UndoAvailable());
}
else {
commandManager.Modify(wxT("Undo"),
XO("&Undo"));
XXO("&Undo"));
}
if (undoManager.RedoAvailable()) {
undoManager.GetShortDescription(cur+1, &desc);
commandManager.Modify(wxT("Redo"),
XO("&Redo %s").Format( desc));
XXO("&Redo %s")
.Format( desc ));
commandManager.Enable(wxT("Redo"),
ProjectHistory::Get( project ).RedoAvailable());
}
else {
commandManager.Modify(wxT("Redo"),
XO("&Redo"));
XXO("&Redo"));
commandManager.Enable(wxT("Redo"), false);
}
}

View File

@ -519,7 +519,7 @@ void PluginRegistrationDialog::PopulateOrExchange(ShuttleGui &S)
{
S.StartHorizontalLay(wxALIGN_LEFT, 0);
{
S.AddPrompt(XO("Select effects, click the Enable or Disable button, then click OK."));
S.AddPrompt(XXO("Select effects, click the Enable or Disable button, then click OK."));
}
S.EndHorizontalLay();
@ -534,12 +534,12 @@ void PluginRegistrationDialog::PopulateOrExchange(ShuttleGui &S)
wxRadioButton *rb;
/* i18n-hint: This is before radio buttons selecting which effects to show */
S.AddPrompt(XO("Show:"));
S.AddPrompt(XXO("Show:"));
rb = S.Id(ID_ShowAll)
/* i18n-hint: Radio button to show all effects */
.Name(XO("Show all"))
/* i18n-hint: Radio button to show all effects */
.AddRadioButton(XO("&All"));
.AddRadioButton(XXO("&All"));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
rb->SetAccessible(safenew WindowAccessible(rb));
@ -549,7 +549,7 @@ void PluginRegistrationDialog::PopulateOrExchange(ShuttleGui &S)
/* i18n-hint: Radio button to show just the currently disabled effects */
.Name(XO("Show disabled"))
/* i18n-hint: Radio button to show just the currently disabled effects */
.AddRadioButtonToGroup(XO("D&isabled"));
.AddRadioButtonToGroup(XXO("D&isabled"));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
rb->SetAccessible(safenew WindowAccessible(rb));
@ -559,7 +559,7 @@ void PluginRegistrationDialog::PopulateOrExchange(ShuttleGui &S)
/* i18n-hint: Radio button to show just the currently enabled effects */
.Name(XO("Show enabled"))
/* i18n-hint: Radio button to show just the currently enabled effects */
.AddRadioButtonToGroup(XO("E&nabled"));
.AddRadioButtonToGroup(XXO("E&nabled"));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
rb->SetAccessible(safenew WindowAccessible(rb));
@ -569,7 +569,7 @@ void PluginRegistrationDialog::PopulateOrExchange(ShuttleGui &S)
/* i18n-hint: Radio button to show just the newly discovered effects */
.Name(XO("Show new"))
/* i18n-hint: Radio button to show just the newly discovered effects */
.AddRadioButtonToGroup(XO("Ne&w"));
.AddRadioButtonToGroup(XXO("Ne&w"));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
rb->SetAccessible(safenew WindowAccessible(rb));
@ -590,8 +590,8 @@ void PluginRegistrationDialog::PopulateOrExchange(ShuttleGui &S)
S.StartHorizontalLay(wxALIGN_LEFT | wxEXPAND, 0);
{
S.Id(ID_SelectAll).AddButton(XO("&Select All"));
S.Id(ID_ClearAll).AddButton(XO("C&lear All"));
S.Id(ID_SelectAll).AddButton(XXO("&Select All"));
S.Id(ID_ClearAll).AddButton(XXO("C&lear All"));
S.StartHorizontalLay(wxALIGN_CENTER);
{
@ -599,8 +599,8 @@ void PluginRegistrationDialog::PopulateOrExchange(ShuttleGui &S)
}
S.EndHorizontalLay();
S.Id(ID_Enable).AddButton(XO("&Enable"));
S.Id(ID_Disable).AddButton(XO("&Disable"));
S.Id(ID_Enable).AddButton(XXO("&Enable"));
S.Id(ID_Disable).AddButton(XXO("&Disable"));
}
S.EndHorizontalLay();
}

View File

@ -900,7 +900,7 @@ You are saving directly to a slow external storage device\n\
"
),
false,
XO("Turn off dropout detection"));
XXO("Turn off dropout detection"));
}
auto &history = ProjectHistory::Get( project );

View File

@ -346,11 +346,11 @@ void ScreenshotBigDialog::PopulateOrExchange(ShuttleGui & S)
mDirectoryTextBox =
S.Id(IdDirectory).AddTextBox(
XO("Save images to:"),
XXO("Save images to:"),
gPrefs->Read(wxT("/ScreenshotPath"), wxFileName::GetHomeDir()),
30
);
S.Id(IdDirChoose).AddButton(XO("Choose..."));
S.Id(IdDirChoose).AddButton(XXO("Choose..."));
}
S.EndMultiColumn();
}
@ -360,8 +360,8 @@ void ScreenshotBigDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay();
{
S.Id(IdMainWindowSmall).AddButton(XO("Resize Small"));
S.Id(IdMainWindowLarge).AddButton(XO("Resize Large"));
S.Id(IdMainWindowSmall).AddButton(XXO("Resize Small"));
S.Id(IdMainWindowLarge).AddButton(XXO("Resize Large"));
mBlue = safenew wxToggleButton(S.GetParent(),
IdToggleBackgroundBlue,
/* i18n-hint: Bkgnd is short for background and appears on a small button
@ -379,22 +379,22 @@ void ScreenshotBigDialog::PopulateOrExchange(ShuttleGui & S)
S.StartHorizontalLay();
{
S.Id(IdCaptureWindowContents).AddButton(XO("Capture Window Only"));
S.Id(IdCaptureFullWindow).AddButton(XO("Capture Full Window"));
S.Id(IdCaptureWindowPlus).AddButton(XO("Capture Window Plus"));
S.Id(IdCaptureWindowContents).AddButton(XXO("Capture Window Only"));
S.Id(IdCaptureFullWindow).AddButton(XXO("Capture Full Window"));
S.Id(IdCaptureWindowPlus).AddButton(XXO("Capture Window Plus"));
}
S.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdCaptureFullScreen).AddButton(XO("Capture Full Screen"));
S.Id(IdCaptureFullScreen).AddButton(XXO("Capture Full Screen"));
}
S.EndHorizontalLay();
S.StartHorizontalLay();
{
mDelayCheckBox = S.Id(IdDelayCheckBox).AddCheckBox(
XO("Wait 5 seconds and capture frontmost window/dialog"),
XXO("Wait 5 seconds and capture frontmost window/dialog"),
false);
}
S.EndHorizontalLay();
@ -405,48 +405,48 @@ void ScreenshotBigDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay();
{
S.Id(IdCaptureToolbars).AddButton(XO("All Toolbars"));
S.Id(IdCaptureEffects).AddButton(XO("All Effects"));
S.Id(IdCaptureScriptables).AddButton(XO("All Scriptables"));
S.Id(IdCapturePreferences).AddButton(XO("All Preferences"));
S.Id(IdCaptureToolbars).AddButton(XXO("All Toolbars"));
S.Id(IdCaptureEffects).AddButton(XXO("All Effects"));
S.Id(IdCaptureScriptables).AddButton(XXO("All Scriptables"));
S.Id(IdCapturePreferences).AddButton(XXO("All Preferences"));
}
S.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdCaptureSelectionBar).AddButton(XO("SelectionBar"));
S.Id(IdCaptureSpectralSelection).AddButton(XO("Spectral Selection"));
S.Id(IdCaptureTimer).AddButton(XO("Timer"));
S.Id(IdCaptureTools).AddButton(XO("Tools"));
S.Id(IdCaptureTransport).AddButton(XO("Transport"));
S.Id(IdCaptureSelectionBar).AddButton(XXO("SelectionBar"));
S.Id(IdCaptureSpectralSelection).AddButton(XXO("Spectral Selection"));
S.Id(IdCaptureTimer).AddButton(XXO("Timer"));
S.Id(IdCaptureTools).AddButton(XXO("Tools"));
S.Id(IdCaptureTransport).AddButton(XXO("Transport"));
}
S.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdCaptureMixer).AddButton(XO("Mixer"));
S.Id(IdCaptureMeter).AddButton(XO("Meter"));
S.Id(IdCapturePlayMeter).AddButton(XO("Play Meter"));
S.Id(IdCaptureRecordMeter).AddButton(XO("Record Meter"));
S.Id(IdCaptureMixer).AddButton(XXO("Mixer"));
S.Id(IdCaptureMeter).AddButton(XXO("Meter"));
S.Id(IdCapturePlayMeter).AddButton(XXO("Play Meter"));
S.Id(IdCaptureRecordMeter).AddButton(XXO("Record Meter"));
}
S.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdCaptureEdit).AddButton(XO("Edit"));
S.Id(IdCaptureDevice).AddButton(XO("Device"));
S.Id(IdCaptureTranscription).AddButton(XO("Play-at-Speed"));
S.Id(IdCaptureScrub).AddButton(XO("Scrub"));
S.Id(IdCaptureEdit).AddButton(XXO("Edit"));
S.Id(IdCaptureDevice).AddButton(XXO("Device"));
S.Id(IdCaptureTranscription).AddButton(XXO("Play-at-Speed"));
S.Id(IdCaptureScrub).AddButton(XXO("Scrub"));
}
S.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdCaptureTrackPanel).AddButton(XO("Track Panel"));
S.Id(IdCaptureRuler).AddButton(XO("Ruler"));
S.Id(IdCaptureTracks).AddButton(XO("Tracks"));
S.Id(IdCaptureFirstTrack).AddButton(XO("First Track"));
S.Id(IdCaptureSecondTrack).AddButton(XO("Second Track"));
S.Id(IdCaptureTrackPanel).AddButton(XXO("Track Panel"));
S.Id(IdCaptureRuler).AddButton(XXO("Ruler"));
S.Id(IdCaptureTracks).AddButton(XXO("Tracks"));
S.Id(IdCaptureFirstTrack).AddButton(XXO("First Track"));
S.Id(IdCaptureSecondTrack).AddButton(XXO("Second Track"));
}
S.EndHorizontalLay();
}
@ -456,19 +456,19 @@ void ScreenshotBigDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay();
{
S.Id(IdOneSec).AddButton(XO("One Sec"));
S.Id(IdTenSec).AddButton(XO("Ten Sec"));
S.Id(IdOneMin).AddButton(XO("One Min"));
S.Id(IdFiveMin).AddButton(XO("Five Min"));
S.Id(IdOneHour).AddButton(XO("One Hour"));
S.Id(IdOneSec).AddButton(XXO("One Sec"));
S.Id(IdTenSec).AddButton(XXO("Ten Sec"));
S.Id(IdOneMin).AddButton(XXO("One Min"));
S.Id(IdFiveMin).AddButton(XXO("Five Min"));
S.Id(IdOneHour).AddButton(XXO("One Hour"));
}
S.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdShortTracks).AddButton(XO("Short Tracks"));
S.Id(IdMedTracks).AddButton(XO("Medium Tracks"));
S.Id(IdTallTracks).AddButton(XO("Tall Tracks"));
S.Id(IdShortTracks).AddButton(XXO("Short Tracks"));
S.Id(IdMedTracks).AddButton(XXO("Medium Tracks"));
S.Id(IdTallTracks).AddButton(XXO("Tall Tracks"));
}
S.EndHorizontalLay();
}

View File

@ -54,7 +54,7 @@ void SoundActivatedRecordDialog::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxEXPAND);
S.SetStretchyCol(1);
S.TieSlider(
XO("Activation level (dB):"),
XXO("Activation level (dB):"),
{wxT("/AudioIO/SilenceLevel"), -50},
0, -gPrefs->Read(ENV_DB_KEY, ENV_DB_RANGE)
);

View File

@ -142,12 +142,12 @@ void SplashDialog::Populate( ShuttleGui & S )
S.SetStretchyCol( 1 );// Column 1 is stretchy...
{
S.SetBorder( 5 );
S.Id( DontShowID).AddCheckBox( XO("Don't show this again at start up"), !bShow );
S.Id( DontShowID).AddCheckBox( XXO("Don't show this again at start up"), !bShow );
S.SetBorder( 5 );
S.Id(wxID_OK)
.Prop(0)
.AddButton(XO("OK"), wxALIGN_RIGHT| wxALL, true);
.AddButton(XXO("OK"), wxALIGN_RIGHT| wxALL, true);
}
S.EndVerticalLay();
}

View File

@ -913,10 +913,10 @@ void TagsEditorDialog::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(4, wxALIGN_CENTER);
{
S.Id(AddID).AddButton(XO("&Add"));
S.Id(RemoveID).AddButton(XO("&Remove"));
S.Id(AddID).AddButton(XXO("&Add"));
S.Id(RemoveID).AddButton(XXO("&Remove"));
S.AddTitle( {} );
S.Id(ClearID).AddButton(XO("Cl&ear"));
S.Id(ClearID).AddButton(XXO("Cl&ear"));
}
S.EndMultiColumn();
@ -926,8 +926,8 @@ void TagsEditorDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartMultiColumn(4, wxALIGN_CENTER);
{
S.Id(EditID).AddButton(XO("E&dit..."));
S.Id(ResetID).AddButton(XO("Rese&t..."));
S.Id(EditID).AddButton(XXO("E&dit..."));
S.Id(ResetID).AddButton(XXO("Rese&t..."));
}
S.EndMultiColumn();
}
@ -936,10 +936,10 @@ void TagsEditorDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartMultiColumn(4, wxALIGN_CENTER);
{
S.Id(LoadID).AddButton(XO("&Load..."));
S.Id(SaveID).AddButton(XO("&Save..."));
S.Id(LoadID).AddButton(XXO("&Load..."));
S.Id(SaveID).AddButton(XXO("&Save..."));
S.AddTitle( {} );
S.Id(SaveDefaultsID).AddButton(XO("Set De&fault"));
S.Id(SaveDefaultsID).AddButton(XXO("Set De&fault"));
}
S.EndMultiColumn();
}
@ -948,7 +948,7 @@ void TagsEditorDialog::PopulateOrExchange(ShuttleGui & S)
S.EndHorizontalLay();
S.StartHorizontalLay(wxALIGN_LEFT, 0);
{
S.Id( DontShowID ).AddCheckBox( XO("Don't show this when exporting audio"), !bShow );
S.Id( DontShowID ).AddCheckBox( XXO("Don't show this when exporting audio"), !bShow );
}
S.EndHorizontalLay();
}

View File

@ -926,7 +926,7 @@ void TimerRecordDialog::PopulateOrExchange(ShuttleGui& S)
S.StartStatic(XO("Automatic Save"), true);
{
// If checked, the project will be saved when the recording is completed
m_pTimerAutoSaveCheckBoxCtrl = S.Id(ID_AUTOSAVE_CHECKBOX).AddCheckBox(XO("Enable &Automatic Save?"),
m_pTimerAutoSaveCheckBoxCtrl = S.Id(ID_AUTOSAVE_CHECKBOX).AddCheckBox(XXO("Enable &Automatic Save?"),
bAutoSave);
S.StartMultiColumn(3, wxEXPAND);
{
@ -937,13 +937,13 @@ void TimerRecordDialog::PopulateOrExchange(ShuttleGui& S)
m_fnAutoSaveFile.Assign(sSaveValue);
sInitialValue = XO("Current Project");
}
S.AddPrompt(XO("Save Project As:"));
S.AddPrompt(XXO("Save Project As:"));
m_pTimerSavePathTextCtrl = NewPathControl(
S.GetParent(), ID_AUTOSAVEPATH_TEXT,
XO("Save Project As:"), sInitialValue);
m_pTimerSavePathTextCtrl->SetEditable(false);
S.AddWindow(m_pTimerSavePathTextCtrl);
m_pTimerSavePathButtonCtrl = S.Id(ID_AUTOSAVEPATH_BUTTON).AddButton(XO("Select..."));
m_pTimerSavePathButtonCtrl = S.Id(ID_AUTOSAVEPATH_BUTTON).AddButton(XXO("Select..."));
}
S.EndMultiColumn();
}
@ -951,16 +951,16 @@ void TimerRecordDialog::PopulateOrExchange(ShuttleGui& S)
S.StartStatic(XO("Automatic Export"), true);
{
m_pTimerAutoExportCheckBoxCtrl = S.Id(ID_AUTOEXPORT_CHECKBOX).AddCheckBox(XO("Enable Automatic &Export?"), bAutoExport);
m_pTimerAutoExportCheckBoxCtrl = S.Id(ID_AUTOEXPORT_CHECKBOX).AddCheckBox(XXO("Enable Automatic &Export?"), bAutoExport);
S.StartMultiColumn(3, wxEXPAND);
{
S.AddPrompt(XO("Export Project As:"));
S.AddPrompt(XXO("Export Project As:"));
m_pTimerExportPathTextCtrl = NewPathControl(
S.GetParent(), ID_AUTOEXPORTPATH_TEXT,
XO("Export Project As:"), {});
m_pTimerExportPathTextCtrl->SetEditable(false);
S.AddWindow(m_pTimerExportPathTextCtrl);
m_pTimerExportPathButtonCtrl = S.Id(ID_AUTOEXPORTPATH_BUTTON).AddButton(XO("Select..."));
m_pTimerExportPathButtonCtrl = S.Id(ID_AUTOEXPORTPATH_BUTTON).AddButton(XXO("Select..."));
}
S.EndMultiColumn();
}
@ -972,7 +972,7 @@ void TimerRecordDialog::PopulateOrExchange(ShuttleGui& S)
S.StartMultiColumn(1, wxEXPAND);
{
S.SetStretchyCol( 0 );
m_pTimerAfterCompleteChoiceCtrl = S.AddChoice(XO("After Recording completes:"),
m_pTimerAfterCompleteChoiceCtrl = S.AddChoice(XXO("After Recording completes:"),
{
XO("Do nothing") ,
XO("Exit Audacity") ,

View File

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

View File

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

View File

@ -73,13 +73,13 @@ void DragCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxALIGN_CENTER);
{
/* i18n-hint abbreviates "Identity" or "Identifier" */
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,
S.Optional( bHasId ).TieNumericTextBox( XXO("Id:"), mId );
S.Optional( bHasWinName ).TieTextBox( XXO("Window Name:"), mWinName );
S.Optional( bHasFromX ).TieNumericTextBox( XXO("From X:"), mFromX );
S.Optional( bHasFromY ).TieNumericTextBox( XXO("From Y:"), mFromY );
S.Optional( bHasToX ).TieNumericTextBox( XXO("To X:"), mToX );
S.Optional( bHasToY ).TieNumericTextBox( XXO("To Y:"), mToY );
S.Optional( bHasRelativeTo ).TieChoice( XXO("Relative To:"), mRelativeTo,
Msgids( kCoordTypeStrings, nCoordTypes ) );
}
S.EndMultiColumn();

View File

@ -112,9 +112,9 @@ void GetInfoCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieChoice( XO("Type:"),
S.TieChoice( XXO("Type:"),
mInfoType, Msgids( kTypes, nTypes ));
S.TieChoice( XO("Format:"),
S.TieChoice( XXO("Format:"),
mFormat, Msgids( kFormats, nFormats ));
}
S.EndMultiColumn();

View File

@ -58,7 +58,7 @@ void GetTrackInfoCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieChoice( XO("Types:"), mInfoType, Msgids( kTypes, nTypes ));
S.TieChoice( XXO("Types:"), mInfoType, Msgids( kTypes, nTypes ));
}
S.EndMultiColumn();
}

View File

@ -60,8 +60,8 @@ void HelpCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(XO("Command:"),mCommandName);
S.TieChoice( XO("Format:"),
S.TieTextBox(XXO("Command:"),mCommandName);
S.TieChoice( XXO("Format:"),
mFormat, Msgids( kFormats, nFormats ));
}
S.EndMultiColumn();

View File

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

View File

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

View File

@ -44,8 +44,8 @@ void OpenProjectCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(XO("File Name:"),mFileName);
S.TieCheckBox(XO("Add to History"), mbAddToHistory );
S.TieTextBox(XXO("File Name:"),mFileName);
S.TieCheckBox(XXO("Add to History"), mbAddToHistory );
}
S.EndMultiColumn();
}
@ -89,9 +89,9 @@ void SaveProjectCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox(XO("File Name:"),mFileName);
S.TieCheckBox(XO("Add to History"), mbAddToHistory );
S.TieCheckBox(XO("Compress"), mbCompress );
S.TieTextBox(XXO("File Name:"),mFileName);
S.TieCheckBox(XXO("Add to History"), mbAddToHistory );
S.TieCheckBox(XXO("Compress"), mbCompress );
}
S.EndMultiColumn();
}

View File

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

View File

@ -126,12 +126,12 @@ void ScreenshotCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieTextBox( XO("Path:"), mPath);
S.TieChoice( XO("Capture What:"),
S.TieTextBox( XXO("Path:"), mPath);
S.TieChoice( XXO("Capture What:"),
mWhat, Msgids(kCaptureWhatStrings, nCaptureWhats));
S.TieChoice( XO("Background:"),
S.TieChoice( XXO("Background:"),
mBack, Msgids(kBackgroundStrings, nBackgrounds));
S.TieCheckBox( XO("Bring To Top"), mbBringToTop);
S.TieCheckBox( XXO("Bring To Top"), mbBringToTop);
}
S.EndMultiColumn();
}

View File

@ -79,11 +79,11 @@ void SelectTimeCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasT0 ).TieTextBox(XO("Start Time:"), mT0);
S.Optional( bHasT1 ).TieTextBox(XO("End Time:"), mT1);
S.Optional( bHasT0 ).TieTextBox(XXO("Start Time:"), mT0);
S.Optional( bHasT1 ).TieTextBox(XXO("End Time:"), mT1);
// Chooses what time is relative to.
S.Optional( bHasRelativeSpec ).TieChoice(
XO("Relative To:"),
XXO("Relative To:"),
mRelativeTo, Msgids( kRelativeTo, nRelativeTos ));
}
S.EndMultiColumn();
@ -160,8 +160,8 @@ void SelectFrequenciesCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasTop ).TieTextBox(XO("High:"), mTop);
S.Optional( bHasBottom ).TieTextBox(XO("Low:"), mBottom);
S.Optional( bHasTop ).TieTextBox(XXO("High:"), mTop);
S.Optional( bHasBottom ).TieTextBox(XXO("Low:"), mBottom);
}
S.EndMultiColumn();
}
@ -212,14 +212,14 @@ void SelectTracksCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasFirstTrack).TieTextBox(XO("First Track:"),mFirstTrack);
S.Optional( bHasNumTracks).TieTextBox(XO("Track Count:"),mNumTracks);
S.Optional( bHasFirstTrack).TieTextBox(XXO("First Track:"),mFirstTrack);
S.Optional( bHasNumTracks).TieTextBox(XXO("Track Count:"),mNumTracks);
}
S.EndMultiColumn();
S.StartMultiColumn(2, wxALIGN_CENTER);
{
// Always used, so no check box.
S.TieChoice( XO("Mode:"), mMode, Msgids( kModes, nModes ));
S.TieChoice( XXO("Mode:"), mMode, Msgids( kModes, nModes ));
}
S.EndMultiColumn();
}

View File

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

View File

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

View File

@ -53,15 +53,15 @@ void SetLabelCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxALIGN_CENTER);
{
S.TieNumericTextBox( XO("Label Index"), mLabelIndex );
S.TieNumericTextBox( XXO("Label Index"), mLabelIndex );
}
S.EndMultiColumn();
S.StartMultiColumn(3, wxALIGN_CENTER);
{
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( XO("Selected"), mbSelected );
S.Optional( bHasText ).TieTextBox( XXO("Text:"), mText );
S.Optional( bHasT0 ).TieNumericTextBox( XXO("Start:"), mT0 );
S.Optional( bHasT1 ).TieNumericTextBox( XXO("End:"), mT1 );
S.Optional( bHasSelected ).TieCheckBox( XXO("Selected"), mbSelected );
}
S.EndMultiColumn();
}

View File

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

View File

@ -142,14 +142,14 @@ void SetTrackStatusCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasTrackName ).TieTextBox( XO("Name:"), mTrackName );
S.Optional( bHasTrackName ).TieTextBox( XXO("Name:"), mTrackName );
}
S.EndMultiColumn();
S.StartMultiColumn(2, wxEXPAND);
{
S.SetStretchyCol( 1 );
S.Optional( bHasSelected ).TieCheckBox( XO("Selected"), bSelected );
S.Optional( bHasFocused ).TieCheckBox( XO("Focused"), bFocused);
S.Optional( bHasSelected ).TieCheckBox( XXO("Selected"), bSelected );
S.Optional( bHasFocused ).TieCheckBox( XXO("Focused"), bFocused);
}
S.EndMultiColumn();
}
@ -205,15 +205,15 @@ void SetTrackAudioCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxEXPAND);
{
S.SetStretchyCol( 1 );
S.Optional( bHasMute ).TieCheckBox( XO("Mute"), bMute);
S.Optional( bHasSolo ).TieCheckBox( XO("Solo"), bSolo);
S.Optional( bHasMute ).TieCheckBox( XXO("Mute"), bMute);
S.Optional( bHasSolo ).TieCheckBox( XXO("Solo"), bSolo);
}
S.EndMultiColumn();
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasGain ).TieSlider( XO("Gain:"), mGain, 36.0,-36.0);
S.Optional( bHasPan ).TieSlider( XO("Pan:"), mPan, 100.0, -100.0);
S.Optional( bHasGain ).TieSlider( XXO("Gain:"), mGain, 36.0,-36.0);
S.Optional( bHasPan ).TieSlider( XXO("Pan:"), mPan, 100.0, -100.0);
}
S.EndMultiColumn();
}
@ -329,32 +329,32 @@ void SetTrackVisualsCommand::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol( 2 );
S.Optional( bHasHeight ).TieNumericTextBox( XO("Height:"), mHeight );
S.Optional( bHasColour ).TieChoice( XO("Color:"), mColour,
S.Optional( bHasHeight ).TieNumericTextBox( XXO("Height:"), mHeight );
S.Optional( bHasColour ).TieChoice( XXO("Color:"), mColour,
Msgids( kColourStrings, nColours ) );
{
auto symbols = DiscoverSubViewTypes();
auto typeNames = transform_container<TranslatableStrings>(
symbols, std::mem_fn( &EnumValueSymbol::Stripped ) );
S.Optional( bHasDisplayType ).TieChoice( XO("Display:"), mDisplayType,
S.Optional( bHasDisplayType ).TieChoice( XXO("Display:"), mDisplayType,
typeNames );
}
S.Optional( bHasScaleType ).TieChoice( XO("Scale:"), mScaleType,
S.Optional( bHasScaleType ).TieChoice( XXO("Scale:"), mScaleType,
Msgids( kScaleTypeStrings, nScaleTypes ) );
S.Optional( bHasVZoom ).TieChoice( XO("VZoom:"), mVZoom,
S.Optional( bHasVZoom ).TieChoice( XXO("VZoom:"), mVZoom,
Msgids( kZoomTypeStrings, nZoomTypes ) );
S.Optional( bHasVZoomTop ).TieTextBox( XO("VZoom Top:"), mVZoomTop );
S.Optional( bHasVZoomBottom ).TieTextBox( XO("VZoom Bottom:"), mVZoomBottom );
S.Optional( bHasVZoomTop ).TieTextBox( XXO("VZoom Top:"), mVZoomTop );
S.Optional( bHasVZoomBottom ).TieTextBox( XXO("VZoom Bottom:"), mVZoomBottom );
}
S.EndMultiColumn();
S.StartMultiColumn(2, wxEXPAND);
{
S.SetStretchyCol( 1 );
S.Optional( bHasUseSpecPrefs ).TieCheckBox( XO("Use Spectral Prefs"), bUseSpecPrefs );
S.Optional( bHasSpectralSelect ).TieCheckBox( XO("Spectral Select"), bSpectralSelect);
S.Optional( bHasGrayScale ).TieCheckBox( XO("Gray Scale"), bGrayScale );
S.Optional( bHasUseSpecPrefs ).TieCheckBox( XXO("Use Spectral Prefs"), bUseSpecPrefs );
S.Optional( bHasSpectralSelect ).TieCheckBox( XXO("Spectral Select"), bSpectralSelect);
S.Optional( bHasGrayScale ).TieCheckBox( XXO("Gray Scale"), bGrayScale );
}
S.EndMultiColumn();
}

View File

@ -245,7 +245,7 @@ void EffectAmplify::PopulateOrExchange(ShuttleGui & S)
.Validator<FloatingPointValidator<double>>(
precision, &mAmp, NumValidatorStyle::ONE_TRAILING_ZERO, MIN_Amp, MAX_Amp
)
.AddTextBox(XO("&Amplification (dB):"), wxT(""), 12);
.AddTextBox(XXO("&Amplification (dB):"), wxT(""), 12);
}
S.EndMultiColumn();
@ -272,7 +272,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(XO("&New Peak Amplitude (dB):"), wxT(""), 12);
.AddTextBox(XXO("&New Peak Amplitude (dB):"), wxT(""), 12);
}
S.EndMultiColumn();
@ -281,7 +281,7 @@ void EffectAmplify::PopulateOrExchange(ShuttleGui & S)
{
mClip = S.Id(ID_Clip).Disable( batch )
.AddCheckBox(XO("Allo&w clipping"), false);
.AddCheckBox(XXO("Allo&w clipping"), false);
}
S.EndHorizontalLay();
}

View File

@ -442,7 +442,7 @@ void EffectAutoDuck::PopulateOrExchange(ShuttleGui & S)
MIN_DuckAmountDb, MAX_DuckAmountDb
)
.NameSuffix(XO("db"))
.AddTextBox(XO("Duck &amount:"), wxT(""), 10);
.AddTextBox(XXO("Duck &amount:"), wxT(""), 10);
S.AddUnits(XO("dB"));
mMaximumPauseBox = S.Validator<FloatingPointValidator<double>>(
@ -450,7 +450,7 @@ void EffectAutoDuck::PopulateOrExchange(ShuttleGui & S)
MIN_MaximumPause, MAX_MaximumPause
)
.NameSuffix(XO("seconds"))
.AddTextBox(XO("Ma&ximum pause:"), wxT(""), 10);
.AddTextBox(XXO("Ma&ximum pause:"), wxT(""), 10);
S.AddUnits(XO("seconds"));
mOuterFadeDownLenBox = S.Validator<FloatingPointValidator<double>>(
@ -458,7 +458,7 @@ void EffectAutoDuck::PopulateOrExchange(ShuttleGui & S)
MIN_OuterFadeDownLen, MAX_OuterFadeDownLen
)
.NameSuffix(XO("seconds"))
.AddTextBox(XO("Outer fade &down length:"), wxT(""), 10);
.AddTextBox(XXO("Outer fade &down length:"), wxT(""), 10);
S.AddUnits(XO("seconds"));
mOuterFadeUpLenBox = S.Validator<FloatingPointValidator<double>>(
@ -466,7 +466,7 @@ void EffectAutoDuck::PopulateOrExchange(ShuttleGui & S)
MIN_OuterFadeUpLen, MAX_OuterFadeUpLen
)
.NameSuffix(XO("seconds"))
.AddTextBox(XO("Outer fade &up length:"), wxT(""), 10);
.AddTextBox(XXO("Outer fade &up length:"), wxT(""), 10);
S.AddUnits(XO("seconds"));
mInnerFadeDownLenBox = S.Validator<FloatingPointValidator<double>>(
@ -474,7 +474,7 @@ void EffectAutoDuck::PopulateOrExchange(ShuttleGui & S)
MIN_InnerFadeDownLen, MAX_InnerFadeDownLen
)
.NameSuffix(XO("seconds"))
.AddTextBox(XO("Inner fade d&own length:"), wxT(""), 10);
.AddTextBox(XXO("Inner fade d&own length:"), wxT(""), 10);
S.AddUnits(XO("seconds"));
mInnerFadeUpLenBox = S.Validator<FloatingPointValidator<double>>(
@ -482,7 +482,7 @@ void EffectAutoDuck::PopulateOrExchange(ShuttleGui & S)
MIN_InnerFadeUpLen, MAX_InnerFadeUpLen
)
.NameSuffix(XO("seconds"))
.AddTextBox(XO("Inner &fade up length:"), wxT(""), 10);
.AddTextBox(XXO("Inner &fade up length:"), wxT(""), 10);
S.AddUnits(XO("seconds"));
}
S.EndMultiColumn();
@ -494,7 +494,7 @@ void EffectAutoDuck::PopulateOrExchange(ShuttleGui & S)
MIN_ThresholdDb, MAX_ThresholdDb
)
.NameSuffix(XO("db"))
.AddTextBox(XO("&Threshold:"), wxT(""), 10);
.AddTextBox(XXO("&Threshold:"), wxT(""), 10);
S.AddUnits(XO("dB"));
}
S.EndMultiColumn();

View File

@ -237,7 +237,7 @@ void EffectBassTreble::PopulateOrExchange(ShuttleGui & S)
.Name(XO("Bass (dB):"))
.Validator<FloatingPointValidator<double>>(
1, &mBass, NumValidatorStyle::DEFAULT, MIN_Bass, MAX_Bass)
.AddTextBox(XO("Ba&ss (dB):"), wxT(""), 10);
.AddTextBox(XXO("Ba&ss (dB):"), wxT(""), 10);
mBassS = S.Id(ID_Bass)
.Name(XO("Bass"))
@ -248,7 +248,7 @@ void EffectBassTreble::PopulateOrExchange(ShuttleGui & S)
mTrebleT = S.Id(ID_Treble)
.Validator<FloatingPointValidator<double>>(
1, &mTreble, NumValidatorStyle::DEFAULT, MIN_Treble, MAX_Treble)
.AddTextBox(XO("&Treble (dB):"), wxT(""), 10);
.AddTextBox(XXO("&Treble (dB):"), wxT(""), 10);
mTrebleS = S.Id(ID_Treble)
.Name(XO("Treble"))
@ -269,7 +269,7 @@ void EffectBassTreble::PopulateOrExchange(ShuttleGui & S)
mGainT = S.Id(ID_Gain)
.Validator<FloatingPointValidator<double>>(
1, &mGain, NumValidatorStyle::DEFAULT, MIN_Gain, MAX_Gain)
.AddTextBox(XO("&Volume (dB):"), wxT(""), 10);
.AddTextBox(XXO("&Volume (dB):"), wxT(""), 10);
mGainS = S.Id(ID_Gain)
.Name(XO("Level"))
@ -281,7 +281,7 @@ void EffectBassTreble::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxCENTER);
{
// Link checkbox
mLinkCheckBox = S.Id(ID_Link).AddCheckBox(XO("&Link Volume control to Tone controls"),
mLinkCheckBox = S.Id(ID_Link).AddCheckBox(XXO("&Link Volume control to Tone controls"),
DEF_Link);
}
S.EndMultiColumn();

View File

@ -285,7 +285,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S)
/* i18n-hint: changing a quantity "from" one value "to" another */
.Name(XO("from"))
.MinSize( { 80, -1 } )
.AddChoice(XO("&from"), pitch);
.AddChoice(XXO("&from"), pitch);
m_pSpin_FromOctave = S.Id(ID_FromOctave)
.Name(XO("from Octave"))
@ -296,7 +296,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S)
/* i18n-hint: changing a quantity "from" one value "to" another */
.Name(XO("to"))
.MinSize( { 80, -1 } )
.AddChoice(XO("&to"), pitch);
.AddChoice(XXO("&to"), pitch);
m_pSpin_ToOctave = S.Id(ID_ToOctave)
.Name(XO("to Octave"))
@ -313,7 +313,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S)
2, &m_dSemitonesChange,
NumValidatorStyle::TWO_TRAILING_ZEROES
)
.AddTextBox(XO("&Semitones (half-steps):"), wxT(""), 12);
.AddTextBox(XXO("&Semitones (half-steps):"), wxT(""), 12);
}
S.EndHorizontalLay();
}
@ -330,7 +330,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES,
0.0
)
.AddTextBox(XO("f&rom"), wxT(""), 12);
.AddTextBox(XXO("f&rom"), wxT(""), 12);
m_pTextCtrl_ToFrequency = S.Id(ID_ToFrequency)
.Name(XO("to (Hz)"))
@ -339,7 +339,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES,
0.0
)
.AddTextBox(XO("t&o"), wxT(""), 12);
.AddTextBox(XXO("t&o"), wxT(""), 12);
S.AddUnits(XO("Hz"));
}
@ -353,7 +353,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES,
MIN_Percentage, MAX_Percentage
)
.AddTextBox(XO("Percent C&hange:"), wxT(""), 12);
.AddTextBox(XXO("Percent C&hange:"), wxT(""), 12);
}
S.EndHorizontalLay();
@ -372,7 +372,7 @@ void EffectChangePitch::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2);
{
mUseSBSMSCheckBox = S.Validator<wxGenericValidator>(&mUseSBSMS)
.AddCheckBox(XO("&Use high quality stretching (slow)"),
.AddCheckBox(XXO("&Use high quality stretching (slow)"),
mUseSBSMS);
}
S.EndMultiColumn();

View File

@ -317,7 +317,7 @@ void EffectChangeSpeed::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES,
MIN_Percentage / 100.0, ((MAX_Percentage / 100.0) + 1)
)
.AddTextBox(XO("&Speed Multiplier:"), wxT(""), 12);
.AddTextBox(XXO("&Speed Multiplier:"), wxT(""), 12);
mpTextCtrl_PercentChange = S.Id(ID_PercentChange)
.Validator<FloatingPointValidator<double>>(
@ -325,7 +325,7 @@ void EffectChangeSpeed::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::THREE_TRAILING_ZEROES,
MIN_Percentage, MAX_Percentage
)
.AddTextBox(XO("Percent C&hange:"), wxT(""), 12);
.AddTextBox(XXO("Percent C&hange:"), wxT(""), 12);
}
S.EndMultiColumn();
@ -350,14 +350,14 @@ void EffectChangeSpeed::PopulateOrExchange(ShuttleGui & S)
.Name(XO("From rpm"))
.MinSize( { 100, -1 } )
/* i18n-hint: changing a quantity "from" one value "to" another */
.AddChoice(XO("&from"), kVinylStrings);
.AddChoice(XXO("&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 } )
/* i18n-hint: changing a quantity "from" one value "to" another */
.AddChoice(XO("&to"), kVinylStrings);
.AddChoice(XXO("&to"), kVinylStrings);
}
S.EndMultiColumn();
@ -366,7 +366,7 @@ void EffectChangeSpeed::PopulateOrExchange(ShuttleGui & S)
{
S.StartMultiColumn(2, wxALIGN_LEFT);
{
S.AddPrompt(XO("C&urrent Length:"));
S.AddPrompt(XXO("C&urrent Length:"));
mpFromLengthCtrl = safenew
NumericTextCtrl(S.GetParent(), wxID_ANY,
@ -384,7 +384,7 @@ void EffectChangeSpeed::PopulateOrExchange(ShuttleGui & S)
.Position(wxALIGN_LEFT)
.AddWindow(mpFromLengthCtrl);
S.AddPrompt(XO("&New Length:"));
S.AddPrompt(XXO("&New Length:"));
mpToLengthCtrl = safenew
NumericTextCtrl(S.GetParent(), ID_ToLength,

View File

@ -244,7 +244,7 @@ void EffectChangeTempo::PopulateOrExchange(ShuttleGui & S)
3, &m_PercentChange, NumValidatorStyle::THREE_TRAILING_ZEROES,
MIN_Percentage, MAX_Percentage
)
.AddTextBox(XO("Percent C&hange:"), wxT(""), 12);
.AddTextBox(XXO("Percent C&hange:"), wxT(""), 12);
}
S.EndMultiColumn();
@ -270,7 +270,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(XO("&from"), wxT(""), 12);
.AddTextBox(XXO("&from"), wxT(""), 12);
m_pTextCtrl_ToBPM = S.Id(ID_ToBPM)
/* i18n-hint: changing a quantity "from" one value "to" another */
@ -280,7 +280,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(XO("&to"), wxT(""), 12);
.AddTextBox(XXO("&to"), wxT(""), 12);
}
S.EndHorizontalLay();
}
@ -298,7 +298,7 @@ void EffectChangeTempo::PopulateOrExchange(ShuttleGui & S)
precision, &m_FromLength,
NumValidatorStyle::TWO_TRAILING_ZEROES)
/* i18n-hint: changing a quantity "from" one value "to" another */
.AddTextBox(XO("from"), wxT(""), 12);
.AddTextBox(XXO("from"), wxT(""), 12);
m_pTextCtrl_ToLength = S.Id(ID_ToLength)
.Validator<FloatingPointValidator<double>>(
2, &m_ToLength, NumValidatorStyle::TWO_TRAILING_ZEROES,
@ -309,7 +309,7 @@ void EffectChangeTempo::PopulateOrExchange(ShuttleGui & S)
(m_FromLength * 100.0) / (100.0 + MIN_Percentage) )
)
/* i18n-hint: changing a quantity "from" one value "to" another */
.AddTextBox(XO("t&o"), wxT(""), 12);
.AddTextBox(XXO("t&o"), wxT(""), 12);
}
S.EndHorizontalLay();
}
@ -319,7 +319,7 @@ void EffectChangeTempo::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2);
{
mUseSBSMSCheckBox = S.Validator<wxGenericValidator>(&mUseSBSMS)
.AddCheckBox(XO("&Use high quality stretching (slow)"),
.AddCheckBox(XXO("&Use high quality stretching (slow)"),
mUseSBSMS);
}
S.EndMultiColumn();

View File

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

View File

@ -349,11 +349,11 @@ void EffectCompressor::PopulateOrExchange(ShuttleGui & S)
S.StartHorizontalLay(wxCENTER, false);
{
/* i18n-hint: Make-up, i.e. correct for any reduction, rather than fabricate it.*/
mGainCheckBox = S.AddCheckBox(XO("Ma&ke-up gain for 0 dB after compressing"),
mGainCheckBox = S.AddCheckBox(XXO("Ma&ke-up gain for 0 dB after compressing"),
DEF_Normalize);
/* i18n-hint: "Compress" here means reduce variations of sound volume,
NOT related to file-size compression; Peaks means extremes in volume */
mPeakCheckBox = S.AddCheckBox(XO("C&ompress based on Peaks"),
mPeakCheckBox = S.AddCheckBox(XXO("C&ompress based on Peaks"),
DEF_UsePeak);
}
S.EndHorizontalLay();

View File

@ -270,7 +270,7 @@ ContrastDialog::ContrastDialog(wxWindow * parent, wxWindowID id,
S.Name(XO("Foreground end time"))
.AddWindow(mForegroundEndT);
m_pButton_UseCurrentF = S.Id(ID_BUTTON_USECURRENTF).AddButton(XO("&Measure selection"));
m_pButton_UseCurrentF = S.Id(ID_BUTTON_USECURRENTF).AddButton(XXO("&Measure selection"));
mForegroundRMSText = S.Id(ID_FOREGROUNDDB_TEXT)
.ConnectRoot(wxEVT_KEY_DOWN,
&ContrastDialog::OnChar)
@ -304,7 +304,7 @@ ContrastDialog::ContrastDialog(wxWindow * parent, wxWindowID id,
S.Name(XO("Background end time"))
.AddWindow(mBackgroundEndT);
m_pButton_UseCurrentB = S.Id(ID_BUTTON_USECURRENTB).AddButton(XO("Mea&sure selection"));
m_pButton_UseCurrentB = S.Id(ID_BUTTON_USECURRENTB).AddButton(XXO("Mea&sure selection"));
mBackgroundRMSText = S.Id(ID_BACKGROUNDDB_TEXT)
.ConnectRoot(wxEVT_KEY_DOWN,
&ContrastDialog::OnChar)
@ -326,7 +326,7 @@ ContrastDialog::ContrastDialog(wxWindow * parent, wxWindowID id,
.ConnectRoot(wxEVT_KEY_DOWN,
&ContrastDialog::OnChar)
.AddTextBox( {}, wxT(""), 50);
m_pButton_Reset = S.Id(ID_BUTTON_RESET).AddButton(XO("R&eset"));
m_pButton_Reset = S.Id(ID_BUTTON_RESET).AddButton(XXO("R&eset"));
label = XO("&Difference:");
S.AddFixedText(label);
@ -335,7 +335,7 @@ ContrastDialog::ContrastDialog(wxWindow * parent, wxWindowID id,
.ConnectRoot(wxEVT_KEY_DOWN,
&ContrastDialog::OnChar)
.AddTextBox( {}, wxT(""), 50);
m_pButton_Export = S.Id(ID_BUTTON_EXPORT).AddButton(XO("E&xport..."));
m_pButton_Export = S.Id(ID_BUTTON_EXPORT).AddButton(XXO("E&xport..."));
}
S.EndMultiColumn();
}

View File

@ -369,10 +369,10 @@ void EffectDistortion::PopulateOrExchange(ShuttleGui & S)
mTypeChoiceCtrl = S.Id(ID_Type)
.MinSize( { -1, -1 } )
.Validator<wxGenericValidator>(&mParams.mTableChoiceIndx)
.AddChoice(XO("Distortion type:"),
.AddChoice(XXO("Distortion type:"),
Msgids(kTableTypeStrings, nTableTypes));
mDCBlockCheckBox = S.Id(ID_DCBlock).AddCheckBox(XO("DC blocking filter"),
mDCBlockCheckBox = S.Id(ID_DCBlock).AddCheckBox(XXO("DC blocking filter"),
DEF_DCBlock);
}
S.EndMultiColumn();

View File

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

View File

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

View File

@ -405,10 +405,10 @@ EffectPresetsDialog::EffectPresetsDialog(wxWindow *parent, Effect *effect)
S.StartTwoColumn();
S.SetStretchyCol(1);
{
S.AddPrompt(XO("Type:"));
S.AddPrompt(XXO("Type:"));
mType = S.Id(ID_Type).AddChoice( {}, {}, 0 );
S.AddPrompt(XO("&Preset:"));
S.AddPrompt(XXO("&Preset:"));
mPresets = S
.Style( wxLB_SINGLE | wxLB_NEEDED_SB )
.AddListBox( {} );

View File

@ -885,7 +885,7 @@ wxPanel *EffectUIHost::BuildButtonBar(wxWindow *parent)
{
mMenuBtn = S.Id( kMenuID )
.ToolTip(XO("Manage presets and options"))
.AddButton( XO("&Manage"), wxALIGN_CENTER | wxTOP | wxBOTTOM );
.AddButton( XXO("&Manage"), wxALIGN_CENTER | wxTOP | wxBOTTOM );
}
else
{
@ -906,7 +906,7 @@ wxPanel *EffectUIHost::BuildButtonBar(wxWindow *parent)
{
mPlayToggleBtn = S.Id( kPlayID )
.ToolTip(XO("Start and stop playback"))
.AddButton( XO("Start &Playback"),
.AddButton( XXO("Start &Playback"),
wxALIGN_CENTER | wxTOP | wxBOTTOM );
}
else if (mEffect &&
@ -915,7 +915,7 @@ wxPanel *EffectUIHost::BuildButtonBar(wxWindow *parent)
{
mPlayToggleBtn = S.Id( kPlayID )
.ToolTip(XO("Preview effect"))
.AddButton( XO("&Preview"),
.AddButton( XXO("&Preview"),
wxALIGN_CENTER | wxTOP | wxBOTTOM );
}
}
@ -945,7 +945,7 @@ wxPanel *EffectUIHost::BuildButtonBar(wxWindow *parent)
{
mRewindBtn = S.Id( kRewindID )
.ToolTip(XO("Skip backward"))
.AddButton( XO("Skip &Backward"),
.AddButton( XXO("Skip &Backward"),
wxALIGN_CENTER | wxTOP | wxBOTTOM );
}
else
@ -964,7 +964,7 @@ wxPanel *EffectUIHost::BuildButtonBar(wxWindow *parent)
{
mFFwdBtn = S.Id( kFFwdID )
.ToolTip(XO("Skip forward"))
.AddButton( XO("Skip &Forward"),
.AddButton( XXO("Skip &Forward"),
wxALIGN_CENTER | wxTOP | wxBOTTOM );
}
else
@ -984,7 +984,7 @@ wxPanel *EffectUIHost::BuildButtonBar(wxWindow *parent)
mEnableCb = S.Id( kEnableID )
.Position(wxALIGN_CENTER | wxTOP | wxBOTTOM)
.Name(XO("Enable"))
.AddCheckBox( XO("&Enable"), mEnabled );
.AddCheckBox( XXO("&Enable"), mEnabled );
//
}
}
@ -1569,7 +1569,7 @@ void EffectUIHost::OnSaveAs(wxCommandEvent & WXUNUSED(evt))
{
S.StartHorizontalLay(wxALIGN_LEFT, 0);
{
text = S.AddTextBox(XO("Preset name:"), name, 30);
text = S.AddTextBox(XXO("Preset name:"), name, 30);
}
S.EndHorizontalLay();
S.SetBorder(10);

View File

@ -944,7 +944,7 @@ void EffectEqualization::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay(wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL);
{
S.AddPrompt(XO("&EQ Type:"));
S.AddPrompt(XXO("&EQ Type:"));
}
S.EndHorizontalLay();
@ -954,11 +954,11 @@ void EffectEqualization::PopulateOrExchange(ShuttleGui & S)
{
mDraw = S.Id(ID_Draw)
.Name(XO("Draw Curves"))
.AddRadioButton(XO("&Draw"));
.AddRadioButton(XXO("&Draw"));
mGraphic = S.Id(ID_Graphic)
.Name(XO("Graphic EQ"))
.AddRadioButtonToGroup(XO("&Graphic"));
.AddRadioButtonToGroup(XXO("&Graphic"));
}
S.EndHorizontalLay();
}
@ -990,7 +990,7 @@ void EffectEqualization::PopulateOrExchange(ShuttleGui & S)
mLinFreq = S.Id(ID_Linear)
.Name(XO("Linear Frequency Scale"))
.AddCheckBox(XO("Li&near Frequency Scale"), false);
.AddCheckBox(XXO("Li&near Frequency Scale"), false);
}
S.EndHorizontalLay();
}
@ -1005,7 +1005,7 @@ void EffectEqualization::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay(wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, 0);
{
S.AddPrompt(XO("Length of &Filter:"));
S.AddPrompt(XXO("Length of &Filter:"));
}
S.EndHorizontalLay();
@ -1040,7 +1040,7 @@ void EffectEqualization::PopulateOrExchange(ShuttleGui & S)
S.AddSpace(5, 5);
S.StartHorizontalLay(wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL);
{
S.AddPrompt(XO("&Select Curve:"));
S.AddPrompt(XXO("&Select Curve:"));
}
S.EndHorizontalLay();
@ -1063,17 +1063,17 @@ void EffectEqualization::PopulateOrExchange(ShuttleGui & S)
}
S.EndHorizontalLay();
S.Id(ID_Manage).AddButton(XO("S&ave/Manage Curves..."));
S.Id(ID_Manage).AddButton(XXO("S&ave/Manage Curves..."));
}
S.StartHorizontalLay(wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, 1);
{
S.Id(ID_Clear).AddButton(XO("Fla&tten"));
S.Id(ID_Invert).AddButton(XO("&Invert"));
S.Id(ID_Clear).AddButton(XXO("Fla&tten"));
S.Id(ID_Invert).AddButton(XXO("&Invert"));
mGridOnOff = S.Id(ID_Grid)
.Name(XO("Show grid lines"))
.AddCheckBox(XO("Show g&rid lines"), false);
.AddCheckBox(XXO("Show g&rid lines"), false);
}
S.EndHorizontalLay();
@ -1111,27 +1111,27 @@ void EffectEqualization::PopulateOrExchange(ShuttleGui & S)
: 0;
mMathProcessingType[0] = S.Id(ID_DefaultMath)
.AddRadioButton(XO("D&efault"),
.AddRadioButton(XXO("D&efault"),
0, value);
mMathProcessingType[1] = S.Id(ID_SSE)
.Disable(!EffectEqualization48x::GetMathCaps()->SSE)
.AddRadioButtonToGroup(XO("&SSE"),
.AddRadioButtonToGroup(XXO("&SSE"),
1, value);
mMathProcessingType[2] = S.Id(ID_SSEThreaded)
.Disable(!EffectEqualization48x::GetMathCaps()->SSE)
.AddRadioButtonToGroup(XO("SSE &Threaded"),
.AddRadioButtonToGroup(XXO("SSE &Threaded"),
2, value);
mMathProcessingType[3] = S.Id(ID_AVX)
// not implemented
.Disable(true /* !EffectEqualization48x::GetMathCaps()->AVX */)
.AddRadioButtonToGroup(XO("A&VX"),
.AddRadioButtonToGroup(XXO("A&VX"),
3, value);
mMathProcessingType[4] = S.Id(ID_AVXThreaded)
// not implemented
.Disable(true /* !EffectEqualization48x::GetMathCaps()->AVX */)
.AddRadioButtonToGroup(XO("AV&X Threaded"),
.AddRadioButtonToGroup(XXO("AV&X Threaded"),
4, value);
S.Id(ID_Bench).AddButton(XO("&Bench"));
S.Id(ID_Bench).AddButton(XXO("&Bench"));
}
S.EndHorizontalLay();
@ -3394,14 +3394,14 @@ void EditCurvesDialog::PopulateOrExchange(ShuttleGui & S)
S.EndStatic();
S.StartVerticalLay(0);
{
S.Id(UpButtonID).AddButton(XO("Move &Up"), wxALIGN_LEFT);
S.Id(DownButtonID).AddButton(XO("Move &Down"), wxALIGN_LEFT);
S.Id(RenameButtonID).AddButton(XO("&Rename..."), wxALIGN_LEFT);
S.Id(DeleteButtonID).AddButton(XO("D&elete..."), wxALIGN_LEFT);
S.Id(ImportButtonID).AddButton(XO("I&mport..."), wxALIGN_LEFT);
S.Id(ExportButtonID).AddButton(XO("E&xport..."), wxALIGN_LEFT);
S.Id(LibraryButtonID).AddButton(XO("&Get More..."), wxALIGN_LEFT);
S.Id(DefaultsButtonID).AddButton(XO("De&faults"), wxALIGN_LEFT);
S.Id(UpButtonID).AddButton(XXO("Move &Up"), wxALIGN_LEFT);
S.Id(DownButtonID).AddButton(XXO("Move &Down"), wxALIGN_LEFT);
S.Id(RenameButtonID).AddButton(XXO("&Rename..."), wxALIGN_LEFT);
S.Id(DeleteButtonID).AddButton(XXO("D&elete..."), wxALIGN_LEFT);
S.Id(ImportButtonID).AddButton(XXO("I&mport..."), wxALIGN_LEFT);
S.Id(ExportButtonID).AddButton(XXO("E&xport..."), wxALIGN_LEFT);
S.Id(LibraryButtonID).AddButton(XXO("&Get More..."), wxALIGN_LEFT);
S.Id(DefaultsButtonID).AddButton(XXO("De&faults"), wxALIGN_LEFT);
}
S.EndVerticalLay();
}

View File

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

View File

@ -328,12 +328,12 @@ void EffectLoudness::PopulateOrExchange(ShuttleGui & S)
mStereoIndCheckBox = S
.Validator<wxGenericValidator>( &mStereoInd )
.AddCheckBox(XO("Normalize &stereo channels independently"),
.AddCheckBox(XXO("Normalize &stereo channels independently"),
mStereoInd );
mDualMonoCheckBox = S
.Validator<wxGenericValidator>( &mDualMono )
.AddCheckBox(XO("&Treat mono as dual-mono (recommended)"),
.AddCheckBox(XXO("&Treat mono as dual-mono (recommended)"),
mDualMono );
}
S.EndVerticalLay();

View File

@ -232,14 +232,14 @@ void EffectNoise::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxCENTER);
{
S.Validator<wxGenericValidator>(&mType)
.AddChoice(XO("&Noise type:"), Msgids(kTypeStrings, nTypes));
.AddChoice(XXO("&Noise type:"), Msgids(kTypeStrings, nTypes));
S.Validator<FloatingPointValidator<double>>(
6, &mAmp, NumValidatorStyle::NO_TRAILING_ZEROES, MIN_Amp, MAX_Amp
)
.AddTextBox(XO("&Amplitude (0-1):"), wxT(""), 12);
.AddTextBox(XXO("&Amplitude (0-1):"), wxT(""), 12);
S.AddPrompt(XO("&Duration:"));
S.AddPrompt(XXO("&Duration:"));
mNoiseDurationT = safenew
NumericTextCtrl(S.GetParent(), wxID_ANY,
NumericConverter::TIME,

View File

@ -1487,26 +1487,26 @@ const ControlInfo *controlInfo() {
static const ControlInfo table[] = {
ControlInfo(&EffectNoiseReduction::Settings::mNoiseGain,
0.0, 48.0, 48, wxT("%d"), true,
XO("&Noise reduction (dB):"), XO("Noise reduction")),
XXO("&Noise reduction (dB):"), XO("Noise reduction")),
ControlInfo(&EffectNoiseReduction::Settings::mNewSensitivity,
0.0, 24.0, 48, wxT("%.2f"), false,
XO("&Sensitivity:"), XO("Sensitivity")),
XXO("&Sensitivity:"), XO("Sensitivity")),
#ifdef ATTACK_AND_RELEASE
ControlInfo(&EffectNoiseReduction::Settings::mAttackTime,
0, 1.0, 100, wxT("%.2f"), false,
XO("Attac&k time (secs):"), XO("Attack time")),
XXO("Attac&k time (secs):"), XO("Attack time")),
ControlInfo(&EffectNoiseReduction::Settings::mReleaseTime,
0, 1.0, 100, wxT("%.2f"), false,
XO("R&elease time (secs):"), XO("Release time")),
XXO("R&elease time (secs):"), XO("Release time")),
#endif
ControlInfo(&EffectNoiseReduction::Settings::mFreqSmoothingBands,
0, 12, 12, wxT("%d"), true,
XO("&Frequency smoothing (bands):"), XO("Frequency smoothing")),
XXO("&Frequency smoothing (bands):"), XO("Frequency smoothing")),
#ifdef ADVANCED_SETTINGS
ControlInfo(&EffectNoiseReduction::Settings::mOldSensitivity,
-20.0, 20.0, 4000, wxT("%.2f"), false,
XO("Sensiti&vity (dB):"), XO("Old Sensitivity")),
XXO("Sensiti&vity (dB):"), XO("Old Sensitivity")),
// add here
#endif
};
@ -1721,7 +1721,7 @@ void EffectNoiseReduction::Dialog::PopulateOrExchange(ShuttleGui & S)
S.AddVariableText(XO(
"Select a few seconds of just noise so Audacity knows what to filter out,\nthen click Get Noise Profile:"));
//m_pButton_GetProfile =
S.Id(ID_BUTTON_GETPROFILE).AddButton(XO("&Get Noise Profile"));
S.Id(ID_BUTTON_GETPROFILE).AddButton(XXO("&Get Noise Profile"));
}
S.EndStatic();
@ -1751,18 +1751,18 @@ void EffectNoiseReduction::Dialog::PopulateOrExchange(ShuttleGui & S)
,
wxALIGN_CENTER_HORIZONTAL);
{
S.AddPrompt(XO("Noise:"));
S.AddPrompt(XXO("Noise:"));
mKeepSignal = S.Id(ID_RADIOBUTTON_KEEPSIGNAL)
/* i18n-hint: Translate differently from "Residue" ! */
.AddRadioButton(XO("Re&duce"));
.AddRadioButton(XXO("Re&duce"));
#ifdef ISOLATE_CHOICE
mKeepNoise = S.Id(ID_RADIOBUTTON_KEEPNOISE)
.AddRadioButtonToGroup(XO("&Isolate"));
.AddRadioButtonToGroup(XXO("&Isolate"));
#endif
#ifdef RESIDUE_CHOICE
mResidue = S.Id(ID_RADIOBUTTON_RESIDUE)
/* i18n-hint: Means the difference between effect and original sound. Translate differently from "Reduce" ! */
.AddRadioButtonToGroup(XO("Resid&ue"));
.AddRadioButtonToGroup(XXO("Resid&ue"));
#endif
}
S.EndMultiColumn();
@ -1775,7 +1775,7 @@ void EffectNoiseReduction::Dialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartMultiColumn(2);
{
S.TieChoice(XO("&Window types:"),
S.TieChoice(XXO("&Window types:"),
mTempSettings.mWindowTypes,
[]{
TranslatableStrings windowTypeChoices;
@ -1785,7 +1785,7 @@ void EffectNoiseReduction::Dialog::PopulateOrExchange(ShuttleGui & S)
}()
);
S.TieChoice(XO("Window si&ze:"),
S.TieChoice(XXO("Window si&ze:"),
mTempSettings.mWindowSizeChoice,
{
XO("8") ,
@ -1803,7 +1803,7 @@ void EffectNoiseReduction::Dialog::PopulateOrExchange(ShuttleGui & S)
}
);
S.TieChoice(XO("S&teps per window:"),
S.TieChoice(XXO("S&teps per window:"),
mTempSettings.mStepsPerWindowChoice,
{
XO("2") ,
@ -1816,7 +1816,7 @@ void EffectNoiseReduction::Dialog::PopulateOrExchange(ShuttleGui & S)
);
S.Id(ID_CHOICE_METHOD)
.TieChoice(XO("Discrimination &method:"),
.TieChoice(XXO("Discrimination &method:"),
mTempSettings.mMethod,
[]{
TranslatableStrings methodChoices;

View File

@ -714,7 +714,7 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
{
S.AddVariableText(XO(
"Select a few seconds of just noise so Audacity knows what to filter out,\nthen click Get Noise Profile:"));
m_pButton_GetProfile = S.Id(ID_BUTTON_GETPROFILE).AddButton(XO("&Get Noise Profile"));
m_pButton_GetProfile = S.Id(ID_BUTTON_GETPROFILE).AddButton(XXO("&Get Noise Profile"));
}
S.EndStatic();
@ -728,7 +728,7 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
{
mGainT = S.Id(ID_GAIN_TEXT)
.Validator<wxTextValidator>(wxFILTER_NUMERIC)
.AddTextBox(XO("Noise re&duction (dB):"), wxT(""), 0);
.AddTextBox(XXO("Noise re&duction (dB):"), wxT(""), 0);
mGainS = S.Id(ID_GAIN_SLIDER)
.Name(XO("Noise reduction"))
@ -738,7 +738,7 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
mSensitivityT = S.Id(ID_SENSITIVITY_TEXT)
.Validator<wxTextValidator>(wxFILTER_NUMERIC)
.AddTextBox(XO("&Sensitivity (dB):"), wxT(""), 0);
.AddTextBox(XXO("&Sensitivity (dB):"), wxT(""), 0);
mSensitivityS = S.Id(ID_SENSITIVITY_SLIDER)
.Name(XO("Sensitivity"))
.Style(wxSL_HORIZONTAL)
@ -747,7 +747,7 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
mFreqT = S.Id(ID_FREQ_TEXT)
.Validator<wxTextValidator>(wxFILTER_NUMERIC)
.AddTextBox(XO("Fr&equency smoothing (Hz):"), wxT(""), 0);
.AddTextBox(XXO("Fr&equency smoothing (Hz):"), wxT(""), 0);
mFreqS = S.Id(ID_FREQ_SLIDER)
.Name(XO("Frequency smoothing"))
.Style(wxSL_HORIZONTAL)
@ -756,18 +756,18 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
mTimeT = S.Id(ID_TIME_TEXT)
.Validator<wxTextValidator>(wxFILTER_NUMERIC)
.AddTextBox(XO("Attac&k/decay time (secs):"), wxT(""), 0);
.AddTextBox(XXO("Attac&k/decay time (secs):"), wxT(""), 0);
mTimeS = S.Id(ID_TIME_SLIDER)
.Name(XO("Attack/decay time"))
.Style(wxSL_HORIZONTAL)
.MinSize( { 150, -1 } )
.AddSlider( {}, 0, TIME_MAX, TIME_MIN);
S.AddPrompt(XO("Noise:"));
S.AddPrompt(XXO("Noise:"));
mKeepSignal = S.Id(ID_RADIOBUTTON_KEEPSIGNAL)
.AddRadioButton(XO("Re&move"));
.AddRadioButton(XXO("Re&move"));
mKeepNoise = S.Id(ID_RADIOBUTTON_KEEPNOISE)
.AddRadioButtonToGroup(XO("&Isolate"));
.AddRadioButtonToGroup(XXO("&Isolate"));
}
S.EndMultiColumn();
}

View File

@ -298,7 +298,7 @@ void EffectNormalize::PopulateOrExchange(ShuttleGui & S)
S.StartVerticalLay(false);
{
mDCCheckBox = S.Validator<wxGenericValidator>(&mDC)
.AddCheckBox(XO("&Remove DC offset (center on 0.0 vertically)"),
.AddCheckBox(XXO("&Remove DC offset (center on 0.0 vertically)"),
mDC);
S.StartHorizontalLay(wxALIGN_LEFT, false);
@ -306,7 +306,7 @@ void EffectNormalize::PopulateOrExchange(ShuttleGui & S)
mGainCheckBox = S
.MinSize()
.Validator<wxGenericValidator>(&mGain)
.AddCheckBox(XO("&Normalize peak amplitude to "),
.AddCheckBox(XXO("&Normalize peak amplitude to "),
mGain);
mLevelTextCtrl = S
@ -328,7 +328,7 @@ void EffectNormalize::PopulateOrExchange(ShuttleGui & S)
mStereoIndCheckBox = S
.Validator<wxGenericValidator>(&mStereoInd)
.AddCheckBox(XO("N&ormalize stereo channels independently"),
.AddCheckBox(XXO("N&ormalize stereo channels independently"),
mStereoInd);
}
S.EndVerticalLay();

View File

@ -206,11 +206,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(XO("&Stretch Factor:"), wxT(""), 10);
.AddTextBox(XXO("&Stretch Factor:"), wxT(""), 10);
S.Validator<FloatingPointValidator<float>>(
3, &mTime_resolution, NumValidatorStyle::ONE_TRAILING_ZERO, MIN_Time)
.AddTextBox(XO("&Time Resolution (seconds):"), wxT(""), 10);
.AddTextBox(XXO("&Time Resolution (seconds):"), wxT(""), 10);
}
S.EndMultiColumn();
};

View File

@ -265,7 +265,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mStagesT = S.Id(ID_Stages)
.Validator<IntegerValidator<int>>(
&mStages, NumValidatorStyle::DEFAULT, MIN_Stages, MAX_Stages)
.AddTextBox(XO("&Stages:"), wxT(""), 15);
.AddTextBox(XXO("&Stages:"), wxT(""), 15);
mStagesS = S.Id(ID_Stages)
.Name(XO("Stages"))
@ -277,7 +277,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mDryWetT = S.Id(ID_DryWet)
.Validator<IntegerValidator<int>>(
&mDryWet, NumValidatorStyle::DEFAULT, MIN_DryWet, MAX_DryWet)
.AddTextBox(XO("&Dry/Wet:"), wxT(""), 15);
.AddTextBox(XXO("&Dry/Wet:"), wxT(""), 15);
mDryWetS = S.Id(ID_DryWet)
.Name(XO("Dry Wet"))
@ -288,7 +288,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(XO("LFO Freq&uency (Hz):"), wxT(""), 15);
.AddTextBox(XXO("LFO Freq&uency (Hz):"), wxT(""), 15);
mFreqS = S.Id(ID_Freq)
.Name(XO("LFO frequency in hertz"))
@ -299,7 +299,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mPhaseT = S.Id(ID_Phase)
.Validator<FloatingPointValidator<double>>(
1, &mPhase, NumValidatorStyle::DEFAULT, MIN_Phase, MAX_Phase)
.AddTextBox(XO("LFO Sta&rt Phase (deg.):"), wxT(""), 15);
.AddTextBox(XXO("LFO Sta&rt Phase (deg.):"), wxT(""), 15);
mPhaseS = S.Id(ID_Phase)
.Name(XO("LFO start phase in degrees"))
@ -311,7 +311,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mDepthT = S.Id(ID_Depth)
.Validator<IntegerValidator<int>>(
&mDepth, NumValidatorStyle::DEFAULT, MIN_Depth, MAX_Depth)
.AddTextBox(XO("Dept&h:"), wxT(""), 15);
.AddTextBox(XXO("Dept&h:"), wxT(""), 15);
mDepthS = S.Id(ID_Depth)
.Name(XO("Depth in percent"))
@ -322,7 +322,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mFeedbackT = S.Id(ID_Feedback)
.Validator<IntegerValidator<int>>(
&mFeedback, NumValidatorStyle::DEFAULT, MIN_Feedback, MAX_Feedback)
.AddTextBox(XO("Feedbac&k (%):"), wxT(""), 15);
.AddTextBox(XXO("Feedbac&k (%):"), wxT(""), 15);
mFeedbackS = S.Id(ID_Feedback)
.Name(XO("Feedback in percent"))
@ -334,7 +334,7 @@ void EffectPhaser::PopulateOrExchange(ShuttleGui & S)
mOutGainT = S.Id(ID_OutGain)
.Validator<FloatingPointValidator<double>>(
1, &mOutGain, NumValidatorStyle::DEFAULT, MIN_OutGain, MAX_OutGain)
.AddTextBox(XO("&Output gain (dB):"), wxT(""), 12);
.AddTextBox(XXO("&Output gain (dB):"), wxT(""), 12);
mOutGainS = S.Id(ID_OutGain)
.Name(XO("Output gain (dB)"))

View File

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

View File

@ -450,15 +450,15 @@ void EffectReverb::PopulateOrExchange(ShuttleGui & S)
.Style(wxSL_HORIZONTAL) \
.AddSlider( {}, DEF_ ## n, MAX_ ## n, MIN_ ## n);
SpinSlider(RoomSize, XO("&Room Size (%):"))
SpinSlider(PreDelay, XO("&Pre-delay (ms):"))
SpinSlider(Reverberance, XO("Rever&berance (%):"))
SpinSlider(HfDamping, XO("Da&mping (%):"))
SpinSlider(ToneLow, XO("Tone &Low (%):"))
SpinSlider(ToneHigh, XO("Tone &High (%):"))
SpinSlider(WetGain, XO("Wet &Gain (dB):"))
SpinSlider(DryGain, XO("Dr&y Gain (dB):"))
SpinSlider(StereoWidth, XO("Stereo Wid&th (%):"))
SpinSlider(RoomSize, XXO("&Room Size (%):"))
SpinSlider(PreDelay, XXO("&Pre-delay (ms):"))
SpinSlider(Reverberance, XXO("Rever&berance (%):"))
SpinSlider(HfDamping, XXO("Da&mping (%):"))
SpinSlider(ToneLow, XXO("Tone &Low (%):"))
SpinSlider(ToneHigh, XXO("Tone &High (%):"))
SpinSlider(WetGain, XXO("Wet &Gain (dB):"))
SpinSlider(DryGain, XXO("Dr&y Gain (dB):"))
SpinSlider(StereoWidth, XXO("Stereo Wid&th (%):"))
#undef SpinSlider
@ -468,7 +468,7 @@ void EffectReverb::PopulateOrExchange(ShuttleGui & S)
S.StartHorizontalLay(wxCENTER, false);
{
mWetOnlyC = S.Id(ID_WetOnly).
AddCheckBox(XO("Wet O&nly"), DEF_WetOnly);
AddCheckBox(XXO("Wet O&nly"), DEF_WetOnly);
}
S.EndHorizontalLay();

View File

@ -473,7 +473,7 @@ void EffectScienFilter::PopulateOrExchange(ShuttleGui & S)
.Focus()
.Validator<wxGenericValidator>(&mFilterType)
.MinSize( { -1, -1 } )
.AddChoice(XO("&Filter Type:"),
.AddChoice(XXO("&Filter Type:"),
Msgids(kTypeStrings, nTypes)
);
@ -481,7 +481,7 @@ void EffectScienFilter::PopulateOrExchange(ShuttleGui & S)
.Validator<wxGenericValidator>(&mOrderIndex)
.MinSize( { -1, -1 } )
/*i18n-hint: 'Order' means the complexity of the filter, and is a number between 1 and 10.*/
.AddChoice(XO("O&rder:"),
.AddChoice(XXO("O&rder:"),
[]{
TranslatableStrings orders;
for (int i = 1; i <= 10; i++)
@ -505,7 +505,7 @@ void EffectScienFilter::PopulateOrExchange(ShuttleGui & S)
mFilterSubTypeCtl = S.Id(ID_SubType)
.Validator<wxGenericValidator>(&mFilterSubtype)
.MinSize( { -1, -1 } )
.AddChoice(XO("&Subtype:"),
.AddChoice(XXO("&Subtype:"),
Msgids(kSubTypeStrings, nSubTypes)
);
@ -514,7 +514,7 @@ void EffectScienFilter::PopulateOrExchange(ShuttleGui & S)
.Validator<FloatingPointValidator<float>>(
1, &mCutoff, NumValidatorStyle::DEFAULT,
MIN_Cutoff, mNyquist - 1)
.AddTextBox(XO("C&utoff:"), wxT(""), 10);
.AddTextBox(XXO("C&utoff:"), wxT(""), 10);
S.AddUnits(XO("Hz"));
mStopbandRippleCtlP =

View File

@ -70,7 +70,7 @@ void EffectSilence::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay();
{
S.AddPrompt(XO("&Duration:"));
S.AddPrompt(XXO("&Duration:"));
mDurationT = safenew
NumericTextCtrl(S.GetParent(), wxID_ANY,
NumericConverter::TIME,

View File

@ -265,7 +265,7 @@ void EffectTimeScale::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_HalfStepsStart, MAX_HalfStepsStart
)
.AddTextBox(XO("(&semitones) [-12 to 12]:"), wxT(""), 12);
.AddTextBox(XXO("(&semitones) [-12 to 12]:"), wxT(""), 12);
m_pTextCtrl_PitchPercentChangeStart = S.Id(ID_PitchPercentChangeStart)
@ -274,7 +274,7 @@ void EffectTimeScale::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_PitchPercentStart, MAX_PitchPercentStart
)
.AddTextBox(XO("(%) [-50 to 100]:"), wxT(""), 12);
.AddTextBox(XXO("(%) [-50 to 100]:"), wxT(""), 12);
}
S.EndMultiColumn();
}
@ -291,14 +291,14 @@ void EffectTimeScale::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_HalfStepsEnd, MAX_HalfStepsEnd
)
.AddTextBox(XO("(s&emitones) [-12 to 12]:"), wxT(""), 12);
.AddTextBox(XXO("(s&emitones) [-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(XO("(%) [-50 to 100]:"), wxT(""), 12);
.AddTextBox(XXO("(%) [-50 to 100]:"), wxT(""), 12);
}
S.EndMultiColumn();
}

View File

@ -352,7 +352,7 @@ void EffectToneGen::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxCENTER);
{
S.Validator<wxGenericValidator>(&mWaveform)
.AddChoice(XO("&Waveform:"),
.AddChoice(XXO("&Waveform:"),
Msgids( kWaveStrings, nWaveforms ) );
if (mChirp)
@ -374,7 +374,7 @@ void EffectToneGen::PopulateOrExchange(ShuttleGui & S)
}
S.EndHorizontalLay();
S.AddPrompt(XO("&Frequency (Hz):"));
S.AddPrompt(XXO("&Frequency (Hz):"));
S.StartHorizontalLay(wxEXPAND);
{
S.StartHorizontalLay(wxLEFT, 50);
@ -405,7 +405,7 @@ void EffectToneGen::PopulateOrExchange(ShuttleGui & S)
}
S.EndHorizontalLay();
S.AddPrompt(XO("&Amplitude (0-1):"));
S.AddPrompt(XXO("&Amplitude (0-1):"));
S.StartHorizontalLay(wxEXPAND);
{
S.StartHorizontalLay(wxLEFT, 50);
@ -433,7 +433,7 @@ void EffectToneGen::PopulateOrExchange(ShuttleGui & S)
S.EndHorizontalLay();
S.Validator<wxGenericValidator>(&mInterpolation)
.AddChoice(XO("I&nterpolation:"),
.AddChoice(XXO("I&nterpolation:"),
Msgids( kInterStrings, nInterpolations ) );
}
else
@ -443,16 +443,16 @@ void EffectToneGen::PopulateOrExchange(ShuttleGui & S)
MIN_Frequency,
mProjectRate / 2.0
)
.AddTextBox(XO("&Frequency (Hz):"), wxT(""), 12);
.AddTextBox(XXO("&Frequency (Hz):"), wxT(""), 12);
t = S.Validator<FloatingPointValidator<double>>(
6, &mAmplitude[0], NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_Amplitude, MAX_Amplitude
)
.AddTextBox(XO("&Amplitude (0-1):"), wxT(""), 12);
.AddTextBox(XXO("&Amplitude (0-1):"), wxT(""), 12);
}
S.AddPrompt(XO("&Duration:"));
S.AddPrompt(XXO("&Duration:"));
mToneDurationT = safenew
NumericTextCtrl(S.GetParent(), wxID_ANY,
NumericConverter::TIME,

View File

@ -768,7 +768,7 @@ void EffectTruncSilence::PopulateOrExchange(ShuttleGui & S)
MIN_Threshold, MAX_Threshold
)
.NameSuffix(XO("db"))
.AddTextBox(XO("&Threshold:"), wxT(""), 0);
.AddTextBox(XXO("&Threshold:"), wxT(""), 0);
S.AddUnits(XO("dB"));
// Ignored silence
@ -777,7 +777,7 @@ void EffectTruncSilence::PopulateOrExchange(ShuttleGui & S)
NumValidatorStyle::NO_TRAILING_ZEROES,
MIN_Minimum, MAX_Minimum)
.NameSuffix(XO("seconds"))
.AddTextBox(XO("&Duration:"), wxT(""), 12);
.AddTextBox(XXO("&Duration:"), wxT(""), 12);
S.AddUnits(XO("seconds"));
}
S.EndMultiColumn();
@ -806,7 +806,7 @@ void EffectTruncSilence::PopulateOrExchange(ShuttleGui & S)
MIN_Truncate, MAX_Truncate
)
.NameSuffix(XO("seconds"))
.AddTextBox(XO("Tr&uncate to:"), wxT(""), 12);
.AddTextBox(XXO("Tr&uncate to:"), wxT(""), 12);
S.AddUnits(XO("seconds"));
mSilenceCompressPercentT = S.Validator<FloatingPointValidator<double>>(
@ -815,14 +815,14 @@ void EffectTruncSilence::PopulateOrExchange(ShuttleGui & S)
MIN_Compress, MAX_Compress
)
.NameSuffix(XO("%"))
.AddTextBox(XO("C&ompress to:"), wxT(""), 12);
.AddTextBox(XXO("C&ompress to:"), wxT(""), 12);
S.AddUnits(XO("%"));
}
S.EndMultiColumn();
S.StartMultiColumn(2, wxALIGN_CENTER_HORIZONTAL);
{
mIndependent = S.AddCheckBox(XO("Trunc&ate tracks independently"),
mIndependent = S.AddCheckBox(XXO("Trunc&ate tracks independently"),
mbIndependent);
}
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(XO("&Buffer Size (8 to 1048576 samples):"),
.TieNumericTextBox(XXO("&Buffer Size (8 to 1048576 samples):"),
mBufferSize,
12);
}
@ -845,7 +845,7 @@ void VSTEffectOptionsDialog::PopulateOrExchange(ShuttleGui & S)
S.StartHorizontalLay(wxALIGN_LEFT);
{
S.TieCheckBox(XO("Enable &compensation"),
S.TieCheckBox(XXO("Enable &compensation"),
mUseLatency);
}
S.EndHorizontalLay();
@ -859,7 +859,7 @@ void VSTEffectOptionsDialog::PopulateOrExchange(ShuttleGui & S)
" A basic text-only method is also available. "
" Reopen the effect for this to take effect."),
false, 0, 650);
S.TieCheckBox(XO("Enable &graphical interface"),
S.TieCheckBox(XXO("Enable &graphical interface"),
mUseGUI);
}
S.EndStatic();

View File

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

View File

@ -568,7 +568,7 @@ void AudioUnitEffectOptionsDialog::PopulateOrExchange(ShuttleGui & S)
S.StartHorizontalLay(wxALIGN_LEFT);
{
S.TieCheckBox(XO("Enable &compensation"),
S.TieCheckBox(XXO("Enable &compensation"),
mUseLatency);
}
S.EndHorizontalLay();
@ -588,7 +588,7 @@ void AudioUnitEffectOptionsDialog::PopulateOrExchange(ShuttleGui & S)
S.StartHorizontalLay(wxALIGN_LEFT);
{
S.TieChoice(XO("Select &interface"),
S.TieChoice(XXO("Select &interface"),
mUIType,
{
XO("Full"),

View File

@ -461,7 +461,7 @@ void LadspaEffectOptionsDialog::PopulateOrExchange(ShuttleGui & S)
S.StartHorizontalLay(wxALIGN_LEFT);
{
S.TieCheckBox(XO("Enable &compensation"),
S.TieCheckBox(XXO("Enable &compensation"),
mUseLatency);
}
S.EndHorizontalLay();

View File

@ -261,7 +261,7 @@ void LV2EffectSettingsDialog::PopulateOrExchange(ShuttleGui &S)
{
wxTextCtrl *t;
t = S.TieNumericTextBox(
XO("&Buffer Size (8 to %d) samples:")
XXO("&Buffer Size (8 to %d) samples:")
.Format( DEFAULT_BLOCKSIZE ),
mBufferSize,
12);
@ -284,7 +284,7 @@ void LV2EffectSettingsDialog::PopulateOrExchange(ShuttleGui &S)
S.StartHorizontalLay(wxALIGN_LEFT);
{
S.TieCheckBox(XO("Enable &compensation"),
S.TieCheckBox(XXO("Enable &compensation"),
mUseLatency);
}
S.EndHorizontalLay();
@ -298,7 +298,7 @@ void LV2EffectSettingsDialog::PopulateOrExchange(ShuttleGui &S)
" A basic text-only method is also available. "
" Reopen the effect for this to take effect."),
false, 0, 650);
S.TieCheckBox(XO("Enable &graphical interface"),
S.TieCheckBox(XXO("Enable &graphical interface"),
mUseGUI);
}
S.EndStatic();

View File

@ -2675,7 +2675,7 @@ void NyquistEffect::BuildPromptWindow(ShuttleGui & S)
S.AddSpace(1, 1);
mVersionCheckBox = S.AddCheckBox(XO("&Use legacy (version 3) syntax."),
mVersionCheckBox = S.AddCheckBox(XXO("&Use legacy (version 3) syntax."),
(mVersion == 3));
}
S.EndMultiColumn();
@ -2690,8 +2690,8 @@ void NyquistEffect::BuildPromptWindow(ShuttleGui & S)
S.StartHorizontalLay(wxALIGN_CENTER, 0);
{
S.Id(ID_Load).AddButton(XO("&Load"));
S.Id(ID_Save).AddButton(XO("&Save"));
S.Id(ID_Load).AddButton(XXO("&Load"));
S.Id(ID_Save).AddButton(XXO("&Save"));
}
S.EndHorizontalLay();
}
@ -2722,7 +2722,7 @@ void NyquistEffect::BuildEffectWindow(ShuttleGui & S)
}
else
{
auto prompt = XO("%s:").Format( ctrl.name );
auto prompt = XXO("%s:").Format( ctrl.name );
S.AddPrompt( prompt );
if (ctrl.type == NYQ_CTRL_STRING)
@ -3264,7 +3264,7 @@ NyquistOutputDialog::NyquistOutputDialog(wxWindow * parent, wxWindowID id,
S.StartHorizontalLay(wxALIGN_CENTRE | wxLEFT | wxBOTTOM | wxRIGHT, 0 );
{
/* i18n-hint: In most languages OK is to be translated as OK. It appears on a button.*/
S.Id(wxID_OK).AddButton( XO("OK"), wxALIGN_CENTRE, true );
S.Id(wxID_OK).AddButton( XXO("OK"), wxALIGN_CENTRE, true );
}
S.EndHorizontalLay();

View File

@ -558,7 +558,7 @@ void VampEffect::PopulateOrExchange(ShuttleGui & S)
if (!programs.empty())
{
S.AddPrompt(XO("Program"));
S.AddPrompt(XXO("Program"));
S.Id(ID_Program);
mProgram = S.Name(XO("Program"))
@ -600,7 +600,7 @@ void VampEffect::PopulateOrExchange(ShuttleGui & S)
}
/* i18n-hint: An item name introducing a value, which is not part of the string but
appears in a following text box window; translate with appropriate punctuation */
S.AddPrompt(XO("%s:").Format( labelText ));
S.AddPrompt(XXO("%s:").Format( labelText ));
if (mParameters[p].isQuantized &&
mParameters[p].quantizeStep == 1.0 &&

View File

@ -131,13 +131,13 @@ void ExportCLOptions::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol(1);
mCmd = S.AddCombo(XO("Command:"),
mCmd = S.AddCombo(XXO("Command:"),
cmd,
cmds);
S.Id(ID_BROWSE).AddButton(XO("Browse..."),
S.Id(ID_BROWSE).AddButton(XXO("Browse..."),
wxALIGN_CENTER_VERTICAL);
S.AddFixedText( {} );
S.TieCheckBox(XO("Show output"),
S.TieCheckBox(XXO("Show output"),
{wxT("/FileFormats/ExternalProgramShowOutput"),
false});
}
@ -601,7 +601,7 @@ ProgressResult ExportCL::Export(AudacityProject *project,
.AddTextWindow(mCmd + wxT("\n\n") + output);
S.StartHorizontalLay(wxALIGN_CENTER, false);
{
S.Id(wxID_OK).AddButton(XO("&OK"), wxALIGN_CENTER, true);
S.Id(wxID_OK).AddButton(XXO("&OK"), wxALIGN_CENTER, true);
}
dlg.GetSizer()->AddSpacer(5);
dlg.Layout();

View File

@ -221,7 +221,7 @@ void ExportFFmpegAC3Options::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxCENTER);
{
S.TieNumberAsChoice(
XO("Bit Rate:"),
XXO("Bit Rate:"),
{wxT("/FileFormats/AC3BitRate"),
160000},
AC3BitRateNames,
@ -285,7 +285,7 @@ void ExportFFmpegAACOptions::PopulateOrExchange(ShuttleGui & S)
{
S.SetStretchyCol(1);
S.Prop(1).TieSlider(
XO("Quality (kbps):"),
XXO("Quality (kbps):"),
{wxT("/FileFormats/AACQuality"), 160},320, 98);
}
S.EndMultiColumn();
@ -376,7 +376,7 @@ void ExportFFmpegAMRNBOptions::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxCENTER);
{
S.TieNumberAsChoice(
XO("Bit Rate:"),
XXO("Bit Rate:"),
{wxT("/FileFormats/AMRNBBitRate"),
12200},
AMRNBBitRateNames,
@ -473,7 +473,7 @@ namespace {
XO("7"),
XO("8"),
XO("9"),
XO("10"),
XO("10"),
},
{
wxT("0"),
@ -611,15 +611,15 @@ void ExportFFmpegOPUSOptions::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxCENTER);
{
S.TieChoice(
XO("Bit Rate:"),
XXO("Bit Rate:"),
OPUSBitrate);
S.TieChoice(
XO("Compression"),
XXO("Compression"),
OPUSCompression);
S.TieChoice(
XO("Frame Duration:"),
XXO("Frame Duration:"),
OPUSFrameDuration);
}
S.EndMultiColumn();
@ -627,15 +627,15 @@ void ExportFFmpegOPUSOptions::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxCENTER);
{
S.TieChoice(
XO("Vbr Mode:"),
XXO("Vbr Mode:"),
OPUSVbrMode);
S.TieChoice(
XO("Application:"),
XXO("Application:"),
OPUSApplication);
S.TieChoice(
XO("Cutoff:"),
XXO("Cutoff:"),
OPUSCutoff);
}
@ -735,7 +735,7 @@ void ExportFFmpegWMAOptions::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxCENTER);
{
S.TieNumberAsChoice(
XO("Bit Rate:"),
XXO("Bit Rate:"),
{wxT("/FileFormats/WMABitRate"),
128000},
WMABitRateNames,
@ -802,12 +802,12 @@ void ExportFFmpegCustomOptions::PopulateOrExchange(ShuttleGui & S)
{
S.StartVerticalLay(wxCENTER, 0);
{
S.Id(OpenID).AddButton(XO("Open custom FFmpeg format options"));
S.Id(OpenID).AddButton(XXO("Open custom FFmpeg format options"));
S.StartMultiColumn(2, wxCENTER);
{
S.AddPrompt(XO("Current Format:"));
S.AddPrompt(XXO("Current Format:"));
mFormat = S.Style(wxTE_READONLY).AddTextBox({}, wxT(""), 25);
S.AddPrompt(XO("Current Codec:"));
S.AddPrompt(XXO("Current Codec:"));
mCodec = S.Style(wxTE_READONLY).AddTextBox({}, wxT(""), 25);
}
S.EndMultiColumn();
@ -1824,12 +1824,12 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(7, wxEXPAND);
{
S.SetStretchyCol(1);
mPresetCombo = S.Id(FEPresetID).AddCombo(XO("Preset:"), gPrefs->Read(wxT("/FileFormats/FFmpegPreset"),wxEmptyString), mPresetNames);
S.Id(FELoadPresetID).AddButton(XO("Load Preset"));
S.Id(FESavePresetID).AddButton(XO("Save Preset"));
S.Id(FEDeletePresetID).AddButton(XO("Delete Preset"));
S.Id(FEImportPresetsID).AddButton(XO("Import Presets"));
S.Id(FEExportPresetsID).AddButton(XO("Export Presets"));
mPresetCombo = S.Id(FEPresetID).AddCombo(XXO("Preset:"), gPrefs->Read(wxT("/FileFormats/FFmpegPreset"),wxEmptyString), mPresetNames);
S.Id(FELoadPresetID).AddButton(XXO("Load Preset"));
S.Id(FESavePresetID).AddButton(XXO("Save Preset"));
S.Id(FEDeletePresetID).AddButton(XXO("Delete Preset"));
S.Id(FEImportPresetsID).AddButton(XXO("Import Presets"));
S.Id(FEExportPresetsID).AddButton(XXO("Export Presets"));
}
S.EndMultiColumn();
S.StartMultiColumn(4, wxALIGN_LEFT);
@ -1851,8 +1851,8 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxEXPAND);
{
S.SetStretchyRow(1);
S.Id(FEAllFormatsID).AddButton(XO("Show All Formats"));
S.Id(FEAllCodecsID).AddButton(XO("Show All Codecs"));
S.Id(FEAllFormatsID).AddButton(XXO("Show All Formats"));
S.Id(FEAllCodecsID).AddButton(XXO("Show All Codecs"));
mFormatList = S.Id(FEFormatID).AddListBox(mFormatNames);
mFormatList->DeselectAll();
mCodecList = S.Id(FECodecID).AddListBox(mCodecNames);
@ -1869,7 +1869,7 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
{
S.Id(FELanguageID)
.ToolTip(XO("ISO 639 3-letter language code\nOptional\nempty - automatic"))
.TieTextBox(XO("Language:"), {wxT("/FileFormats/FFmpegLanguage"), wxEmptyString}, 9);
.TieTextBox(XXO("Language:"), {wxT("/FileFormats/FFmpegLanguage"), wxEmptyString}, 9);
S.AddSpace( 20,0 );
S.AddVariableText(XO("Bit Reservoir"));
@ -1885,28 +1885,28 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
S.Id(FETagID)
/* i18n-hint: "codec" is short for a "coder-decoder" algorithm */
.ToolTip(XO("Codec tag (FOURCC)\nOptional\nempty - automatic"))
.TieTextBox(XO("Tag:"), {wxT("/FileFormats/FFmpegTag"), wxEmptyString}, 4);
.TieTextBox(XXO("Tag:"), {wxT("/FileFormats/FFmpegTag"), wxEmptyString}, 4);
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"))
.TieSpinCtrl(XO("Bit Rate:"), {wxT("/FileFormats/FFmpegBitRate"), 0}, 1000000, 0);
.TieSpinCtrl(XXO("Bit Rate:"), {wxT("/FileFormats/FFmpegBitRate"), 0}, 1000000, 0);
S.Id(FEQualityID)
.ToolTip(XO("Overall quality, used differently by different codecs\nRequired for vorbis\n0 - automatic\n-1 - off (use bitrate instead)"))
.TieSpinCtrl(XO("Quality:"), {wxT("/FileFormats/FFmpegQuality"), 0}, 500, -1);
.TieSpinCtrl(XXO("Quality:"), {wxT("/FileFormats/FFmpegQuality"), 0}, 500, -1);
S.Id(FESampleRateID)
.ToolTip(XO("Sample rate (Hz)\n0 - don't change sample rate"))
.TieSpinCtrl(XO("Sample Rate:"), {wxT("/FileFormats/FFmpegSampleRate"), 0}, 200000, 0);
.TieSpinCtrl(XXO("Sample Rate:"), {wxT("/FileFormats/FFmpegSampleRate"), 0}, 200000, 0);
S.Id(FECutoffID)
.ToolTip(XO("Audio cutoff bandwidth (Hz)\nOptional\n0 - automatic"))
.TieSpinCtrl(XO("Cutoff:"), {wxT("/FileFormats/FFmpegCutOff"), 0}, 10000000, 0);
.TieSpinCtrl(XXO("Cutoff:"), {wxT("/FileFormats/FFmpegCutOff"), 0}, 10000000, 0);
S.Id(FEProfileID)
.ToolTip(XO("AAC Profile\nLow Complexity - default\nMost players won't play anything other than LC"))
.MinSize( { 100, -1 } )
.TieChoice(XO("Profile:"), AACProfiles);
.TieChoice(XXO("Profile:"), AACProfiles);
}
S.EndMultiColumn();
}
@ -1917,21 +1917,21 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
{
S
.ToolTip(XO("Compression level\nRequired for FLAC\n-1 - automatic\nmin - 0 (fast encoding, large output file)\nmax - 10 (slow encoding, small output file)"))
.Id(FECompLevelID).TieSpinCtrl(XO("Compression:"), {wxT("/FileFormats/FFmpegCompLevel"), 0}, 10, -1);
.Id(FECompLevelID).TieSpinCtrl(XXO("Compression:"), {wxT("/FileFormats/FFmpegCompLevel"), 0}, 10, -1);
S.Id(FEFrameSizeID)
.ToolTip(XO("Frame size\nOptional\n0 - default\nmin - 16\nmax - 65535"))
.TieSpinCtrl(XO("Frame:"), {wxT("/FileFormats/FFmpegFrameSize"), 0}, 65535, 0);
.TieSpinCtrl(XXO("Frame:"), {wxT("/FileFormats/FFmpegFrameSize"), 0}, 65535, 0);
S.Id(FELPCCoeffsID)
.ToolTip(XO("LPC coefficients precision\nOptional\n0 - default\nmin - 1\nmax - 15"))
.TieSpinCtrl(XO("LPC"), {wxT("/FileFormats/FFmpegLPCCoefPrec"), 0}, 15, 0);
.TieSpinCtrl(XXO("LPC"), {wxT("/FileFormats/FFmpegLPCCoefPrec"), 0}, 15, 0);
S.Id(FEPredOrderID)
.ToolTip(XO("Prediction Order Method\nEstimate - fastest, lower compression\nLog search - slowest, best compression\nFull search - default"))
.MinSize( { 100, -1 } )
.TieNumberAsChoice(
XO("PdO Method:"),
XXO("PdO Method:"),
{wxT("/FileFormats/FFmpegPredOrderMethod"),
4}, // Full search
PredictionOrderMethodNames
@ -1939,19 +1939,19 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
S.Id(FEMinPredID)
.ToolTip(XO("Minimal prediction order\nOptional\n-1 - default\nmin - 0\nmax - 32 (with LPC) or 4 (without LPC)"))
.TieSpinCtrl(XO("Min. PdO"), {wxT("/FileFormats/FFmpegMinPredOrder"), -1}, 32, -1);
.TieSpinCtrl(XXO("Min. PdO"), {wxT("/FileFormats/FFmpegMinPredOrder"), -1}, 32, -1);
S.Id(FEMaxPredID)
.ToolTip(XO("Maximal prediction order\nOptional\n-1 - default\nmin - 0\nmax - 32 (with LPC) or 4 (without LPC)"))
.TieSpinCtrl(XO("Max. PdO"), {wxT("/FileFormats/FFmpegMaxPredOrder"), -1}, 32, -1);
.TieSpinCtrl(XXO("Max. PdO"), {wxT("/FileFormats/FFmpegMaxPredOrder"), -1}, 32, -1);
S.Id(FEMinPartOrderID)
.ToolTip(XO("Minimal partition order\nOptional\n-1 - default\nmin - 0\nmax - 8"))
.TieSpinCtrl(XO("Min. PtO"), {wxT("/FileFormats/FFmpegMinPartOrder"), -1}, 8, -1);
.TieSpinCtrl(XXO("Min. PtO"), {wxT("/FileFormats/FFmpegMinPartOrder"), -1}, 8, -1);
S.Id(FEMaxPartOrderID)
.ToolTip(XO("Maximal partition order\nOptional\n-1 - default\nmin - 0\nmax - 8"))
.TieSpinCtrl(XO("Max. PtO"), {wxT("/FileFormats/FFmpegMaxPartOrder"), -1}, 8, -1);
.TieSpinCtrl(XXO("Max. PtO"), {wxT("/FileFormats/FFmpegMaxPartOrder"), -1}, 8, -1);
/* i18n-hint: Abbreviates "Linear Predictive Coding",
but this text needs to be kept very short */
@ -1971,7 +1971,7 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
/* i18n-hint: 'mux' is short for multiplexor, a device that selects between several inputs
'Mux Rate' is a parameter that has some bearing on compression ratio for MPEG
it has a hard to predict effect on the degree of compression */
.TieSpinCtrl(XO("Mux Rate:"), {wxT("/FileFormats/FFmpegMuxRate"), 0}, 10000000, 0);
.TieSpinCtrl(XXO("Mux Rate:"), {wxT("/FileFormats/FFmpegMuxRate"), 0}, 10000000, 0);
S.Id(FEPacketSizeID)
/* i18n-hint: 'Packet Size' is a parameter that has some bearing on compression ratio for MPEG
@ -1979,7 +1979,7 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
.ToolTip(XO("Packet size\nOptional\n0 - default"))
/* i18n-hint: 'Packet Size' is a parameter that has some bearing on compression ratio for MPEG
compression. It measures how big a chunk of audio is compressed in one piece. */
.TieSpinCtrl(XO("Packet Size:"), {wxT("/FileFormats/FFmpegPacketSize"), 0}, 10000000, 0);
.TieSpinCtrl(XXO("Packet Size:"), {wxT("/FileFormats/FFmpegPacketSize"), 0}, 10000000, 0);
}
S.EndMultiColumn();
}

View File

@ -127,8 +127,8 @@ void ExportFLACOptions::PopulateOrExchange(ShuttleGui & S)
{
S.StartMultiColumn(2, wxCENTER);
{
S.TieChoice( XO("Level:"), FLACLevel);
S.TieChoice( XO("Bit depth:"), FLACBitDepth);
S.TieChoice( XXO("Level:"), FLACLevel);
S.TieChoice( XXO("Bit depth:"), FLACBitDepth);
}
S.EndMultiColumn();
}

View File

@ -162,7 +162,7 @@ void ExportMP2Options::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxCENTER);
{
S.TieNumberAsChoice(
XO("Bit Rate:"),
XXO("Bit Rate:"),
{wxT("/FileFormats/MP2Bitrate"),
160},
BitRateNames,

View File

@ -295,10 +295,10 @@ ExportMP3Options::~ExportMP3Options()
EnumSetting< MP3RateMode > MP3RateModeSetting{
wxT("/FileFormats/MP3RateModeChoice"),
{
{ wxT("SET"), XO("Preset") },
{ wxT("VBR"), XO("Variable") },
{ wxT("ABR"), XO("Average") },
{ wxT("CBR"), XO("Constant") },
{ wxT("SET"), XXO("Preset") },
{ wxT("VBR"), XXO("Variable") },
{ wxT("ABR"), XXO("Average") },
{ wxT("CBR"), XXO("Constant") },
},
0, // MODE_SET
@ -312,8 +312,8 @@ EnumSetting< MP3RateMode > MP3RateModeSetting{
static EnumSetting< MP3ChannelMode > MP3ChannelModeSetting{
wxT("/FileFormats/MP3ChannelModeChoice"),
{
EnumValueSymbol{ wxT("JOINT"), XO("Joint Stereo") },
EnumValueSymbol{ wxT("STEREO"), XO("Stereo") },
EnumValueSymbol{ wxT("JOINT"), XXO("Joint Stereo") },
EnumValueSymbol{ wxT("STEREO"), XXO("Stereo") },
},
0, // CHANNEL_JOINT
@ -345,7 +345,7 @@ void ExportMP3Options::PopulateOrExchange(ShuttleGui & S)
S.SetStretchyCol(1);
S.StartTwoColumn();
{
S.AddPrompt(XO("Bit Rate Mode:"));
S.AddPrompt(XXO("Bit Rate Mode:"));
S.StartHorizontalLay();
{
S.StartRadioButtonGroup(MP3RateModeSetting);
@ -395,7 +395,7 @@ void ExportMP3Options::PopulateOrExchange(ShuttleGui & S)
}
mRate = S.Id(ID_QUALITY).TieNumberAsChoice(
XO("Quality"),
XXO("Quality"),
{ wxT("/FileFormats/MP3Bitrate"), defrate },
*choices,
codes
@ -403,11 +403,11 @@ void ExportMP3Options::PopulateOrExchange(ShuttleGui & S)
mMode = S.Disable(!enable)
.TieNumberAsChoice(
XO("Variable Speed:"),
XXO("Variable Speed:"),
{ wxT("/FileFormats/MP3VarMode"), ROUTINE_FAST },
varModeNames );
S.AddPrompt(XO("Channel Mode:"));
S.AddPrompt(XXO("Channel Mode:"));
S.StartMultiColumn(3, wxEXPAND);
{
S.StartRadioButtonGroup(MP3ChannelModeSetting);
@ -419,7 +419,7 @@ void ExportMP3Options::PopulateOrExchange(ShuttleGui & S)
}
S.EndRadioButtonGroup();
mMono = S.Id(ID_MONO).AddCheckBox(XO("Force export to mono"), mono);
mMono = S.Id(ID_MONO).AddCheckBox(XXO("Force export to mono"), mono);
}
S.EndTwoColumn();
}
@ -614,12 +614,12 @@ public:
else {
mPathText = S.AddTextBox( {}, mLibPath.GetFullPath(), 0);
}
S.Id(ID_BROWSE).AddButton(XO("Browse..."), wxALIGN_RIGHT);
S.Id(ID_BROWSE).AddButton(XXO("Browse..."), wxALIGN_RIGHT);
S.AddVariableText(
/* i18n-hint: There is a button to the right of the arrow.*/
XO("To get a free copy of LAME, click here -->"), true);
/* i18n-hint: (verb)*/
S.Id(ID_DLOAD).AddButton(XO("Download"), wxALIGN_RIGHT);
S.Id(ID_DLOAD).AddButton(XXO("Download"), wxALIGN_RIGHT);
}
S.EndMultiColumn();
@ -2054,7 +2054,7 @@ int ExportMP3::AskResample(int bitrate, int rate, int lowrate, int highrate)
S.StartHorizontalLay(wxALIGN_CENTER, false);
{
choice = S.AddChoice(XO("Sample Rates"),
choice = S.AddChoice(XXO("Sample Rates"),
[&]{
TranslatableStrings choices;
for (size_t ii = 0, nn = sampRates.size(); ii < nn; ++ii) {

View File

@ -276,15 +276,15 @@ void ExportMultipleDialog::PopulateOrExchange(ShuttleGui& S)
S.StartMultiColumn(4, true);
{
mDir = S.Id(DirID)
.TieTextBox(XO("Folder:"),
.TieTextBox(XXO("Folder:"),
{wxT("/Export/MultiplePath"),
DefaultPath},
64);
S.Id(ChooseID).AddButton(XO("Choose..."));
S.Id(CreateID).AddButton(XO("Create"));
S.Id(ChooseID).AddButton(XXO("Choose..."));
S.Id(CreateID).AddButton(XXO("Create"));
mFormat = S.Id(FormatID)
.TieChoice( XO("Format:"),
.TieChoice( XXO("Format:"),
{
wxT("/Export/MultipleFormat"),
{
@ -298,7 +298,7 @@ void ExportMultipleDialog::PopulateOrExchange(ShuttleGui& S)
S.AddVariableText( {}, false);
S.AddVariableText( {}, false);
S.AddPrompt(XO("Options:"));
S.AddPrompt(XXO("Options:"));
mBook = S.Id(OptionsID)
.Style(wxBORDER_STATIC)
@ -335,12 +335,12 @@ void ExportMultipleDialog::PopulateOrExchange(ShuttleGui& S)
// Row 1
S.SetBorder(1);
mTrack = S.Id(TrackID)
.AddRadioButton(XO("Tracks"));
.AddRadioButton(XXO("Tracks"));
// Row 2
S.SetBorder(1);
mLabel = S.Id(LabelID)
.AddRadioButtonToGroup(XO("Labels"));
.AddRadioButtonToGroup(XXO("Labels"));
S.SetBorder(3);
S.StartMultiColumn(2, wxEXPAND);
@ -349,7 +349,7 @@ void ExportMultipleDialog::PopulateOrExchange(ShuttleGui& S)
// Row 3 (indented)
S.AddVariableText(Verbatim(" "), false);
mFirst = S.Id(FirstID)
.AddCheckBox(XO("Include audio before first label"), false);
.AddCheckBox(XXO("Include audio before first label"), false);
// Row 4
S.AddVariableText( {}, false);
@ -380,9 +380,9 @@ void ExportMultipleDialog::PopulateOrExchange(ShuttleGui& S)
S.StartRadioButtonGroup({
wxT("/Export/TrackNameWithOrWithoutNumbers"),
{
{ wxT("labelTrack"), XO("Using Label/Track Name") },
{ wxT("numberBefore"), XO("Numbering before Label/Track Name") },
{ wxT("numberAfter"), XO("Numbering after File name prefix") },
{ wxT("labelTrack"), XXO("Using Label/Track Name") },
{ wxT("numberBefore"), XXO("Numbering before Label/Track Name") },
{ wxT("numberAfter"), XXO("Numbering after File name prefix") },
},
0 // labelTrack
});
@ -416,7 +416,7 @@ void ExportMultipleDialog::PopulateOrExchange(ShuttleGui& S)
S.SetBorder(5);
S.StartHorizontalLay(wxEXPAND, false);
{
mOverwrite = S.Id(OverwriteID).TieCheckBox(XO("Overwrite existing files"),
mOverwrite = S.Id(OverwriteID).TieCheckBox(XXO("Overwrite existing files"),
{wxT("/Export/OverwriteExisting"),
false});
}

View File

@ -88,7 +88,7 @@ void ExportOGGOptions::PopulateOrExchange(ShuttleGui & S)
{
S.SetStretchyCol(1);
S.Prop(1).TieSlider(
XO("Quality:"), mOggQualityUnscaled, 10);
XXO("Quality:"), mOggQualityUnscaled, 10);
}
S.EndMultiColumn();
}

View File

@ -210,12 +210,12 @@ void ExportPCMOptions::PopulateOrExchange(ShuttleGui & S)
if (mSelFormat == FMT_OTHER)
{
mHeaderChoice = S.Id(ID_HEADER_CHOICE)
.AddChoice(XO("Header:"),
.AddChoice(XXO("Header:"),
mHeaderNames,
mHeaderFromChoice);
}
mEncodingChoice = S.Id(ID_ENCODING_CHOICE)
.AddChoice(XO("Encoding:"),
.AddChoice(XXO("Encoding:"),
mEncodingNames,
mEncodingFromChoice);
}

View File

@ -350,13 +350,13 @@ static wxString AskCopyOrEdit()
S.SetBorder(0);
copyRadio = S.AddRadioButton(
XO("Make a &copy of the files before editing (safer)") );
XXO("Make a &copy of the files before editing (safer)") );
aliasRadio = S.AddRadioButtonToGroup(
XO("Read the files &directly from the original (faster)") );
XXO("Read the files &directly from the original (faster)") );
dontAskNextTimeBox = S.AddCheckBox(
XO("Don't &warn again and always use my choice above"),
XXO("Don't &warn again and always use my choice above"),
wxT("false"));
}
S.EndStatic();

View File

@ -391,13 +391,13 @@ ImportRawDialog::ImportRawDialog(wxWindow * parent,
S.SetBorder(5);
S.StartTwoColumn();
{
mEncodingChoice = S.Id(ChoiceID).AddChoice(XO("Encoding:"),
mEncodingChoice = S.Id(ChoiceID).AddChoice(XXO("Encoding:"),
encodings,
selection);
mEndianChoice = S.Id(ChoiceID).AddChoice(XO("Byte order:"),
mEndianChoice = S.Id(ChoiceID).AddChoice(XXO("Byte order:"),
endians,
endian);
mChannelChoice = S.Id(ChoiceID).AddChoice(XO("Channels:"),
mChannelChoice = S.Id(ChoiceID).AddChoice(XXO("Channels:"),
chans,
mChannels - 1);
}
@ -408,20 +408,20 @@ ImportRawDialog::ImportRawDialog(wxWindow * parent,
{
// Offset text
/* i18n-hint: (noun)*/
mOffsetText = S.AddTextBox(XO("Start offset:"),
mOffsetText = S.AddTextBox(XXO("Start offset:"),
wxString::Format(wxT("%d"), mOffset),
12);
S.AddUnits(XO("bytes"));
// Percent text
mPercentText = S.AddTextBox(XO("Amount to import:"),
mPercentText = S.AddTextBox(XXO("Amount to import:"),
wxT("100"),
12);
S.AddUnits(XO("%"));
// Rate text
/* i18n-hint: (noun)*/
mRateText = S.AddTextBox(XO("Sample rate:"),
mRateText = S.AddTextBox(XXO("Sample rate:"),
wxString::Format(wxT("%d"), (int)mRate),
12);
/* i18n-hint: This is the abbreviation for "Hertz", or

View File

@ -831,7 +831,7 @@ BaseItemSharedPtr ClipSelectMenu()
static BaseItemSharedPtr menu {
( FinderScope{ findCommandHandler },
Menu( wxT("Clip"), XO("Clip B&oundaries"),
Menu( wxT("Clip"), XXO("Clip B&oundaries"),
Command( wxT("SelPrevClipBoundaryToCursor"),
XXO("Pre&vious Clip Boundary to Cursor"),
FN(OnSelectPrevClipBoundaryToCursor),

View File

@ -1053,7 +1053,7 @@ BaseItemSharedPtr EditMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Edit"), XO("&Edit"),
Menu( wxT("Edit"), XXO("&Edit"),
Section( "UndoRedo",
Command( wxT("Undo"), XXO("&Undo"), FN(OnUndo),
AudioIONotBusyFlag() | UndoAvailableFlag(), wxT("Ctrl+Z") ),
@ -1088,7 +1088,7 @@ BaseItemSharedPtr EditMenu()
NotBusyTimeAndTracksFlags, wxT("Ctrl+D") ),
Section( "",
Menu( wxT("RemoveSpecial"), XO("R&emove Special"),
Menu( wxT("RemoveSpecial"), XXO("R&emove Special"),
Section( "",
/* i18n-hint: (verb) Do a special kind of cut*/
Command( wxT("SplitCut"), XXO("Spl&it Cut"), FN(OnSplitCut),
@ -1118,7 +1118,7 @@ BaseItemSharedPtr EditMenu()
Section( "Other",
//////////////////////////////////////////////////////////////////////////
Menu( wxT("Clip"), XO("Clip B&oundaries"),
Menu( wxT("Clip"), XXO("Clip B&oundaries"),
Section( "",
/* i18n-hint: (verb) It's an item on a menu. */
Command( wxT("Split"), XXO("Sp&lit"), FN(OnSplit),
@ -1173,7 +1173,7 @@ BaseItemSharedPtr ExtraEditMenu()
AudioIONotBusyFlag() | TracksSelectedFlag() | TimeSelectedFlag();
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Edit"), XO("&Edit"),
Menu( wxT("Edit"), XXO("&Edit"),
Command( wxT("DeleteKey"), XXO("&Delete Key"), FN(OnDelete),
(flags | NoAutoSelect()),
wxT("Backspace") ),

View File

@ -160,7 +160,7 @@ BaseItemSharedPtr ExtraMenu()
[]{ return gPrefs->ReadBool(wxT("/GUI/ShowExtraMenus"), false); };
static BaseItemSharedPtr menu{
ConditionalItems( wxT("Optional"),
pred, Menu( wxT("Extra"), XO("Ext&ra"), extraItems ) )
pred, Menu( wxT("Extra"), XXO("Ext&ra"), extraItems ) )
};
return menu;
}
@ -175,7 +175,7 @@ BaseItemSharedPtr ExtraMixerMenu()
{
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Mixer"), XO("Mi&xer"),
Menu( wxT("Mixer"), XXO("Mi&xer"),
Command( wxT("OutputGain"), XXO("Ad&just Playback Volume..."),
FN(OnOutputGain), AlwaysEnabledFlag ),
Command( wxT("OutputGainInc"), XXO("&Increase Playback Volume"),
@ -197,7 +197,7 @@ BaseItemSharedPtr ExtraDeviceMenu()
{
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Device"), XO("De&vice"),
Menu( wxT("Device"), XXO("De&vice"),
Command( wxT("InputDevice"), XXO("Change &Recording Device..."),
FN(OnInputDevice),
AudioIONotBusyFlag(), wxT("Shift+I") ),

View File

@ -560,7 +560,7 @@ BaseItemSharedPtr FileMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("File"), XO("&File"),
Menu( wxT("File"), XXO("&File"),
Section( "Basic",
/*i18n-hint: "New" is an action (verb) to create a NEW project*/
Command( wxT("New"), XXO("&New"), FN(OnNew),
@ -584,10 +584,10 @@ BaseItemSharedPtr FileMenu()
Menu( wxT("Recent"),
#ifdef __WXMAC__
/* i18n-hint: This is the name of the menu item on Mac OS X only */
XO("Open Recent")
XXO("Open Recent")
#else
/* i18n-hint: This is the name of the menu item on Windows and Linux */
XO("Recent &Files")
XXO("Recent &Files")
#endif
,
Special( wxT("PopulateRecentFilesStep"),
@ -620,7 +620,7 @@ BaseItemSharedPtr FileMenu()
),
Section( "Save",
Menu( wxT("Save"), XO("&Save Project"),
Menu( wxT("Save"), XXO("&Save Project"),
Command( wxT("Save"), XXO("&Save Project"), FN(OnSave),
AudioIONotBusyFlag() | UnsavedChangesFlag(), wxT("Ctrl+S") ),
Command( wxT("SaveAs"), XXO("Save Project &As..."), FN(OnSaveAs),
@ -638,7 +638,7 @@ BaseItemSharedPtr FileMenu()
),
Section( "Import-Export",
Menu( wxT("Export"), XO("&Export"),
Menu( wxT("Export"), XXO("&Export"),
// Enable Export audio commands only when there are audio tracks.
Command( wxT("ExportMp3"), XXO("Export as MP&3"), FN(OnExportMp3),
AudioIONotBusyFlag() | WaveTracksExistFlag() ),
@ -672,7 +672,7 @@ BaseItemSharedPtr FileMenu()
#endif
),
Menu( wxT("Import"), XO("&Import"),
Menu( wxT("Import"), XXO("&Import"),
Command( wxT("ImportAudio"), XXO("&Audio..."), FN(OnImport),
AudioIONotBusyFlag(), wxT("Ctrl+Shift+I") ),
Command( wxT("ImportLabels"), XXO("&Labels..."), FN(OnImportLabels),

View File

@ -168,7 +168,7 @@ void QuickFixDialog::AddStuck(
if( !bBool)
return;
S.AddFixedText( Prompt );
S.Id(FixButtonID + mItem).AddButton( XO("Fix") )->SetClientObject(
S.Id(FixButtonID + mItem).AddButton( XXO("Fix") )->SetClientObject(
safenew wxStringClientData(Pref));
{
@ -494,7 +494,7 @@ BaseItemSharedPtr HelpMenu()
{
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Help"), XO("&Help"),
Menu( wxT("Help"), XXO("&Help"),
Section( "Basic",
// QuickFix menu item not in Audacity 2.3.1 whilst we discuss further.
#ifdef EXPERIMENTAL_DA
@ -522,7 +522,7 @@ BaseItemSharedPtr HelpMenu()
Section
#endif
( "Other",
Menu( wxT("Diagnostics"), XO("&Diagnostics"),
Menu( wxT("Diagnostics"), XXO("&Diagnostics"),
Command( wxT("DeviceInfo"), XXO("Au&dio Device Info..."),
FN(OnAudioDeviceInfo),
AudioIONotBusyFlag() ),

View File

@ -602,7 +602,7 @@ BaseItemSharedPtr LabelEditMenus()
( FinderScope{ findCommandHandler },
Items( wxT("LabelEditMenus"),
Menu( wxT("Labels"), XO("&Labels"),
Menu( wxT("Labels"), XXO("&Labels"),
Section( "",
Command( wxT("EditLabels"), XXO("&Edit Labels..."), FN(OnEditLabels),
AudioIONotBusyFlag() )
@ -635,7 +635,7 @@ BaseItemSharedPtr LabelEditMenus()
/////////////////////////////////////////////////////////////////////////////
Menu( wxT("Labeled"), XO("La&beled Audio"),
Menu( wxT("Labeled"), XXO("La&beled Audio"),
Section( "",
/* i18n-hint: (verb)*/
Command( wxT("CutLabels"), XXO("&Cut"), FN(OnCutLabels),

View File

@ -586,7 +586,7 @@ BaseItemSharedPtr ExtraFocusMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Focus"), XO("Foc&us"),
Menu( wxT("Focus"), XXO("Foc&us"),
Command( wxT("PrevFrame"),
XXO("Move &Backward from Toolbars to Tracks"), FN(OnPrevFrame),
AlwaysEnabledFlag, wxT("Ctrl+Shift+F6") ),

View File

@ -663,7 +663,7 @@ void AddEffectMenuItemGroup(
}
// Done collecting
table.push_back( Menu( wxEmptyString,
XO("Plug-in %d to %d").Format( groupNdx + 1, end ),
XXO("Plug-in %d to %d").Format( groupNdx + 1, end ),
std::move( temp1 )
) );
items = max;
@ -711,7 +711,7 @@ BaseItemSharedPtr GenerateMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Generate"), XO("&Generate"),
Menu( wxT("Generate"), XXO("&Generate"),
#ifdef EXPERIMENTAL_EFFECT_MANAGEMENT
Section( "Manage",
Command( wxT("ManageGenerators"), XXO("Add / Remove Plug-ins..."),
@ -751,7 +751,7 @@ BaseItemSharedPtr EffectMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Effect"), XO("Effe&ct"),
Menu( wxT("Effect"), XXO("Effe&ct"),
#ifdef EXPERIMENTAL_EFFECT_MANAGEMENT
Section( "Manage",
Command( wxT("ManageEffects"), XXO("Add / Remove Plug-ins..."),
@ -804,7 +804,7 @@ BaseItemSharedPtr AnalyzeMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Analyze"), XO("&Analyze"),
Menu( wxT("Analyze"), XXO("&Analyze"),
#ifdef EXPERIMENTAL_EFFECT_MANAGEMENT
Section( "Manage",
Command( wxT("ManageAnalyzers"), XXO("Add / Remove Plug-ins..."),
@ -838,7 +838,7 @@ BaseItemSharedPtr ToolsMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Tools"), XO("T&ools"),
Menu( wxT("Tools"), XXO("T&ools"),
Section( "Manage",
#ifdef EXPERIMENTAL_EFFECT_MANAGEMENT
Command( wxT("ManageTools"), XXO("Add / Remove Plug-ins..."),
@ -851,7 +851,7 @@ BaseItemSharedPtr ToolsMenu()
Command( wxT("ManageMacros"), XXO("&Macros..."),
FN(OnManageMacros), AudioIONotBusyFlag() ),
Menu( wxT("Macros"), XO("&Apply Macro"),
Menu( wxT("Macros"), XXO("&Apply Macro"),
// Palette has no access key to ensure first letter navigation of
// sub menu
Section( "",
@ -925,7 +925,7 @@ BaseItemSharedPtr ExtraScriptablesIMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
// i18n-hint: Scriptables are commands normally used from Python, Perl etc.
Menu( wxT("Scriptables1"), XO("Script&ables I"),
Menu( wxT("Scriptables1"), XXO("Script&ables I"),
// Note that the PLUGIN_SYMBOL must have a space between words,
// whereas the short-form used here must not.
// (So if you did write "CompareAudio" for the PLUGIN_SYMBOL name, then
@ -977,7 +977,7 @@ BaseItemSharedPtr ExtraScriptablesIIMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
// i18n-hint: Scriptables are commands normally used from Python, Perl etc.
Menu( wxT("Scriptables2"), XO("Scripta&bles II"),
Menu( wxT("Scriptables2"), XXO("Scripta&bles II"),
Command( wxT("Select"), XXO("Select..."), FN(OnAudacityCommand),
AudioIONotBusyFlag() ),
Command( wxT("SetTrack"), XXO("Set Track..."), FN(OnAudacityCommand),

View File

@ -1036,7 +1036,7 @@ BaseItemSharedPtr SelectMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
/* i18n-hint: (verb) It's an item on a menu. */
Menu( wxT("Select"), XO("&Select"),
Menu( wxT("Select"), XXO("&Select"),
Section( "Basic",
Command( wxT("SelectAll"), XXO("&All"), FN(OnSelectAll),
TracksExistFlag(),
@ -1047,7 +1047,7 @@ BaseItemSharedPtr SelectMenu()
//////////////////////////////////////////////////////////////////////////
Menu( wxT("Tracks"), XO("&Tracks"),
Menu( wxT("Tracks"), XXO("&Tracks"),
Command( wxT("SelAllTracks"), XXO("In All &Tracks"),
FN(OnSelectAllTracks),
TracksExistFlag(),
@ -1064,7 +1064,7 @@ BaseItemSharedPtr SelectMenu()
//////////////////////////////////////////////////////////////////////////
Menu( wxT("Region"), XO("R&egion"),
Menu( wxT("Region"), XXO("R&egion"),
Section( "",
Command( wxT("SetLeftSelection"), XXO("&Left at Playback Position"),
FN(OnSetLeftSelection), TracksExistFlag(),
@ -1100,7 +1100,7 @@ BaseItemSharedPtr SelectMenu()
//////////////////////////////////////////////////////////////////////////
#ifdef EXPERIMENTAL_SPECTRAL_EDITING
Menu( wxT("Spectral"), XO("S&pectral"),
Menu( wxT("Spectral"), XXO("S&pectral"),
Command( wxT("ToggleSpectralSelection"),
XXO("To&ggle Spectral Selection"), FN(OnToggleSpectralSelection),
TracksExistFlag(), wxT("Q") ),
@ -1145,7 +1145,7 @@ BaseItemSharedPtr ExtraSelectionMenu()
{
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Select"), XO("&Selection"),
Menu( wxT("Select"), XXO("&Selection"),
Command( wxT("SnapToOff"), XXO("Snap-To &Off"), FN(OnSnapToOff),
AlwaysEnabledFlag ),
Command( wxT("SnapToNearest"), XXO("Snap-To &Nearest"),
@ -1201,7 +1201,7 @@ BaseItemSharedPtr CursorMenu()
// than 'Skip'.
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Cursor"), XO("&Cursor to"),
Menu( wxT("Cursor"), XXO("&Cursor to"),
Command( wxT("CursSelStart"), XXO("Selection Star&t"),
FN(OnCursorSelStart),
TimeSelectedFlag(),
@ -1240,7 +1240,7 @@ BaseItemSharedPtr ExtraCursorMenu()
{
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Cursor"), XO("&Cursor"),
Menu( wxT("Cursor"), XXO("&Cursor"),
Command( wxT("CursorLeft"), XXO("Cursor &Left"), FN(OnCursorLeft),
TracksExistFlag() | TrackPanelHasFocus(),
wxT("Left\twantKeyup\tallowDup") ),
@ -1272,7 +1272,7 @@ BaseItemSharedPtr ExtraSeekMenu()
{
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Seek"), XO("See&k"),
Menu( wxT("Seek"), XXO("See&k"),
Command( wxT("SeekLeftShort"), XXO("Short Seek &Left During Playback"),
FN(OnSeekLeftShort), AudioIOBusyFlag(), wxT("Left\tallowDup") ),
Command( wxT("SeekRightShort"),

View File

@ -58,7 +58,7 @@ BaseItemSharedPtr ToolbarsMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Section( wxT("Toolbars"),
Menu( wxT("Toolbars"), XO("&Toolbars"),
Menu( wxT("Toolbars"), XXO("&Toolbars"),
Section( "Reset",
/* i18n-hint: (verb)*/
Command( wxT("ResetToolbars"), XXO("Reset Toolb&ars"),

View File

@ -190,11 +190,11 @@ enum {
static const std::vector< ComponentInterfaceSymbol >
&alignLabels() { static std::vector< ComponentInterfaceSymbol > symbols{
{ wxT("StartToZero"), XO("Start to &Zero") },
{ wxT("StartToSelStart"), XO("Start to &Cursor/Selection Start") },
{ wxT("StartToSelEnd"), XO("Start to Selection &End") },
{ wxT("EndToSelStart"), XO("End to Cu&rsor/Selection Start") },
{ wxT("EndToSelEnd"), XO("End to Selection En&d") },
{ wxT("StartToZero"), XXO("Start to &Zero") },
{ wxT("StartToSelStart"), XXO("Start to &Cursor/Selection Start") },
{ wxT("StartToSelEnd"), XXO("Start to Selection &End") },
{ wxT("EndToSelStart"), XXO("End to Cu&rsor/Selection Start") },
{ wxT("EndToSelEnd"), XXO("End to Selection En&d") },
}; return symbols; }
const size_t kAlignLabelsCount(){ return alignLabels().size(); }
@ -765,7 +765,7 @@ void OnResample(const CommandContext &context)
S.StartHorizontalLay(wxCENTER, false);
{
cb = S.AddCombo(XO("New sample rate (Hz):"),
cb = S.AddCombo(XXO("New sample rate (Hz):"),
rate,
rates);
}
@ -1301,9 +1301,9 @@ BaseItemSharedPtr TracksMenu()
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Tracks"), XO("&Tracks"),
Menu( wxT("Tracks"), XXO("&Tracks"),
Section( "Add",
Menu( wxT("Add"), XO("Add &New"),
Menu( wxT("Add"), XXO("Add &New"),
Command( wxT("NewMonoTrack"), XXO("&Mono Track"), FN(OnNewWaveTrack),
AudioIONotBusyFlag(), wxT("Ctrl+Shift+N") ),
Command( wxT("NewStereoTrack"), XXO("&Stereo Track"),
@ -1318,7 +1318,7 @@ BaseItemSharedPtr TracksMenu()
//////////////////////////////////////////////////////////////////////////
Section( "",
Menu( wxT("Mix"), XO("Mi&x"),
Menu( wxT("Mix"), XXO("Mi&x"),
// Delayed evaluation
// Stereo to Mono is an oddball command that is also subject to control
// by the plug-in manager, as if an effect. Decide whether to show or
@ -1354,7 +1354,7 @@ BaseItemSharedPtr TracksMenu()
),
Section( "",
Menu( wxT("Mute"), XO("M&ute/Unmute"),
Menu( wxT("Mute"), XXO("M&ute/Unmute"),
Command( wxT("MuteAllTracks"), XXO("&Mute All Tracks"),
FN(OnMuteAllTracks), TracksExistFlag(), wxT("Ctrl+U") ),
Command( wxT("UnmuteAllTracks"), XXO("&Unmute All Tracks"),
@ -1365,7 +1365,7 @@ BaseItemSharedPtr TracksMenu()
FN(OnUnmuteSelectedTracks), TracksSelectedFlag(), wxT("Ctrl+Alt+Shift+U") )
),
Menu( wxT("Pan"), XO("&Pan"),
Menu( wxT("Pan"), XXO("&Pan"),
// As Pan changes are not saved on Undo stack,
// pan settings for all tracks
// in the project could very easily be lost unless we
@ -1383,13 +1383,13 @@ BaseItemSharedPtr TracksMenu()
),
Section( "",
Menu( wxT("Align"), XO("&Align Tracks"), // XO("Just Move Tracks"),
Menu( wxT("Align"), XXO("&Align Tracks"), // XO("Just Move Tracks"),
Section( "",
// Mutual alignment of tracks independent of selection or zero
CommandGroup(wxT("Align"),
{
{ wxT("EndToEnd"), XO("&Align End to End") },
{ wxT("Together"), XO("Align &Together") },
{ wxT("EndToEnd"), XXO("&Align End to End") },
{ wxT("Together"), XXO("Align &Together") },
},
FN(OnAlignNoSync), AudioIONotBusyFlag() | TracksSelectedFlag())
),
@ -1429,7 +1429,7 @@ BaseItemSharedPtr TracksMenu()
//////////////////////////////////////////////////////////////////////////
Menu( wxT("Sort"), XO("S&ort Tracks"),
Menu( wxT("Sort"), XXO("S&ort Tracks"),
Command( wxT("SortByTime"), XXO("By &Start Time"), FN(OnSortTime),
TracksExistFlag(),
Options{}.LongName( XO("Sort by Time") ) ),
@ -1465,7 +1465,7 @@ BaseItemSharedPtr ExtraTrackMenu()
{
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Track"), XO("&Track"),
Menu( wxT("Track"), XXO("&Track"),
Command( wxT("TrackPan"), XXO("Change P&an on Focused Track..."),
FN(OnTrackPan),
TrackPanelHasFocus() | TracksExistFlag(), wxT("Shift+P") ),

View File

@ -971,9 +971,9 @@ BaseItemSharedPtr TransportMenu()
( FinderScope{ findCommandHandler },
/* i18n-hint: 'Transport' is the name given to the set of controls that
play, record, pause etc. */
Menu( wxT("Transport"), XO("Tra&nsport"),
Menu( wxT("Transport"), XXO("Tra&nsport"),
Section( "Basic",
Menu( wxT("Play"), XO("Pl&aying"),
Menu( wxT("Play"), XXO("Pl&aying"),
/* i18n-hint: (verb) Start or Stop audio playback*/
Command( wxT("PlayStop"), XXO("Pl&ay/Stop"), FN(OnPlayStop),
CanStopAudioStreamFlag(), wxT("Space") ),
@ -985,7 +985,7 @@ BaseItemSharedPtr TransportMenu()
CanStopAudioStreamFlag(), wxT("P") )
),
Menu( wxT("Record"), XO("&Recording"),
Menu( wxT("Record"), XXO("&Recording"),
/* i18n-hint: (verb)*/
Command( wxT("Record1stChoice"), XXO("&Record"), FN(OnRecord),
CanStopFlags, wxT("R") ),
@ -1001,7 +1001,7 @@ BaseItemSharedPtr TransportMenu()
// We supply the name for the 'other one' here.
// It should be bound to Shift+R
(gPrefs->ReadBool("/GUI/PreferNewTrackRecord", false)
? XO("&Append Record") : XO("Record &New Track")),
? XXO("&Append Record") : XXO("Record &New Track")),
FN(OnRecord2ndChoice), CanStopFlags,
wxT("Shift+R"),
findCommandHandler
@ -1027,7 +1027,7 @@ BaseItemSharedPtr TransportMenu()
Section( "Other",
Section( "",
Menu( wxT("PlayRegion"), XO("Pla&y Region"),
Menu( wxT("PlayRegion"), XXO("Pla&y Region"),
Command( wxT("LockPlayRegion"), XXO("&Lock"), FN(OnLockPlayRegion),
PlayRegionNotLockedFlag() ),
Command( wxT("UnlockPlayRegion"), XXO("&Unlock"),
@ -1038,7 +1038,7 @@ BaseItemSharedPtr TransportMenu()
Command( wxT("RescanDevices"), XXO("R&escan Audio Devices"),
FN(OnRescanDevices), AudioIONotBusyFlag() | CanStopAudioStreamFlag() ),
Menu( wxT("Options"), XO("Transport &Options"),
Menu( wxT("Options"), XXO("Transport &Options"),
Section( "",
// Sound Activated recording options
Command( wxT("SoundActivationLevel"),
@ -1101,7 +1101,7 @@ BaseItemSharedPtr ExtraTransportMenu()
{
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("Transport"), XO("T&ransport"),
Menu( wxT("Transport"), XXO("T&ransport"),
// PlayStop is already in the menus.
/* i18n-hint: (verb) Start playing audio*/
Command( wxT("Play"), XXO("Pl&ay"), FN(OnPlayStop),
@ -1150,7 +1150,7 @@ BaseItemSharedPtr ExtraPlayAtSpeedMenu()
{
static BaseItemSharedPtr menu{
( FinderScope{ findCommandHandler },
Menu( wxT("PlayAtSpeed"), XO("&Play-at-Speed"),
Menu( wxT("PlayAtSpeed"), XXO("&Play-at-Speed"),
/* i18n-hint: 'Normal Play-at-Speed' doesn't loop or cut preview. */
Command( wxT("PlayAtSpeed"), XXO("Normal Pl&ay-at-Speed"),
FN(OnPlayAtSpeed), CaptureNotBusyFlag() ),

Some files were not shown because too many files have changed in this diff Show More