]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/mac/gdi.py
ShouldInheritColours
[wxWidgets.git] / wxPython / src / mac / gdi.py
index b0e8ffb3f1ef56df7d1ab3663bd38be3f9ab3c92..3bbd5f9bf4ee876afa5fe8dcba3fee73c2737ed1 100644 (file)
@@ -8,7 +8,6 @@ wx = core
 #---------------------------------------------------------------------------
 
 class GDIObject(core.Object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxGDIObject instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -46,11 +45,31 @@ _gdi.GDIObject_swigregister(GDIObjectPtr)
 #---------------------------------------------------------------------------
 
 class Colour(core.Object):
-    """"""
+    """
+    A colour is an object representing a combination of Red, Green, and Blue (RGB)
+    intensity values, and is used to determine drawing colours, window colours,
+    etc.  Valid RGB values are in the range 0 to 255.
+
+    In wxPython there are typemaps that will automatically convert from a colour
+    name, or from a "#RRGGBB" colour hex value string to a wx.Colour object when
+    calling C++ methods that expect a wxColour.  This means that the following are
+    all equivallent:
+
+        win.SetBackgroundColour(wxColour(0,0,255))
+        win.SetBackgroundColour("BLUE")
+        win.SetBackgroundColour("#0000FF")
+
+    You can retrieve the various current system colour settings with
+    wx.SystemSettings.GetColour.
+    """
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxColour instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(unsigned char red=0, unsigned char green=0, unsigned char blue=0) -> Colour"""
+        """
+        __init__(unsigned char red=0, unsigned char green=0, unsigned char blue=0) -> Colour
+
+        Constructs a colour from red, green and blue values.
+        """
         newobj = _gdi.new_Colour(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -62,48 +81,110 @@ class Colour(core.Object):
         except: pass
 
     def Red(*args, **kwargs):
-        """Red() -> unsigned char"""
+        """
+        Red() -> unsigned char
+
+        Returns the red intensity.
+        """
         return _gdi.Colour_Red(*args, **kwargs)
 
     def Green(*args, **kwargs):
-        """Green() -> unsigned char"""
+        """
+        Green() -> unsigned char
+
+        Returns the green intensity.
+        """
         return _gdi.Colour_Green(*args, **kwargs)
 
     def Blue(*args, **kwargs):
-        """Blue() -> unsigned char"""
+        """
+        Blue() -> unsigned char
+
+        Returns the blue intensity.
+        """
         return _gdi.Colour_Blue(*args, **kwargs)
 
     def Ok(*args, **kwargs):
-        """Ok() -> bool"""
+        """
+        Ok() -> bool
+
+        Returns True if the colour object is valid (the colour has been
+        initialised with RGB values).
+        """
         return _gdi.Colour_Ok(*args, **kwargs)
 
     def Set(*args, **kwargs):
-        """Set(unsigned char red, unsigned char green, unsigned char blue)"""
+        """
+        Set(unsigned char red, unsigned char green, unsigned char blue)
+
+        Sets the RGB intensity values.
+        """
         return _gdi.Colour_Set(*args, **kwargs)
 
-    def SetRBG(*args, **kwargs):
-        """SetRBG(unsigned long colRGB)"""
-        return _gdi.Colour_SetRBG(*args, **kwargs)
+    def SetRGB(*args, **kwargs):
+        """
+        SetRGB(unsigned long colRGB)
+
+        Sets the RGB intensity values from a packed RGB value.
+        """
+        return _gdi.Colour_SetRGB(*args, **kwargs)
+
+    def SetFromName(*args, **kwargs):
+        """
+        SetFromName(String colourName)
+
+        Sets the RGB intensity values using a colour name listed in wx.TheColourDatabase.
+        """
+        return _gdi.Colour_SetFromName(*args, **kwargs)
+
+    def GetPixel(*args, **kwargs):
+        """
+        GetPixel() -> long
+
+        Returns a pixel value which is platform-dependent. On Windows, a
+        COLORREF is returned. On X, an allocated pixel value is returned.
+        -1 is returned if the pixel is invalid (on X, unallocated).
+        """
+        return _gdi.Colour_GetPixel(*args, **kwargs)
 
     def __eq__(*args, **kwargs):
-        """__eq__(Colour colour) -> bool"""
+        """
+        __eq__(Colour colour) -> bool
+
+        Compare colours for equality
+        """
         return _gdi.Colour___eq__(*args, **kwargs)
 
     def __ne__(*args, **kwargs):
-        """__ne__(Colour colour) -> bool"""
+        """
+        __ne__(Colour colour) -> bool
+
+        Compare colours for inequality
+        """
         return _gdi.Colour___ne__(*args, **kwargs)
 
     def Get(*args, **kwargs):
-        """Get() -> PyObject"""
+        """
+        Get() -> (r, g, b)
+
+        Returns the RGB intensity values as a tuple.
+        """
         return _gdi.Colour_Get(*args, **kwargs)
 
+    def GetRGB(*args, **kwargs):
+        """
+        GetRGB() -> unsigned long
+
+        Return the colour as a packed RGB value
+        """
+        return _gdi.Colour_GetRGB(*args, **kwargs)
+
     asTuple = Get
     def __str__(self):                  return str(self.asTuple())
-    def __repr__(self):                 return 'wxColour' + str(self.asTuple())
+    def __repr__(self):                 return 'wx.Colour' + str(self.asTuple())
     def __nonzero__(self):              return self.Ok()
-    def __getinitargs__(self):          return ()
-    def __getstate__(self):             return self.asTuple()
-    def __setstate__(self, state):      self.Set(*state)
+    __safe_for_unpickling__ = True
+    def __reduce__(self):               return (Colour, self.Get())
 
 
 class ColourPtr(Colour):
@@ -114,19 +195,30 @@ class ColourPtr(Colour):
 _gdi.Colour_swigregister(ColourPtr)
 
 def NamedColour(*args, **kwargs):
-    """NamedColour(wxString colorName) -> Colour"""
+    """
+    NamedColour(String colorName) -> Colour
+
+    Constructs a colour object using a colour name listed in wx.TheColourDatabase.
+    """
     val = _gdi.new_NamedColour(*args, **kwargs)
     val.thisown = 1
     return val
 
 def ColourRGB(*args, **kwargs):
-    """ColourRGB(unsigned long colRGB) -> Colour"""
+    """
+    ColourRGB(unsigned long colRGB) -> Colour
+
+    Constructs a colour from a packed RGB value.
+    """
     val = _gdi.new_ColourRGB(*args, **kwargs)
     val.thisown = 1
     return val
 
+Color = Colour
+NamedColor = NamedColour
+ColorRGB = ColourRGB
+
 class Palette(GDIObject):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxPalette instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -146,13 +238,14 @@ class Palette(GDIObject):
         return _gdi.Palette_GetPixel(*args, **kwargs)
 
     def GetRGB(*args, **kwargs):
-        """GetRGB(int pixel, byte OUTPUT, byte OUTPUT, byte OUTPUT) -> bool"""
+        """GetRGB(int pixel) -> (R,G,B)"""
         return _gdi.Palette_GetRGB(*args, **kwargs)
 
     def Ok(*args, **kwargs):
         """Ok() -> bool"""
         return _gdi.Palette_Ok(*args, **kwargs)
 
+    def __nonzero__(self): return self.Ok() 
 
 class PalettePtr(Palette):
     def __init__(self, this):
@@ -164,7 +257,6 @@ _gdi.Palette_swigregister(PalettePtr)
 #---------------------------------------------------------------------------
 
 class Pen(GDIObject):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxPen instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -231,6 +323,14 @@ class Pen(GDIObject):
         """GetDashes() -> PyObject"""
         return _gdi.Pen_GetDashes(*args, **kwargs)
 
+    def __eq__(*args, **kwargs):
+        """__eq__(Pen other) -> bool"""
+        return _gdi.Pen___eq__(*args, **kwargs)
+
+    def __ne__(*args, **kwargs):
+        """__ne__(Pen other) -> bool"""
+        return _gdi.Pen___ne__(*args, **kwargs)
+
     def __nonzero__(self): return self.Ok() 
 
 class PenPtr(Pen):
@@ -241,7 +341,6 @@ class PenPtr(Pen):
 _gdi.Pen_swigregister(PenPtr)
 
 class PyPen(Pen):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxPyPen instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -272,11 +371,18 @@ Pen = PyPen
 #---------------------------------------------------------------------------
 
 class Brush(GDIObject):
-    """"""
+    """
+    A brush is a drawing tool for filling in areas. It is used for painting the
+    background of rectangles, ellipses, etc. It has a colour and a style.
+    """
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxBrush instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(Colour colour, int style=SOLID) -> Brush"""
+        """
+        __init__(Colour colour, int style=SOLID) -> Brush
+
+        Constructs a brush from a colour object and style.
+        """
         newobj = _gdi.new_Brush(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -333,11 +439,14 @@ class BrushPtr(Brush):
 _gdi.Brush_swigregister(BrushPtr)
 
 class Bitmap(GDIObject):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxBitmap instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(wxString name, wxBitmapType type=BITMAP_TYPE_ANY) -> Bitmap"""
+        """
+        __init__(String name, int type=BITMAP_TYPE_ANY) -> Bitmap
+
+        Loads a bitmap from a file.
+        """
         newobj = _gdi.new_Bitmap(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -353,43 +462,88 @@ class Bitmap(GDIObject):
         return _gdi.Bitmap_Ok(*args, **kwargs)
 
     def GetWidth(*args, **kwargs):
-        """GetWidth() -> int"""
+        """
+        GetWidth() -> int
+
+        Gets the width of the bitmap in pixels.
+        """
         return _gdi.Bitmap_GetWidth(*args, **kwargs)
 
     def GetHeight(*args, **kwargs):
-        """GetHeight() -> int"""
+        """
+        GetHeight() -> int
+
+        Gets the height of the bitmap in pixels.
+        """
         return _gdi.Bitmap_GetHeight(*args, **kwargs)
 
     def GetDepth(*args, **kwargs):
-        """GetDepth() -> int"""
+        """
+        GetDepth() -> int
+
+        Gets the colour depth of the bitmap. A value of 1 indicates a
+        monochrome bitmap.
+        """
         return _gdi.Bitmap_GetDepth(*args, **kwargs)
 
     def ConvertToImage(*args, **kwargs):
-        """ConvertToImage() -> Image"""
+        """
+        ConvertToImage() -> Image
+
+        Creates a platform-independent image from a platform-dependent bitmap. This
+        preserves mask information so that bitmaps and images can be converted back
+        and forth without loss in that respect.
+        """
         return _gdi.Bitmap_ConvertToImage(*args, **kwargs)
 
     def GetMask(*args, **kwargs):
-        """GetMask() -> Mask"""
+        """
+        GetMask() -> Mask
+
+        Gets the associated mask (if any) which may have been loaded from a file
+        or explpicitly set for the bitmap.
+        """
         return _gdi.Bitmap_GetMask(*args, **kwargs)
 
     def SetMask(*args, **kwargs):
-        """SetMask(Mask mask)"""
+        """
+        SetMask(Mask mask)
+
+        Sets the mask for this bitmap.
+        """
         return _gdi.Bitmap_SetMask(*args, **kwargs)
 
     def SetMaskColour(*args, **kwargs):
-        """SetMaskColour(Colour colour)"""
+        """
+        SetMaskColour(Colour colour)
+
+        Create a Mask based on a specified colour in the Bitmap.
+        """
         return _gdi.Bitmap_SetMaskColour(*args, **kwargs)
 
     def GetSubBitmap(*args, **kwargs):
-        """GetSubBitmap(Rect rect) -> Bitmap"""
+        """
+        GetSubBitmap(Rect rect) -> Bitmap
+
+        Returns a sub bitmap of the current one as long as the rect belongs entirely
+        to the bitmap. This function preserves bit depth and mask information.
+        """
         return _gdi.Bitmap_GetSubBitmap(*args, **kwargs)
 
     def SaveFile(*args, **kwargs):
-        """SaveFile(wxString name, wxBitmapType type, Palette palette=(wxPalette *) NULL) -> bool"""
+        """
+        SaveFile(String name, int type, Palette palette=(wxPalette *) NULL) -> bool
+
+        Saves a bitmap in the named file.
+        """
         return _gdi.Bitmap_SaveFile(*args, **kwargs)
 
     def LoadFile(*args, **kwargs):
-        """LoadFile(wxString name, wxBitmapType type) -> bool"""
+        """
+        LoadFile(String name, int type) -> bool
+
+        Loads a bitmap from a file
+        """
         return _gdi.Bitmap_LoadFile(*args, **kwargs)
 
     def CopyFromIcon(*args, **kwargs):
@@ -397,15 +551,27 @@ class Bitmap(GDIObject):
         return _gdi.Bitmap_CopyFromIcon(*args, **kwargs)
 
     def SetHeight(*args, **kwargs):
-        """SetHeight(int height)"""
+        """
+        SetHeight(int height)
+
+        Set the height property (does not affect the bitmap data).
+        """
         return _gdi.Bitmap_SetHeight(*args, **kwargs)
 
     def SetWidth(*args, **kwargs):
-        """SetWidth(int width)"""
+        """
+        SetWidth(int width)
+
+        Set the width property (does not affect the bitmap data).
+        """
         return _gdi.Bitmap_SetWidth(*args, **kwargs)
 
     def SetDepth(*args, **kwargs):
-        """SetDepth(int depth)"""
+        """
+        SetDepth(int depth)
+
+        Set the depth property (does not affect the bitmap data).
+        """
         return _gdi.Bitmap_SetDepth(*args, **kwargs)
 
     def __nonzero__(self): return self.Ok() 
@@ -418,41 +584,79 @@ class BitmapPtr(Bitmap):
 _gdi.Bitmap_swigregister(BitmapPtr)
 
 def EmptyBitmap(*args, **kwargs):
-    """EmptyBitmap(int width, int height, int depth=-1) -> Bitmap"""
+    """
+    EmptyBitmap(int width, int height, int depth=-1) -> Bitmap
+
+    Creates a new bitmap of the given size.  A depth of -1 indicates the depth of
+    the current screen or visual. Some platforms only support 1 for monochrome and
+    -1 for the current colour setting.
+    """
     val = _gdi.new_EmptyBitmap(*args, **kwargs)
     val.thisown = 1
     return val
 
 def BitmapFromIcon(*args, **kwargs):
-    """BitmapFromIcon(Icon icon) -> Bitmap"""
+    """
+    BitmapFromIcon(Icon icon) -> Bitmap
+
+    Create a new bitmap from an Icon object.
+    """
     val = _gdi.new_BitmapFromIcon(*args, **kwargs)
     val.thisown = 1
     return val
 
 def BitmapFromImage(*args, **kwargs):
-    """BitmapFromImage(Image image, int depth=-1) -> Bitmap"""
+    """
+    BitmapFromImage(Image image, int depth=-1) -> Bitmap
+
+    Creates bitmap object from the image. This has to be done to actually display
+    an image as you cannot draw an image directly on a window. The resulting
+    bitmap will use the provided colour depth (or that of the current system if
+    depth is -1) which entails that a colour reduction has to take place.
+    """
     val = _gdi.new_BitmapFromImage(*args, **kwargs)
     val.thisown = 1
     return val
 
 def BitmapFromXPMData(*args, **kwargs):
-    """BitmapFromXPMData(PyObject listOfStrings) -> Bitmap"""
+    """
+    BitmapFromXPMData(PyObject listOfStrings) -> Bitmap
+
+    Construct a Bitmap from a list of strings formatted as XPM data.
+    """
     val = _gdi.new_BitmapFromXPMData(*args, **kwargs)
     val.thisown = 1
     return val
 
 def BitmapFromBits(*args, **kwargs):
-    """BitmapFromBits(PyObject bits, int width, int height, int depth=1) -> Bitmap"""
+    """
+    BitmapFromBits(PyObject bits, int width, int height, int depth=1) -> Bitmap
+
+    Creates a bitmap from an array of bits.  You should only use this function for
+    monochrome bitmaps (depth 1) in portable programs: in this case the bits
+    parameter should contain an XBM image.  For other bit depths, the behaviour is
+    platform dependent.
+    """
     val = _gdi.new_BitmapFromBits(*args, **kwargs)
     val.thisown = 1
     return val
 
 class Mask(core.Object):
-    """"""
+    """
+    This class encapsulates a monochrome mask bitmap, where the masked area is
+    black and the unmasked area is white. When associated with a bitmap and drawn
+    in a device context, the unmasked area of the bitmap will be drawn, and the
+    masked area will not be drawn.
+    """
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxMask instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(Bitmap bitmap) -> Mask"""
+        """
+        __init__(Bitmap bitmap, Colour colour=NullColour) -> Mask
+
+        Constructs a mask from a bitmap and a colour in that bitmap that indicates
+        the transparent portions of the mask, by default BLACK is used.
+        """
         newobj = _gdi.new_Mask(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -465,18 +669,12 @@ class MaskPtr(Mask):
         self.__class__ = Mask
 _gdi.Mask_swigregister(MaskPtr)
 
-def MaskColour(*args, **kwargs):
-    """MaskColour(Bitmap bitmap, Colour colour) -> Mask"""
-    val = _gdi.new_MaskColour(*args, **kwargs)
-    val.thisown = 1
-    return val
-
+MaskColour = Mask 
 class Icon(GDIObject):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxIcon instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(wxString name, long flags, int desiredWidth=-1, int desiredHeight=-1) -> Icon"""
+        """__init__(String name, int type, int desiredWidth=-1, int desiredHeight=-1) -> Icon"""
         newobj = _gdi.new_Icon(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -553,11 +751,10 @@ def IconFromXPMData(*args, **kwargs):
     return val
 
 class IconLocation(object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxIconLocation instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(wxString filename=&wxPyEmptyString, int num=0) -> IconLocation"""
+        """__init__(String filename=&wxPyEmptyString, int num=0) -> IconLocation"""
         newobj = _gdi.new_IconLocation(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -574,11 +771,11 @@ class IconLocation(object):
 
     def __nonzero__(self): return self.Ok() 
     def SetFileName(*args, **kwargs):
-        """SetFileName(wxString filename)"""
+        """SetFileName(String filename)"""
         return _gdi.IconLocation_SetFileName(*args, **kwargs)
 
     def GetFileName(*args, **kwargs):
-        """GetFileName() -> wxString"""
+        """GetFileName() -> String"""
         return _gdi.IconLocation_GetFileName(*args, **kwargs)
 
     def SetIndex(*args, **kwargs):
@@ -598,7 +795,6 @@ class IconLocationPtr(IconLocation):
 _gdi.IconLocation_swigregister(IconLocationPtr)
 
 class IconBundle(object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxIconBundle instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -618,7 +814,7 @@ class IconBundle(object):
         return _gdi.IconBundle_AddIcon(*args, **kwargs)
 
     def AddIconFromFile(*args, **kwargs):
-        """AddIconFromFile(wxString file, long type)"""
+        """AddIconFromFile(String file, long type)"""
         return _gdi.IconBundle_AddIconFromFile(*args, **kwargs)
 
     def GetIcon(*args, **kwargs):
@@ -634,7 +830,7 @@ class IconBundlePtr(IconBundle):
 _gdi.IconBundle_swigregister(IconBundlePtr)
 
 def IconBundleFromFile(*args, **kwargs):
-    """IconBundleFromFile(wxString file, long type) -> IconBundle"""
+    """IconBundleFromFile(String file, long type) -> IconBundle"""
     val = _gdi.new_IconBundleFromFile(*args, **kwargs)
     val.thisown = 1
     return val
@@ -646,11 +842,30 @@ def IconBundleFromIcon(*args, **kwargs):
     return val
 
 class Cursor(GDIObject):
-    """"""
+    """
+    A cursor is a small bitmap usually used for denoting where the
+    mouse pointer is, with a picture that might indicate the
+    interpretation of a mouse click.
+
+    A single cursor object may be used in many windows (any subwindow
+    type). The wxWindows convention is to set the cursor for a
+    window, as in X, rather than to set it globally as in MS Windows,
+    although a global wx.SetCursor function is also available for use
+    on MS Windows.
+    """
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxCursor instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(wxString cursorName, long flags, int hotSpotX=0, int hotSpotY=0) -> Cursor"""
+        """
+        __init__(String cursorName, long type, int hotSpotX=0, int hotSpotY=0) -> Cursor
+
+        Construct a Cursor from a file.  Specify the type of file using
+        wx.BITAMP_TYPE* constants, and specify the hotspot if not using a
+        .cur file.
+
+        This cursor is not available on wxGTK, use wx.StockCursor,
+        wx.CursorFromImage, or wx.CursorFromBits instead.
+        """
         newobj = _gdi.new_Cursor(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -675,31 +890,42 @@ class CursorPtr(Cursor):
 _gdi.Cursor_swigregister(CursorPtr)
 
 def StockCursor(*args, **kwargs):
-    """StockCursor(int id) -> Cursor"""
+    """
+    StockCursor(int id) -> Cursor
+
+    Create a cursor using one of the stock cursors.  Note that not
+    all cursors are available on all platforms.
+    """
     val = _gdi.new_StockCursor(*args, **kwargs)
     val.thisown = 1
     return val
 
 def CursorFromImage(*args, **kwargs):
-    """CursorFromImage(Image image) -> Cursor"""
+    """
+    CursorFromImage(Image image) -> Cursor
+
+    Constructs a cursor from a wxImage. The cursor is monochrome,
+    colors with the RGB elements all greater than 127 will be
+    foreground, colors less than this background. The mask (if any)
+    will be used as transparent.
+
+    In MSW the foreground will be white and the background black. The
+    cursor is resized to 32x32 In GTK, the two most frequent colors
+    will be used for foreground and background. The cursor will be
+    displayed at the size of the image. On MacOS the cursor is
+    resized to 16x16 and currently only shown as black/white (mask
+    respected).
+    """
     val = _gdi.new_CursorFromImage(*args, **kwargs)
     val.thisown = 1
     return val
 
-def CursorFromBits(*args, **kwargs):
-    """CursorFromBits(PyObject bits, int width, int height, int hotSpotX=-1, 
-    int hotSpotY=-1, PyObject maskBits=0) -> Cursor"""
-    val = _gdi.new_CursorFromBits(*args, **kwargs)
-    val.thisown = 1
-    return val
-
 #---------------------------------------------------------------------------
 
 OutRegion = _gdi.OutRegion
 PartRegion = _gdi.PartRegion
 InRegion = _gdi.InRegion
 class Region(GDIObject):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxRegion instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -719,19 +945,19 @@ class Region(GDIObject):
         return _gdi.Region_Clear(*args, **kwargs)
 
     def Contains(*args, **kwargs):
-        """Contains(int x, int y) -> wxRegionContain"""
+        """Contains(int x, int y) -> int"""
         return _gdi.Region_Contains(*args, **kwargs)
 
     def ContainsPoint(*args, **kwargs):
-        """ContainsPoint(Point pt) -> wxRegionContain"""
+        """ContainsPoint(Point pt) -> int"""
         return _gdi.Region_ContainsPoint(*args, **kwargs)
 
     def ContainsRect(*args, **kwargs):
-        """ContainsRect(Rect rect) -> wxRegionContain"""
+        """ContainsRect(Rect rect) -> int"""
         return _gdi.Region_ContainsRect(*args, **kwargs)
 
     def ContainsRectDim(*args, **kwargs):
-        """ContainsRectDim(int x, int y, int w, int h) -> wxRegionContain"""
+        """ContainsRectDim(int x, int y, int w, int h) -> int"""
         return _gdi.Region_ContainsRectDim(*args, **kwargs)
 
     def GetBox(*args, **kwargs):
@@ -819,7 +1045,6 @@ def RegionFromPoints(*args, **kwargs):
     return val
 
 class RegionIterator(core.Object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxRegionIterator instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -962,6 +1187,48 @@ FONTENCODING_UTF16BE = _gdi.FONTENCODING_UTF16BE
 FONTENCODING_UTF16LE = _gdi.FONTENCODING_UTF16LE
 FONTENCODING_UTF32BE = _gdi.FONTENCODING_UTF32BE
 FONTENCODING_UTF32LE = _gdi.FONTENCODING_UTF32LE
+FONTENCODING_MACROMAN = _gdi.FONTENCODING_MACROMAN
+FONTENCODING_MACJAPANESE = _gdi.FONTENCODING_MACJAPANESE
+FONTENCODING_MACCHINESETRAD = _gdi.FONTENCODING_MACCHINESETRAD
+FONTENCODING_MACKOREAN = _gdi.FONTENCODING_MACKOREAN
+FONTENCODING_MACARABIC = _gdi.FONTENCODING_MACARABIC
+FONTENCODING_MACHEBREW = _gdi.FONTENCODING_MACHEBREW
+FONTENCODING_MACGREEK = _gdi.FONTENCODING_MACGREEK
+FONTENCODING_MACCYRILLIC = _gdi.FONTENCODING_MACCYRILLIC
+FONTENCODING_MACDEVANAGARI = _gdi.FONTENCODING_MACDEVANAGARI
+FONTENCODING_MACGURMUKHI = _gdi.FONTENCODING_MACGURMUKHI
+FONTENCODING_MACGUJARATI = _gdi.FONTENCODING_MACGUJARATI
+FONTENCODING_MACORIYA = _gdi.FONTENCODING_MACORIYA
+FONTENCODING_MACBENGALI = _gdi.FONTENCODING_MACBENGALI
+FONTENCODING_MACTAMIL = _gdi.FONTENCODING_MACTAMIL
+FONTENCODING_MACTELUGU = _gdi.FONTENCODING_MACTELUGU
+FONTENCODING_MACKANNADA = _gdi.FONTENCODING_MACKANNADA
+FONTENCODING_MACMALAJALAM = _gdi.FONTENCODING_MACMALAJALAM
+FONTENCODING_MACSINHALESE = _gdi.FONTENCODING_MACSINHALESE
+FONTENCODING_MACBURMESE = _gdi.FONTENCODING_MACBURMESE
+FONTENCODING_MACKHMER = _gdi.FONTENCODING_MACKHMER
+FONTENCODING_MACTHAI = _gdi.FONTENCODING_MACTHAI
+FONTENCODING_MACLAOTIAN = _gdi.FONTENCODING_MACLAOTIAN
+FONTENCODING_MACGEORGIAN = _gdi.FONTENCODING_MACGEORGIAN
+FONTENCODING_MACARMENIAN = _gdi.FONTENCODING_MACARMENIAN
+FONTENCODING_MACCHINESESIMP = _gdi.FONTENCODING_MACCHINESESIMP
+FONTENCODING_MACTIBETAN = _gdi.FONTENCODING_MACTIBETAN
+FONTENCODING_MACMONGOLIAN = _gdi.FONTENCODING_MACMONGOLIAN
+FONTENCODING_MACETHIOPIC = _gdi.FONTENCODING_MACETHIOPIC
+FONTENCODING_MACCENTRALEUR = _gdi.FONTENCODING_MACCENTRALEUR
+FONTENCODING_MACVIATNAMESE = _gdi.FONTENCODING_MACVIATNAMESE
+FONTENCODING_MACARABICEXT = _gdi.FONTENCODING_MACARABICEXT
+FONTENCODING_MACSYMBOL = _gdi.FONTENCODING_MACSYMBOL
+FONTENCODING_MACDINGBATS = _gdi.FONTENCODING_MACDINGBATS
+FONTENCODING_MACTURKISH = _gdi.FONTENCODING_MACTURKISH
+FONTENCODING_MACCROATIAN = _gdi.FONTENCODING_MACCROATIAN
+FONTENCODING_MACICELANDIC = _gdi.FONTENCODING_MACICELANDIC
+FONTENCODING_MACROMANIAN = _gdi.FONTENCODING_MACROMANIAN
+FONTENCODING_MACCELTIC = _gdi.FONTENCODING_MACCELTIC
+FONTENCODING_MACGAELIC = _gdi.FONTENCODING_MACGAELIC
+FONTENCODING_MACKEYBOARD = _gdi.FONTENCODING_MACKEYBOARD
+FONTENCODING_MACMIN = _gdi.FONTENCODING_MACMIN
+FONTENCODING_MACMAX = _gdi.FONTENCODING_MACMAX
 FONTENCODING_MAX = _gdi.FONTENCODING_MAX
 FONTENCODING_UTF16 = _gdi.FONTENCODING_UTF16
 FONTENCODING_UTF32 = _gdi.FONTENCODING_UTF32
@@ -972,7 +1239,6 @@ FONTENCODING_SHIFT_JIS = _gdi.FONTENCODING_SHIFT_JIS
 #---------------------------------------------------------------------------
 
 class NativeFontInfo(object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxNativeFontInfo instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -1000,11 +1266,11 @@ class NativeFontInfo(object):
         return _gdi.NativeFontInfo_GetPointSize(*args, **kwargs)
 
     def GetStyle(*args, **kwargs):
-        """GetStyle() -> wxFontStyle"""
+        """GetStyle() -> int"""
         return _gdi.NativeFontInfo_GetStyle(*args, **kwargs)
 
     def GetWeight(*args, **kwargs):
-        """GetWeight() -> wxFontWeight"""
+        """GetWeight() -> int"""
         return _gdi.NativeFontInfo_GetWeight(*args, **kwargs)
 
     def GetUnderlined(*args, **kwargs):
@@ -1012,15 +1278,15 @@ class NativeFontInfo(object):
         return _gdi.NativeFontInfo_GetUnderlined(*args, **kwargs)
 
     def GetFaceName(*args, **kwargs):
-        """GetFaceName() -> wxString"""
+        """GetFaceName() -> String"""
         return _gdi.NativeFontInfo_GetFaceName(*args, **kwargs)
 
     def GetFamily(*args, **kwargs):
-        """GetFamily() -> wxFontFamily"""
+        """GetFamily() -> int"""
         return _gdi.NativeFontInfo_GetFamily(*args, **kwargs)
 
     def GetEncoding(*args, **kwargs):
-        """GetEncoding() -> wxFontEncoding"""
+        """GetEncoding() -> int"""
         return _gdi.NativeFontInfo_GetEncoding(*args, **kwargs)
 
     def SetPointSize(*args, **kwargs):
@@ -1028,11 +1294,11 @@ class NativeFontInfo(object):
         return _gdi.NativeFontInfo_SetPointSize(*args, **kwargs)
 
     def SetStyle(*args, **kwargs):
-        """SetStyle(wxFontStyle style)"""
+        """SetStyle(int style)"""
         return _gdi.NativeFontInfo_SetStyle(*args, **kwargs)
 
     def SetWeight(*args, **kwargs):
-        """SetWeight(wxFontWeight weight)"""
+        """SetWeight(int weight)"""
         return _gdi.NativeFontInfo_SetWeight(*args, **kwargs)
 
     def SetUnderlined(*args, **kwargs):
@@ -1040,35 +1306,35 @@ class NativeFontInfo(object):
         return _gdi.NativeFontInfo_SetUnderlined(*args, **kwargs)
 
     def SetFaceName(*args, **kwargs):
-        """SetFaceName(wxString facename)"""
+        """SetFaceName(String facename)"""
         return _gdi.NativeFontInfo_SetFaceName(*args, **kwargs)
 
     def SetFamily(*args, **kwargs):
-        """SetFamily(wxFontFamily family)"""
+        """SetFamily(int family)"""
         return _gdi.NativeFontInfo_SetFamily(*args, **kwargs)
 
     def SetEncoding(*args, **kwargs):
-        """SetEncoding(wxFontEncoding encoding)"""
+        """SetEncoding(int encoding)"""
         return _gdi.NativeFontInfo_SetEncoding(*args, **kwargs)
 
     def FromString(*args, **kwargs):
-        """FromString(wxString s) -> bool"""
+        """FromString(String s) -> bool"""
         return _gdi.NativeFontInfo_FromString(*args, **kwargs)
 
     def ToString(*args, **kwargs):
-        """ToString() -> wxString"""
+        """ToString() -> String"""
         return _gdi.NativeFontInfo_ToString(*args, **kwargs)
 
     def __str__(*args, **kwargs):
-        """__str__() -> wxString"""
+        """__str__() -> String"""
         return _gdi.NativeFontInfo___str__(*args, **kwargs)
 
     def FromUserString(*args, **kwargs):
-        """FromUserString(wxString s) -> bool"""
+        """FromUserString(String s) -> bool"""
         return _gdi.NativeFontInfo_FromUserString(*args, **kwargs)
 
     def ToUserString(*args, **kwargs):
-        """ToUserString() -> wxString"""
+        """ToUserString() -> String"""
         return _gdi.NativeFontInfo_ToUserString(*args, **kwargs)
 
 
@@ -1080,7 +1346,6 @@ class NativeFontInfoPtr(NativeFontInfo):
 _gdi.NativeFontInfo_swigregister(NativeFontInfoPtr)
 
 class NativeEncodingInfo(object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxNativeEncodingInfo instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     facename = property(_gdi.NativeEncodingInfo_facename_get, _gdi.NativeEncodingInfo_facename_set)
@@ -1098,11 +1363,11 @@ class NativeEncodingInfo(object):
         except: pass
 
     def FromString(*args, **kwargs):
-        """FromString(wxString s) -> bool"""
+        """FromString(String s) -> bool"""
         return _gdi.NativeEncodingInfo_FromString(*args, **kwargs)
 
     def ToString(*args, **kwargs):
-        """ToString() -> wxString"""
+        """ToString() -> String"""
         return _gdi.NativeEncodingInfo_ToString(*args, **kwargs)
 
 
@@ -1115,7 +1380,7 @@ _gdi.NativeEncodingInfo_swigregister(NativeEncodingInfoPtr)
 
 
 def GetNativeFontEncoding(*args, **kwargs):
-    """GetNativeFontEncoding(wxFontEncoding encoding) -> NativeEncodingInfo"""
+    """GetNativeFontEncoding(int encoding) -> NativeEncodingInfo"""
     return _gdi.GetNativeFontEncoding(*args, **kwargs)
 
 def TestFontEncoding(*args, **kwargs):
@@ -1124,7 +1389,6 @@ def TestFontEncoding(*args, **kwargs):
 #---------------------------------------------------------------------------
 
 class FontMapper(object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxFontMapper instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -1140,59 +1404,58 @@ class FontMapper(object):
         except: pass
 
     def Get(*args, **kwargs):
-        """FontMapper.Get() -> FontMapper"""
+        """Get() -> FontMapper"""
         return _gdi.FontMapper_Get(*args, **kwargs)
 
     Get = staticmethod(Get)
     def Set(*args, **kwargs):
-        """FontMapper.Set(FontMapper mapper) -> FontMapper"""
+        """Set(FontMapper mapper) -> FontMapper"""
         return _gdi.FontMapper_Set(*args, **kwargs)
 
     Set = staticmethod(Set)
     def CharsetToEncoding(*args, **kwargs):
-        """CharsetToEncoding(wxString charset, bool interactive=True) -> wxFontEncoding"""
+        """CharsetToEncoding(String charset, bool interactive=True) -> int"""
         return _gdi.FontMapper_CharsetToEncoding(*args, **kwargs)
 
     def GetSupportedEncodingsCount(*args, **kwargs):
-        """FontMapper.GetSupportedEncodingsCount() -> size_t"""
+        """GetSupportedEncodingsCount() -> size_t"""
         return _gdi.FontMapper_GetSupportedEncodingsCount(*args, **kwargs)
 
     GetSupportedEncodingsCount = staticmethod(GetSupportedEncodingsCount)
     def GetEncoding(*args, **kwargs):
-        """FontMapper.GetEncoding(size_t n) -> wxFontEncoding"""
+        """GetEncoding(size_t n) -> int"""
         return _gdi.FontMapper_GetEncoding(*args, **kwargs)
 
     GetEncoding = staticmethod(GetEncoding)
     def GetEncodingName(*args, **kwargs):
-        """FontMapper.GetEncodingName(wxFontEncoding encoding) -> wxString"""
+        """GetEncodingName(int encoding) -> String"""
         return _gdi.FontMapper_GetEncodingName(*args, **kwargs)
 
     GetEncodingName = staticmethod(GetEncodingName)
     def GetEncodingDescription(*args, **kwargs):
-        """FontMapper.GetEncodingDescription(wxFontEncoding encoding) -> wxString"""
+        """GetEncodingDescription(int encoding) -> String"""
         return _gdi.FontMapper_GetEncodingDescription(*args, **kwargs)
 
     GetEncodingDescription = staticmethod(GetEncodingDescription)
     def SetConfig(*args, **kwargs):
-        """SetConfig(wxConfigBase config)"""
+        """SetConfig(ConfigBase config)"""
         return _gdi.FontMapper_SetConfig(*args, **kwargs)
 
     def SetConfigPath(*args, **kwargs):
-        """SetConfigPath(wxString prefix)"""
+        """SetConfigPath(String prefix)"""
         return _gdi.FontMapper_SetConfigPath(*args, **kwargs)
 
     def GetDefaultConfigPath(*args, **kwargs):
-        """FontMapper.GetDefaultConfigPath() -> wxString"""
+        """GetDefaultConfigPath() -> String"""
         return _gdi.FontMapper_GetDefaultConfigPath(*args, **kwargs)
 
     GetDefaultConfigPath = staticmethod(GetDefaultConfigPath)
     def GetAltForEncoding(*args, **kwargs):
-        """GetAltForEncoding(wxFontEncoding encoding, wxString facename=wxPyEmptyString, 
-    bool interactive=True) -> PyObject"""
+        """GetAltForEncoding(int encoding, String facename=EmptyString, bool interactive=True) -> PyObject"""
         return _gdi.FontMapper_GetAltForEncoding(*args, **kwargs)
 
     def IsEncodingAvailable(*args, **kwargs):
-        """IsEncodingAvailable(wxFontEncoding encoding, wxString facename=wxPyEmptyString) -> bool"""
+        """IsEncodingAvailable(int encoding, String facename=EmptyString) -> bool"""
         return _gdi.FontMapper_IsEncodingAvailable(*args, **kwargs)
 
     def SetDialogParent(*args, **kwargs):
@@ -1200,7 +1463,7 @@ class FontMapper(object):
         return _gdi.FontMapper_SetDialogParent(*args, **kwargs)
 
     def SetDialogTitle(*args, **kwargs):
-        """SetDialogTitle(wxString title)"""
+        """SetDialogTitle(String title)"""
         return _gdi.FontMapper_SetDialogTitle(*args, **kwargs)
 
 
@@ -1224,31 +1487,32 @@ def FontMapper_GetSupportedEncodingsCount(*args, **kwargs):
     return _gdi.FontMapper_GetSupportedEncodingsCount(*args, **kwargs)
 
 def FontMapper_GetEncoding(*args, **kwargs):
-    """FontMapper_GetEncoding(size_t n) -> wxFontEncoding"""
+    """FontMapper_GetEncoding(size_t n) -> int"""
     return _gdi.FontMapper_GetEncoding(*args, **kwargs)
 
 def FontMapper_GetEncodingName(*args, **kwargs):
-    """FontMapper_GetEncodingName(wxFontEncoding encoding) -> wxString"""
+    """FontMapper_GetEncodingName(int encoding) -> String"""
     return _gdi.FontMapper_GetEncodingName(*args, **kwargs)
 
 def FontMapper_GetEncodingDescription(*args, **kwargs):
-    """FontMapper_GetEncodingDescription(wxFontEncoding encoding) -> wxString"""
+    """FontMapper_GetEncodingDescription(int encoding) -> String"""
     return _gdi.FontMapper_GetEncodingDescription(*args, **kwargs)
 
 def FontMapper_GetDefaultConfigPath(*args, **kwargs):
-    """FontMapper_GetDefaultConfigPath() -> wxString"""
+    """FontMapper_GetDefaultConfigPath() -> String"""
     return _gdi.FontMapper_GetDefaultConfigPath(*args, **kwargs)
 
 #---------------------------------------------------------------------------
 
 class Font(GDIObject):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxFont instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(int pointSize, int family, int style, int weight, bool underline=False, 
-    wxString face=wxPyEmptyString, 
-    wxFontEncoding encoding=FONTENCODING_DEFAULT) -> Font"""
+        """
+        __init__(int pointSize, int family, int style, int weight, bool underline=False, 
+            String face=EmptyString, 
+            int encoding=FONTENCODING_DEFAULT) -> Font
+        """
         newobj = _gdi.new_Font(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -1265,11 +1529,11 @@ class Font(GDIObject):
 
     def __nonzero__(self): return self.Ok() 
     def __eq__(*args, **kwargs):
-        """__eq__(Font font) -> bool"""
+        """__eq__(Font other) -> bool"""
         return _gdi.Font___eq__(*args, **kwargs)
 
     def __ne__(*args, **kwargs):
-        """__ne__(Font font) -> bool"""
+        """__ne__(Font other) -> bool"""
         return _gdi.Font___ne__(*args, **kwargs)
 
     def GetPointSize(*args, **kwargs):
@@ -1293,11 +1557,11 @@ class Font(GDIObject):
         return _gdi.Font_GetUnderlined(*args, **kwargs)
 
     def GetFaceName(*args, **kwargs):
-        """GetFaceName() -> wxString"""
+        """GetFaceName() -> String"""
         return _gdi.Font_GetFaceName(*args, **kwargs)
 
     def GetEncoding(*args, **kwargs):
-        """GetEncoding() -> wxFontEncoding"""
+        """GetEncoding() -> int"""
         return _gdi.Font_GetEncoding(*args, **kwargs)
 
     def GetNativeFontInfo(*args, **kwargs):
@@ -1309,11 +1573,11 @@ class Font(GDIObject):
         return _gdi.Font_IsFixedWidth(*args, **kwargs)
 
     def GetNativeFontInfoDesc(*args, **kwargs):
-        """GetNativeFontInfoDesc() -> wxString"""
+        """GetNativeFontInfoDesc() -> String"""
         return _gdi.Font_GetNativeFontInfoDesc(*args, **kwargs)
 
     def GetNativeFontInfoUserDesc(*args, **kwargs):
-        """GetNativeFontInfoUserDesc() -> wxString"""
+        """GetNativeFontInfoUserDesc() -> String"""
         return _gdi.Font_GetNativeFontInfoUserDesc(*args, **kwargs)
 
     def SetPointSize(*args, **kwargs):
@@ -1333,7 +1597,7 @@ class Font(GDIObject):
         return _gdi.Font_SetWeight(*args, **kwargs)
 
     def SetFaceName(*args, **kwargs):
-        """SetFaceName(wxString faceName)"""
+        """SetFaceName(String faceName)"""
         return _gdi.Font_SetFaceName(*args, **kwargs)
 
     def SetUnderlined(*args, **kwargs):
@@ -1341,7 +1605,7 @@ class Font(GDIObject):
         return _gdi.Font_SetUnderlined(*args, **kwargs)
 
     def SetEncoding(*args, **kwargs):
-        """SetEncoding(wxFontEncoding encoding)"""
+        """SetEncoding(int encoding)"""
         return _gdi.Font_SetEncoding(*args, **kwargs)
 
     def SetNativeFontInfo(*args, **kwargs):
@@ -1349,23 +1613,23 @@ class Font(GDIObject):
         return _gdi.Font_SetNativeFontInfo(*args, **kwargs)
 
     def SetNativeFontInfoFromString(*args, **kwargs):
-        """SetNativeFontInfoFromString(wxString info)"""
+        """SetNativeFontInfoFromString(String info)"""
         return _gdi.Font_SetNativeFontInfoFromString(*args, **kwargs)
 
     def SetNativeFontInfoUserDesc(*args, **kwargs):
-        """SetNativeFontInfoUserDesc(wxString info)"""
+        """SetNativeFontInfoUserDesc(String info)"""
         return _gdi.Font_SetNativeFontInfoUserDesc(*args, **kwargs)
 
     def GetFamilyString(*args, **kwargs):
-        """GetFamilyString() -> wxString"""
+        """GetFamilyString() -> String"""
         return _gdi.Font_GetFamilyString(*args, **kwargs)
 
     def GetStyleString(*args, **kwargs):
-        """GetStyleString() -> wxString"""
+        """GetStyleString() -> String"""
         return _gdi.Font_GetStyleString(*args, **kwargs)
 
     def GetWeightString(*args, **kwargs):
-        """GetWeightString() -> wxString"""
+        """GetWeightString() -> String"""
         return _gdi.Font_GetWeightString(*args, **kwargs)
 
     def SetNoAntiAliasing(*args, **kwargs):
@@ -1377,12 +1641,12 @@ class Font(GDIObject):
         return _gdi.Font_GetNoAntiAliasing(*args, **kwargs)
 
     def GetDefaultEncoding(*args, **kwargs):
-        """Font.GetDefaultEncoding() -> wxFontEncoding"""
+        """GetDefaultEncoding() -> int"""
         return _gdi.Font_GetDefaultEncoding(*args, **kwargs)
 
     GetDefaultEncoding = staticmethod(GetDefaultEncoding)
     def SetDefaultEncoding(*args, **kwargs):
-        """Font.SetDefaultEncoding(wxFontEncoding encoding)"""
+        """SetDefaultEncoding(int encoding)"""
         return _gdi.Font_SetDefaultEncoding(*args, **kwargs)
 
     SetDefaultEncoding = staticmethod(SetDefaultEncoding)
@@ -1401,30 +1665,31 @@ def FontFromNativeInfo(*args, **kwargs):
     return val
 
 def FontFromNativeInfoString(*args, **kwargs):
-    """FontFromNativeInfoString(wxString info) -> Font"""
+    """FontFromNativeInfoString(String info) -> Font"""
     val = _gdi.new_FontFromNativeInfoString(*args, **kwargs)
     val.thisown = 1
     return val
 
 def Font2(*args, **kwargs):
-    """Font2(int pointSize, wxFontFamily family, int flags=FONTFLAG_DEFAULT, 
-    wxString face=wxPyEmptyString, wxFontEncoding encoding=FONTENCODING_DEFAULT) -> Font"""
+    """
+    Font2(int pointSize, int family, int flags=FONTFLAG_DEFAULT, 
+        String face=EmptyString, int encoding=FONTENCODING_DEFAULT) -> Font
+    """
     val = _gdi.new_Font2(*args, **kwargs)
     val.thisown = 1
     return val
 
 def Font_GetDefaultEncoding(*args, **kwargs):
-    """Font_GetDefaultEncoding() -> wxFontEncoding"""
+    """Font_GetDefaultEncoding() -> int"""
     return _gdi.Font_GetDefaultEncoding(*args, **kwargs)
 
 def Font_SetDefaultEncoding(*args, **kwargs):
-    """Font_SetDefaultEncoding(wxFontEncoding encoding)"""
+    """Font_SetDefaultEncoding(int encoding)"""
     return _gdi.Font_SetDefaultEncoding(*args, **kwargs)
 
 #---------------------------------------------------------------------------
 
 class FontEnumerator(object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxPyFontEnumerator instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -1446,11 +1711,11 @@ class FontEnumerator(object):
         return _gdi.FontEnumerator__setCallbackInfo(*args, **kwargs)
 
     def EnumerateFacenames(*args, **kwargs):
-        """EnumerateFacenames(wxFontEncoding encoding=FONTENCODING_SYSTEM, bool fixedWidthOnly=False) -> bool"""
+        """EnumerateFacenames(int encoding=FONTENCODING_SYSTEM, bool fixedWidthOnly=False) -> bool"""
         return _gdi.FontEnumerator_EnumerateFacenames(*args, **kwargs)
 
     def EnumerateEncodings(*args, **kwargs):
-        """EnumerateEncodings(wxString facename=wxPyEmptyString) -> bool"""
+        """EnumerateEncodings(String facename=EmptyString) -> bool"""
         return _gdi.FontEnumerator_EnumerateEncodings(*args, **kwargs)
 
     def GetEncodings(*args, **kwargs):
@@ -1703,7 +1968,6 @@ LANGUAGE_ZHUANG = _gdi.LANGUAGE_ZHUANG
 LANGUAGE_ZULU = _gdi.LANGUAGE_ZULU
 LANGUAGE_USER_DEFINED = _gdi.LANGUAGE_USER_DEFINED
 class LanguageInfo(object):
-    """"""
     def __init__(self): raise RuntimeError, "No constructor defined"
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxLanguageInfo instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -1727,7 +1991,6 @@ LOCALE_DECIMAL_POINT = _gdi.LOCALE_DECIMAL_POINT
 LOCALE_LOAD_DEFAULT = _gdi.LOCALE_LOAD_DEFAULT
 LOCALE_CONV_ENCODING = _gdi.LOCALE_CONV_ENCODING
 class Locale(object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxLocale instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -1743,9 +2006,11 @@ class Locale(object):
         except: pass
 
     def Init1(*args, **kwargs):
-        """Init1(wxString szName, wxString szShort=wxPyEmptyString, 
-    wxString szLocale=wxPyEmptyString, bool bLoadDefault=True, 
-    bool bConvertEncoding=False) -> bool"""
+        """
+        Init1(String szName, String szShort=EmptyString, String szLocale=EmptyString, 
+            bool bLoadDefault=True, 
+            bool bConvertEncoding=False) -> bool
+        """
         return _gdi.Locale_Init1(*args, **kwargs)
 
     def Init2(*args, **kwargs):
@@ -1760,17 +2025,17 @@ class Locale(object):
         return val
 
     def GetSystemLanguage(*args, **kwargs):
-        """Locale.GetSystemLanguage() -> int"""
+        """GetSystemLanguage() -> int"""
         return _gdi.Locale_GetSystemLanguage(*args, **kwargs)
 
     GetSystemLanguage = staticmethod(GetSystemLanguage)
     def GetSystemEncoding(*args, **kwargs):
-        """Locale.GetSystemEncoding() -> wxFontEncoding"""
+        """GetSystemEncoding() -> int"""
         return _gdi.Locale_GetSystemEncoding(*args, **kwargs)
 
     GetSystemEncoding = staticmethod(GetSystemEncoding)
     def GetSystemEncodingName(*args, **kwargs):
-        """Locale.GetSystemEncodingName() -> wxString"""
+        """GetSystemEncodingName() -> String"""
         return _gdi.Locale_GetSystemEncodingName(*args, **kwargs)
 
     GetSystemEncodingName = staticmethod(GetSystemEncodingName)
@@ -1780,7 +2045,7 @@ class Locale(object):
 
     def __nonzero__(self): return self.IsOk() 
     def GetLocale(*args, **kwargs):
-        """GetLocale() -> wxString"""
+        """GetLocale() -> String"""
         return _gdi.Locale_GetLocale(*args, **kwargs)
 
     def GetLanguage(*args, **kwargs):
@@ -1788,52 +2053,52 @@ class Locale(object):
         return _gdi.Locale_GetLanguage(*args, **kwargs)
 
     def GetSysName(*args, **kwargs):
-        """GetSysName() -> wxString"""
+        """GetSysName() -> String"""
         return _gdi.Locale_GetSysName(*args, **kwargs)
 
     def GetCanonicalName(*args, **kwargs):
-        """GetCanonicalName() -> wxString"""
+        """GetCanonicalName() -> String"""
         return _gdi.Locale_GetCanonicalName(*args, **kwargs)
 
     def AddCatalogLookupPathPrefix(*args, **kwargs):
-        """Locale.AddCatalogLookupPathPrefix(wxString prefix)"""
+        """AddCatalogLookupPathPrefix(String prefix)"""
         return _gdi.Locale_AddCatalogLookupPathPrefix(*args, **kwargs)
 
     AddCatalogLookupPathPrefix = staticmethod(AddCatalogLookupPathPrefix)
     def AddCatalog(*args, **kwargs):
-        """AddCatalog(wxString szDomain) -> bool"""
+        """AddCatalog(String szDomain) -> bool"""
         return _gdi.Locale_AddCatalog(*args, **kwargs)
 
     def IsLoaded(*args, **kwargs):
-        """IsLoaded(wxString szDomain) -> bool"""
+        """IsLoaded(String szDomain) -> bool"""
         return _gdi.Locale_IsLoaded(*args, **kwargs)
 
     def GetLanguageInfo(*args, **kwargs):
-        """Locale.GetLanguageInfo(int lang) -> LanguageInfo"""
+        """GetLanguageInfo(int lang) -> LanguageInfo"""
         return _gdi.Locale_GetLanguageInfo(*args, **kwargs)
 
     GetLanguageInfo = staticmethod(GetLanguageInfo)
     def GetLanguageName(*args, **kwargs):
-        """Locale.GetLanguageName(int lang) -> wxString"""
+        """GetLanguageName(int lang) -> String"""
         return _gdi.Locale_GetLanguageName(*args, **kwargs)
 
     GetLanguageName = staticmethod(GetLanguageName)
     def FindLanguageInfo(*args, **kwargs):
-        """Locale.FindLanguageInfo(wxString locale) -> LanguageInfo"""
+        """FindLanguageInfo(String locale) -> LanguageInfo"""
         return _gdi.Locale_FindLanguageInfo(*args, **kwargs)
 
     FindLanguageInfo = staticmethod(FindLanguageInfo)
     def AddLanguage(*args, **kwargs):
-        """Locale.AddLanguage(LanguageInfo info)"""
+        """AddLanguage(LanguageInfo info)"""
         return _gdi.Locale_AddLanguage(*args, **kwargs)
 
     AddLanguage = staticmethod(AddLanguage)
     def GetString(*args, **kwargs):
-        """GetString(wxString szOrigString, wxString szDomain=wxPyEmptyString) -> wxString"""
+        """GetString(String szOrigString, String szDomain=EmptyString) -> String"""
         return _gdi.Locale_GetString(*args, **kwargs)
 
     def GetName(*args, **kwargs):
-        """GetName() -> wxString"""
+        """GetName() -> String"""
         return _gdi.Locale_GetName(*args, **kwargs)
 
 
@@ -1849,15 +2114,15 @@ def Locale_GetSystemLanguage(*args, **kwargs):
     return _gdi.Locale_GetSystemLanguage(*args, **kwargs)
 
 def Locale_GetSystemEncoding(*args, **kwargs):
-    """Locale_GetSystemEncoding() -> wxFontEncoding"""
+    """Locale_GetSystemEncoding() -> int"""
     return _gdi.Locale_GetSystemEncoding(*args, **kwargs)
 
 def Locale_GetSystemEncodingName(*args, **kwargs):
-    """Locale_GetSystemEncodingName() -> wxString"""
+    """Locale_GetSystemEncodingName() -> String"""
     return _gdi.Locale_GetSystemEncodingName(*args, **kwargs)
 
 def Locale_AddCatalogLookupPathPrefix(*args, **kwargs):
-    """Locale_AddCatalogLookupPathPrefix(wxString prefix)"""
+    """Locale_AddCatalogLookupPathPrefix(String prefix)"""
     return _gdi.Locale_AddCatalogLookupPathPrefix(*args, **kwargs)
 
 def Locale_GetLanguageInfo(*args, **kwargs):
@@ -1865,11 +2130,11 @@ def Locale_GetLanguageInfo(*args, **kwargs):
     return _gdi.Locale_GetLanguageInfo(*args, **kwargs)
 
 def Locale_GetLanguageName(*args, **kwargs):
-    """Locale_GetLanguageName(int lang) -> wxString"""
+    """Locale_GetLanguageName(int lang) -> String"""
     return _gdi.Locale_GetLanguageName(*args, **kwargs)
 
 def Locale_FindLanguageInfo(*args, **kwargs):
-    """Locale_FindLanguageInfo(wxString locale) -> LanguageInfo"""
+    """Locale_FindLanguageInfo(String locale) -> LanguageInfo"""
     return _gdi.Locale_FindLanguageInfo(*args, **kwargs)
 
 def Locale_AddLanguage(*args, **kwargs):
@@ -1890,7 +2155,6 @@ PLATFORM_WINDOWS = _gdi.PLATFORM_WINDOWS
 PLATFORM_OS2 = _gdi.PLATFORM_OS2
 PLATFORM_MAC = _gdi.PLATFORM_MAC
 class EncodingConverter(core.Object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxEncodingConverter instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -1906,26 +2170,25 @@ class EncodingConverter(core.Object):
         except: pass
 
     def Init(*args, **kwargs):
-        """Init(wxFontEncoding input_enc, wxFontEncoding output_enc, 
-    int method=CONVERT_STRICT) -> bool"""
+        """Init(int input_enc, int output_enc, int method=CONVERT_STRICT) -> bool"""
         return _gdi.EncodingConverter_Init(*args, **kwargs)
 
     def Convert(*args, **kwargs):
-        """Convert(wxString input) -> wxString"""
+        """Convert(String input) -> String"""
         return _gdi.EncodingConverter_Convert(*args, **kwargs)
 
     def GetPlatformEquivalents(*args, **kwargs):
-        """EncodingConverter.GetPlatformEquivalents(wxFontEncoding enc, int platform=PLATFORM_CURRENT) -> wxFontEncodingArray"""
+        """GetPlatformEquivalents(int enc, int platform=PLATFORM_CURRENT) -> wxFontEncodingArray"""
         return _gdi.EncodingConverter_GetPlatformEquivalents(*args, **kwargs)
 
     GetPlatformEquivalents = staticmethod(GetPlatformEquivalents)
     def GetAllEquivalents(*args, **kwargs):
-        """EncodingConverter.GetAllEquivalents(wxFontEncoding enc) -> wxFontEncodingArray"""
+        """GetAllEquivalents(int enc) -> wxFontEncodingArray"""
         return _gdi.EncodingConverter_GetAllEquivalents(*args, **kwargs)
 
     GetAllEquivalents = staticmethod(GetAllEquivalents)
     def CanConvert(*args, **kwargs):
-        """EncodingConverter.CanConvert(wxFontEncoding encIn, wxFontEncoding encOut) -> bool"""
+        """CanConvert(int encIn, int encOut) -> bool"""
         return _gdi.EncodingConverter_CanConvert(*args, **kwargs)
 
     CanConvert = staticmethod(CanConvert)
@@ -1939,20 +2202,22 @@ class EncodingConverterPtr(EncodingConverter):
 _gdi.EncodingConverter_swigregister(EncodingConverterPtr)
 
 def GetTranslation(*args):
-    """GetTranslation(wxString sz) -> wxString
-GetTranslation(wxString sz1, wxString sz2, size_t n) -> wxString"""
+    """
+    GetTranslation(String str) -> String
+    GetTranslation(String str, String strPlural, size_t n) -> String
+    """
     return _gdi.GetTranslation(*args)
 
 def EncodingConverter_GetPlatformEquivalents(*args, **kwargs):
-    """EncodingConverter_GetPlatformEquivalents(wxFontEncoding enc, int platform=PLATFORM_CURRENT) -> wxFontEncodingArray"""
+    """EncodingConverter_GetPlatformEquivalents(int enc, int platform=PLATFORM_CURRENT) -> wxFontEncodingArray"""
     return _gdi.EncodingConverter_GetPlatformEquivalents(*args, **kwargs)
 
 def EncodingConverter_GetAllEquivalents(*args, **kwargs):
-    """EncodingConverter_GetAllEquivalents(wxFontEncoding enc) -> wxFontEncodingArray"""
+    """EncodingConverter_GetAllEquivalents(int enc) -> wxFontEncodingArray"""
     return _gdi.EncodingConverter_GetAllEquivalents(*args, **kwargs)
 
 def EncodingConverter_CanConvert(*args, **kwargs):
-    """EncodingConverter_CanConvert(wxFontEncoding encIn, wxFontEncoding encOut) -> bool"""
+    """EncodingConverter_CanConvert(int encIn, int encOut) -> bool"""
     return _gdi.EncodingConverter_CanConvert(*args, **kwargs)
 
 #----------------------------------------------------------------------------
@@ -1978,7 +2243,6 @@ if wx.Platform == "__WXMSW__":
 #---------------------------------------------------------------------------
 
 class DC(core.Object):
-    """"""
     def __init__(self): raise RuntimeError, "No constructor defined"
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -2121,30 +2385,34 @@ class DC(core.Object):
         return _gdi.DC_DrawBitmap(*args, **kwargs)
 
     def DrawTextXY(*args, **kwargs):
-        """DrawTextXY(wxString text, int x, int y)"""
+        """DrawTextXY(String text, int x, int y)"""
         return _gdi.DC_DrawTextXY(*args, **kwargs)
 
     def DrawText(*args, **kwargs):
-        """DrawText(wxString text, Point pt)"""
+        """DrawText(String text, Point pt)"""
         return _gdi.DC_DrawText(*args, **kwargs)
 
     def DrawRotatedTextXY(*args, **kwargs):
-        """DrawRotatedTextXY(wxString text, int x, int y, double angle)"""
+        """DrawRotatedTextXY(String text, int x, int y, double angle)"""
         return _gdi.DC_DrawRotatedTextXY(*args, **kwargs)
 
     def DrawRotatedText(*args, **kwargs):
-        """DrawRotatedText(wxString text, Point pt, double angle)"""
+        """DrawRotatedText(String text, Point pt, double angle)"""
         return _gdi.DC_DrawRotatedText(*args, **kwargs)
 
     def BlitXY(*args, **kwargs):
-        """BlitXY(int xdest, int ydest, int width, int height, DC source, 
-    int xsrc, int ysrc, int rop=COPY, bool useMask=False, 
-    int xsrcMask=-1, int ysrcMask=-1) -> bool"""
+        """
+        BlitXY(int xdest, int ydest, int width, int height, DC source, 
+            int xsrc, int ysrc, int rop=COPY, bool useMask=False, 
+            int xsrcMask=-1, int ysrcMask=-1) -> bool
+        """
         return _gdi.DC_BlitXY(*args, **kwargs)
 
     def Blit(*args, **kwargs):
-        """Blit(Point destPt, Size sz, DC source, Point srcPt, int rop=COPY, 
-    bool useMask=False, Point srcPtMask=DefaultPosition) -> bool"""
+        """
+        Blit(Point destPt, Size sz, DC source, Point srcPt, int rop=COPY, 
+            bool useMask=False, Point srcPtMask=DefaultPosition) -> bool
+        """
         return _gdi.DC_Blit(*args, **kwargs)
 
     def DrawLines(*args, **kwargs):
@@ -2152,18 +2420,24 @@ class DC(core.Object):
         return _gdi.DC_DrawLines(*args, **kwargs)
 
     def DrawPolygon(*args, **kwargs):
-        """DrawPolygon(int points, Point points_array, int xoffset=0, int yoffset=0, 
-    int fillStyle=ODDEVEN_RULE)"""
+        """
+        DrawPolygon(int points, Point points_array, int xoffset=0, int yoffset=0, 
+            int fillStyle=ODDEVEN_RULE)
+        """
         return _gdi.DC_DrawPolygon(*args, **kwargs)
 
     def DrawLabel(*args, **kwargs):
-        """DrawLabel(wxString text, Rect rect, int alignment=wxALIGN_LEFT|wxALIGN_TOP, 
-    int indexAccel=-1)"""
+        """
+        DrawLabel(String text, Rect rect, int alignment=wxALIGN_LEFT|wxALIGN_TOP, 
+            int indexAccel=-1)
+        """
         return _gdi.DC_DrawLabel(*args, **kwargs)
 
     def DrawImageLabel(*args, **kwargs):
-        """DrawImageLabel(wxString text, Bitmap image, Rect rect, int alignment=wxALIGN_LEFT|wxALIGN_TOP, 
-    int indexAccel=-1) -> Rect"""
+        """
+        DrawImageLabel(String text, Bitmap image, Rect rect, int alignment=wxALIGN_LEFT|wxALIGN_TOP, 
+            int indexAccel=-1) -> Rect
+        """
         return _gdi.DC_DrawImageLabel(*args, **kwargs)
 
     def DrawSpline(*args, **kwargs):
@@ -2175,7 +2449,7 @@ class DC(core.Object):
         return _gdi.DC_Clear(*args, **kwargs)
 
     def StartDoc(*args, **kwargs):
-        """StartDoc(wxString message) -> bool"""
+        """StartDoc(String message) -> bool"""
         return _gdi.DC_StartDoc(*args, **kwargs)
 
     def EndDoc(*args, **kwargs):
@@ -2214,8 +2488,12 @@ class DC(core.Object):
         """SetPalette(Palette palette)"""
         return _gdi.DC_SetPalette(*args, **kwargs)
 
+    def SetClippingRegionXY(*args, **kwargs):
+        """SetClippingRegionXY(int x, int y, int width, int height)"""
+        return _gdi.DC_SetClippingRegionXY(*args, **kwargs)
+
     def SetClippingRegion(*args, **kwargs):
-        """SetClippingRegion(int x, int y, int width, int height)"""
+        """SetClippingRegion(Point pt, Size sz)"""
         return _gdi.DC_SetClippingRegion(*args, **kwargs)
 
     def SetClippingRect(*args, **kwargs):
@@ -2231,7 +2509,7 @@ class DC(core.Object):
         return _gdi.DC_DestroyClippingRegion(*args, **kwargs)
 
     def GetClippingBox(*args, **kwargs):
-        """GetClippingBox(int OUTPUT, int OUTPUT, int OUTPUT, int OUTPUT)"""
+        """GetClippingBox() -> (x, y, width, height)"""
         return _gdi.DC_GetClippingBox(*args, **kwargs)
 
     def GetClippingRect(*args, **kwargs):
@@ -2247,35 +2525,70 @@ class DC(core.Object):
         return _gdi.DC_GetCharWidth(*args, **kwargs)
 
     def GetTextExtent(*args, **kwargs):
-        """GetTextExtent(wxString string, int OUTPUT, int OUTPUT)"""
+        """
+        GetTextExtent(wxString string) -> (width, height)
+
+        Get the width and height of the text using the current font.
+        Only works for single line strings.
+        """
         return _gdi.DC_GetTextExtent(*args, **kwargs)
 
     def GetFullTextExtent(*args, **kwargs):
-        """GetFullTextExtent(wxString string, int OUTPUT, int OUTPUT, int OUTPUT, 
-    int OUTPUT, Font font=None)"""
+        """
+        GetFullTextExtent(wxString string, Font font=None) ->
+           (width, height, descent, externalLeading)
+
+        Get the width, height, decent and leading of the text using the current or specified font.
+        Only works for single line strings.
+        """
         return _gdi.DC_GetFullTextExtent(*args, **kwargs)
 
     def GetMultiLineTextExtent(*args, **kwargs):
-        """GetMultiLineTextExtent(wxString text, int OUTPUT, int OUTPUT, int OUTPUT, 
-    Font font=None)"""
+        """
+        GetMultiLineTextExtent(wxString string, Font font=None) ->
+           (width, height, descent, externalLeading)
+
+        Get the width, height, decent and leading of the text using the current or specified font.
+        Works for single as well as multi-line strings.
+        """
         return _gdi.DC_GetMultiLineTextExtent(*args, **kwargs)
 
-    def GetSizeTuple(*args, **kwargs):
-        """GetSizeTuple(int OUTPUT, int OUTPUT)"""
-        return _gdi.DC_GetSizeTuple(*args, **kwargs)
+    def GetPartialTextExtents(*args, **kwargs):
+        """GetPartialTextExtents(String text) -> wxArrayInt"""
+        return _gdi.DC_GetPartialTextExtents(*args, **kwargs)
 
     def GetSize(*args, **kwargs):
-        """GetSize() -> Size"""
+        """
+        GetSize() -> Size
+
+        Get the DC size in device units.
+        """
         return _gdi.DC_GetSize(*args, **kwargs)
 
-    def GetSizeMMWH(*args, **kwargs):
-        """GetSizeMMWH(int OUTPUT, int OUTPUT)"""
-        return _gdi.DC_GetSizeMMWH(*args, **kwargs)
+    def GetSizeTuple(*args, **kwargs):
+        """
+        GetSizeTuple() -> (width, height)
+
+        Get the DC size in device units.
+        """
+        return _gdi.DC_GetSizeTuple(*args, **kwargs)
 
     def GetSizeMM(*args, **kwargs):
-        """GetSizeMM() -> Size"""
+        """
+        GetSizeMM() -> Size
+
+        Get the DC size in milimeters.
+        """
         return _gdi.DC_GetSizeMM(*args, **kwargs)
 
+    def GetSizeMMTuple(*args, **kwargs):
+        """
+        GetSizeMMTuple() -> (width, height)
+
+        Get the DC size in milimeters.
+        """
+        return _gdi.DC_GetSizeMMTuple(*args, **kwargs)
+
     def DeviceToLogicalX(*args, **kwargs):
         """DeviceToLogicalX(int x) -> int"""
         return _gdi.DC_DeviceToLogicalX(*args, **kwargs)
@@ -2373,7 +2686,7 @@ class DC(core.Object):
         return _gdi.DC_SetMapMode(*args, **kwargs)
 
     def GetUserScale(*args, **kwargs):
-        """GetUserScale(double OUTPUT, double OUTPUT)"""
+        """GetUserScale() -> (xScale, yScale)"""
         return _gdi.DC_GetUserScale(*args, **kwargs)
 
     def SetUserScale(*args, **kwargs):
@@ -2381,33 +2694,33 @@ class DC(core.Object):
         return _gdi.DC_SetUserScale(*args, **kwargs)
 
     def GetLogicalScale(*args, **kwargs):
-        """GetLogicalScale(double OUTPUT, double OUTPUT)"""
+        """GetLogicalScale() -> (xScale, yScale)"""
         return _gdi.DC_GetLogicalScale(*args, **kwargs)
 
     def SetLogicalScale(*args, **kwargs):
         """SetLogicalScale(double x, double y)"""
         return _gdi.DC_SetLogicalScale(*args, **kwargs)
 
-    def GetLogicalOriginTuple(*args, **kwargs):
-        """GetLogicalOriginTuple(int OUTPUT, int OUTPUT)"""
-        return _gdi.DC_GetLogicalOriginTuple(*args, **kwargs)
-
     def GetLogicalOrigin(*args, **kwargs):
         """GetLogicalOrigin() -> Point"""
         return _gdi.DC_GetLogicalOrigin(*args, **kwargs)
 
+    def GetLogicalOriginTuple(*args, **kwargs):
+        """GetLogicalOriginTuple() -> (x,y)"""
+        return _gdi.DC_GetLogicalOriginTuple(*args, **kwargs)
+
     def SetLogicalOrigin(*args, **kwargs):
         """SetLogicalOrigin(int x, int y)"""
         return _gdi.DC_SetLogicalOrigin(*args, **kwargs)
 
-    def GetDeviceOriginTuple(*args, **kwargs):
-        """GetDeviceOriginTuple(int OUTPUT, int OUTPUT)"""
-        return _gdi.DC_GetDeviceOriginTuple(*args, **kwargs)
-
     def GetDeviceOrigin(*args, **kwargs):
         """GetDeviceOrigin() -> Point"""
         return _gdi.DC_GetDeviceOrigin(*args, **kwargs)
 
+    def GetDeviceOriginTuple(*args, **kwargs):
+        """GetDeviceOriginTuple() -> (x,y)"""
+        return _gdi.DC_GetDeviceOriginTuple(*args, **kwargs)
+
     def SetDeviceOrigin(*args, **kwargs):
         """SetDeviceOrigin(int x, int y)"""
         return _gdi.DC_SetDeviceOrigin(*args, **kwargs)
@@ -2457,7 +2770,7 @@ class DC(core.Object):
         return _gdi.DC_MaxY(*args, **kwargs)
 
     def GetBoundingBox(*args, **kwargs):
-        """GetBoundingBox(int OUTPUT, int OUTPUT, int OUTPUT, int OUTPUT)"""
+        """GetBoundingBox() -> (x1,y1, x2,y2)"""
         return _gdi.DC_GetBoundingBox(*args, **kwargs)
 
     def __nonzero__(self): return self.Ok() 
@@ -2482,8 +2795,10 @@ class DC(core.Object):
         return _gdi.DC__DrawPolygonList(*args, **kwargs)
 
     def _DrawTextList(*args, **kwargs):
-        """_DrawTextList(PyObject textList, PyObject pyPoints, PyObject foregroundList, 
-    PyObject backgroundList) -> PyObject"""
+        """
+        _DrawTextList(PyObject textList, PyObject pyPoints, PyObject foregroundList, 
+            PyObject backgroundList) -> PyObject
+        """
         return _gdi.DC__DrawTextList(*args, **kwargs)
 
     def DrawPointList(self, points, pens=None):
@@ -2539,8 +2854,8 @@ class DC(core.Object):
 
 
     def DrawPolygonList(self, polygons, pens=None, brushes=None):
-        
-        
+        ## Note: This does not currently support fill style or offset
+        ## you can always use the non-List version if need be.
         if pens is None:
            pens = []
         elif isinstance(pens, wx.Pen):
@@ -2557,22 +2872,22 @@ class DC(core.Object):
 
 
     def DrawTextList(self, textList, coords, foregrounds = None, backgrounds = None, fonts = None):
-        
-        
-        
+        ## NOTE: this does not currently support changing the font
+        ##       Make sure you set Background mode to wxSolid (DC.SetBackgroundMode)
+        ##       If you want backgounds to do anything.
         if type(textList) == type(''):
            textList = [textList]
         elif len(textList) != len(coords):
            raise ValueError('textlist and coords must have same length')
         if foregrounds is None:
            foregrounds = []
-        elif isinstance(foregrounds, wxColour):
+        elif isinstance(foregrounds, wx.Colour):
            foregrounds = [foregrounds]
         elif len(foregrounds) != len(coords):
            raise ValueError('foregrounds and coords must have same length')
         if backgrounds is None:
            backgrounds = []
-        elif isinstance(backgrounds, wxColour):
+        elif isinstance(backgrounds, wx.Colour):
            backgrounds = [backgrounds]
         elif len(backgrounds) != len(coords):
            raise ValueError('backgrounds and coords must have same length')
@@ -2589,7 +2904,6 @@ _gdi.DC_swigregister(DCPtr)
 #---------------------------------------------------------------------------
 
 class MemoryDC(DC):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxMemoryDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -2619,17 +2933,25 @@ def MemoryDCFromDC(*args, **kwargs):
 #---------------------------------------------------------------------------
 
 class BufferedDC(MemoryDC):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxBufferedDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
-        """__init__(DC dc, Bitmap buffer) -> BufferedDC"""
-        newobj = _gdi.new_BufferedDC(*args, **kwargs)
+    def __init__(self, *args):
+        """
+        __init__(DC dc, Bitmap buffer) -> BufferedDC
+        __init__(DC dc, Size area) -> BufferedDC
+        """
+        newobj = _gdi.new_BufferedDC(*args)
         self.this = newobj.this
         self.thisown = 1
         del newobj.thisown
         self._dc = args[0] # save a ref so the other dc will not be deleted before self
 
+    def __del__(self, destroy=_gdi.delete_BufferedDC):
+        """__del__()"""
+        try:
+            if self.thisown: destroy(self)
+        except: pass
+
     def UnMask(*args, **kwargs):
         """UnMask()"""
         return _gdi.BufferedDC_UnMask(*args, **kwargs)
@@ -2642,15 +2964,14 @@ class BufferedDCPtr(BufferedDC):
         self.__class__ = BufferedDC
 _gdi.BufferedDC_swigregister(BufferedDCPtr)
 
-def BufferedDCInternalBuffer(*args, **kwargs):
+def BufferedDCInternalBuffer(*args):
     """BufferedDCInternalBuffer(DC dc, Size area) -> BufferedDC"""
-    val = _gdi.new_BufferedDCInternalBuffer(*args, **kwargs)
+    val = _gdi.new_BufferedDCInternalBuffer(*args)
     val.thisown = 1
     val._dc = args[0] # save a ref so the other dc will not be deleted before self
     return val
 
 class BufferedPaintDC(BufferedDC):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxBufferedPaintDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -2670,7 +2991,6 @@ _gdi.BufferedPaintDC_swigregister(BufferedPaintDCPtr)
 #---------------------------------------------------------------------------
 
 class ScreenDC(DC):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxScreenDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -2702,7 +3022,6 @@ _gdi.ScreenDC_swigregister(ScreenDCPtr)
 #---------------------------------------------------------------------------
 
 class ClientDC(DC):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxClientDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -2722,7 +3041,6 @@ _gdi.ClientDC_swigregister(ClientDCPtr)
 #---------------------------------------------------------------------------
 
 class PaintDC(DC):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxPaintDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -2742,7 +3060,6 @@ _gdi.PaintDC_swigregister(PaintDCPtr)
 #---------------------------------------------------------------------------
 
 class WindowDC(DC):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxWindowDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -2762,7 +3079,6 @@ _gdi.WindowDC_swigregister(WindowDCPtr)
 #---------------------------------------------------------------------------
 
 class MirrorDC(DC):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxMirrorDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -2782,7 +3098,6 @@ _gdi.MirrorDC_swigregister(MirrorDCPtr)
 #---------------------------------------------------------------------------
 
 class PostScriptDC(DC):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxPostScriptDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -2800,12 +3115,12 @@ class PostScriptDC(DC):
         return _gdi.PostScriptDC_SetPrintData(*args, **kwargs)
 
     def SetResolution(*args, **kwargs):
-        """PostScriptDC.SetResolution(int ppi)"""
+        """SetResolution(int ppi)"""
         return _gdi.PostScriptDC_SetResolution(*args, **kwargs)
 
     SetResolution = staticmethod(SetResolution)
     def GetResolution(*args, **kwargs):
-        """PostScriptDC.GetResolution() -> int"""
+        """GetResolution() -> int"""
         return _gdi.PostScriptDC_GetResolution(*args, **kwargs)
 
     GetResolution = staticmethod(GetResolution)
@@ -2828,11 +3143,10 @@ def PostScriptDC_GetResolution(*args, **kwargs):
 #---------------------------------------------------------------------------
 
 class MetaFile(core.Object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxMetaFile instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(wxString filename=wxPyEmptyString) -> MetaFile"""
+        """__init__(String filename=EmptyString) -> MetaFile"""
         newobj = _gdi.new_MetaFile(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -2846,12 +3160,13 @@ class MetaFilePtr(MetaFile):
 _gdi.MetaFile_swigregister(MetaFilePtr)
 
 class MetaFileDC(DC):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxMetaFileDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(wxString filename=wxPyEmptyString, int width=0, int height=0, 
-    wxString description=wxPyEmptyString) -> MetaFileDC"""
+        """
+        __init__(String filename=EmptyString, int width=0, int height=0, 
+            String description=EmptyString) -> MetaFileDC
+        """
         newobj = _gdi.new_MetaFileDC(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -2865,7 +3180,6 @@ class MetaFileDCPtr(MetaFileDC):
 _gdi.MetaFileDC_swigregister(MetaFileDCPtr)
 
 class PrinterDC(DC):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxPrinterDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -2882,6 +3196,246 @@ class PrinterDCPtr(PrinterDC):
         self.__class__ = PrinterDC
 _gdi.PrinterDC_swigregister(PrinterDCPtr)
 
+class DC_old(DC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = DC.FloodFillXY
+    GetPixel = DC.GetPixelXY
+    DrawLine = DC.DrawLineXY
+    CrossHair = DC.CrossHairXY
+    DrawArc = DC.DrawArcXY
+    DrawCheckMark = DC.DrawCheckMarkXY
+    DrawEllipticArc = DC.DrawEllipticArcXY
+    DrawPoint = DC.DrawPointXY
+    DrawRectangle = DC.DrawRectangleXY
+    DrawRoundedRectangle = DC.DrawRoundedRectangleXY
+    DrawCircle = DC.DrawCircleXY
+    DrawEllipse = DC.DrawEllipseXY
+    DrawIcon = DC.DrawIconXY
+    DrawBitmap = DC.DrawBitmapXY
+    DrawText = DC.DrawTextXY
+    DrawRotatedText = DC.DrawRotatedTextXY
+    Blit = DC.BlitXY
+
+class MemoryDC_old(MemoryDC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = MemoryDC.FloodFillXY
+    GetPixel = MemoryDC.GetPixelXY
+    DrawLine = MemoryDC.DrawLineXY
+    CrossHair = MemoryDC.CrossHairXY
+    DrawArc = MemoryDC.DrawArcXY
+    DrawCheckMark = MemoryDC.DrawCheckMarkXY
+    DrawEllipticArc = MemoryDC.DrawEllipticArcXY
+    DrawPoint = MemoryDC.DrawPointXY
+    DrawRectangle = MemoryDC.DrawRectangleXY
+    DrawRoundedRectangle = MemoryDC.DrawRoundedRectangleXY
+    DrawCircle = MemoryDC.DrawCircleXY
+    DrawEllipse = MemoryDC.DrawEllipseXY
+    DrawIcon = MemoryDC.DrawIconXY
+    DrawBitmap = MemoryDC.DrawBitmapXY
+    DrawText = MemoryDC.DrawTextXY
+    DrawRotatedText = MemoryDC.DrawRotatedTextXY
+    Blit = MemoryDC.BlitXY
+
+class BufferedDC_old(BufferedDC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = BufferedDC.FloodFillXY
+    GetPixel = BufferedDC.GetPixelXY
+    DrawLine = BufferedDC.DrawLineXY
+    CrossHair = BufferedDC.CrossHairXY
+    DrawArc = BufferedDC.DrawArcXY
+    DrawCheckMark = BufferedDC.DrawCheckMarkXY
+    DrawEllipticArc = BufferedDC.DrawEllipticArcXY
+    DrawPoint = BufferedDC.DrawPointXY
+    DrawRectangle = BufferedDC.DrawRectangleXY
+    DrawRoundedRectangle = BufferedDC.DrawRoundedRectangleXY
+    DrawCircle = BufferedDC.DrawCircleXY
+    DrawEllipse = BufferedDC.DrawEllipseXY
+    DrawIcon = BufferedDC.DrawIconXY
+    DrawBitmap = BufferedDC.DrawBitmapXY
+    DrawText = BufferedDC.DrawTextXY
+    DrawRotatedText = BufferedDC.DrawRotatedTextXY
+    Blit = BufferedDC.BlitXY
+
+class BufferedPaintDC_old(BufferedPaintDC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = BufferedPaintDC.FloodFillXY
+    GetPixel = BufferedPaintDC.GetPixelXY
+    DrawLine = BufferedPaintDC.DrawLineXY
+    CrossHair = BufferedPaintDC.CrossHairXY
+    DrawArc = BufferedPaintDC.DrawArcXY
+    DrawCheckMark = BufferedPaintDC.DrawCheckMarkXY
+    DrawEllipticArc = BufferedPaintDC.DrawEllipticArcXY
+    DrawPoint = BufferedPaintDC.DrawPointXY
+    DrawRectangle = BufferedPaintDC.DrawRectangleXY
+    DrawRoundedRectangle = BufferedPaintDC.DrawRoundedRectangleXY
+    DrawCircle = BufferedPaintDC.DrawCircleXY
+    DrawEllipse = BufferedPaintDC.DrawEllipseXY
+    DrawIcon = BufferedPaintDC.DrawIconXY
+    DrawBitmap = BufferedPaintDC.DrawBitmapXY
+    DrawText = BufferedPaintDC.DrawTextXY
+    DrawRotatedText = BufferedPaintDC.DrawRotatedTextXY
+    Blit = BufferedPaintDC.BlitXY
+
+class ScreenDC_old(ScreenDC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = ScreenDC.FloodFillXY
+    GetPixel = ScreenDC.GetPixelXY
+    DrawLine = ScreenDC.DrawLineXY
+    CrossHair = ScreenDC.CrossHairXY
+    DrawArc = ScreenDC.DrawArcXY
+    DrawCheckMark = ScreenDC.DrawCheckMarkXY
+    DrawEllipticArc = ScreenDC.DrawEllipticArcXY
+    DrawPoint = ScreenDC.DrawPointXY
+    DrawRectangle = ScreenDC.DrawRectangleXY
+    DrawRoundedRectangle = ScreenDC.DrawRoundedRectangleXY
+    DrawCircle = ScreenDC.DrawCircleXY
+    DrawEllipse = ScreenDC.DrawEllipseXY
+    DrawIcon = ScreenDC.DrawIconXY
+    DrawBitmap = ScreenDC.DrawBitmapXY
+    DrawText = ScreenDC.DrawTextXY
+    DrawRotatedText = ScreenDC.DrawRotatedTextXY
+    Blit = ScreenDC.BlitXY
+
+class ClientDC_old(ClientDC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = ClientDC.FloodFillXY
+    GetPixel = ClientDC.GetPixelXY
+    DrawLine = ClientDC.DrawLineXY
+    CrossHair = ClientDC.CrossHairXY
+    DrawArc = ClientDC.DrawArcXY
+    DrawCheckMark = ClientDC.DrawCheckMarkXY
+    DrawEllipticArc = ClientDC.DrawEllipticArcXY
+    DrawPoint = ClientDC.DrawPointXY
+    DrawRectangle = ClientDC.DrawRectangleXY
+    DrawRoundedRectangle = ClientDC.DrawRoundedRectangleXY
+    DrawCircle = ClientDC.DrawCircleXY
+    DrawEllipse = ClientDC.DrawEllipseXY
+    DrawIcon = ClientDC.DrawIconXY
+    DrawBitmap = ClientDC.DrawBitmapXY
+    DrawText = ClientDC.DrawTextXY
+    DrawRotatedText = ClientDC.DrawRotatedTextXY
+    Blit = ClientDC.BlitXY
+
+class PaintDC_old(PaintDC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = PaintDC.FloodFillXY
+    GetPixel = PaintDC.GetPixelXY
+    DrawLine = PaintDC.DrawLineXY
+    CrossHair = PaintDC.CrossHairXY
+    DrawArc = PaintDC.DrawArcXY
+    DrawCheckMark = PaintDC.DrawCheckMarkXY
+    DrawEllipticArc = PaintDC.DrawEllipticArcXY
+    DrawPoint = PaintDC.DrawPointXY
+    DrawRectangle = PaintDC.DrawRectangleXY
+    DrawRoundedRectangle = PaintDC.DrawRoundedRectangleXY
+    DrawCircle = PaintDC.DrawCircleXY
+    DrawEllipse = PaintDC.DrawEllipseXY
+    DrawIcon = PaintDC.DrawIconXY
+    DrawBitmap = PaintDC.DrawBitmapXY
+    DrawText = PaintDC.DrawTextXY
+    DrawRotatedText = PaintDC.DrawRotatedTextXY
+    Blit = PaintDC.BlitXY
+
+class WindowDC_old(WindowDC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = WindowDC.FloodFillXY
+    GetPixel = WindowDC.GetPixelXY
+    DrawLine = WindowDC.DrawLineXY
+    CrossHair = WindowDC.CrossHairXY
+    DrawArc = WindowDC.DrawArcXY
+    DrawCheckMark = WindowDC.DrawCheckMarkXY
+    DrawEllipticArc = WindowDC.DrawEllipticArcXY
+    DrawPoint = WindowDC.DrawPointXY
+    DrawRectangle = WindowDC.DrawRectangleXY
+    DrawRoundedRectangle = WindowDC.DrawRoundedRectangleXY
+    DrawCircle = WindowDC.DrawCircleXY
+    DrawEllipse = WindowDC.DrawEllipseXY
+    DrawIcon = WindowDC.DrawIconXY
+    DrawBitmap = WindowDC.DrawBitmapXY
+    DrawText = WindowDC.DrawTextXY
+    DrawRotatedText = WindowDC.DrawRotatedTextXY
+    Blit = WindowDC.BlitXY
+
+class MirrorDC_old(MirrorDC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = MirrorDC.FloodFillXY
+    GetPixel = MirrorDC.GetPixelXY
+    DrawLine = MirrorDC.DrawLineXY
+    CrossHair = MirrorDC.CrossHairXY
+    DrawArc = MirrorDC.DrawArcXY
+    DrawCheckMark = MirrorDC.DrawCheckMarkXY
+    DrawEllipticArc = MirrorDC.DrawEllipticArcXY
+    DrawPoint = MirrorDC.DrawPointXY
+    DrawRectangle = MirrorDC.DrawRectangleXY
+    DrawRoundedRectangle = MirrorDC.DrawRoundedRectangleXY
+    DrawCircle = MirrorDC.DrawCircleXY
+    DrawEllipse = MirrorDC.DrawEllipseXY
+    DrawIcon = MirrorDC.DrawIconXY
+    DrawBitmap = MirrorDC.DrawBitmapXY
+    DrawText = MirrorDC.DrawTextXY
+    DrawRotatedText = MirrorDC.DrawRotatedTextXY
+    Blit = MirrorDC.BlitXY
+
+class PostScriptDC_old(PostScriptDC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = PostScriptDC.FloodFillXY
+    GetPixel = PostScriptDC.GetPixelXY
+    DrawLine = PostScriptDC.DrawLineXY
+    CrossHair = PostScriptDC.CrossHairXY
+    DrawArc = PostScriptDC.DrawArcXY
+    DrawCheckMark = PostScriptDC.DrawCheckMarkXY
+    DrawEllipticArc = PostScriptDC.DrawEllipticArcXY
+    DrawPoint = PostScriptDC.DrawPointXY
+    DrawRectangle = PostScriptDC.DrawRectangleXY
+    DrawRoundedRectangle = PostScriptDC.DrawRoundedRectangleXY
+    DrawCircle = PostScriptDC.DrawCircleXY
+    DrawEllipse = PostScriptDC.DrawEllipseXY
+    DrawIcon = PostScriptDC.DrawIconXY
+    DrawBitmap = PostScriptDC.DrawBitmapXY
+    DrawText = PostScriptDC.DrawTextXY
+    DrawRotatedText = PostScriptDC.DrawRotatedTextXY
+    Blit = PostScriptDC.BlitXY
+
+class MetaFileDC_old(MetaFileDC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = MetaFileDC.FloodFillXY
+    GetPixel = MetaFileDC.GetPixelXY
+    DrawLine = MetaFileDC.DrawLineXY
+    CrossHair = MetaFileDC.CrossHairXY
+    DrawArc = MetaFileDC.DrawArcXY
+    DrawCheckMark = MetaFileDC.DrawCheckMarkXY
+    DrawEllipticArc = MetaFileDC.DrawEllipticArcXY
+    DrawPoint = MetaFileDC.DrawPointXY
+    DrawRectangle = MetaFileDC.DrawRectangleXY
+    DrawRoundedRectangle = MetaFileDC.DrawRoundedRectangleXY
+    DrawCircle = MetaFileDC.DrawCircleXY
+    DrawEllipse = MetaFileDC.DrawEllipseXY
+    DrawIcon = MetaFileDC.DrawIconXY
+    DrawBitmap = MetaFileDC.DrawBitmapXY
+    DrawText = MetaFileDC.DrawTextXY
+    DrawRotatedText = MetaFileDC.DrawRotatedTextXY
+    Blit = MetaFileDC.BlitXY
+
+class PrinterDC_old(PrinterDC):
+    """DC class that has methods with 2.4 compatible parameters."""
+    FloodFill = PrinterDC.FloodFillXY
+    GetPixel = PrinterDC.GetPixelXY
+    DrawLine = PrinterDC.DrawLineXY
+    CrossHair = PrinterDC.CrossHairXY
+    DrawArc = PrinterDC.DrawArcXY
+    DrawCheckMark = PrinterDC.DrawCheckMarkXY
+    DrawEllipticArc = PrinterDC.DrawEllipticArcXY
+    DrawPoint = PrinterDC.DrawPointXY
+    DrawRectangle = PrinterDC.DrawRectangleXY
+    DrawRoundedRectangle = PrinterDC.DrawRoundedRectangleXY
+    DrawCircle = PrinterDC.DrawCircleXY
+    DrawEllipse = PrinterDC.DrawEllipseXY
+    DrawIcon = PrinterDC.DrawIconXY
+    DrawBitmap = PrinterDC.DrawBitmapXY
+    DrawText = PrinterDC.DrawTextXY
+    DrawRotatedText = PrinterDC.DrawRotatedTextXY
+    Blit = PrinterDC.BlitXY
+
 #---------------------------------------------------------------------------
 
 IMAGELIST_DRAW_NORMAL = _gdi.IMAGELIST_DRAW_NORMAL
@@ -2892,7 +3446,6 @@ IMAGE_LIST_NORMAL = _gdi.IMAGE_LIST_NORMAL
 IMAGE_LIST_SMALL = _gdi.IMAGE_LIST_SMALL
 IMAGE_LIST_STATE = _gdi.IMAGE_LIST_STATE
 class ImageList(core.Object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxImageList instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -2924,8 +3477,10 @@ class ImageList(core.Object):
         return _gdi.ImageList_Replace(*args, **kwargs)
 
     def Draw(*args, **kwargs):
-        """Draw(int index, DC dc, int x, int x, int flags=IMAGELIST_DRAW_NORMAL, 
-    bool solidBackground=False) -> bool"""
+        """
+        Draw(int index, DC dc, int x, int x, int flags=IMAGELIST_DRAW_NORMAL, 
+            bool solidBackground=False) -> bool
+        """
         return _gdi.ImageList_Draw(*args, **kwargs)
 
     def GetImageCount(*args, **kwargs):
@@ -2941,7 +3496,7 @@ class ImageList(core.Object):
         return _gdi.ImageList_RemoveAll(*args, **kwargs)
 
     def GetSize(*args, **kwargs):
-        """GetSize(int index, int OUTPUT, int OUTPUT)"""
+        """GetSize() -> (width,height)"""
         return _gdi.ImageList_GetSize(*args, **kwargs)
 
 
@@ -2955,7 +3510,6 @@ _gdi.ImageList_swigregister(ImageListPtr)
 #---------------------------------------------------------------------------
 
 class PenList(core.Object):
-    """"""
     def __init__(self): raise RuntimeError, "No constructor defined"
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxPenList instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -2982,9 +3536,51 @@ class PenListPtr(PenList):
         if not hasattr(self,"thisown"): self.thisown = 0
         self.__class__ = PenList
 _gdi.PenList_swigregister(PenListPtr)
+cvar = _gdi.cvar
+NORMAL_FONT = cvar.NORMAL_FONT
+SMALL_FONT = cvar.SMALL_FONT
+ITALIC_FONT = cvar.ITALIC_FONT
+SWISS_FONT = cvar.SWISS_FONT
+RED_PEN = cvar.RED_PEN
+CYAN_PEN = cvar.CYAN_PEN
+GREEN_PEN = cvar.GREEN_PEN
+BLACK_PEN = cvar.BLACK_PEN
+WHITE_PEN = cvar.WHITE_PEN
+TRANSPARENT_PEN = cvar.TRANSPARENT_PEN
+BLACK_DASHED_PEN = cvar.BLACK_DASHED_PEN
+GREY_PEN = cvar.GREY_PEN
+MEDIUM_GREY_PEN = cvar.MEDIUM_GREY_PEN
+LIGHT_GREY_PEN = cvar.LIGHT_GREY_PEN
+BLUE_BRUSH = cvar.BLUE_BRUSH
+GREEN_BRUSH = cvar.GREEN_BRUSH
+WHITE_BRUSH = cvar.WHITE_BRUSH
+BLACK_BRUSH = cvar.BLACK_BRUSH
+TRANSPARENT_BRUSH = cvar.TRANSPARENT_BRUSH
+CYAN_BRUSH = cvar.CYAN_BRUSH
+RED_BRUSH = cvar.RED_BRUSH
+GREY_BRUSH = cvar.GREY_BRUSH
+MEDIUM_GREY_BRUSH = cvar.MEDIUM_GREY_BRUSH
+LIGHT_GREY_BRUSH = cvar.LIGHT_GREY_BRUSH
+BLACK = cvar.BLACK
+WHITE = cvar.WHITE
+RED = cvar.RED
+BLUE = cvar.BLUE
+GREEN = cvar.GREEN
+CYAN = cvar.CYAN
+LIGHT_GREY = cvar.LIGHT_GREY
+STANDARD_CURSOR = cvar.STANDARD_CURSOR
+HOURGLASS_CURSOR = cvar.HOURGLASS_CURSOR
+CROSS_CURSOR = cvar.CROSS_CURSOR
+NullBitmap = cvar.NullBitmap
+NullIcon = cvar.NullIcon
+NullCursor = cvar.NullCursor
+NullPen = cvar.NullPen
+NullBrush = cvar.NullBrush
+NullPalette = cvar.NullPalette
+NullFont = cvar.NullFont
+NullColour = cvar.NullColour
 
 class BrushList(core.Object):
-    """"""
     def __init__(self): raise RuntimeError, "No constructor defined"
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxBrushList instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -3013,7 +3609,6 @@ class BrushListPtr(BrushList):
 _gdi.BrushList_swigregister(BrushListPtr)
 
 class ColourDatabase(core.Object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxColourDatabase instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -3029,20 +3624,20 @@ class ColourDatabase(core.Object):
         except: pass
 
     def Find(*args, **kwargs):
-        """Find(wxString name) -> Colour"""
+        """Find(String name) -> Colour"""
         return _gdi.ColourDatabase_Find(*args, **kwargs)
 
     def FindName(*args, **kwargs):
-        """FindName(Colour colour) -> wxString"""
+        """FindName(Colour colour) -> String"""
         return _gdi.ColourDatabase_FindName(*args, **kwargs)
 
     FindColour = Find 
     def AddColour(*args, **kwargs):
-        """AddColour(wxString name, Colour colour)"""
+        """AddColour(String name, Colour colour)"""
         return _gdi.ColourDatabase_AddColour(*args, **kwargs)
 
     def Append(*args, **kwargs):
-        """Append(wxString name, int red, int green, int blue)"""
+        """Append(String name, int red, int green, int blue)"""
         return _gdi.ColourDatabase_Append(*args, **kwargs)
 
 
@@ -3054,7 +3649,6 @@ class ColourDatabasePtr(ColourDatabase):
 _gdi.ColourDatabase_swigregister(ColourDatabasePtr)
 
 class FontList(core.Object):
-    """"""
     def __init__(self): raise RuntimeError, "No constructor defined"
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxFontList instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -3063,9 +3657,11 @@ class FontList(core.Object):
         return _gdi.FontList_AddFont(*args, **kwargs)
 
     def FindOrCreateFont(*args, **kwargs):
-        """FindOrCreateFont(int point_size, int family, int style, int weight, 
-    bool underline=False, wxString facename=wxPyEmptyString, 
-    wxFontEncoding encoding=FONTENCODING_DEFAULT) -> Font"""
+        """
+        FindOrCreateFont(int point_size, int family, int style, int weight, 
+            bool underline=False, String facename=EmptyString, 
+            int encoding=FONTENCODING_DEFAULT) -> Font
+        """
         return _gdi.FontList_FindOrCreateFont(*args, **kwargs)
 
     def RemoveFont(*args, **kwargs):
@@ -3086,10 +3682,10 @@ _gdi.FontList_swigregister(FontListPtr)
 
 #---------------------------------------------------------------------------
 
+NullColor = NullColour 
 #---------------------------------------------------------------------------
 
 class Effects(core.Object):
-    """"""
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxEffects instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -3139,8 +3735,10 @@ class Effects(core.Object):
         return _gdi.Effects_SetDarkShadow(*args, **kwargs)
 
     def Set(*args, **kwargs):
-        """Set(Colour highlightColour, Colour lightShadow, Colour faceColour, 
-    Colour mediumShadow, Colour darkShadow)"""
+        """
+        Set(Colour highlightColour, Colour lightShadow, Colour faceColour, 
+            Colour mediumShadow, Colour darkShadow)
+        """
         return _gdi.Effects_Set(*args, **kwargs)
 
     def DrawSunkenEdge(*args, **kwargs):
@@ -3158,49 +3756,6 @@ class EffectsPtr(Effects):
         if not hasattr(self,"thisown"): self.thisown = 0
         self.__class__ = Effects
 _gdi.Effects_swigregister(EffectsPtr)
-cvar = _gdi.cvar
-NORMAL_FONT = cvar.NORMAL_FONT
-SMALL_FONT = cvar.SMALL_FONT
-ITALIC_FONT = cvar.ITALIC_FONT
-SWISS_FONT = cvar.SWISS_FONT
-RED_PEN = cvar.RED_PEN
-CYAN_PEN = cvar.CYAN_PEN
-GREEN_PEN = cvar.GREEN_PEN
-BLACK_PEN = cvar.BLACK_PEN
-WHITE_PEN = cvar.WHITE_PEN
-TRANSPARENT_PEN = cvar.TRANSPARENT_PEN
-BLACK_DASHED_PEN = cvar.BLACK_DASHED_PEN
-GREY_PEN = cvar.GREY_PEN
-MEDIUM_GREY_PEN = cvar.MEDIUM_GREY_PEN
-LIGHT_GREY_PEN = cvar.LIGHT_GREY_PEN
-BLUE_BRUSH = cvar.BLUE_BRUSH
-GREEN_BRUSH = cvar.GREEN_BRUSH
-WHITE_BRUSH = cvar.WHITE_BRUSH
-BLACK_BRUSH = cvar.BLACK_BRUSH
-TRANSPARENT_BRUSH = cvar.TRANSPARENT_BRUSH
-CYAN_BRUSH = cvar.CYAN_BRUSH
-RED_BRUSH = cvar.RED_BRUSH
-GREY_BRUSH = cvar.GREY_BRUSH
-MEDIUM_GREY_BRUSH = cvar.MEDIUM_GREY_BRUSH
-LIGHT_GREY_BRUSH = cvar.LIGHT_GREY_BRUSH
-BLACK = cvar.BLACK
-WHITE = cvar.WHITE
-RED = cvar.RED
-BLUE = cvar.BLUE
-GREEN = cvar.GREEN
-CYAN = cvar.CYAN
-LIGHT_GREY = cvar.LIGHT_GREY
-STANDARD_CURSOR = cvar.STANDARD_CURSOR
-HOURGLASS_CURSOR = cvar.HOURGLASS_CURSOR
-CROSS_CURSOR = cvar.CROSS_CURSOR
-NullBitmap = cvar.NullBitmap
-NullIcon = cvar.NullIcon
-NullCursor = cvar.NullCursor
-NullPen = cvar.NullPen
-NullBrush = cvar.NullBrush
-NullPalette = cvar.NullPalette
-NullFont = cvar.NullFont
-NullColour = cvar.NullColour
 TheFontList = cvar.TheFontList
 ThePenList = cvar.ThePenList
 TheBrushList = cvar.TheBrushList