X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/06c545a70377ea25f2263b2d2fa432db67d8b619..530a7383f26e57b61748d76502229283462a0ede:/include/wx/intl.h?ds=inline diff --git a/include/wx/intl.h b/include/wx/intl.h index e18303f019..fd8960ae45 100644 --- a/include/wx/intl.h +++ b/include/wx/intl.h @@ -19,6 +19,8 @@ #include "wx/defs.h" #include "wx/string.h" +#if wxUSE_INTL + // ============================================================================ // global decls // ============================================================================ @@ -33,6 +35,10 @@ #define _(str) wxGetTranslation(_T(str)) #endif +// another one which just marks the strings for extraction, but doesn't +// perform the translation (use -kwxTRANSLATE with xgettext!) +#define wxTRANSLATE(str) _T(str) + // ---------------------------------------------------------------------------- // forward decls // ---------------------------------------------------------------------------- @@ -56,16 +62,18 @@ public: // call Init() if you use this ctor wxLocale(); // the ctor has a side effect of changing current locale - wxLocale(const wxChar *szName, // name (for messages) + wxLocale(const wxChar *szName, // name (for messages) const wxChar *szShort = (const wxChar *) NULL, // dir prefix (for msg files) const wxChar *szLocale = (const wxChar *) NULL, // locale (for setlocale) - bool bLoadDefault = TRUE) // preload wxstd.mo? - { Init(szName, szShort, szLocale, bLoadDefault); } + bool bLoadDefault = TRUE, // preload wxstd.mo? + bool bConvertEncoding = FALSE) // convert Win<->Unix if neccessary? + { Init(szName, szShort, szLocale, bLoadDefault, bConvertEncoding); } // the same as a function (returns TRUE on success) bool Init(const wxChar *szName, const wxChar *szShort = (const wxChar *) NULL, const wxChar *szLocale = (const wxChar *) NULL, - bool bLoadDefault = TRUE); + bool bLoadDefault = TRUE, + bool bConvertEncoding = FALSE); // restores old locale ~wxLocale(); @@ -111,13 +119,15 @@ private: // find catalog by name in a linked list, return NULL if !found wxMsgCatalog *FindCatalog(const wxChar *szDomain) const; - wxString m_strLocale, // this locale name - m_strShort; // short name for the locale + wxString m_strLocale, // this locale name + m_strShort; // short name for the locale - const wxChar *m_pszOldLocale; // previous locale from setlocale() - wxLocale *m_pOldLocale; // previous wxLocale + const wxChar *m_pszOldLocale; // previous locale from setlocale() + wxLocale *m_pOldLocale; // previous wxLocale - wxMsgCatalog *m_pMsgCat; // pointer to linked list of catalogs + wxMsgCatalog *m_pMsgCat; // pointer to linked list of catalogs + + bool m_bConvertEncoding; }; // ---------------------------------------------------------------------------- @@ -137,5 +147,25 @@ inline const wxMB2WXbuf wxGetTranslation(const wxChar *sz) return (const wxMB2WXbuf)sz; } +#else // !wxUSE_INTL + +// the macros should still be defined - otherwise compilation would fail + +#if !defined(WXINTL_NO_GETTEXT_MACRO) && !defined(_) + #define _(str) (str) +#endif + +#define wxTRANSLATE(str) _T(str) + +inline const wxChar *wxGetTranslation(const wxChar *sz) { return sz; } + +#endif // wxUSE_INTL/!wxUSE_INTL + +// define this one just in case it occurs somewhere (instead of preferred +// wxTRANSLATE) too +#if !defined(WXINTL_NO_GETTEXT_MACRO) && !defined(gettext_noop) + #define gettext_noop(str) _T(str) +#endif + #endif // _WX_INTLH__