remove usage of _T(); it's just confusing and it's not needed anymore; use wxTRANSLATE instead of wxGetTranslation for the 'Bad luck...' literal

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Francesco Montorsi
2009-01-16 15:32:59 +00:00
parent 02fd8b9b61
commit bf2d9237de
2 changed files with 39 additions and 35 deletions

View File

@@ -120,24 +120,24 @@ static const wxLanguage langIds[] =
// shown before we set the locale anyhow // shown before we set the locale anyhow
const wxString langNames[] = const wxString langNames[] =
{ {
_T("System default"), "System default",
_T("French"), "French",
_T("Italian"), "Italian",
_T("German"), "German",
_T("Russian"), "Russian",
_T("Bulgarian"), "Bulgarian",
_T("Czech"), "Czech",
_T("Polish"), "Polish",
_T("Swedish"), "Swedish",
#if wxUSE_UNICODE || defined(__WXMOTIF__) #if wxUSE_UNICODE || defined(__WXMOTIF__)
_T("Japanese"), "Japanese",
#endif #endif
#if wxUSE_UNICODE #if wxUSE_UNICODE
_T("Georgian"), "Georgian",
_T("English"), "English",
_T("English (U.S.)"), "English (U.S.)",
_T("Arabic"), "Arabic",
_T("Arabic (Egypt)") "Arabic (Egypt)"
#endif #endif
}; };
@@ -246,7 +246,7 @@ bool MyApp::OnInit()
#ifdef __LINUX__ #ifdef __LINUX__
{ {
wxLogNull noLog; wxLogNull noLog;
m_locale.AddCatalog(_T("fileutils")); m_locale.AddCatalog("fileutils");
} }
#endif #endif
@@ -370,9 +370,10 @@ void MyFrame::OnPlay(wxCommandEvent& WXUNUSED(event))
{ {
// this is a more implicit way to write _() but note that if you use it // this is a more implicit way to write _() but note that if you use it
// you must ensure that the strings get extracted in the message // you must ensure that the strings get extracted in the message
// catalog as by default xgettext won't do it (it only knows of _(), // catalog as by default xgettext won't do it; it only knows of _(),
// not wxGetTranslation()) // not of wxTRANSLATE(). As internat's readme.txt says you should thus
str = wxGetTranslation(_T("Bad luck! try again...")); // call xgettext with -kwxTRANSLATE.
str = wxTRANSLATE("Bad luck! try again...");
} }
wxMessageBox(str, _("Result"), wxOK | wxICON_INFORMATION); wxMessageBox(str, _("Result"), wxOK | wxICON_INFORMATION);
@@ -417,12 +418,13 @@ void MyFrame::OnTest1(wxCommandEvent& WXUNUSED(event))
const wxString title = _("Testing _() (gettext)"); const wxString title = _("Testing _() (gettext)");
wxTextEntryDialog d(this, _("Please enter text to translate"), wxTextEntryDialog d(this, _("Please enter text to translate"),
title, wxTRANSLATE("default value")); title, wxTRANSLATE("default value"));
if (d.ShowModal() == wxID_OK) if (d.ShowModal() == wxID_OK)
{ {
wxString v = d.GetValue(); wxString v = d.GetValue();
wxString s(title); wxString s(title);
s << _T("\n") << v << _T(" -> ") s << "\n" << v << " -> "
<< wxGetTranslation(v.c_str()) << _T("\n"); << wxGetTranslation(v.c_str()) << "\n";
wxMessageBox(s); wxMessageBox(s);
} }
} }
@@ -432,18 +434,19 @@ void MyFrame::OnTest2(wxCommandEvent& WXUNUSED(event))
const wxString title = _("Testing _N() (ngettext)"); const wxString title = _("Testing _N() (ngettext)");
wxTextEntryDialog d(this, wxTextEntryDialog d(this,
_("Please enter range for plural forms of \"n files deleted\" phrase"), _("Please enter range for plural forms of \"n files deleted\" phrase"),
title, _T("0-10")); title, "0-10");
if (d.ShowModal() == wxID_OK) if (d.ShowModal() == wxID_OK)
{ {
int first, last; int first, last;
wxSscanf(d.GetValue(), _T("%d-%d"), &first, &last); wxSscanf(d.GetValue(), "%d-%d", &first, &last);
wxString s(title); wxString s(title);
s << _T("\n"); s << "\n";
for (int n = first; n <= last; ++n) for (int n = first; n <= last; ++n)
{ {
s << n << _T(" ") << s << n << " " <<
wxPLURAL("file deleted", "files deleted", n) << wxPLURAL("file deleted", "files deleted", n) <<
_T("\n"); "\n";
} }
wxMessageBox(s); wxMessageBox(s);
} }
@@ -457,11 +460,12 @@ void MyFrame::OnTest3(wxCommandEvent& WXUNUSED(event))
wxTRANSLATE("line 2"), wxTRANSLATE("line 2"),
wxTRANSLATE("line 3"), wxTRANSLATE("line 3"),
}; };
wxString s(_("Testing wxTRANSLATE() (gettext_noop)")); wxString s(_("Testing wxTRANSLATE() (gettext_noop)"));
s << _T("\n"); s << "\n";
for (size_t i = 0; i < WXSIZEOF(lines); ++i) for (size_t i = 0; i < WXSIZEOF(lines); ++i)
{ {
s << lines[i] << _T(" -> ") << wxGetTranslation(lines[i]) << _T("\n"); s << lines[i] << " -> " << wxGetTranslation(lines[i]) << "\n";
} }
wxMessageBox(s); wxMessageBox(s);
} }

View File

@@ -44,7 +44,7 @@ A. First of all, you will need the GNU gettext tools (see the next question).
# generate the .po file for the program itself # generate the .po file for the program itself
# see `xgettext --help' for options, "-C" is important! # see `xgettext --help' for options, "-C" is important!
xgettext -C -n -k_ -kwxPLURAL:1,2 -kwxTRANSLATE -k_T -o internat.po ../internat.cpp xgettext -C -n -k_ -kwxPLURAL:1,2 -kwxTRANSLATE -o internat.po ../internat.cpp
# .po file for wxWidgets might be generated in the same way. An already # .po file for wxWidgets might be generated in the same way. An already
# generated wxstd.pot as well as translations for some languages can be # generated wxstd.pot as well as translations for some languages can be