delete m_data[i].Doc;
m_data[i].Doc = new wxXmlDocument;
}
- if (!stream || !m_data[i].Doc->Load(*stream, wxXML_IO_AUTO, encoding))
+ if (!stream || !m_data[i].Doc->Load(*stream, encoding))
{
wxLogError(_("Cannot load resources from file '%s'."),
m_data[i].File.c_str());
-wxString wxXmlResourceHandler::GetText(const wxString& param)
+wxString wxXmlResourceHandler::GetText(const wxString& param, bool translate)
{
- wxString str1;
+ wxString str1(GetParamValue(param));
wxString str2;
const wxChar *dt;
wxChar amp_char;
- if (m_resource->GetFlags() & wxXRC_USE_LOCALE)
- str1 = wxGetTranslation(GetParamValue(param));
- else
- str1 = GetParamValue(param);
-
- // VS: First version of XRC resources used $ instead of & (which is illegal in XML),
- // but later I realized that '_' fits this purpose much better (because
- // &File means "File with F underlined").
+ // VS: First version of XRC resources used $ instead of & (which is
+ // illegal in XML), but later I realized that '_' fits this purpose
+ // much better (because &File means "File with F underlined").
if (m_resource->CompareVersion(2,3,0,1) < 0)
amp_char = wxT('$');
else
else str2 << *dt;
}
- return str2;
+ if (translate && m_resource->GetFlags() & wxXRC_USE_LOCALE)
+ return wxGetTranslation(str2);
+ else
+ return str2;
+
}