TranslatableString for labels of ShuttleGui buttons

This commit is contained in:
Paul Licameli 2019-12-22 14:20:01 -05:00
parent c682718ee4
commit 1944ac2040
34 changed files with 183 additions and 178 deletions

View File

@ -294,7 +294,7 @@ AboutDialog::AboutDialog(wxWindow * parent)
S.Id(wxID_OK)
.Prop(0)
.AddButton(_("OK"), wxALIGN_CENTER, true);
.AddButton(XO("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(_("&Save..."));
S.Id(LoggerID_Clear).AddButton(_("Cl&ear"));
S.Id(LoggerID_Close).AddButton(_("&Close"));
S.Id(LoggerID_Save).AddButton(XO("&Save..."));
S.Id(LoggerID_Clear).AddButton(XO("Cl&ear"));
S.Id(LoggerID_Close).AddButton(XO("&Close"));
S.AddSpace(10, 0);
}
S.EndHorizontalLay();

View File

@ -83,9 +83,9 @@ void AutoRecoveryDialog::PopulateOrExchange(ShuttleGui& S)
S.StartHorizontalLay();
{
S.Id(ID_QUIT_AUDACITY).AddButton(_("Quit Audacity"));
S.Id(ID_RECOVER_NONE).AddButton(_("Discard Projects"));
S.Id(ID_RECOVER_ALL).AddButton(_("Recover Projects"));
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.EndHorizontalLay();
}

View File

@ -91,10 +91,10 @@ void MacroCommandDialog::PopulateOrExchange(ShuttleGui &S)
mCommand->SetEditable(false);
mEditParams = S.Id(EditParamsButtonID)
.Disable() // disable button as box is empty
.AddButton(_("&Edit Parameters"));
.AddButton(XO("&Edit Parameters"));
mUsePreset = S.Id(UsePresetButtonID)
.Disable() // disable button as box is empty
.AddButton(_("&Use Preset"));
.AddButton(XO("&Use Preset"));
}
S.EndMultiColumn();

View File

@ -148,7 +148,7 @@ void ApplyMacroDialog::PopulateOrExchange(ShuttleGui &S)
S.AddPrompt( _("Apply Macro to:") );
wxButton* btn = S.Id(ApplyToProjectID)
.Name(XO("Apply macro to project"))
.AddButton(_("&Project"));
.AddButton(XO("&Project"));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
btn->SetAccessible(safenew WindowAccessible(btn));
@ -156,7 +156,7 @@ void ApplyMacroDialog::PopulateOrExchange(ShuttleGui &S)
btn = S.Id(ApplyToFilesID)
.Name(XO("Apply macro to files..."))
.AddButton(_("&Files..."));
.AddButton(XO("&Files..."));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
btn->SetAccessible(safenew WindowAccessible(btn));
@ -167,7 +167,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(_("&Expand"));
mResize = S.Id(ExpandID).AddButton(XO("&Expand"));
S.Prop(1).AddSpace( 10 );
S.AddStandardButtons( eCancelButton | eHelpButton);
}
@ -423,7 +423,7 @@ void ApplyMacroDialog::OnApplyToFiles(wxCommandEvent & WXUNUSED(event))
S.StartHorizontalLay(wxCENTER, false);
{
S.Id(wxID_CANCEL).AddButton(_("&Cancel"));
S.Id(wxID_CANCEL).AddButton(XO("&Cancel"));
}
S.EndHorizontalLay();
}
@ -627,18 +627,18 @@ void MacrosWindow::PopulateOrExchange(ShuttleGui & S)
.AddListControlReportMode( { _("Macro") } );
S.StartVerticalLay(wxALIGN_TOP, 0);
{
S.Id(AddButtonID).AddButton(_("&New"));
mRemove = S.Id(RemoveButtonID).AddButton(_("Remo&ve"));
mRename = S.Id(RenameButtonID).AddButton(_("&Rename..."));
mRestore = S.Id(RestoreButtonID).AddButton(_("Re&store"));
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"));
// Not yet ready for prime time.
#if 0
S.Id(ImportButtonID)
.Disable()
.AddButton(_("I&mport..."));
.AddButton(XO("I&mport..."));
S.Id(ExportButtonID)
.Disable()
.AddButton(_("E&xport..."));
.AddButton(XO("E&xport..."));
#endif
}
S.EndVerticalLay();
@ -664,11 +664,11 @@ void MacrosWindow::PopulateOrExchange(ShuttleGui & S)
S.StartVerticalLay(wxALIGN_TOP, 0);
{
S.Id(InsertButtonID).AddButton(_("&Insert"), wxALIGN_LEFT);
S.Id(EditButtonID).AddButton(_("&Edit..."), wxALIGN_LEFT);
S.Id(DeleteButtonID).AddButton(_("De&lete"), wxALIGN_LEFT);
S.Id(UpButtonID).AddButton(_("Move &Up"), wxALIGN_LEFT);
S.Id(DownButtonID).AddButton(_("Move &Down"), wxALIGN_LEFT);
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.EndVerticalLay();
}
@ -681,12 +681,12 @@ 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(_("Shrin&k"));
mResize = S.Id(ShrinkID).AddButton(XO("Shrin&k"));
// Using variable text just to get the positioning options.
S.Prop(0).AddVariableText( _("Apply Macro to:"), false, wxALL | wxALIGN_CENTRE_VERTICAL );
wxButton* btn = S.Id(ApplyToProjectID)
.Name(XO("Apply macro to project"))
.AddButton(_("&Project"));
.AddButton(XO("&Project"));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
btn->SetAccessible(safenew WindowAccessible(btn));
@ -694,7 +694,7 @@ void MacrosWindow::PopulateOrExchange(ShuttleGui & S)
btn = S.Id(ApplyToFilesID)
.Name(XO("Apply macro to files..."))
.AddButton(_("&Files..."));
.AddButton(XO("&Files..."));
#if wxUSE_ACCESSIBILITY
// so that name can be set on a standard control
btn->SetAccessible(safenew WindowAccessible(btn));

View File

@ -225,10 +225,10 @@ void BenchmarkDialog::MakeBenchmarkDialog()
{
S.StartHorizontalLay(wxALIGN_LEFT, false);
{
S.Id(RunID).AddButton(_("Run"), wxALIGN_CENTRE, true);
S.Id(BSaveID).AddButton(_("Save"));
S.Id(RunID).AddButton(XO("Run"), wxALIGN_CENTRE, true);
S.Id(BSaveID).AddButton(XO("Save"));
/* i18n-hint verb; to empty or erase */
S.Id(ClearID).AddButton(_("Clear"));
S.Id(ClearID).AddButton(XO("Clear"));
}
S.EndHorizontalLay();
@ -241,7 +241,7 @@ void BenchmarkDialog::MakeBenchmarkDialog()
S.StartHorizontalLay(wxALIGN_NOT | wxALIGN_LEFT, false);
{
/* i18n-hint verb */
S.Id(wxID_CANCEL).AddButton(_("Close"));
S.Id(wxID_CANCEL).AddButton(XO("Close"));
}
S.EndHorizontalLay();
}

View File

@ -367,7 +367,7 @@ void DependencyDialog::PopulateOrExchange(ShuttleGui& S)
.Focus()
.Disable(mFileListCtrl->GetSelectedItemCount() <= 0)
.AddButton(
_("Copy Selected Files"),
XO("Copy Selected Files"),
wxALIGN_LEFT, true);
}
S.EndStatic();
@ -375,18 +375,18 @@ void DependencyDialog::PopulateOrExchange(ShuttleGui& S)
S.StartHorizontalLay(wxALIGN_CENTRE,0);
{
if (mIsSaving) {
S.Id(wxID_CANCEL).AddButton(_("Cancel Save"));
S.Id(wxID_NO).AddButton(_("Save Without Copying"));
S.Id(wxID_CANCEL).AddButton(XO("Cancel Save"));
S.Id(wxID_NO).AddButton(XO("Save Without Copying"));
}
else
S.Id(wxID_NO).AddButton(_("Do Not Copy"));
S.Id(wxID_NO).AddButton(XO("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(_("Copy All Files (Safer)"));
.AddButton(XO("Copy All Files (Safer)"));
}
S.EndHorizontalLay();

View File

@ -490,9 +490,9 @@ public:
else {
mPathText = S.AddTextBox( {}, mLibPath.GetFullPath(), 0);
}
S.Id(ID_FFMPEG_BROWSE).AddButton(_("Browse..."), wxALIGN_RIGHT);
S.Id(ID_FFMPEG_BROWSE).AddButton(XO("Browse..."), wxALIGN_RIGHT);
S.AddVariableText(_("To get a free copy of FFmpeg, click here -->"), true);
S.Id(ID_FFMPEG_DLOAD).AddButton(_("Download"), wxALIGN_RIGHT);
S.Id(ID_FFMPEG_DLOAD).AddButton(XO("Download"), wxALIGN_RIGHT);
}
S.EndMultiColumn();

View File

@ -468,7 +468,7 @@ FrequencyPlotDialog::FrequencyPlotDialog(wxWindow * parent, wxWindowID id,
S.AddSpace(5);
mExportButton = S.Id(FreqExportButtonID).AddButton(_("&Export..."));
mExportButton = S.Id(FreqExportButtonID).AddButton(XO("&Export..."));
S.AddSpace(5);
@ -493,11 +493,11 @@ FrequencyPlotDialog::FrequencyPlotDialog(wxWindow * parent, wxWindowID id,
S.AddSpace(5);
mReplotButton = S.Id(ReplotButtonID).AddButton(_("&Replot..."));
mReplotButton = S.Id(ReplotButtonID).AddButton(XO("&Replot..."));
S.AddSpace(5);
//mCloseButton = S.Id(wxID_CANCEL).AddButton(_("&Close"));
//mCloseButton = S.Id(wxID_CANCEL).AddButton(XO("&Close"));
//S.AddSpace(5);
}

View File

@ -119,12 +119,12 @@ HistoryDialog::HistoryDialog(AudacityProject *parent, UndoManager *manager):
0);
S.AddWindow(mLevels);
/* i18n-hint: (verb)*/
mDiscard = S.Id(ID_DISCARD).AddButton(_("&Discard"));
mDiscard = S.Id(ID_DISCARD).AddButton(XO("&Discard"));
mClipboard = S
.ConnectRoot(wxEVT_KEY_DOWN, &HistoryDialog::OnChar)
.AddTextBox(_("Clipboard space used"), wxT("0"), 10);
S.Id(ID_DISCARD_CLIPBOARD).AddButton(_("Discard"));
S.Id(ID_DISCARD_CLIPBOARD).AddButton(XO("Discard"));
}
S.EndMultiColumn();
}
@ -133,7 +133,7 @@ HistoryDialog::HistoryDialog(AudacityProject *parent, UndoManager *manager):
S.StartHorizontalLay(wxALIGN_RIGHT, false);
{
S.SetBorder(10);
S.Id(wxID_OK).AddButton(_("&OK"), wxALIGN_CENTER, true);
S.Id(wxID_OK).AddButton(XO("&OK"), wxALIGN_CENTER, true);
}
S.EndHorizontalLay();
}

View File

@ -261,12 +261,12 @@ void LabelDialog::PopulateOrExchange( ShuttleGui & S )
S.EndVerticalLay();
S.StartVerticalLay(0);
{
//S.Id(ID_INSERTA).AddButton(_("&Insert"), wxALIGN_LEFT);
S.Id(ID_INSERTB).AddButton(_("&Insert"), wxALIGN_LEFT);
//S.Id(EditButtonID).AddButton(_("&Edit"), wxALIGN_LEFT);
S.Id(ID_REMOVE).AddButton(_("De&lete"), wxALIGN_LEFT);
S.Id(ID_IMPORT).AddButton(_("I&mport..."), wxALIGN_LEFT);
S.Id(ID_EXPORT).AddButton(_("&Export..."), wxALIGN_LEFT);
//S.Id(ID_INSERTA).AddButton(XO("&Insert"), wxALIGN_LEFT);
S.Id(ID_INSERTB).AddButton(XO("&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.EndVerticalLay();
}

View File

@ -587,8 +587,8 @@ void PluginRegistrationDialog::PopulateOrExchange(ShuttleGui &S)
S.StartHorizontalLay(wxALIGN_LEFT | wxEXPAND, 0);
{
S.Id(ID_SelectAll).AddButton(_("&Select All"));
S.Id(ID_ClearAll).AddButton(_("C&lear All"));
S.Id(ID_SelectAll).AddButton(XO("&Select All"));
S.Id(ID_ClearAll).AddButton(XO("C&lear All"));
S.StartHorizontalLay(wxALIGN_CENTER);
{
@ -596,8 +596,8 @@ void PluginRegistrationDialog::PopulateOrExchange(ShuttleGui &S)
}
S.EndHorizontalLay();
S.Id(ID_Enable).AddButton(_("&Enable"));
S.Id(ID_Disable).AddButton(_("&Disable"));
S.Id(ID_Enable).AddButton(XO("&Enable"));
S.Id(ID_Disable).AddButton(XO("&Disable"));
}
S.EndHorizontalLay();
}

View File

@ -333,7 +333,7 @@ void ScreenshotBigDialog::PopulateOrExchange(ShuttleGui & S)
gPrefs->Read(wxT("/ScreenshotPath"), wxFileName::GetHomeDir()),
30
);
S.Id(IdDirChoose).AddButton(_("Choose..."));
S.Id(IdDirChoose).AddButton(XO("Choose..."));
}
S.EndMultiColumn();
}
@ -343,8 +343,8 @@ void ScreenshotBigDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay();
{
S.Id(IdMainWindowSmall).AddButton(_("Resize Small"));
S.Id(IdMainWindowLarge).AddButton(_("Resize Large"));
S.Id(IdMainWindowSmall).AddButton(XO("Resize Small"));
S.Id(IdMainWindowLarge).AddButton(XO("Resize Large"));
/* i18n-hint: Bkgnd is short for background and appears on a small button
* It is OK to just translate this item as if it said 'Blue' */
mBlue = safenew wxToggleButton(S.GetParent(),
@ -362,15 +362,15 @@ void ScreenshotBigDialog::PopulateOrExchange(ShuttleGui & S)
S.StartHorizontalLay();
{
S.Id(IdCaptureWindowContents).AddButton(_("Capture Window Only"));
S.Id(IdCaptureFullWindow).AddButton(_("Capture Full Window"));
S.Id(IdCaptureWindowPlus).AddButton(_("Capture Window Plus"));
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.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdCaptureFullScreen).AddButton(_("Capture Full Screen"));
S.Id(IdCaptureFullScreen).AddButton(XO("Capture Full Screen"));
}
S.EndHorizontalLay();
@ -388,47 +388,47 @@ void ScreenshotBigDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay();
{
S.Id(IdCaptureToolbars).AddButton(_("All Toolbars"));
S.Id(IdCaptureEffects).AddButton(_("All Effects"));
S.Id(IdCaptureScriptables).AddButton(_("All Scriptables"));
S.Id(IdCapturePreferences).AddButton(_("All Preferences"));
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.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdCaptureSelectionBar).AddButton(_("SelectionBar"));
S.Id(IdCaptureSpectralSelection).AddButton(_("Spectral Selection"));
S.Id(IdCaptureTools).AddButton(_("Tools"));
S.Id(IdCaptureTransport).AddButton(_("Transport"));
S.Id(IdCaptureSelectionBar).AddButton(XO("SelectionBar"));
S.Id(IdCaptureSpectralSelection).AddButton(XO("Spectral Selection"));
S.Id(IdCaptureTools).AddButton(XO("Tools"));
S.Id(IdCaptureTransport).AddButton(XO("Transport"));
}
S.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdCaptureMixer).AddButton(_("Mixer"));
S.Id(IdCaptureMeter).AddButton(_("Meter"));
S.Id(IdCapturePlayMeter).AddButton(_("Play Meter"));
S.Id(IdCaptureRecordMeter).AddButton(_("Record Meter"));
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.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdCaptureEdit).AddButton(_("Edit"));
S.Id(IdCaptureDevice).AddButton(_("Device"));
S.Id(IdCaptureTranscription).AddButton(_("Play-at-Speed"));
S.Id(IdCaptureScrub).AddButton(_("Scrub"));
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.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdCaptureTrackPanel).AddButton(_("Track Panel"));
S.Id(IdCaptureRuler).AddButton(_("Ruler"));
S.Id(IdCaptureTracks).AddButton(_("Tracks"));
S.Id(IdCaptureFirstTrack).AddButton(_("First Track"));
S.Id(IdCaptureSecondTrack).AddButton(_("Second Track"));
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.EndHorizontalLay();
}
@ -438,19 +438,19 @@ void ScreenshotBigDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay();
{
S.Id(IdOneSec).AddButton(_("One Sec"));
S.Id(IdTenSec).AddButton(_("Ten Sec"));
S.Id(IdOneMin).AddButton(_("One Min"));
S.Id(IdFiveMin).AddButton(_("Five Min"));
S.Id(IdOneHour).AddButton(_("One Hour"));
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.EndHorizontalLay();
S.StartHorizontalLay();
{
S.Id(IdShortTracks).AddButton(_("Short Tracks"));
S.Id(IdMedTracks).AddButton(_("Medium Tracks"));
S.Id(IdTallTracks).AddButton(_("Tall Tracks"));
S.Id(IdShortTracks).AddButton(XO("Short Tracks"));
S.Id(IdMedTracks).AddButton(XO("Medium Tracks"));
S.Id(IdTallTracks).AddButton(XO("Tall Tracks"));
}
S.EndHorizontalLay();
}

View File

@ -345,15 +345,17 @@ wxCheckBox * ShuttleGuiBase::AddCheckBoxOnRight( const wxString &Prompt, bool Se
}
wxButton * ShuttleGuiBase::AddButton(
const wxString &Text, int PositionFlags, bool setDefault)
const TranslatableString &Text, int PositionFlags, bool setDefault)
{
UseUpId();
if( mShuttleMode != eIsCreating )
return wxDynamicCast(wxWindow::FindWindowById( miId, mpDlg), wxButton);
wxButton * pBtn;
mpWind = pBtn = safenew wxButton(GetParent(), miId, Text, wxDefaultPosition, wxDefaultSize,
const auto translated = Text.Translation();
mpWind = pBtn = safenew wxButton(GetParent(), miId,
translated, wxDefaultPosition, wxDefaultSize,
GetStyle( 0 ) );
mpWind->SetName(wxStripMenuCodes(Text));
mpWind->SetName(wxStripMenuCodes(translated));
miProp=0;
UpdateSizersCore(false, PositionFlags | wxALL);
if (setDefault)
@ -2318,7 +2320,7 @@ std::unique_ptr<wxSizer> CreateStdButtonSizer(wxWindow *parent, long buttons, wx
if( buttons & eCloseButton )
{
bs->AddButton(safenew wxButton(parent, wxID_CANCEL, _("&Close")));
bs->AddButton(safenew wxButton(parent, wxID_CANCEL, XO("&Close").Translation()));
}
if( buttons & eHelpButton )
@ -2326,24 +2328,24 @@ std::unique_ptr<wxSizer> CreateStdButtonSizer(wxWindow *parent, long buttons, wx
// Replace standard Help button with smaller icon button.
// bs->AddButton(safenew wxButton(parent, wxID_HELP));
b = safenew wxBitmapButton(parent, wxID_HELP, theTheme.Bitmap( bmpHelpIcon ));
b->SetToolTip( _("Help") );
b->SetLabel(_("Help")); // for screen readers
b->SetToolTip( XO("Help").Translation() );
b->SetLabel(XO("Help").Translation()); // for screen readers
bs->AddButton( b );
}
if (buttons & ePreviewButton)
{
bs->Add(safenew wxButton(parent, ePreviewID, _("&Preview")), 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, margin);
bs->Add(safenew wxButton(parent, ePreviewID, XO("&Preview").Translation()), 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, margin);
}
if (buttons & ePreviewDryButton)
{
bs->Add(safenew wxButton(parent, ePreviewDryID, _("Dry Previe&w")), 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, margin);
bs->Add(safenew wxButton(parent, ePreviewDryID, XO("Dry Previe&w").Translation()), 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, margin);
bs->Add( 20, 0 );
}
if( buttons & eSettingsButton )
{
bs->Add(safenew wxButton(parent, eSettingsID, _("&Settings")), 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, margin);
bs->Add(safenew wxButton(parent, eSettingsID, XO("&Settings").Translation()), 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, margin);
bs->Add( 20, 0 );
}
@ -2374,7 +2376,7 @@ std::unique_ptr<wxSizer> CreateStdButtonSizer(wxWindow *parent, long buttons, wx
}
}
b = safenew wxButton(parent, eDebugID, _("Debu&g"));
b = safenew wxButton(parent, eDebugID, XO("Debu&g").Translation());
bs->Insert( lastLastSpacer + 1, b, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, margin );
}

View File

@ -288,7 +288,7 @@ public:
// Only the last button specified as default (if more than one) will be
// Always ORs the flags with wxALL (which affects borders):
wxButton * AddButton(
const wxString & Text, int PositionFlags = wxALIGN_CENTRE,
const TranslatableString & Text, int PositionFlags = wxALIGN_CENTRE,
bool setDefault = false );
// Only the last button specified as default (if more than one) will be
// Always ORs the flags with wxALL (which affects borders):

View File

@ -147,7 +147,7 @@ void SplashDialog::Populate( ShuttleGui & S )
S.Id(wxID_OK)
.Prop(0)
.AddButton(_("OK"), wxALIGN_RIGHT| wxALL, true);
.AddButton(XO("OK"), wxALIGN_RIGHT| wxALL, true);
}
S.EndVerticalLay();
}

View File

@ -914,10 +914,10 @@ void TagsEditorDialog::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(4, wxALIGN_CENTER);
{
S.Id(AddID).AddButton(_("&Add"));
S.Id(RemoveID).AddButton(_("&Remove"));
S.Id(AddID).AddButton(XO("&Add"));
S.Id(RemoveID).AddButton(XO("&Remove"));
S.AddTitle( {} );
S.Id(ClearID).AddButton(_("Cl&ear"));
S.Id(ClearID).AddButton(XO("Cl&ear"));
}
S.EndMultiColumn();
@ -927,8 +927,8 @@ void TagsEditorDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartMultiColumn(4, wxALIGN_CENTER);
{
S.Id(EditID).AddButton(_("E&dit..."));
S.Id(ResetID).AddButton(_("Rese&t..."));
S.Id(EditID).AddButton(XO("E&dit..."));
S.Id(ResetID).AddButton(XO("Rese&t..."));
}
S.EndMultiColumn();
}
@ -937,10 +937,10 @@ void TagsEditorDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartMultiColumn(4, wxALIGN_CENTER);
{
S.Id(LoadID).AddButton(_("&Load..."));
S.Id(SaveID).AddButton(_("&Save..."));
S.Id(LoadID).AddButton(XO("&Load..."));
S.Id(SaveID).AddButton(XO("&Save..."));
S.AddTitle( {} );
S.Id(SaveDefaultsID).AddButton(_("Set De&fault"));
S.Id(SaveDefaultsID).AddButton(XO("Set De&fault"));
}
S.EndMultiColumn();
}

View File

@ -942,7 +942,7 @@ void TimerRecordDialog::PopulateOrExchange(ShuttleGui& S)
S.GetParent(), ID_AUTOSAVEPATH_TEXT, _("Save Project As:"), sInitialValue);
m_pTimerSavePathTextCtrl->SetEditable(false);
S.AddWindow(m_pTimerSavePathTextCtrl);
m_pTimerSavePathButtonCtrl = S.Id(ID_AUTOSAVEPATH_BUTTON).AddButton(_("Select..."));
m_pTimerSavePathButtonCtrl = S.Id(ID_AUTOSAVEPATH_BUTTON).AddButton(XO("Select..."));
}
S.EndMultiColumn();
}
@ -958,7 +958,7 @@ void TimerRecordDialog::PopulateOrExchange(ShuttleGui& S)
S.GetParent(), ID_AUTOEXPORTPATH_TEXT, _("Export Project As:"), wxT(""));
m_pTimerExportPathTextCtrl->SetEditable(false);
S.AddWindow(m_pTimerExportPathTextCtrl);
m_pTimerExportPathButtonCtrl = S.Id(ID_AUTOEXPORTPATH_BUTTON).AddButton(_("Select..."));
m_pTimerExportPathButtonCtrl = S.Id(ID_AUTOEXPORTPATH_BUTTON).AddButton(XO("Select..."));
}
S.EndMultiColumn();
}

View File

@ -267,7 +267,7 @@ ContrastDialog::ContrastDialog(wxWindow * parent, wxWindowID id,
S.Name(XO("Foreground end time"))
.AddWindow(mForegroundEndT);
m_pButton_UseCurrentF = S.Id(ID_BUTTON_USECURRENTF).AddButton(_("&Measure selection"));
m_pButton_UseCurrentF = S.Id(ID_BUTTON_USECURRENTF).AddButton(XO("&Measure selection"));
mForegroundRMSText = S.Id(ID_FOREGROUNDDB_TEXT)
.ConnectRoot(wxEVT_KEY_DOWN,
&ContrastDialog::OnChar)
@ -301,7 +301,7 @@ ContrastDialog::ContrastDialog(wxWindow * parent, wxWindowID id,
S.Name(XO("Background end time"))
.AddWindow(mBackgroundEndT);
m_pButton_UseCurrentB = S.Id(ID_BUTTON_USECURRENTB).AddButton(_("Mea&sure selection"));
m_pButton_UseCurrentB = S.Id(ID_BUTTON_USECURRENTB).AddButton(XO("Mea&sure selection"));
mBackgroundRMSText = S.Id(ID_BACKGROUNDDB_TEXT)
.ConnectRoot(wxEVT_KEY_DOWN,
&ContrastDialog::OnChar)
@ -323,7 +323,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(_("R&eset"));
m_pButton_Reset = S.Id(ID_BUTTON_RESET).AddButton(XO("R&eset"));
label = XO("&Difference:");
S.AddFixedText(label.Translation());
@ -332,7 +332,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(_("E&xport..."));
m_pButton_Export = S.Id(ID_BUTTON_EXPORT).AddButton(XO("E&xport..."));
}
S.EndMultiColumn();
}
@ -342,9 +342,9 @@ ContrastDialog::ContrastDialog(wxWindow * parent, wxWindowID id,
S.StartMultiColumn(3, wxEXPAND);
{
S.SetStretchyCol(1);
m_pButton_GetURL = S.Id(ID_BUTTON_GETURL).AddButton(_("&Help"));
m_pButton_GetURL = S.Id(ID_BUTTON_GETURL).AddButton(XO("&Help"));
S.AddFixedText(wxT(" ")); // spacer
m_pButton_Close = S.Id(ID_BUTTON_CLOSE).AddButton(_("&Close"));
m_pButton_Close = S.Id(ID_BUTTON_CLOSE).AddButton(XO("&Close"));
}
S.EndMultiColumn();
#endif

View File

@ -1033,13 +1033,13 @@ void EffectEqualization::PopulateOrExchange(ShuttleGui & S)
}
S.EndHorizontalLay();
S.Id(ID_Manage).AddButton(_("S&ave/Manage Curves..."));
S.Id(ID_Manage).AddButton(XO("S&ave/Manage Curves..."));
}
S.StartHorizontalLay(wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, 1);
{
S.Id(ID_Clear).AddButton(_("Fla&tten"));
S.Id(ID_Invert).AddButton(_("&Invert"));
S.Id(ID_Clear).AddButton(XO("Fla&tten"));
S.Id(ID_Invert).AddButton(XO("&Invert"));
mGridOnOff = S.Id(ID_Grid)
.Name(XO("Show grid lines"))
@ -1101,7 +1101,7 @@ void EffectEqualization::PopulateOrExchange(ShuttleGui & S)
.Disable(true /* !EffectEqualization48x::GetMathCaps()->AVX */)
.AddRadioButtonToGroup(_("AV&X Threaded"),
4, value);
S.Id(ID_Bench).AddButton(_("&Bench"));
S.Id(ID_Bench).AddButton(XO("&Bench"));
}
S.EndHorizontalLay();
@ -3369,14 +3369,14 @@ void EditCurvesDialog::PopulateOrExchange(ShuttleGui & S)
S.EndStatic();
S.StartVerticalLay(0);
{
S.Id(UpButtonID).AddButton(_("Move &Up"), wxALIGN_LEFT);
S.Id(DownButtonID).AddButton(_("Move &Down"), wxALIGN_LEFT);
S.Id(RenameButtonID).AddButton(_("&Rename..."), wxALIGN_LEFT);
S.Id(DeleteButtonID).AddButton(_("D&elete..."), wxALIGN_LEFT);
S.Id(ImportButtonID).AddButton(_("I&mport..."), wxALIGN_LEFT);
S.Id(ExportButtonID).AddButton(_("E&xport..."), wxALIGN_LEFT);
S.Id(LibraryButtonID).AddButton(_("&Get More..."), wxALIGN_LEFT);
S.Id(DefaultsButtonID).AddButton(_("De&faults"), wxALIGN_LEFT);
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.EndVerticalLay();
}

View File

@ -1710,7 +1710,7 @@ void EffectNoiseReduction::Dialog::PopulateOrExchange(ShuttleGui & S)
S.AddVariableText(_(
"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(_("&Get Noise Profile"));
S.Id(ID_BUTTON_GETPROFILE).AddButton(XO("&Get Noise Profile"));
}
S.EndStatic();

View File

@ -706,7 +706,7 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
S.StartStatic(_("Step 1"));
{
S.AddVariableText(_("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(_("&Get Noise Profile"));
m_pButton_GetProfile = S.Id(ID_BUTTON_GETPROFILE).AddButton(XO("&Get Noise Profile"));
}
S.EndStatic();

View File

@ -2626,8 +2626,8 @@ void NyquistEffect::BuildPromptWindow(ShuttleGui & S)
S.StartHorizontalLay(wxALIGN_CENTER, 0);
{
S.Id(ID_Load).AddButton(_("&Load"));
S.Id(ID_Save).AddButton(_("&Save"));
S.Id(ID_Load).AddButton(XO("&Load"));
S.Id(ID_Save).AddButton(XO("&Save"));
}
S.EndHorizontalLay();
}
@ -2726,7 +2726,8 @@ void NyquistEffect::BuildEffectWindow(ShuttleGui & S)
if (ctrl.label.empty())
// We'd expect wxFileSelectorPromptStr to already be translated, but apparently not.
ctrl.label = wxGetTranslation( wxFileSelectorPromptStr );
S.Id(ID_FILE + i).AddButton(ctrl.label, wxALIGN_LEFT);
S.Id(ID_FILE + i).AddButton(
Verbatim(ctrl.label), wxALIGN_LEFT);
}
else
{

View File

@ -123,7 +123,7 @@ void ExportCLOptions::PopulateOrExchange(ShuttleGui & S)
mCmd = S.AddCombo(_("Command:"),
cmd,
cmds);
S.Id(ID_BROWSE).AddButton(_("Browse..."),
S.Id(ID_BROWSE).AddButton(XO("Browse..."),
wxALIGN_CENTER_VERTICAL);
S.AddFixedText( {} );
S.TieCheckBox(_("Show output"),
@ -540,7 +540,7 @@ ProgressResult ExportCL::Export(AudacityProject *project,
S.AddTextWindow(cmd + wxT("\n\n") + output);
S.StartHorizontalLay(wxALIGN_CENTER, false);
{
S.Id(wxID_OK).AddButton(_("&OK"), wxALIGN_CENTER, true);
S.Id(wxID_OK).AddButton(XO("&OK"), wxALIGN_CENTER, true);
}
dlg.GetSizer()->AddSpacer(5);
dlg.Layout();

View File

@ -533,7 +533,7 @@ void ExportFFmpegCustomOptions::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay(wxCENTER, 0);
{
S.Id(OpenID).AddButton(_("Open custom FFmpeg format options"));
S.Id(OpenID).AddButton(XO("Open custom FFmpeg format options"));
}
S.EndHorizontalLay();
}
@ -1542,11 +1542,11 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
{
S.SetStretchyCol(1);
mPresetCombo = S.Id(FEPresetID).AddCombo(_("Preset:"), gPrefs->Read(wxT("/FileFormats/FFmpegPreset"),wxEmptyString), mPresetNames);
mLoadPreset = S.Id(FELoadPresetID).AddButton(_("Load Preset"));
mSavePreset = S.Id(FESavePresetID).AddButton(_("Save Preset"));
mDeletePreset = S.Id(FEDeletePresetID).AddButton(_("Delete Preset"));
mImportPresets = S.Id(FEImportPresetsID).AddButton(_("Import Presets"));
mExportPresets = S.Id(FEExportPresetsID).AddButton(_("Export Presets"));
mLoadPreset = S.Id(FELoadPresetID).AddButton(XO("Load Preset"));
mSavePreset = S.Id(FESavePresetID).AddButton(XO("Save Preset"));
mDeletePreset = S.Id(FEDeletePresetID).AddButton(XO("Delete Preset"));
mImportPresets = S.Id(FEImportPresetsID).AddButton(XO("Import Presets"));
mExportPresets = S.Id(FEExportPresetsID).AddButton(XO("Export Presets"));
}
S.EndMultiColumn();
S.StartMultiColumn(4, wxALIGN_LEFT);
@ -1566,8 +1566,8 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(2, wxEXPAND);
{
S.SetStretchyRow(1);
S.Id(FEAllFormatsID).AddButton(_("Show All Formats"));
S.Id(FEAllCodecsID).AddButton(_("Show All Codecs"));
S.Id(FEAllFormatsID).AddButton(XO("Show All Formats"));
S.Id(FEAllCodecsID).AddButton(XO("Show All Codecs"));
mFormatList = S.Id(FEFormatID).AddListBox(mFormatNames);
mFormatList->DeselectAll();
mCodecList = S.Id(FECodecID).AddListBox(mCodecNames);

View File

@ -597,11 +597,11 @@ public:
else {
mPathText = S.AddTextBox( {}, mLibPath.GetFullPath(), 0);
}
S.Id(ID_BROWSE).AddButton(_("Browse..."), wxALIGN_RIGHT);
S.Id(ID_BROWSE).AddButton(XO("Browse..."), wxALIGN_RIGHT);
/* i18n-hint: There is a button to the right of the arrow.*/
S.AddVariableText(_("To get a free copy of LAME, click here -->"), true);
/* i18n-hint: (verb)*/
S.Id(ID_DLOAD).AddButton(_("Download"), wxALIGN_RIGHT);
S.Id(ID_DLOAD).AddButton(XO("Download"), wxALIGN_RIGHT);
}
S.EndMultiColumn();

View File

@ -279,8 +279,8 @@ void ExportMultipleDialog::PopulateOrExchange(ShuttleGui& S)
{wxT("/Export/MultiplePath"),
DefaultPath},
64);
S.Id(ChooseID).AddButton(_("Choose..."));
S.Id(CreateID).AddButton(_("Create"));
S.Id(ChooseID).AddButton(XO("Choose..."));
S.Id(CreateID).AddButton(XO("Create"));
mFormat = S.Id(FormatID)
.TieChoice( _("Format:"),

View File

@ -151,7 +151,7 @@ void QuickFixDialog::AddStuck( ShuttleGui & S, bool & bBool, wxString Pref, wxSt
if( !bBool)
return;
S.AddFixedText( Prompt );
S.Id(FixButtonID + mItem).AddButton( _("Fix") )->SetClientObject(
S.Id(FixButtonID + mItem).AddButton( XO("Fix") )->SetClientObject(
safenew wxStringClientData(Pref));
{

View File

@ -114,7 +114,7 @@ void DirectoriesPrefs::PopulateOrExchange(ShuttleGui & S)
S.Prop(0).AddFixedText(_("Free Space:"));
mFreeSpace = S.Prop(0).AddVariableText( {} );
S.Prop(10).AddSpace( 10 );
S.Id(ChooseButtonID).Prop(0).AddButton(_("C&hoose..."));
S.Id(ChooseButtonID).Prop(0).AddButton(XO("C&hoose..."));
}
}

View File

@ -181,19 +181,19 @@ void ExtImportPrefs::PopulateOrExchange(ShuttleGui & S)
S.EndHorizontalLay();
S.StartHorizontalLay (wxSHRINK, 0);
{
MoveRuleUp = S.Id (EIPMoveRuleUp).AddButton (_("Move rule &up"));
MoveRuleDown = S.Id (EIPMoveRuleDown).AddButton
(_("Move rule &down"));
MoveFilterUp = S.Id (EIPMoveFilterUp).AddButton
(_("Move f&ilter up"));
MoveFilterDown = S.Id (EIPMoveFilterDown).AddButton
(_("Move &filter down"));
MoveRuleUp = S.Id (EIPMoveRuleUp).AddButton(XO("Move rule &up"));
MoveRuleDown = S.Id (EIPMoveRuleDown).AddButton(
XO("Move rule &down"));
MoveFilterUp = S.Id (EIPMoveFilterUp).AddButton(
XO("Move f&ilter up"));
MoveFilterDown = S.Id (EIPMoveFilterDown).AddButton(
XO("Move &filter down"));
}
S.EndHorizontalLay();
S.StartHorizontalLay (wxSHRINK, 0);
{
AddRule = S.Id (EIPAddRule).AddButton (_("&Add new rule"));
DelRule = S.Id (EIPDelRule).AddButton (_("De&lete selected rule"));
AddRule = S.Id (EIPAddRule).AddButton(XO("&Add new rule"));
DelRule = S.Id (EIPDelRule).AddButton(XO("De&lete selected rule"));
}
S.EndHorizontalLay();
}

View File

@ -280,8 +280,8 @@ void KeyConfigPrefs::PopulateOrExchange(ShuttleGui & S)
.AddWindow(mKey);
/* i18n-hint: (verb)*/
mSet = S.Id(SetButtonID).AddButton(_("&Set"));
mClear = S.Id(ClearButtonID).AddButton(_("Cl&ear"));
mSet = S.Id(SetButtonID).AddButton(XO("&Set"));
mClear = S.Id(ClearButtonID).AddButton(XO("Cl&ear"));
}
S.EndThreeColumn();
@ -291,9 +291,9 @@ void KeyConfigPrefs::PopulateOrExchange(ShuttleGui & S)
S.StartThreeColumn();
{
S.Id(ImportButtonID).AddButton(_("&Import..."));
S.Id(ExportButtonID).AddButton(_("&Export..."));
S.Id(AssignDefaultsButtonID).AddButton(_("&Defaults"));
S.Id(ImportButtonID).AddButton(XO("&Import..."));
S.Id(ExportButtonID).AddButton(XO("&Export..."));
S.Id(AssignDefaultsButtonID).AddButton(XO("&Defaults"));
}
S.EndThreeColumn();
}

View File

@ -117,7 +117,7 @@ void LibraryPrefs::PopulateOrExchange(ShuttleGui & S)
#ifdef DISABLE_DYNAMIC_LOADING_LAME
.Disable()
#endif
.AddButton(_("&Locate..."),
.AddButton(XO("&Locate..."),
wxALL | wxALIGN_LEFT | wxALIGN_CENTRE_VERTICAL);
S.AddVariableText(_("LAME MP3 Library:"),
true,
@ -126,7 +126,7 @@ void LibraryPrefs::PopulateOrExchange(ShuttleGui & S)
#ifdef DISABLE_DYNAMIC_LOADING_LAME
.Disable()
#endif
.AddButton(_("&Download"),
.AddButton(XO("&Download"),
wxALL | wxALIGN_LEFT | wxALIGN_CENTRE_VERTICAL);
#endif
@ -159,7 +159,7 @@ void LibraryPrefs::PopulateOrExchange(ShuttleGui & S)
#if !defined(USE_FFMPEG) || defined(DISABLE_DYNAMIC_LOADING_FFMPEG)
.Disable()
#endif
.AddButton(_("Loca&te..."),
.AddButton(XO("Loca&te..."),
wxALL | wxALIGN_LEFT | wxALIGN_CENTRE_VERTICAL);
S.AddVariableText(_("FFmpeg Library:"),
true,
@ -169,7 +169,7 @@ void LibraryPrefs::PopulateOrExchange(ShuttleGui & S)
#if !defined(USE_FFMPEG) || defined(DISABLE_DYNAMIC_LOADING_FFMPEG)
.Disable()
#endif
.AddButton(_("Dow&nload"),
.AddButton(XO("Dow&nload"),
wxALL | wxALIGN_LEFT | wxALIGN_CENTRE_VERTICAL);
}
S.EndTwoColumn();

View File

@ -131,17 +131,17 @@ void ThemePrefs::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay(wxALIGN_LEFT);
{
S.Id(idSaveThemeCache).AddButton(_("Save Theme Cache"));
S.Id(idLoadThemeCache).AddButton(_("Load Theme Cache"));
S.Id(idSaveThemeCache).AddButton(XO("Save Theme Cache"));
S.Id(idLoadThemeCache).AddButton(XO("Load Theme Cache"));
// This next button is only provided in Debug mode.
// It is for developers who are compiling Audacity themselves
// and who who wish to generate a NEW ThemeAsCeeCode.h and compile it in.
#ifdef __WXDEBUG__
S.Id(idSaveThemeAsCode).AddButton(wxT("Output Sourcery"));
S.Id(idSaveThemeAsCode).AddButton(Verbatim("Output Sourcery"));
#endif
S.Id(idReadThemeInternal).AddButton(_("&Defaults"));
S.Id(idReadThemeInternal).AddButton(XO("&Defaults"));
}
S.EndHorizontalLay();
}
@ -158,8 +158,8 @@ void ThemePrefs::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay(wxALIGN_LEFT);
{
S.Id(idSaveThemeComponents).AddButton( _("Save Files"));
S.Id(idLoadThemeComponents).AddButton( _("Load Files"));
S.Id(idSaveThemeComponents).AddButton( XO("Save Files"));
S.Id(idLoadThemeComponents).AddButton( XO("Load Files"));
}
S.EndHorizontalLay();
}

View File

@ -171,13 +171,15 @@ void HelpSystem::ShowHtmlText(wxWindow *pParent,
#if wxUSE_TOOLTIPS
.ToolTip( XO("Backwards" ) )
#endif
.AddButton( _("<") );
/* i18n-hint arrowhead meaning backward movement */
.AddButton( XO("<") );
S.Id( wxID_FORWARD )
.Disable()
#if wxUSE_TOOLTIPS
.ToolTip( XO("Forwards" ) )
#endif
.AddButton( _(">") );
/* i18n-hint arrowhead meaning forward movement */
.AddButton( XO(">") );
}
S.EndHorizontalLay();
@ -195,7 +197,7 @@ void HelpSystem::ShowHtmlText(wxWindow *pParent,
S.Prop(1).Focus().Position( wxEXPAND )
.AddWindow( html );
S.Id( wxID_CANCEL ).AddButton( _("Close"), wxALIGN_CENTER, true );
S.Id( wxID_CANCEL ).AddButton( XO("Close"), wxALIGN_CENTER, true );
}
S.EndPanel();