]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/gdi.i
Changes needed to solve wxPython's OOR problem for the wxOGL shapes.
[wxWidgets.git] / wxPython / src / gdi.i
index 48cbbb569ba650e52ccc2ebcbe3933e2897bfdc0..5d0cdaf57e6edf1247cf438ab04a4532665acf36 100644 (file)
@@ -362,6 +362,10 @@ enum wxFontEncoding
     wxFONTENCODING_CP866,           // and another one
         // and for Windows
     wxFONTENCODING_CP874,           // WinThai
+    wxFONTENCODING_CP932,           // Japanese (shift-JIS)
+    wxFONTENCODING_CP936,           // Chiniese simplified (GB)
+    wxFONTENCODING_CP949,           // Korean (Hangul charset)
+    wxFONTENCODING_CP950,           // Chinese (traditional - Big5)
     wxFONTENCODING_CP1250,          // WinLatin2
     wxFONTENCODING_CP1251,          // WinCyrillic
     wxFONTENCODING_CP1252,          // WinLatin1
@@ -539,6 +543,8 @@ public:
                               bool underline = FALSE, const char* facename = NULL,
                               wxFontEncoding encoding = wxFONTENCODING_DEFAULT);
     void RemoveFont(wxFont *font);
+
+    int GetCount();
 };
 
 
@@ -624,6 +630,11 @@ public:
 
 
 
+
+// The list of ints for the dashes needs to exist for the life of the pen
+// so we make it part of the class to save it.  wxPyPen is aliased to wxPen
+// in _extras.py
+
 %{
 class wxPyPen : public wxPen {
 public:
@@ -632,13 +643,16 @@ public:
         { m_dash = NULL; }
     ~wxPyPen() {
         if (m_dash)
-            delete m_dash;
+            delete [] m_dash;
     }
 
     void SetDashes(int nb_dashes, const wxDash *dash) {
+        if (m_dash)
+            delete [] m_dash;
         m_dash = new wxDash[nb_dashes];
-        for (int i=0; i<nb_dashes; i++)
+        for (int i=0; i<nb_dashes; i++) {
             m_dash[i] = dash[i];
+        }
         wxPen::SetDashes(nb_dashes, m_dash);
     }
 
@@ -648,7 +662,6 @@ private:
 %}
 
 
-
 class wxPyPen : public wxPen {
 public:
     wxPyPen(wxColour& colour, int width=1, int style=wxSOLID);
@@ -659,12 +672,15 @@ public:
 
 
 
+
 class wxPenList : public wxObject {
 public:
 
     void AddPen(wxPen* pen);
     wxPen* FindOrCreatePen(const wxColour& colour, int width, int style);
     void RemovePen(wxPen* pen);
+
+    int GetCount();
 };
 
 
@@ -692,6 +708,8 @@ public:
     void AddBrush(wxBrush *brush);
     wxBrush * FindOrCreateBrush(const wxColour& colour, int style);
     void RemoveBrush(wxBrush *brush);
+
+    int GetCount();
 };
 
 //----------------------------------------------------------------------