Define wxPLURAL regardless of WXINTL_NO_GETTEXT_MACRO

The purpose of WXINTL_NO_GETTEXT_MACRO is, as I understand it, to avoid
name clashes between _() and symbols with the same name introduced by
other libraries or compilers.

Although wxPLURAL has forever (15d0695 (added wxPLURAL() macro,
2005-06-01)) been conditionally defined, there is no similar need with it.
wxPLURAL has a longer name, and is wx-prefixed. The other, more recently
introduced translation macros are not conditionally defined, which makes
wxPLURAL inconsistent in this regard.

Closes #24943.
This commit is contained in:
Lauri Nurmi
2024-11-10 15:53:47 +01:00
committed by Vadim Zeitlin
parent b3751da48c
commit fd28beb2fa
+2 -1
View File
@@ -50,9 +50,10 @@ using wxTranslationsHashMap = std::unordered_map<wxString, wxString>;
#else
#define _(s) wxGetTranslation(wxASCII_STR(s))
#endif
#define wxPLURAL(sing, plur, n) wxGetTranslation((sing), (plur), n)
#endif
#define wxPLURAL(sing, plur, n) wxGetTranslation((sing), (plur), n)
// wx-specific macro for translating strings in the given context: if you use
// them, you need to also add
// --keyword="wxGETTEXT_IN_CONTEXT:1c,2" --keyword="wxGETTEXT_IN_CONTEXT_PLURAL:1c,2,3"