X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c757b5fee093bbc3686f1e474316396b742fb888..e10972f6c1436a6dcd5427b4e3913bb0f398e045:/include/wx/fontpicker.h diff --git a/include/wx/fontpicker.h b/include/wx/fontpicker.h index 4175ba3f05..d08b9e850d 100644 --- a/include/wx/fontpicker.h +++ b/include/wx/fontpicker.h @@ -20,10 +20,10 @@ #include "wx/pickerbase.h" -class WXDLLIMPEXP_CORE wxFontPickerEvent; +class WXDLLIMPEXP_FWD_CORE wxFontPickerEvent; -extern WXDLLEXPORT_DATA(const wxChar) wxFontPickerWidgetNameStr[]; -extern WXDLLEXPORT_DATA(const wxChar) wxFontPickerCtrlNameStr[]; +extern WXDLLIMPEXP_DATA_CORE(const char) wxFontPickerWidgetNameStr[]; +extern WXDLLIMPEXP_DATA_CORE(const char) wxFontPickerCtrlNameStr[]; // ---------------------------------------------------------------------------- @@ -66,7 +66,11 @@ protected: // uses the currently selected font to draw the label of the button #define wxFNTP_USEFONT_FOR_LABEL 0x0010 -#if defined(__WXGTK24__) // since GTK > 2.4, there is GtkFontButton +#define wxFONTBTN_DEFAULT_STYLE \ + (wxFNTP_FONTDESC_AS_LABEL | wxFNTP_USEFONT_FOR_LABEL) + +// native version currently only exists in wxGTK2 +#if defined(__WXGTK20__) && !defined(__WXUNIVERSAL__) #include "wx/gtk/fontpicker.h" #define wxFontPickerWidget wxFontButton #else @@ -96,8 +100,7 @@ class WXDLLIMPEXP_CORE wxFontPickerCtrl : public wxPickerBase { public: wxFontPickerCtrl() - : m_bIgnoreNextTextCtrlUpdate(false), - m_nMaxPointSize(wxFNTP_MAXPOINT_SIZE) + : m_nMaxPointSize(wxFNTP_MAXPOINT_SIZE) { } @@ -106,21 +109,20 @@ public: wxFontPickerCtrl(wxWindow *parent, wxWindowID id, - const wxFont& initial = *wxNORMAL_FONT, + const wxFont& initial = wxNullFont, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxFNTP_DEFAULT_STYLE, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxFontPickerCtrlNameStr) - : m_bIgnoreNextTextCtrlUpdate(false), - m_nMaxPointSize(wxFNTP_MAXPOINT_SIZE) + : m_nMaxPointSize(wxFNTP_MAXPOINT_SIZE) { Create(parent, id, initial, pos, size, style, validator, name); } bool Create(wxWindow *parent, wxWindowID id, - const wxFont& initial = *wxNORMAL_FONT, + const wxFont& initial = wxNullFont, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxFNTP_DEFAULT_STYLE, @@ -161,9 +163,6 @@ protected: long GetPickerStyle(long style) const { return (style & (wxFNTP_FONTDESC_AS_LABEL|wxFNTP_USEFONT_FOR_LABEL)); } - // true if the next UpdateTextCtrl() call is to ignore - bool m_bIgnoreNextTextCtrlUpdate; - // the maximum pointsize allowed to the user unsigned int m_nMaxPointSize; @@ -176,9 +175,7 @@ private: // wxFontPickerEvent: used by wxFontPickerCtrl only // ---------------------------------------------------------------------------- -BEGIN_DECLARE_EVENT_TYPES() - DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_CORE, wxEVT_COMMAND_FONTPICKER_CHANGED, 1102) -END_DECLARE_EVENT_TYPES() +wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_CORE, wxEVT_COMMAND_FONTPICKER_CHANGED, wxFontPickerEvent ); class WXDLLIMPEXP_CORE wxFontPickerEvent : public wxCommandEvent { @@ -194,10 +191,13 @@ public: wxFont GetFont() const { return m_font; } void SetFont(const wxFont &c) { m_font = c; } + // default copy ctor, assignment operator and dtor are ok + virtual wxEvent *Clone() const { return new wxFontPickerEvent(*this); } + private: wxFont m_font; - DECLARE_DYNAMIC_CLASS_NO_COPY(wxFontPickerEvent) + DECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxFontPickerEvent) }; // ---------------------------------------------------------------------------- @@ -207,18 +207,11 @@ private: typedef void (wxEvtHandler::*wxFontPickerEventFunction)(wxFontPickerEvent&); #define wxFontPickerEventHandler(func) \ - (wxObjectEventFunction)(wxEventFunction)wxStaticCastEvent(wxFontPickerEventFunction, &func) + wxEVENT_HANDLER_CAST(wxFontPickerEventFunction, func) #define EVT_FONTPICKER_CHANGED(id, fn) \ wx__DECLARE_EVT1(wxEVT_COMMAND_FONTPICKER_CHANGED, id, wxFontPickerEventHandler(fn)) -#ifdef _WX_DEFINE_DATE_EVENTS_ - DEFINE_EVENT_TYPE(wxEVT_COMMAND_FONTPICKER_CHANGED) - - IMPLEMENT_DYNAMIC_CLASS(wxFontPickerEvent, wxCommandEvent) -#endif - - #endif // wxUSE_FONTPICKERCTRL