]> git.saurik.com Git - wxWidgets.git/commitdiff
Interface updates for Phoenix. Add wxNativeFontInfo.
authorRobin Dunn <robin@alldunn.com>
Sun, 9 Oct 2011 01:28:20 +0000 (01:28 +0000)
committerRobin Dunn <robin@alldunn.com>
Sun, 9 Oct 2011 01:28:20 +0000 (01:28 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69326 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

interface/wx/event.h
interface/wx/font.h
interface/wx/fontutil.h [new file with mode: 0644]

index d66f50021796497f9548cfc047af5bdd9331f292..3d73cbedd6e2a83ab8af79b5cf54436450e70856 100644 (file)
@@ -318,6 +318,29 @@ public:
 
 
 
+/**
+   Helper class to temporarily change an event to not propagate.
+*/
+class wxPropagationDisabler
+{
+public:
+    wxPropagationDisabler(wxEvent& event);
+    ~wxPropagationDisabler();
+};
+
+
+/**
+   Helper class to temporarily lower propagation level.
+*/
+class wxPropagateOnce
+{
+public:
+    wxPropagateOnce(wxEvent& event);
+    ~wxPropagateOnce();
+};
+
+
+
 /**
     @class wxEvtHandler
 
index 7d8316ce922fa3551aea2649271544e0e793410c..c8de700f481b2e942089dd7b3aa82ace294c2bbc 100644 (file)
@@ -264,7 +264,6 @@ enum wxFontEncoding
 };
 
 
-
 /**
     @class wxFont
 
@@ -402,7 +401,12 @@ public:
         If @a fontdesc is invalid the font remains uninitialized, i.e. its IsOk() method
         will return @false.
      */
-    wxFont(const wxString& fontdesc);
+    wxFont(const wxString& nativeInfoString);
+
+    /**
+       Construct font from a native font info structure.
+    */
+    wxFont(const wxNativeFontInfo& nativeInfo);
 
     /**
         Destructor.
@@ -487,6 +491,8 @@ public:
     */
     wxString GetNativeFontInfoUserDesc() const;
 
+    const wxNativeFontInfo *GetNativeFontInfo() const;
+
     /**
         Gets the point size.
 
@@ -775,6 +781,8 @@ public:
     */
     bool SetNativeFontInfoUserDesc(const wxString& info);
 
+    void SetNativeFontInfo(const wxNativeFontInfo& info);
+        
     /**
         Sets the point size.
 
@@ -923,6 +931,11 @@ public:
                        int flags = wxFONTFLAG_DEFAULT,
                        const wxString& faceName = wxEmptyString,
                        wxFontEncoding encoding = wxFONTENCODING_DEFAULT);
+
+    
+    static wxFont *New(const wxNativeFontInfo& nativeInfo);
+    static wxFont *New(const wxString& nativeInfoString);
+
     //@}
 };
 
diff --git a/interface/wx/fontutil.h b/interface/wx/fontutil.h
new file mode 100644 (file)
index 0000000..1bb6d5f
--- /dev/null
@@ -0,0 +1,79 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        fontutil.h
+// Purpose:     interface of wxNativeFontInfo
+// Author:      wxWidgets team
+// RCS-ID:      $Id: $
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+
+/**
+    @class wxNativeFontInfo
+   
+    wxNativeFontInfo is platform-specific font representation: this class
+    should be considered as an opaque font description only used by the native
+    functions, the user code can only get the objects of this type from
+    somewhere and pass it somewhere else (possibly save them somewhere using
+    ToString() and restore them using FromString())
+
+    @library{wxcore}
+    @category{gdi}
+*/
+class wxNativeFontInfo
+{
+public:
+    wxNativeFontInfo();
+    wxNativeFontInfo(const wxNativeFontInfo& info);
+    wxNativeFontInfo( int size,
+                      wxFontFamily family,
+                      wxFontStyle style,
+                      wxFontWeight weight,
+                      bool underlined,
+                      const wxString& faceName,
+                      wxFontEncoding encoding);
+    ~wxNativeFontInfo();
+
+    wxNativeFontInfo& operator=(const wxNativeFontInfo& info);
+
+    void Init();
+    void Init(const wxNativeFontInfo& info);
+    void Init(int size,
+                  wxFontFamily family,
+                  wxFontStyle style,
+                  wxFontWeight weight,
+                  bool underlined,
+                  const wxString& faceName ,
+                  wxFontEncoding encoding);
+
+    void InitFromFont(const wxFont& font);
+    
+    int GetPointSize() const;
+    wxSize GetPixelSize() const;
+    wxFontStyle GetStyle() const;
+    wxFontWeight GetWeight() const;
+    bool GetUnderlined() const;
+    wxString GetFaceName() const;
+    wxFontFamily GetFamily() const;
+    wxFontEncoding GetEncoding() const;
+
+    void SetPointSize(int pointsize);
+    void SetPixelSize(const wxSize& pixelSize);
+    void SetStyle(wxFontStyle style);
+    void SetWeight(wxFontWeight weight);
+    void SetUnderlined(bool underlined);
+    bool SetFaceName(const wxString& facename);
+    void SetFamily(wxFontFamily family);
+    void SetEncoding(wxFontEncoding encoding);
+
+    void SetFaceName(const wxArrayString &facenames);
+
+    bool FromString(const wxString& s);
+    wxString ToString() const;
+
+    bool FromUserString(const wxString& s);
+    wxString ToUserString() const;
+};
+
+
+
+