]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/mac/gdi.py
ShouldInheritColours
[wxWidgets.git] / wxPython / src / mac / gdi.py
index dc8346c0f51780e38a166c7c48da6f3b484e1100..3bbd5f9bf4ee876afa5fe8dcba3fee73c2737ed1 100644 (file)
@@ -45,10 +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
@@ -60,52 +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 SetRGB(*args, **kwargs):
-        """SetRGB(unsigned long colRGB)"""
+        """
+        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"""
-        return _gdi.Colour___ne__(*args, **kwargs)
+        """
+        __ne__(Colour colour) -> bool
 
-    def InitFromName(*args, **kwargs):
-        """InitFromName(String colourName)"""
-        return _gdi.Colour_InitFromName(*args, **kwargs)
+        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 '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):
@@ -116,19 +195,28 @@ class ColourPtr(Colour):
 _gdi.Colour_swigregister(ColourPtr)
 
 def NamedColour(*args, **kwargs):
-    """NamedColour(String 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    
+NamedColor = NamedColour
+ColorRGB = ColourRGB
 
 class Palette(GDIObject):
     def __repr__(self):
@@ -235,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):
@@ -556,9 +652,10 @@ class Mask(core.Object):
         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 monochrome bitmap.
+        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
@@ -572,22 +669,12 @@ class MaskPtr(Mask):
         self.__class__ = Mask
 _gdi.Mask_swigregister(MaskPtr)
 
-def MaskColour(*args, **kwargs):
-    """
-    MaskColour(Bitmap bitmap, Colour colour) -> Mask
-
-    Constructs a mask from a bitmap and a colour in that bitmap that indicates the
-    background.
-    """
-    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__(String 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
@@ -755,10 +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__(String 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
@@ -783,23 +890,33 @@ 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"""
-    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
+    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_CursorFromBits(*args, **kwargs)
+    val = _gdi.new_CursorFromImage(*args, **kwargs)
     val.thisown = 1
     return val
 
@@ -1070,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
@@ -1245,12 +1404,12 @@ 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)
@@ -1259,22 +1418,22 @@ class FontMapper(object):
         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) -> int"""
+        """GetEncoding(size_t n) -> int"""
         return _gdi.FontMapper_GetEncoding(*args, **kwargs)
 
     GetEncoding = staticmethod(GetEncoding)
     def GetEncodingName(*args, **kwargs):
-        """FontMapper.GetEncodingName(int encoding) -> String"""
+        """GetEncodingName(int encoding) -> String"""
         return _gdi.FontMapper_GetEncodingName(*args, **kwargs)
 
     GetEncodingName = staticmethod(GetEncodingName)
     def GetEncodingDescription(*args, **kwargs):
-        """FontMapper.GetEncodingDescription(int encoding) -> String"""
+        """GetEncodingDescription(int encoding) -> String"""
         return _gdi.FontMapper_GetEncodingDescription(*args, **kwargs)
 
     GetEncodingDescription = staticmethod(GetEncodingDescription)
@@ -1287,7 +1446,7 @@ class FontMapper(object):
         return _gdi.FontMapper_SetConfigPath(*args, **kwargs)
 
     def GetDefaultConfigPath(*args, **kwargs):
-        """FontMapper.GetDefaultConfigPath() -> String"""
+        """GetDefaultConfigPath() -> String"""
         return _gdi.FontMapper_GetDefaultConfigPath(*args, **kwargs)
 
     GetDefaultConfigPath = staticmethod(GetDefaultConfigPath)
@@ -1370,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):
@@ -1482,12 +1641,12 @@ class Font(GDIObject):
         return _gdi.Font_GetNoAntiAliasing(*args, **kwargs)
 
     def GetDefaultEncoding(*args, **kwargs):
-        """Font.GetDefaultEncoding() -> int"""
+        """GetDefaultEncoding() -> int"""
         return _gdi.Font_GetDefaultEncoding(*args, **kwargs)
 
     GetDefaultEncoding = staticmethod(GetDefaultEncoding)
     def SetDefaultEncoding(*args, **kwargs):
-        """Font.SetDefaultEncoding(int encoding)"""
+        """SetDefaultEncoding(int encoding)"""
         return _gdi.Font_SetDefaultEncoding(*args, **kwargs)
 
     SetDefaultEncoding = staticmethod(SetDefaultEncoding)
@@ -1866,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() -> int"""
+        """GetSystemEncoding() -> int"""
         return _gdi.Locale_GetSystemEncoding(*args, **kwargs)
 
     GetSystemEncoding = staticmethod(GetSystemEncoding)
     def GetSystemEncodingName(*args, **kwargs):
-        """Locale.GetSystemEncodingName() -> String"""
+        """GetSystemEncodingName() -> String"""
         return _gdi.Locale_GetSystemEncodingName(*args, **kwargs)
 
     GetSystemEncodingName = staticmethod(GetSystemEncodingName)
@@ -1902,7 +2061,7 @@ class Locale(object):
         return _gdi.Locale_GetCanonicalName(*args, **kwargs)
 
     def AddCatalogLookupPathPrefix(*args, **kwargs):
-        """Locale.AddCatalogLookupPathPrefix(String prefix)"""
+        """AddCatalogLookupPathPrefix(String prefix)"""
         return _gdi.Locale_AddCatalogLookupPathPrefix(*args, **kwargs)
 
     AddCatalogLookupPathPrefix = staticmethod(AddCatalogLookupPathPrefix)
@@ -1915,22 +2074,22 @@ class Locale(object):
         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) -> String"""
+        """GetLanguageName(int lang) -> String"""
         return _gdi.Locale_GetLanguageName(*args, **kwargs)
 
     GetLanguageName = staticmethod(GetLanguageName)
     def FindLanguageInfo(*args, **kwargs):
-        """Locale.FindLanguageInfo(String 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)
@@ -2019,17 +2178,17 @@ class EncodingConverter(core.Object):
         return _gdi.EncodingConverter_Convert(*args, **kwargs)
 
     def GetPlatformEquivalents(*args, **kwargs):
-        """EncodingConverter.GetPlatformEquivalents(int 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(int enc) -> wxFontEncodingArray"""
+        """GetAllEquivalents(int enc) -> wxFontEncodingArray"""
         return _gdi.EncodingConverter_GetAllEquivalents(*args, **kwargs)
 
     GetAllEquivalents = staticmethod(GetAllEquivalents)
     def CanConvert(*args, **kwargs):
-        """EncodingConverter.CanConvert(int encIn, int encOut) -> bool"""
+        """CanConvert(int encIn, int encOut) -> bool"""
         return _gdi.EncodingConverter_CanConvert(*args, **kwargs)
 
     CanConvert = staticmethod(CanConvert)
@@ -2044,8 +2203,8 @@ _gdi.EncodingConverter_swigregister(EncodingConverterPtr)
 
 def GetTranslation(*args):
     """
-    GetTranslation(String sz) -> String
-    GetTranslation(String sz1, String sz2, size_t n) -> String
+    GetTranslation(String str) -> String
+    GetTranslation(String str, String strPlural, size_t n) -> String
     """
     return _gdi.GetTranslation(*args)
 
@@ -2394,6 +2553,10 @@ class DC(core.Object):
         """
         return _gdi.DC_GetMultiLineTextExtent(*args, **kwargs)
 
+    def GetPartialTextExtents(*args, **kwargs):
+        """GetPartialTextExtents(String text) -> wxArrayInt"""
+        return _gdi.DC_GetPartialTextExtents(*args, **kwargs)
+
     def GetSize(*args, **kwargs):
         """
         GetSize() -> Size
@@ -2691,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):
@@ -2709,9 +2872,9 @@ 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):
@@ -2772,14 +2935,23 @@ 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)
@@ -2792,9 +2964,9 @@ 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
@@ -2943,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)
@@ -3024,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
@@ -3124,6 +3536,49 @@ 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"
@@ -3227,6 +3682,7 @@ _gdi.FontList_swigregister(FontListPtr)
 
 #---------------------------------------------------------------------------
 
+NullColor = NullColour 
 #---------------------------------------------------------------------------
 
 class Effects(core.Object):
@@ -3300,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