+ if ( m_enumEncodings )
+ {
+ // is this a new charset?
+ int cs = lf->lfCharSet;
+ if ( m_charsets.Index(cs) == wxNOT_FOUND )
+ {
+ wxConstCast(this, wxFontEnumeratorHelper)->m_charsets.Add(cs);
+
+#if wxUSE_FONTMAP
+ wxFontEncoding enc = wxGetFontEncFromCharSet(cs);
+ return m_fontEnum->OnFontEncoding(lf->lfFaceName,
+ wxFontMapper::GetEncodingName(enc));
+#else // !wxUSE_FONTMAP
+ // Just use some unique and, hopefully, understandable, name.
+ return m_fontEnum->OnFontEncoding
+ (
+ lf->lfFaceName,
+ wxString::Format(wxS("Code page %d"), cs)
+ );
+#endif // wxUSE_FONTMAP/!wxUSE_FONTMAP
+ }
+ else
+ {
+ // continue enumeration
+ return true;
+ }
+ }
+