]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/fontdlgg.h
applied event speed up patch (752928)
[wxWidgets.git] / include / wx / generic / fontdlgg.h
index 742bf813ef5825fa4564a2ad1f43f197b2edce9a..fdbd69163e7a3bbd8d3d16f830457a91ccee0370 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        fontdlgg.h
+// Name:        wx/generic/fontdlgg.h
 // Purpose:     wxGenericFontDialog
 // Author:      Julian Smart
 // Modified by:
@@ -9,10 +9,10 @@
 // Licence:    wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifndef __FONTDLGH_G__
-#define __FONTDLGH_G__
+#ifndef _WX_GENERIC_FONTDLGG_H
+#define _WX_GENERIC_FONTDLGG_H
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
 #pragma interface "fontdlgg.h"
 #endif
 
@@ -31,59 +31,67 @@ class WXDLLEXPORT wxText;
 class WXDLLEXPORT wxCheckBox;
 class WXDLLEXPORT wxFontPreviewer;
 
-#define wxID_FONT_UNDERLINE 3000
-#define wxID_FONT_STYLE     3001
-#define wxID_FONT_WEIGHT    3002
-#define wxID_FONT_FAMILY    3003
-#define wxID_FONT_COLOUR    3004
-#define wxID_FONT_SIZE      3005
+enum
+{
+    wxID_FONT_UNDERLINE = 3000,
+    wxID_FONT_STYLE,
+    wxID_FONT_WEIGHT,
+    wxID_FONT_FAMILY,
+    wxID_FONT_COLOUR,
+    wxID_FONT_SIZE
+};
 
-class WXDLLEXPORT wxGenericFontDialog: public wxDialog
+class WXDLLEXPORT wxGenericFontDialog : public wxFontDialogBase
 {
- DECLARE_DYNAMIC_CLASS(wxGenericFontDialog)
- protected:
-  wxFontData fontData;
-  wxFont dialogFont;
-  wxWindow *dialogParent;
-
-  wxChoice *familyChoice;
-  wxChoice *styleChoice;
-  wxChoice *weightChoice;
-  wxChoice *colourChoice;
-  wxCheckBox *underLineCheckBox;
-  wxChoice   *pointSizeChoice;
-  wxFontPreviewer *m_previewer;
-  bool       m_useEvents;
-
-//  static bool fontDialogCancelled;
- public:
-  wxGenericFontDialog(void);
-  wxGenericFontDialog(wxWindow *parent, const wxFontData& data);
-  ~wxGenericFontDialog(void);
+public:
+    wxGenericFontDialog() { Init(); }
+    wxGenericFontDialog(wxWindow *parent, const wxFontData& data)
+        : wxFontDialogBase(parent, data) { Init(); }
+    virtual ~wxGenericFontDialog();
+
+    virtual int ShowModal();
+
+    // deprecated, for backwards compatibility only
+    wxGenericFontDialog(wxWindow *parent, const wxFontData *data)
+        : wxFontDialogBase(parent, data) { Init(); }
 
-  bool Create(wxWindow *parent, const wxFontData& data);
+    // Internal functions
+    void OnCloseWindow(wxCloseEvent& event);
 
-  int ShowModal(void);
+    virtual void CreateWidgets();
+    virtual void InitializeFont();
 
-  inline wxFontData& GetFontData(void) { return fontData; }
+    void OnChangeFont(wxCommandEvent& event);
 
-  // Internal functions
-  void OnCloseWindow(wxCloseEvent& event);
+protected:
+    // common part of all ctors
+    void Init();
 
-  virtual void CreateWidgets(void);
-  virtual void InitializeFont(void);
-  
-  void OnChangeFont(wxCommandEvent& event);
+    virtual bool DoCreate(wxWindow *parent);
 
-DECLARE_EVENT_TABLE()
+    wxFont dialogFont;
+
+    wxChoice *familyChoice;
+    wxChoice *styleChoice;
+    wxChoice *weightChoice;
+    wxChoice *colourChoice;
+    wxCheckBox *underLineCheckBox;
+    wxChoice   *pointSizeChoice;
+
+    wxFontPreviewer *m_previewer;
+    bool       m_useEvents;
+
+    //  static bool fontDialogCancelled;
+    DECLARE_EVENT_TABLE()
+    DECLARE_DYNAMIC_CLASS(wxGenericFontDialog)
 };
 
-const wxChar WXDLLEXPORT *wxFontFamilyIntToString(int family);
-const wxChar WXDLLEXPORT *wxFontWeightIntToString(int weight);
-const wxChar WXDLLEXPORT *wxFontStyleIntToString(int style);
-int WXDLLEXPORT wxFontFamilyStringToInt(wxChar *family);
-int WXDLLEXPORT wxFontWeightStringToInt(wxChar *weight);
-int WXDLLEXPORT wxFontStyleStringToInt(wxChar *style);
+WXDLLEXPORT const wxChar *wxFontFamilyIntToString(int family);
+WXDLLEXPORT const wxChar *wxFontWeightIntToString(int weight);
+WXDLLEXPORT const wxChar *wxFontStyleIntToString(int style);
+WXDLLEXPORT int wxFontFamilyStringToInt(wxChar *family);
+WXDLLEXPORT int wxFontWeightStringToInt(wxChar *weight);
+WXDLLEXPORT int wxFontStyleStringToInt(wxChar *style);
+
+#endif // _WX_GENERIC_FONTDLGG_H
 
-#endif