2003-09-19 22:04:15 +00:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: wx/encinfo.h
|
|
|
|
// Purpose: declares wxNativeEncodingInfo struct
|
|
|
|
// Author: Vadim Zeitlin
|
|
|
|
// Modified by:
|
|
|
|
// Created: 19.09.2003 (extracted from wx/fontenc.h)
|
2004-05-23 14:56:36 +00:00
|
|
|
// Copyright: (c) 2003 Vadim Zeitlin <vadim@wxwidgets.org>
|
2004-05-23 20:53:33 +00:00
|
|
|
// Licence: wxWindows licence
|
2003-09-19 22:04:15 +00:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
#ifndef _WX_ENCINFO_H_
|
|
|
|
#define _WX_ENCINFO_H_
|
|
|
|
|
|
|
|
#include "wx/string.h"
|
|
|
|
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
// wxNativeEncodingInfo contains all encoding parameters for this platform
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
// This private structure specifies all the parameters needed to create a font
|
|
|
|
// with the given encoding on this platform.
|
|
|
|
//
|
|
|
|
// Under X, it contains the last 2 elements of the font specifications
|
|
|
|
// (registry and encoding).
|
|
|
|
//
|
2017-02-23 17:20:20 +00:00
|
|
|
// Under Windows, it contains a number which is one of predefined XXX_CHARSET
|
|
|
|
// values (https://msdn.microsoft.com/en-us/library/cc250412.aspx).
|
2003-09-19 22:04:15 +00:00
|
|
|
//
|
|
|
|
// Under all platforms it also contains a facename string which should be
|
|
|
|
// used, if not empty, to create fonts in this encoding (this is the only way
|
|
|
|
// to create a font of non-standard encoding (like KOI8) under Windows - the
|
|
|
|
// facename specifies the encoding then)
|
|
|
|
|
2008-03-26 15:06:00 +00:00
|
|
|
struct WXDLLIMPEXP_CORE wxNativeEncodingInfo
|
2003-09-19 22:04:15 +00:00
|
|
|
{
|
|
|
|
wxString facename; // may be empty meaning "any"
|
|
|
|
wxFontEncoding encoding; // so that we know what this struct represents
|
|
|
|
|
2004-06-23 15:01:33 +00:00
|
|
|
#if defined(__WXMSW__) || \
|
2014-08-24 01:50:11 +00:00
|
|
|
defined(__WXMAC__) || \
|
|
|
|
defined(__WXQT__)
|
2004-06-23 15:01:33 +00:00
|
|
|
|
2003-09-19 22:04:15 +00:00
|
|
|
wxNativeEncodingInfo()
|
|
|
|
: facename()
|
|
|
|
, encoding(wxFONTENCODING_SYSTEM)
|
|
|
|
, charset(0) /* ANSI_CHARSET */
|
|
|
|
{ }
|
|
|
|
|
|
|
|
int charset;
|
|
|
|
#elif defined(_WX_X_FONTLIKE)
|
|
|
|
wxString xregistry,
|
|
|
|
xencoding;
|
2007-01-22 14:05:07 +00:00
|
|
|
#elif defined(wxHAS_UTF8_FONTS)
|
|
|
|
// ports using UTF-8 for text don't need encoding information for fonts
|
2003-09-19 22:04:15 +00:00
|
|
|
#else
|
|
|
|
#error "Unsupported toolkit"
|
|
|
|
#endif
|
|
|
|
// this struct is saved in config by wxFontMapper, so it should know to
|
|
|
|
// serialise itself (implemented in platform-specific code)
|
|
|
|
bool FromString(const wxString& s);
|
|
|
|
wxString ToString() const;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // _WX_ENCINFO_H_
|
|
|
|
|