summaryrefslogtreecommitdiffstats
path: root/src/frontend/mame/language.h
diff options
context:
space:
mode:
author Vas Crabb <cuavas@users.noreply.github.com>2021-10-09 12:16:17 +1100
committer GitHub <noreply@github.com>2021-10-09 12:16:17 +1100
commit38082ccbee749d650ccea886ae376a5d1dec337c (patch)
tree9ba9a900ba826bda58832834278025ced17f42f5 /src/frontend/mame/language.h
parent34b3bf701098082feb9077db49987507962c1578 (diff)
Overdue internal UI enhancements (#8674)
* frontend: Added support for message context to localisations. * frontend: Added string_view versions of the message lookup functions. * frontend: Added a few more folder options to the internal UI. * emu/softlist.cpp: Use more appropriate containers. * Switched to Python 3 by default - this will become a requirement. * Updated msgfmt.py for message context support. * frontend: Show all software item info in the internal UI. * frontend: Search alternate titles in software selection menu. * 3rdparty/utf8proc: Updated to v2.6.1 (has several fixes). * frontend: Added software filters for common info fields. * frontend: Allow UI manager to hold onto persistent session data. * frontend: Cache software lists for eight machines. * frontend: Added support for loading localised system names. * frontend: Add UI for selecting localised system names.
Diffstat (limited to 'src/frontend/mame/language.h')
-rw-r--r--src/frontend/mame/language.h19
1 files changed, 14 insertions, 5 deletions
diff --git a/src/frontend/mame/language.h b/src/frontend/mame/language.h
index d688b2ba93a..93e3c491382 100644
--- a/src/frontend/mame/language.h
+++ b/src/frontend/mame/language.h
@@ -12,16 +12,25 @@
#pragma once
+#include <string_view>
+
+
//**************************************************************************
// LOCALIZATION SUPPORT
//**************************************************************************
-#define _(param) lang_translate(param)
-// Fake one to make possible using it in static text definitions, on those
-// lang_translate must be called afterwards
-#define __(param) param
+#define _(...) lang_translate(__VA_ARGS__)
+
+#define N_(msg) (msg)
+#define N_p(ctx, msg) (msg)
void load_translation(emu_options &option);
-const char *lang_translate(const char *word);
+
+char const *lang_translate(char const *message);
+std::string_view lang_translate(std::string_view message);
+
+char const *lang_translate(char const *context, char const *message);
+std::string_view lang_translate(char const *context, std::string_view message);
+std::string_view lang_translate(std::string_view context, std::string_view message);
#endif // MAME_FRONTEND_MAME_LANGUAGE_H