mirror of
https://github.com/cookiengineer/audacity
synced 2025-06-16 16:10:06 +02:00
Use TranslatableString in NumericTextCtrl...
... Fixing a minor error in TimerRecordDialog, where translation of format was done too soon
This commit is contained in:
parent
b351eabf47
commit
0b6618e491
@ -811,9 +811,9 @@ void TimerRecordDialog::PopulateOrExchange(ShuttleGui& S)
|
||||
S.SetBorder(5);
|
||||
using Options = NumericTextCtrl::Options;
|
||||
/* i18n-hint a format string for hours, minutes, and seconds */
|
||||
auto strFormat = _("099 h 060 m 060 s");
|
||||
auto strFormat = XO("099 h 060 m 060 s");
|
||||
/* i18n-hint a format string for days, hours, minutes, and seconds */
|
||||
auto strFormat1 = _("099 days 024 h 060 m 060 s");
|
||||
auto strFormat1 = XO("099 days 024 h 060 m 060 s");
|
||||
|
||||
S.StartMultiColumn(2, wxCENTER);
|
||||
{
|
||||
|
@ -285,7 +285,7 @@ private:
|
||||
struct BuiltinFormatString
|
||||
{
|
||||
NumericFormatSymbol name;
|
||||
wxString formatStr;
|
||||
TranslatableString formatStr;
|
||||
|
||||
friend inline bool operator ==
|
||||
(const BuiltinFormatString &a, const BuiltinFormatString &b)
|
||||
@ -706,9 +706,10 @@ NumericConverter::NumericConverter(Type type,
|
||||
SetValue(value); // mValue got overridden to -1 in ControlsToValue(), reassign
|
||||
}
|
||||
|
||||
void NumericConverter::ParseFormatString( const wxString & untranslatedFormat)
|
||||
void NumericConverter::ParseFormatString(
|
||||
const TranslatableString & untranslatedFormat)
|
||||
{
|
||||
auto &format = ::wxGetTranslation( untranslatedFormat );
|
||||
auto &format = untranslatedFormat.Translation();
|
||||
|
||||
mPrefix = wxT("");
|
||||
mFields.clear();
|
||||
@ -1057,7 +1058,7 @@ bool NumericConverter::SetFormatName(const NumericFormatSymbol & formatName)
|
||||
SetFormatString(GetBuiltinFormat(formatName));
|
||||
}
|
||||
|
||||
bool NumericConverter::SetFormatString(const wxString & formatString)
|
||||
bool NumericConverter::SetFormatString(const TranslatableString & formatString)
|
||||
{
|
||||
if (mFormatString != formatString) {
|
||||
mFormatString = formatString;
|
||||
@ -1149,7 +1150,7 @@ NumericFormatSymbol NumericConverter::GetBuiltinName(const int index)
|
||||
return {};
|
||||
}
|
||||
|
||||
wxString NumericConverter::GetBuiltinFormat(const int index)
|
||||
TranslatableString NumericConverter::GetBuiltinFormat(const int index)
|
||||
{
|
||||
if (index >= 0 && index < GetNumBuiltins())
|
||||
return mBuiltinFormatStrings[index].formatStr;
|
||||
@ -1157,7 +1158,8 @@ wxString NumericConverter::GetBuiltinFormat(const int index)
|
||||
return {};
|
||||
}
|
||||
|
||||
wxString NumericConverter::GetBuiltinFormat(const NumericFormatSymbol &name)
|
||||
TranslatableString NumericConverter::GetBuiltinFormat(
|
||||
const NumericFormatSymbol &name)
|
||||
{
|
||||
int ndx =
|
||||
std::find( mBuiltinFormatStrings, mBuiltinFormatStrings + mNBuiltins,
|
||||
@ -1378,7 +1380,7 @@ bool NumericTextCtrl::SetFormatName(const NumericFormatSymbol & formatName)
|
||||
SetFormatString(GetBuiltinFormat(formatName));
|
||||
}
|
||||
|
||||
bool NumericTextCtrl::SetFormatString(const wxString & formatString)
|
||||
bool NumericTextCtrl::SetFormatString(const TranslatableString & formatString)
|
||||
{
|
||||
auto result =
|
||||
NumericConverter::SetFormatString(formatString);
|
||||
|
@ -79,7 +79,7 @@ public:
|
||||
virtual void ControlsToValue();
|
||||
|
||||
private:
|
||||
void ParseFormatString(const wxString & untranslatedFormat);
|
||||
void ParseFormatString(const TranslatableString & untranslatedFormat);
|
||||
|
||||
public:
|
||||
void PrintDebugInfo();
|
||||
@ -88,7 +88,7 @@ public:
|
||||
bool SetFormatName(const NumericFormatSymbol & formatName);
|
||||
|
||||
// returns true iff the format string really changed:
|
||||
bool SetFormatString(const wxString & formatString);
|
||||
bool SetFormatString(const TranslatableString & formatString);
|
||||
|
||||
void SetSampleRate(double sampleRate);
|
||||
void SetValue(double newValue);
|
||||
@ -105,8 +105,8 @@ public:
|
||||
|
||||
int GetNumBuiltins();
|
||||
NumericFormatSymbol GetBuiltinName(const int index);
|
||||
wxString GetBuiltinFormat(const int index);
|
||||
wxString GetBuiltinFormat(const NumericFormatSymbol & name);
|
||||
TranslatableString GetBuiltinFormat(const int index);
|
||||
TranslatableString GetBuiltinFormat(const NumericFormatSymbol & name);
|
||||
|
||||
// Adjust the value by the number "steps" in the active format.
|
||||
// Increment if "dir" is 1, decrement if "dir" is -1.
|
||||
@ -124,7 +124,7 @@ protected:
|
||||
double mMaxValue;
|
||||
double mInvalidValue;
|
||||
|
||||
wxString mFormatString;
|
||||
TranslatableString mFormatString;
|
||||
|
||||
std::vector<NumericField> mFields;
|
||||
wxString mPrefix;
|
||||
@ -158,7 +158,7 @@ class NumericTextCtrl final : public wxControl, public NumericConverter
|
||||
bool menuEnabled { true };
|
||||
bool hasInvalidValue { false };
|
||||
double invalidValue { -1.0 };
|
||||
wxString format {};
|
||||
TranslatableString format {};
|
||||
bool hasValue { false };
|
||||
double value{ -1.0 };
|
||||
|
||||
@ -170,7 +170,7 @@ class NumericTextCtrl final : public wxControl, public NumericConverter
|
||||
Options &InvalidValue (bool has, double v = -1.0)
|
||||
{ hasInvalidValue = has, invalidValue = v; return *this; }
|
||||
// use a custom format not in the tables:
|
||||
Options &Format (const wxString &f)
|
||||
Options &Format (const TranslatableString &f)
|
||||
{ format = f; return *this; }
|
||||
Options &Value (bool has, double v)
|
||||
{ hasValue = has, value = v; return *this; }
|
||||
@ -194,7 +194,7 @@ class NumericTextCtrl final : public wxControl, public NumericConverter
|
||||
void SetValue(double newValue);
|
||||
|
||||
// returns true iff the format string really changed:
|
||||
bool SetFormatString(const wxString & formatString);
|
||||
bool SetFormatString(const TranslatableString & formatString);
|
||||
|
||||
// returns true iff the format name really changed:
|
||||
bool SetFormatName(const NumericFormatSymbol & formatName);
|
||||
|
Loading…
x
Reference in New Issue
Block a user