#endif
#if wxUSE_GUI
+ #include "wx/fontutil.h"
#include "wx/msgdlg.h"
#include "wx/fontdlg.h"
#include "wx/choicdlg.h"
// ----------------------------------------------------------------------------
// the config paths we use
-static const wxChar* FONTMAPPER_ROOT_PATH = wxT("wxWindows/FontMapper");
+static const wxChar* FONTMAPPER_ROOT_PATH = wxT("/wxWindows/FontMapper");
static const wxChar* FONTMAPPER_CHARSET_PATH = wxT("Charsets");
static const wxChar* FONTMAPPER_CHARSET_ALIAS_PATH = wxT("Aliases");
#if wxUSE_GUI
// the descriptions for them
static const wxChar* gs_encodingDescs[] =
{
- wxTRANSLATE( "West European (ISO-8859-1/Latin 1)" ),
+ wxTRANSLATE( "Western European (ISO-8859-1/Latin 1)" ),
wxTRANSLATE( "Central European (ISO-8859-2/Latin 2)" ),
wxTRANSLATE( "Esperanto (ISO-8859-3)" ),
wxTRANSLATE( "Baltic (old) (ISO-8859-4)" ),
wxTRANSLATE( "Turkish (ISO-8859-9)" ),
wxTRANSLATE( "Nordic (ISO-8859-10)" ),
wxTRANSLATE( "Thai (ISO-8859-11)" ),
- wxTRANSLATE( "ISO-8859-12" ),
+ wxTRANSLATE( "Indian (ISO-8859-12)" ),
wxTRANSLATE( "Baltic (ISO-8859-13)" ),
- wxTRANSLATE( "ISO-8859-14" ),
- wxTRANSLATE( "West European new (ISO-8859-15/Latin 0)" ),
+ wxTRANSLATE( "Celtic (ISO-8859-14)" ),
+ wxTRANSLATE( "Western European with Euro (ISO-8859-15/Latin 0)" ),
wxTRANSLATE( "KOI8-R" ),
- wxTRANSLATE( "Windows Latin 2 (CP 1250)" ),
+ wxTRANSLATE( "Windows Central European (CP 1250)" ),
wxTRANSLATE( "Windows Cyrillic (CP 1251)" ),
- wxTRANSLATE( "Windows Latin 1 (CP 1252)" ),
+ wxTRANSLATE( "Windows Western European (CP 1252)" ),
wxTRANSLATE( "Windows Greek (CP 1253)" ),
wxTRANSLATE( "Windows Turkish (CP 1254)" ),
wxTRANSLATE( "Windows Hebrew (CP 1255)" ),
// if didn't find it there, try to reckognise it ourselves
if ( encoding == wxFONTENCODING_SYSTEM )
{
+ // discard the optional quotes
+ if ( !!cs )
+ {
+ if ( cs[0u] == _T('"') && cs.Last() == _T('"') )
+ {
+ cs = wxString(cs.c_str(), cs.length() - 1);
+ }
+ }
+
cs.MakeUpper();
if ( !cs || cs == wxT("US-ASCII") )
{
value -= 1250;
if ( value < wxFONTENCODING_CP12_MAX -
- wxFONTENCODING_CP1250 - 1 )
+ wxFONTENCODING_CP1250 )
{
// a valid Windows code page
value += wxFONTENCODING_CP1250;
wxFont font = retData.GetChosenFont();
*info = retData.EncodingInfo();
- info -> encoding = retData.GetEncoding();
+ info->encoding = retData.GetEncoding();
#if wxUSE_CONFIG
- // remember this in the config
+ // remember this in the config
if ( ChangePath(FONTMAPPER_FONT_FROM_ENCODING_PATH, &pathOld) )
{
GetConfig()->Write(configEntry, info->ToString());
// now try the default mappings:
wxFontEncodingArray equiv = wxEncodingConverter::GetAllEquivalents(encoding);
size_t count = equiv.GetCount();
- for ( size_t i = (equiv[0] == encoding) ? 1 : 0; i < count; i++ )
+ if ( count )
{
- if ( TestAltEncoding(configEntry, equiv[i], info) )
- return TRUE;
+ for ( size_t i = (equiv[0] == encoding) ? 1 : 0; i < count; i++ )
+ {
+ if ( TestAltEncoding(configEntry, equiv[i], info) )
+ return TRUE;
+ }
}
return FALSE;
info.facename = facename;
return wxTestFontEncoding(info);
}
- else
- return FALSE;
+
+ return FALSE;
}
#endif // wxUSE_GUI