i18n headers
This commit is contained in:
parent
51f77f08b7
commit
5b20bc534f
@ -568,7 +568,7 @@ void BlueScreen(String detailMessage)
|
|||||||
String errorTitle = "ERROR";
|
String errorTitle = "ERROR";
|
||||||
String errorDetails = "Details: " + detailMessage;
|
String errorDetails = "Details: " + detailMessage;
|
||||||
String errorHelp = "An unrecoverable fault has occurred, please report the error by visiting the website below\n"
|
String errorHelp = "An unrecoverable fault has occurred, please report the error by visiting the website below\n"
|
||||||
SCHEME SERVER;
|
+ ByteString(SCHEME SERVER).FromAscii();
|
||||||
int currentY = 0, width, height;
|
int currentY = 0, width, height;
|
||||||
int errorWidth = 0;
|
int errorWidth = 0;
|
||||||
Graphics::textsize(errorHelp, errorWidth, height);
|
Graphics::textsize(errorHelp, errorWidth, height);
|
||||||
|
@ -35,7 +35,7 @@ public:
|
|||||||
int Build;
|
int Build;
|
||||||
int Time;
|
int Time;
|
||||||
BuildType Type;
|
BuildType Type;
|
||||||
UpdateInfo() : File(""), Changelog(""), Major(0), Minor(0), Build(0), Time(0), Type(Stable) {}
|
UpdateInfo() : File(""), Changelog(""_ascii), Major(0), Minor(0), Build(0), Time(0), Type(Stable) {}
|
||||||
UpdateInfo(int major, int minor, int build, ByteString file, String changelog, BuildType type) : File(file), Changelog(changelog), Major(major), Minor(minor), Build(build), Time(0), Type(type) {}
|
UpdateInfo(int major, int minor, int build, ByteString file, String changelog, BuildType type) : File(file), Changelog(changelog), Major(major), Minor(minor), Build(build), Time(0), Type(type) {}
|
||||||
UpdateInfo(int time, ByteString file, String changelog, BuildType type) : File(file), Changelog(changelog), Major(0), Minor(0), Build(0), Time(time), Type(type) {}
|
UpdateInfo(int time, ByteString file, String changelog, BuildType type) : File(file), Changelog(changelog), Major(0), Minor(0), Build(0), Time(time), Type(type) {}
|
||||||
};
|
};
|
||||||
|
@ -174,8 +174,8 @@ template<typename T, T... cs> inline String operator""_i18n()
|
|||||||
|
|
||||||
// Macros are hard
|
// Macros are hard
|
||||||
// Expand i18nMulti("a", "b") into i18nMultiImpl<decltype("a"_chars), decltype("b"_chars)>()
|
// Expand i18nMulti("a", "b") into i18nMultiImpl<decltype("a"_chars), decltype("b"_chars)>()
|
||||||
#define NARG_SELECT(_1, _2, _3, _4, _5, _6, _7, _8, _9, N, ...) N
|
#define NARG_SELECT(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, N, ...) N
|
||||||
#define NARG(...) NARG_SELECT(__VA_ARGS__, 9, 8, 7, 6, 5, 4, 3, 2, 1)
|
#define NARG(...) NARG_SELECT(__VA_ARGS__, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1)
|
||||||
#define i18nMultiNargH(N, ...) i18nMultiNarg(N, __VA_ARGS__)
|
#define i18nMultiNargH(N, ...) i18nMultiNarg(N, __VA_ARGS__)
|
||||||
#define i18nMultiNarg(N, ...) i18nMulti_##N(__VA_ARGS__)
|
#define i18nMultiNarg(N, ...) i18nMulti_##N(__VA_ARGS__)
|
||||||
#define i18nMulti(...) i18nMultiNargH(NARG(__VA_ARGS__), __VA_ARGS__)
|
#define i18nMulti(...) i18nMultiNargH(NARG(__VA_ARGS__), __VA_ARGS__)
|
||||||
@ -188,6 +188,9 @@ template<typename T, T... cs> inline String operator""_i18n()
|
|||||||
#define i18nMulti_7(s1, s2, s3, s4, s5, s6, s7) i18nMultiImpl<decltype(s1##_chars), decltype(s2##_chars), decltype(s3##_chars), decltype(s4##_chars), decltype(s5##_chars), decltype(s6##_chars), decltype(s7##_chars)>()
|
#define i18nMulti_7(s1, s2, s3, s4, s5, s6, s7) i18nMultiImpl<decltype(s1##_chars), decltype(s2##_chars), decltype(s3##_chars), decltype(s4##_chars), decltype(s5##_chars), decltype(s6##_chars), decltype(s7##_chars)>()
|
||||||
#define i18nMulti_8(s1, s2, s3, s4, s5, s6, s7, s8) i18nMultiImpl<decltype(s1##_chars), decltype(s2##_chars), decltype(s3##_chars), decltype(s4##_chars), decltype(s5##_chars), decltype(s6##_chars), decltype(s7##_chars), decltype(s8##_chars)>()
|
#define i18nMulti_8(s1, s2, s3, s4, s5, s6, s7, s8) i18nMultiImpl<decltype(s1##_chars), decltype(s2##_chars), decltype(s3##_chars), decltype(s4##_chars), decltype(s5##_chars), decltype(s6##_chars), decltype(s7##_chars), decltype(s8##_chars)>()
|
||||||
#define i18nMulti_9(s1, s2, s3, s4, s5, s6, s7, s8, s9) i18nMultiImpl<decltype(s1##_chars), decltype(s2##_chars), decltype(s3##_chars), decltype(s4##_chars), decltype(s5##_chars), decltype(s6##_chars), decltype(s7##_chars), decltype(s8##_chars), decltype(s9##_chars)>()
|
#define i18nMulti_9(s1, s2, s3, s4, s5, s6, s7, s8, s9) i18nMultiImpl<decltype(s1##_chars), decltype(s2##_chars), decltype(s3##_chars), decltype(s4##_chars), decltype(s5##_chars), decltype(s6##_chars), decltype(s7##_chars), decltype(s8##_chars), decltype(s9##_chars)>()
|
||||||
|
#define i18nMulti_10(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10) i18nMultiImpl<decltype(s1##_chars), decltype(s2##_chars), decltype(s3##_chars), decltype(s4##_chars), decltype(s5##_chars), decltype(s6##_chars), decltype(s7##_chars), decltype(s8##_chars), decltype(s9##_chars), decltype(s10##_chars)>()
|
||||||
|
#define i18nMulti_11(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11) i18nMultiImpl<decltype(s1##_chars), decltype(s2##_chars), decltype(s3##_chars), decltype(s4##_chars), decltype(s5##_chars), decltype(s6##_chars), decltype(s7##_chars), decltype(s8##_chars), decltype(s9##_chars), decltype(s10##_chars), decltype(s11##_chars)>()
|
||||||
|
#define i18nMulti_12(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12) i18nMultiImpl<decltype(s1##_chars), decltype(s2##_chars), decltype(s3##_chars), decltype(s4##_chars), decltype(s5##_chars), decltype(s6##_chars), decltype(s7##_chars), decltype(s8##_chars), decltype(s9##_chars), decltype(s10##_chars), decltype(s11##_chars), decltype(s12##_chars)>()
|
||||||
|
|
||||||
template<typename... Ts> std::array<String, sizeof...(Ts)> i18nMultiImpl()
|
template<typename... Ts> std::array<String, sizeof...(Ts)> i18nMultiImpl()
|
||||||
{
|
{
|
||||||
|
@ -15,10 +15,10 @@ class ConfirmPrompt : public ui::Window
|
|||||||
ResultCallback callback;
|
ResultCallback callback;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
ConfirmPrompt(String title, String message, ResultCallback callback_ = {}, String buttonText = String("Confirm"));
|
ConfirmPrompt(String title, String message, ResultCallback callback_ = {}, String buttonText = "Confirm"_i18n);
|
||||||
virtual ~ConfirmPrompt() = default;
|
virtual ~ConfirmPrompt() = default;
|
||||||
|
|
||||||
static bool Blocking(String title, String message, String buttonText = String("Confirm"));
|
static bool Blocking(String title, String message, String buttonText = "Confirm"_i18n);
|
||||||
void OnDraw() override;
|
void OnDraw() override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ public:
|
|||||||
std::vector<unsigned int> DisplayModes;
|
std::vector<unsigned int> DisplayModes;
|
||||||
unsigned int ColourMode;
|
unsigned int ColourMode;
|
||||||
|
|
||||||
RenderPreset(): Name(""), ColourMode(0) {}
|
RenderPreset(): Name(""_ascii), ColourMode(0) {}
|
||||||
RenderPreset(String name, std::vector<unsigned int> renderModes, std::vector<unsigned int> displayModes, unsigned int colourMode):
|
RenderPreset(String name, std::vector<unsigned int> renderModes, std::vector<unsigned int> displayModes, unsigned int colourMode):
|
||||||
Name(name),
|
Name(name),
|
||||||
RenderModes(renderModes),
|
RenderModes(renderModes),
|
||||||
|
@ -47,7 +47,7 @@ class SignTool: public Tool
|
|||||||
public:
|
public:
|
||||||
GameModel * gameModel;
|
GameModel * gameModel;
|
||||||
SignTool(GameModel *model):
|
SignTool(GameModel *model):
|
||||||
Tool(0, "SIGN", "Sign. Displays text. Click on a sign to edit it or anywhere else to place a new one.", 0, 0, 0, "DEFAULT_UI_SIGN", SignTool::GetIcon),
|
Tool(0, "SIGN"_ascii, "Sign. Displays text. Click on a sign to edit it or anywhere else to place a new one."_i18n, 0, 0, 0, "DEFAULT_UI_SIGN", SignTool::GetIcon),
|
||||||
gameModel(model)
|
gameModel(model)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@ -65,7 +65,7 @@ class SampleTool: public Tool
|
|||||||
GameModel * gameModel;
|
GameModel * gameModel;
|
||||||
public:
|
public:
|
||||||
SampleTool(GameModel *model):
|
SampleTool(GameModel *model):
|
||||||
Tool(0, "SMPL", "Sample an element on the screen.", 0, 0, 0, "DEFAULT_UI_SAMPLE", SampleTool::GetIcon),
|
Tool(0, "SMPL"_ascii, "Sample an element on the screen."_i18n, 0, 0, 0, "DEFAULT_UI_SAMPLE", SampleTool::GetIcon),
|
||||||
gameModel(model)
|
gameModel(model)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@ -82,7 +82,7 @@ class PropertyTool: public Tool
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
PropertyTool():
|
PropertyTool():
|
||||||
Tool(0, "PROP", "Property Drawing Tool. Use to alter the properties of elements in the field.", 0xfe, 0xa9, 0x00, "DEFAULT_UI_PROPERTY", NULL)
|
Tool(0, "PROP"_ascii, "Property Drawing Tool. Use to alter the properties of elements in the field."_i18n, 0xfe, 0xa9, 0x00, "DEFAULT_UI_PROPERTY", NULL)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
StructProperty::PropertyType propType;
|
StructProperty::PropertyType propType;
|
||||||
|
@ -84,9 +84,10 @@ public:
|
|||||||
|
|
||||||
class InvalidConversionException: public GeneralException
|
class InvalidConversionException: public GeneralException
|
||||||
{
|
{
|
||||||
|
static auto getErrorMsg() { return i18nMulti("Invalid conversion from ", " to "); }
|
||||||
public:
|
public:
|
||||||
InvalidConversionException(ValueType from_, ValueType to_):
|
InvalidConversionException(ValueType from_, ValueType to_):
|
||||||
GeneralException("Invalid conversion from " + AnyType::TypeName(from_).FromAscii() + " to " + AnyType::TypeName(to_).FromAscii()) {
|
GeneralException(getErrorMsg()[0] + AnyType::TypeName(from_).FromAscii() + getErrorMsg()[1] + AnyType::TypeName(to_).FromAscii()) {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user