Under MSW it is possible to restrict the native font dialog to showing only scalable fonts only, disallowing the raster fonts, so add a method to wxFontDialog exposing this functionality in wxWidgets API. Closes https://github.com/wxWidgets/wxWidgets/pull/1926 Closes #16988.
		
			
				
	
	
		
			83 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /////////////////////////////////////////////////////////////////////////////
 | |
| // Name:        wx/fontdata.h
 | |
| // Author:      Julian Smart
 | |
| // Copyright:   (c) Julian Smart
 | |
| // Licence:     wxWindows licence
 | |
| /////////////////////////////////////////////////////////////////////////////
 | |
| 
 | |
| #ifndef _WX_FONTDATA_H_
 | |
| #define _WX_FONTDATA_H_
 | |
| 
 | |
| #include "wx/font.h"
 | |
| #include "wx/colour.h"
 | |
| #include "wx/encinfo.h"
 | |
| 
 | |
| // Possible values for RestrictSelection() flags.
 | |
| enum
 | |
| {
 | |
|     wxFONTRESTRICT_NONE         = 0,
 | |
|     wxFONTRESTRICT_SCALABLE     = 1 << 0,
 | |
|     wxFONTRESTRICT_FIXEDPITCH   = 1 << 1
 | |
| };
 | |
| 
 | |
| class WXDLLIMPEXP_CORE wxFontData : public wxObject
 | |
| {
 | |
| public:
 | |
|     wxFontData();
 | |
|     virtual ~wxFontData();
 | |
| 
 | |
|     wxFontData(const wxFontData& data);
 | |
|     wxFontData& operator=(const wxFontData& data);
 | |
| 
 | |
|     void SetAllowSymbols(bool flag) { m_allowSymbols = flag; }
 | |
|     bool GetAllowSymbols() const { return m_allowSymbols; }
 | |
| 
 | |
|     void SetColour(const wxColour& colour) { m_fontColour = colour; }
 | |
|     const wxColour& GetColour() const { return m_fontColour; }
 | |
| 
 | |
|     void SetShowHelp(bool flag) { m_showHelp = flag; }
 | |
|     bool GetShowHelp() const { return m_showHelp; }
 | |
| 
 | |
|     void EnableEffects(bool flag) { m_enableEffects = flag; }
 | |
|     bool GetEnableEffects() const { return m_enableEffects; }
 | |
| 
 | |
|     void RestrictSelection(int flags) { m_restrictSelection = flags; }
 | |
|     int  GetRestrictSelection() const { return m_restrictSelection; }
 | |
| 
 | |
|     void SetInitialFont(const wxFont& font) { m_initialFont = font; }
 | |
|     wxFont GetInitialFont() const { return m_initialFont; }
 | |
| 
 | |
|     void SetChosenFont(const wxFont& font) { m_chosenFont = font; }
 | |
|     wxFont GetChosenFont() const { return m_chosenFont; }
 | |
| 
 | |
|     void SetRange(int minRange, int maxRange) { m_minSize = minRange; m_maxSize = maxRange; }
 | |
| 
 | |
|     // encoding info is split into 2 parts: the logical wxWin encoding
 | |
|     // (wxFontEncoding) and a structure containing the native parameters for
 | |
|     // it (wxNativeEncodingInfo)
 | |
|     wxFontEncoding GetEncoding() const { return m_encoding; }
 | |
|     void SetEncoding(wxFontEncoding encoding) { m_encoding = encoding; }
 | |
| 
 | |
|     wxNativeEncodingInfo& EncodingInfo() { return m_encodingInfo; }
 | |
| 
 | |
| 
 | |
|     // public for backwards compatibility only: don't use directly
 | |
|     wxColour        m_fontColour;
 | |
|     bool            m_showHelp;
 | |
|     bool            m_allowSymbols;
 | |
|     bool            m_enableEffects;
 | |
|     wxFont          m_initialFont;
 | |
|     wxFont          m_chosenFont;
 | |
|     int             m_minSize;
 | |
|     int             m_maxSize;
 | |
| 
 | |
| private:
 | |
|     wxFontEncoding       m_encoding;
 | |
|     wxNativeEncodingInfo m_encodingInfo;
 | |
|     int                  m_restrictSelection;
 | |
| 
 | |
|     wxDECLARE_DYNAMIC_CLASS(wxFontData);
 | |
| };
 | |
| 
 | |
| #endif // _WX_FONTDATA_H_
 |