+        del newobj.thisown
+    def __del__(self, destroy=_gdi.delete_Locale):
+        """__del__()"""
+        try:
+            if self.thisown: destroy(self)
+        except: pass
+
+    def Init1(*args, **kwargs):
+        """
+        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):
+        """Init2(int language=LANGUAGE_DEFAULT, int flags=wxLOCALE_LOAD_DEFAULT|wxLOCALE_CONV_ENCODING) -> bool"""
+        return _gdi.Locale_Init2(*args, **kwargs)
+
+    def Init(self, *_args, **_kwargs):
+        if type(_args[0]) in [type(''), type(u'')]:
+            val = self.Init1(*_args, **_kwargs)
+        else:
+            val = self.Init2(*_args, **_kwargs)
+        return val
+
+    def GetSystemLanguage(*args, **kwargs):
+        """GetSystemLanguage() -> int"""
+        return _gdi.Locale_GetSystemLanguage(*args, **kwargs)
+
+    GetSystemLanguage = staticmethod(GetSystemLanguage)
+    def GetSystemEncoding(*args, **kwargs):
+        """GetSystemEncoding() -> int"""
+        return _gdi.Locale_GetSystemEncoding(*args, **kwargs)
+
+    GetSystemEncoding = staticmethod(GetSystemEncoding)
+    def GetSystemEncodingName(*args, **kwargs):
+        """GetSystemEncodingName() -> String"""
+        return _gdi.Locale_GetSystemEncodingName(*args, **kwargs)
+
+    GetSystemEncodingName = staticmethod(GetSystemEncodingName)
+    def IsOk(*args, **kwargs):
+        """IsOk() -> bool"""
+        return _gdi.Locale_IsOk(*args, **kwargs)
+
+    def __nonzero__(self): return self.IsOk() 
+    def GetLocale(*args, **kwargs):
+        """GetLocale() -> String"""
+        return _gdi.Locale_GetLocale(*args, **kwargs)
+
+    def GetLanguage(*args, **kwargs):
+        """GetLanguage() -> int"""
+        return _gdi.Locale_GetLanguage(*args, **kwargs)
+
+    def GetSysName(*args, **kwargs):
+        """GetSysName() -> String"""
+        return _gdi.Locale_GetSysName(*args, **kwargs)
+
+    def GetCanonicalName(*args, **kwargs):
+        """GetCanonicalName() -> String"""
+        return _gdi.Locale_GetCanonicalName(*args, **kwargs)
+
+    def AddCatalogLookupPathPrefix(*args, **kwargs):
+        """AddCatalogLookupPathPrefix(String prefix)"""
+        return _gdi.Locale_AddCatalogLookupPathPrefix(*args, **kwargs)
+
+    AddCatalogLookupPathPrefix = staticmethod(AddCatalogLookupPathPrefix)
+    def AddCatalog(*args, **kwargs):
+        """AddCatalog(String szDomain) -> bool"""
+        return _gdi.Locale_AddCatalog(*args, **kwargs)
+
+    def IsLoaded(*args, **kwargs):
+        """IsLoaded(String szDomain) -> bool"""
+        return _gdi.Locale_IsLoaded(*args, **kwargs)
+
+    def GetLanguageInfo(*args, **kwargs):
+        """GetLanguageInfo(int lang) -> LanguageInfo"""
+        return _gdi.Locale_GetLanguageInfo(*args, **kwargs)
+
+    GetLanguageInfo = staticmethod(GetLanguageInfo)
+    def GetLanguageName(*args, **kwargs):
+        """GetLanguageName(int lang) -> String"""
+        return _gdi.Locale_GetLanguageName(*args, **kwargs)
+
+    GetLanguageName = staticmethod(GetLanguageName)
+    def FindLanguageInfo(*args, **kwargs):
+        """FindLanguageInfo(String locale) -> LanguageInfo"""
+        return _gdi.Locale_FindLanguageInfo(*args, **kwargs)
+
+    FindLanguageInfo = staticmethod(FindLanguageInfo)
+    def AddLanguage(*args, **kwargs):
+        """AddLanguage(LanguageInfo info)"""
+        return _gdi.Locale_AddLanguage(*args, **kwargs)
+
+    AddLanguage = staticmethod(AddLanguage)
+    def GetString(*args, **kwargs):
+        """GetString(String szOrigString, String szDomain=EmptyString) -> String"""
+        return _gdi.Locale_GetString(*args, **kwargs)
+
+    def GetName(*args, **kwargs):
+        """GetName() -> String"""
+        return _gdi.Locale_GetName(*args, **kwargs)
+
+
+class LocalePtr(Locale):
+    def __init__(self, this):
+        self.this = this
+        if not hasattr(self,"thisown"): self.thisown = 0
+        self.__class__ = Locale
+_gdi.Locale_swigregister(LocalePtr)
+
+def Locale_GetSystemLanguage(*args, **kwargs):
+    """Locale_GetSystemLanguage() -> int"""
+    return _gdi.Locale_GetSystemLanguage(*args, **kwargs)
+
+def Locale_GetSystemEncoding(*args, **kwargs):
+    """Locale_GetSystemEncoding() -> int"""
+    return _gdi.Locale_GetSystemEncoding(*args, **kwargs)
+
+def Locale_GetSystemEncodingName(*args, **kwargs):
+    """Locale_GetSystemEncodingName() -> String"""
+    return _gdi.Locale_GetSystemEncodingName(*args, **kwargs)
+
+def Locale_AddCatalogLookupPathPrefix(*args, **kwargs):
+    """Locale_AddCatalogLookupPathPrefix(String prefix)"""
+    return _gdi.Locale_AddCatalogLookupPathPrefix(*args, **kwargs)
+
+def Locale_GetLanguageInfo(*args, **kwargs):
+    """Locale_GetLanguageInfo(int lang) -> LanguageInfo"""
+    return _gdi.Locale_GetLanguageInfo(*args, **kwargs)
+
+def Locale_GetLanguageName(*args, **kwargs):
+    """Locale_GetLanguageName(int lang) -> String"""
+    return _gdi.Locale_GetLanguageName(*args, **kwargs)
+
+def Locale_FindLanguageInfo(*args, **kwargs):
+    """Locale_FindLanguageInfo(String locale) -> LanguageInfo"""
+    return _gdi.Locale_FindLanguageInfo(*args, **kwargs)
+
+def Locale_AddLanguage(*args, **kwargs):
+    """Locale_AddLanguage(LanguageInfo info)"""
+    return _gdi.Locale_AddLanguage(*args, **kwargs)
+
+
+def GetLocale(*args, **kwargs):
+    """GetLocale() -> Locale"""
+    return _gdi.GetLocale(*args, **kwargs)
+#---------------------------------------------------------------------------
+
+CONVERT_STRICT = _gdi.CONVERT_STRICT
+CONVERT_SUBSTITUTE = _gdi.CONVERT_SUBSTITUTE
+PLATFORM_CURRENT = _gdi.PLATFORM_CURRENT
+PLATFORM_UNIX = _gdi.PLATFORM_UNIX
+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):
+        """__init__() -> EncodingConverter"""
+        newobj = _gdi.new_EncodingConverter(*args, **kwargs)
+        self.this = newobj.this
+        self.thisown = 1
+        del newobj.thisown
+    def __del__(self, destroy=_gdi.delete_EncodingConverter):
+        """__del__()"""
+        try:
+            if self.thisown: destroy(self)
+        except: pass
+
+    def Init(*args, **kwargs):
+        """Init(int input_enc, int output_enc, int method=CONVERT_STRICT) -> bool"""
+        return _gdi.EncodingConverter_Init(*args, **kwargs)
+
+    def Convert(*args, **kwargs):
+        """Convert(String input) -> String"""
+        return _gdi.EncodingConverter_Convert(*args, **kwargs)
+
+    def GetPlatformEquivalents(*args, **kwargs):
+        """GetPlatformEquivalents(int enc, int platform=PLATFORM_CURRENT) -> wxFontEncodingArray"""
+        return _gdi.EncodingConverter_GetPlatformEquivalents(*args, **kwargs)
+
+    GetPlatformEquivalents = staticmethod(GetPlatformEquivalents)
+    def GetAllEquivalents(*args, **kwargs):
+        """GetAllEquivalents(int enc) -> wxFontEncodingArray"""
+        return _gdi.EncodingConverter_GetAllEquivalents(*args, **kwargs)
+
+    GetAllEquivalents = staticmethod(GetAllEquivalents)
+    def CanConvert(*args, **kwargs):
+        """CanConvert(int encIn, int encOut) -> bool"""
+        return _gdi.EncodingConverter_CanConvert(*args, **kwargs)
+
+    CanConvert = staticmethod(CanConvert)
+    def __nonzero__(self): return self.IsOk() 
+
+class EncodingConverterPtr(EncodingConverter):
+    def __init__(self, this):
+        self.this = this
+        if not hasattr(self,"thisown"): self.thisown = 0
+        self.__class__ = EncodingConverter
+_gdi.EncodingConverter_swigregister(EncodingConverterPtr)
+
+def GetTranslation(*args):
+    """
+    GetTranslation(String str) -> String
+    GetTranslation(String str, String strPlural, size_t n) -> String
+    """
+    return _gdi.GetTranslation(*args)
+
+def EncodingConverter_GetPlatformEquivalents(*args, **kwargs):
+    """EncodingConverter_GetPlatformEquivalents(int enc, int platform=PLATFORM_CURRENT) -> wxFontEncodingArray"""
+    return _gdi.EncodingConverter_GetPlatformEquivalents(*args, **kwargs)
+
+def EncodingConverter_GetAllEquivalents(*args, **kwargs):
+    """EncodingConverter_GetAllEquivalents(int enc) -> wxFontEncodingArray"""
+    return _gdi.EncodingConverter_GetAllEquivalents(*args, **kwargs)
+
+def EncodingConverter_CanConvert(*args, **kwargs):
+    """EncodingConverter_CanConvert(int encIn, int encOut) -> bool"""
+    return _gdi.EncodingConverter_CanConvert(*args, **kwargs)
+
+#----------------------------------------------------------------------------
+# wxGTK sets the locale when initialized.  Doing this at the Python
+# level should set it up to match what GTK is doing at the C level.
+if wx.Platform == "__WXGTK__":
+    try:
+        import locale
+        locale.setlocale(locale.LC_ALL, "")
+    except:
+        pass
+
+# On MSW add the directory where the wxWindows catalogs were installed
+# to the default catalog path.
+if wx.Platform == "__WXMSW__":
+    import os
+    localedir = os.path.join(os.path.split(__file__)[0], "locale")
+    Locale_AddCatalogLookupPathPrefix(localedir)
+    del os
+
+#----------------------------------------------------------------------------
+
+#---------------------------------------------------------------------------
+
+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,)
+    def __del__(self, destroy=_gdi.delete_DC):
+        """__del__()"""
+        try:
+            if self.thisown: destroy(self)
+        except: pass
+
+    def BeginDrawing(*args, **kwargs):
+        """BeginDrawing()"""
+        return _gdi.DC_BeginDrawing(*args, **kwargs)
+
+    def EndDrawing(*args, **kwargs):
+        """EndDrawing()"""
+        return _gdi.DC_EndDrawing(*args, **kwargs)
+
+    def FloodFillXY(*args, **kwargs):
+        """FloodFillXY(int x, int y, Colour col, int style=FLOOD_SURFACE) -> bool"""
+        return _gdi.DC_FloodFillXY(*args, **kwargs)
+
+    def FloodFill(*args, **kwargs):
+        """FloodFill(Point pt, Colour col, int style=FLOOD_SURFACE) -> bool"""
+        return _gdi.DC_FloodFill(*args, **kwargs)
+
+    def GetPixelXY(*args, **kwargs):
+        """GetPixelXY(int x, int y) -> Colour"""
+        return _gdi.DC_GetPixelXY(*args, **kwargs)
+
+    def GetPixel(*args, **kwargs):
+        """GetPixel(Point pt) -> Colour"""
+        return _gdi.DC_GetPixel(*args, **kwargs)
+
+    def DrawLineXY(*args, **kwargs):
+        """DrawLineXY(int x1, int y1, int x2, int y2)"""
+        return _gdi.DC_DrawLineXY(*args, **kwargs)
+
+    def DrawLine(*args, **kwargs):
+        """DrawLine(Point pt1, Point pt2)"""
+        return _gdi.DC_DrawLine(*args, **kwargs)
+
+    def CrossHairXY(*args, **kwargs):
+        """CrossHairXY(int x, int y)"""
+        return _gdi.DC_CrossHairXY(*args, **kwargs)
+
+    def CrossHair(*args, **kwargs):
+        """CrossHair(Point pt)"""
+        return _gdi.DC_CrossHair(*args, **kwargs)
+
+    def DrawArcXY(*args, **kwargs):
+        """DrawArcXY(int x1, int y1, int x2, int y2, int xc, int yc)"""
+        return _gdi.DC_DrawArcXY(*args, **kwargs)
+
+    def DrawArc(*args, **kwargs):
+        """DrawArc(Point pt1, Point pt2, Point centre)"""
+        return _gdi.DC_DrawArc(*args, **kwargs)
+
+    def DrawCheckMarkXY(*args, **kwargs):
+        """DrawCheckMarkXY(int x, int y, int width, int height)"""
+        return _gdi.DC_DrawCheckMarkXY(*args, **kwargs)
+
+    def DrawCheckMark(*args, **kwargs):
+        """DrawCheckMark(Rect rect)"""
+        return _gdi.DC_DrawCheckMark(*args, **kwargs)
+
+    def DrawEllipticArcXY(*args, **kwargs):
+        """DrawEllipticArcXY(int x, int y, int w, int h, double sa, double ea)"""
+        return _gdi.DC_DrawEllipticArcXY(*args, **kwargs)
+
+    def DrawEllipticArc(*args, **kwargs):
+        """DrawEllipticArc(Point pt, Size sz, double sa, double ea)"""
+        return _gdi.DC_DrawEllipticArc(*args, **kwargs)
+
+    def DrawPointXY(*args, **kwargs):
+        """DrawPointXY(int x, int y)"""
+        return _gdi.DC_DrawPointXY(*args, **kwargs)
+
+    def DrawPoint(*args, **kwargs):
+        """DrawPoint(Point pt)"""
+        return _gdi.DC_DrawPoint(*args, **kwargs)
+
+    def DrawRectangleXY(*args, **kwargs):
+        """DrawRectangleXY(int x, int y, int width, int height)"""
+        return _gdi.DC_DrawRectangleXY(*args, **kwargs)
+
+    def DrawRectangle(*args, **kwargs):
+        """DrawRectangle(Point pt, Size sz)"""
+        return _gdi.DC_DrawRectangle(*args, **kwargs)
+
+    def DrawRectangleRect(*args, **kwargs):
+        """DrawRectangleRect(Rect rect)"""
+        return _gdi.DC_DrawRectangleRect(*args, **kwargs)
+
+    def DrawRoundedRectangleXY(*args, **kwargs):
+        """DrawRoundedRectangleXY(int x, int y, int width, int height, double radius)"""
+        return _gdi.DC_DrawRoundedRectangleXY(*args, **kwargs)
+
+    def DrawRoundedRectangle(*args, **kwargs):
+        """DrawRoundedRectangle(Point pt, Size sz, double radius)"""
+        return _gdi.DC_DrawRoundedRectangle(*args, **kwargs)
+
+    def DrawRoundedRectangleRect(*args, **kwargs):
+        """DrawRoundedRectangleRect(Rect r, double radius)"""
+        return _gdi.DC_DrawRoundedRectangleRect(*args, **kwargs)
+
+    def DrawCircleXY(*args, **kwargs):
+        """DrawCircleXY(int x, int y, int radius)"""
+        return _gdi.DC_DrawCircleXY(*args, **kwargs)
+
+    def DrawCircle(*args, **kwargs):
+        """DrawCircle(Point pt, int radius)"""
+        return _gdi.DC_DrawCircle(*args, **kwargs)
+
+    def DrawEllipseXY(*args, **kwargs):
+        """DrawEllipseXY(int x, int y, int width, int height)"""
+        return _gdi.DC_DrawEllipseXY(*args, **kwargs)
+
+    def DrawEllipse(*args, **kwargs):
+        """DrawEllipse(Point pt, Size sz)"""
+        return _gdi.DC_DrawEllipse(*args, **kwargs)
+
+    def DrawEllipseRect(*args, **kwargs):
+        """DrawEllipseRect(Rect rect)"""
+        return _gdi.DC_DrawEllipseRect(*args, **kwargs)
+
+    def DrawIconXY(*args, **kwargs):
+        """DrawIconXY(Icon icon, int x, int y)"""
+        return _gdi.DC_DrawIconXY(*args, **kwargs)
+
+    def DrawIcon(*args, **kwargs):
+        """DrawIcon(Icon icon, Point pt)"""
+        return _gdi.DC_DrawIcon(*args, **kwargs)
+
+    def DrawBitmapXY(*args, **kwargs):
+        """DrawBitmapXY(Bitmap bmp, int x, int y, bool useMask=False)"""
+        return _gdi.DC_DrawBitmapXY(*args, **kwargs)
+
+    def DrawBitmap(*args, **kwargs):
+        """DrawBitmap(Bitmap bmp, Point pt, bool useMask=False)"""
+        return _gdi.DC_DrawBitmap(*args, **kwargs)
+
+    def DrawTextXY(*args, **kwargs):
+        """DrawTextXY(String text, int x, int y)"""
+        return _gdi.DC_DrawTextXY(*args, **kwargs)
+
+    def DrawText(*args, **kwargs):
+        """DrawText(String text, Point pt)"""
+        return _gdi.DC_DrawText(*args, **kwargs)
+
+    def DrawRotatedTextXY(*args, **kwargs):
+        """DrawRotatedTextXY(String text, int x, int y, double angle)"""
+        return _gdi.DC_DrawRotatedTextXY(*args, **kwargs)
+
+    def DrawRotatedText(*args, **kwargs):
+        """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
+        """
+        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
+        """
+        return _gdi.DC_Blit(*args, **kwargs)
+
+    def DrawLines(*args, **kwargs):
+        """DrawLines(int points, Point points_array, int xoffset=0, int yoffset=0)"""
+        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)
+        """
+        return _gdi.DC_DrawPolygon(*args, **kwargs)
+
+    def DrawLabel(*args, **kwargs):
+        """
+        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(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):
+        """DrawSpline(int points, Point points_array)"""
+        return _gdi.DC_DrawSpline(*args, **kwargs)
+
+    def Clear(*args, **kwargs):
+        """Clear()"""
+        return _gdi.DC_Clear(*args, **kwargs)
+
+    def StartDoc(*args, **kwargs):
+        """StartDoc(String message) -> bool"""
+        return _gdi.DC_StartDoc(*args, **kwargs)
+
+    def EndDoc(*args, **kwargs):
+        """EndDoc()"""
+        return _gdi.DC_EndDoc(*args, **kwargs)
+
+    def StartPage(*args, **kwargs):
+        """StartPage()"""
+        return _gdi.DC_StartPage(*args, **kwargs)
+
+    def EndPage(*args, **kwargs):
+        """EndPage()"""
+        return _gdi.DC_EndPage(*args, **kwargs)
+
+    def SetFont(*args, **kwargs):
+        """SetFont(Font font)"""
+        return _gdi.DC_SetFont(*args, **kwargs)
+
+    def SetPen(*args, **kwargs):
+        """SetPen(Pen pen)"""
+        return _gdi.DC_SetPen(*args, **kwargs)
+
+    def SetBrush(*args, **kwargs):
+        """SetBrush(Brush brush)"""
+        return _gdi.DC_SetBrush(*args, **kwargs)
+
+    def SetBackground(*args, **kwargs):
+        """SetBackground(Brush brush)"""
+        return _gdi.DC_SetBackground(*args, **kwargs)
+
+    def SetBackgroundMode(*args, **kwargs):
+        """SetBackgroundMode(int mode)"""
+        return _gdi.DC_SetBackgroundMode(*args, **kwargs)
+
+    def SetPalette(*args, **kwargs):
+        """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(Point pt, Size sz)"""
+        return _gdi.DC_SetClippingRegion(*args, **kwargs)
+
+    def SetClippingRect(*args, **kwargs):
+        """SetClippingRect(Rect rect)"""
+        return _gdi.DC_SetClippingRect(*args, **kwargs)
+
+    def SetClippingRegionAsRegion(*args, **kwargs):
+        """SetClippingRegionAsRegion(Region region)"""
+        return _gdi.DC_SetClippingRegionAsRegion(*args, **kwargs)
+
+    def DestroyClippingRegion(*args, **kwargs):
+        """DestroyClippingRegion()"""
+        return _gdi.DC_DestroyClippingRegion(*args, **kwargs)
+
+    def GetClippingBox(*args, **kwargs):
+        """GetClippingBox() -> (x, y, width, height)"""
+        return _gdi.DC_GetClippingBox(*args, **kwargs)
+
+    def GetClippingRect(*args, **kwargs):
+        """GetClippingRect() -> Rect"""
+        return _gdi.DC_GetClippingRect(*args, **kwargs)
+
+    def GetCharHeight(*args, **kwargs):
+        """GetCharHeight() -> int"""
+        return _gdi.DC_GetCharHeight(*args, **kwargs)
+
+    def GetCharWidth(*args, **kwargs):
+        """GetCharWidth() -> int"""
+        return _gdi.DC_GetCharWidth(*args, **kwargs)
+
+    def GetTextExtent(*args, **kwargs):
+        """
+        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, 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 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 GetPartialTextExtents(*args, **kwargs):
+        """GetPartialTextExtents(String text) -> wxArrayInt"""
+        return _gdi.DC_GetPartialTextExtents(*args, **kwargs)
+
+    def GetSize(*args, **kwargs):
+        """
+        GetSize() -> Size
+
+        Get the DC size in device units.
+        """
+        return _gdi.DC_GetSize(*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
+
+        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)
+
+    def DeviceToLogicalY(*args, **kwargs):
+        """DeviceToLogicalY(int y) -> int"""
+        return _gdi.DC_DeviceToLogicalY(*args, **kwargs)
+
+    def DeviceToLogicalXRel(*args, **kwargs):
+        """DeviceToLogicalXRel(int x) -> int"""
+        return _gdi.DC_DeviceToLogicalXRel(*args, **kwargs)
+
+    def DeviceToLogicalYRel(*args, **kwargs):
+        """DeviceToLogicalYRel(int y) -> int"""
+        return _gdi.DC_DeviceToLogicalYRel(*args, **kwargs)
+
+    def LogicalToDeviceX(*args, **kwargs):
+        """LogicalToDeviceX(int x) -> int"""
+        return _gdi.DC_LogicalToDeviceX(*args, **kwargs)
+
+    def LogicalToDeviceY(*args, **kwargs):
+        """LogicalToDeviceY(int y) -> int"""
+        return _gdi.DC_LogicalToDeviceY(*args, **kwargs)
+
+    def LogicalToDeviceXRel(*args, **kwargs):
+        """LogicalToDeviceXRel(int x) -> int"""
+        return _gdi.DC_LogicalToDeviceXRel(*args, **kwargs)
+
+    def LogicalToDeviceYRel(*args, **kwargs):
+        """LogicalToDeviceYRel(int y) -> int"""
+        return _gdi.DC_LogicalToDeviceYRel(*args, **kwargs)
+
+    def CanDrawBitmap(*args, **kwargs):
+        """CanDrawBitmap() -> bool"""
+        return _gdi.DC_CanDrawBitmap(*args, **kwargs)
+
+    def CanGetTextExtent(*args, **kwargs):
+        """CanGetTextExtent() -> bool"""
+        return _gdi.DC_CanGetTextExtent(*args, **kwargs)
+
+    def GetDepth(*args, **kwargs):
+        """GetDepth() -> int"""
+        return _gdi.DC_GetDepth(*args, **kwargs)
+
+    def GetPPI(*args, **kwargs):
+        """GetPPI() -> Size"""
+        return _gdi.DC_GetPPI(*args, **kwargs)
+
+    def Ok(*args, **kwargs):
+        """Ok() -> bool"""
+        return _gdi.DC_Ok(*args, **kwargs)
+
+    def GetBackgroundMode(*args, **kwargs):
+        """GetBackgroundMode() -> int"""
+        return _gdi.DC_GetBackgroundMode(*args, **kwargs)
+
+    def GetBackground(*args, **kwargs):
+        """GetBackground() -> Brush"""
+        return _gdi.DC_GetBackground(*args, **kwargs)
+
+    def GetBrush(*args, **kwargs):
+        """GetBrush() -> Brush"""
+        return _gdi.DC_GetBrush(*args, **kwargs)
+
+    def GetFont(*args, **kwargs):
+        """GetFont() -> Font"""
+        return _gdi.DC_GetFont(*args, **kwargs)
+
+    def GetPen(*args, **kwargs):
+        """GetPen() -> Pen"""
+        return _gdi.DC_GetPen(*args, **kwargs)
+
+    def GetTextBackground(*args, **kwargs):
+        """GetTextBackground() -> Colour"""
+        return _gdi.DC_GetTextBackground(*args, **kwargs)
+
+    def GetTextForeground(*args, **kwargs):
+        """GetTextForeground() -> Colour"""
+        return _gdi.DC_GetTextForeground(*args, **kwargs)
+
+    def SetTextForeground(*args, **kwargs):
+        """SetTextForeground(Colour colour)"""
+        return _gdi.DC_SetTextForeground(*args, **kwargs)
+
+    def SetTextBackground(*args, **kwargs):
+        """SetTextBackground(Colour colour)"""
+        return _gdi.DC_SetTextBackground(*args, **kwargs)
+
+    def GetMapMode(*args, **kwargs):
+        """GetMapMode() -> int"""
+        return _gdi.DC_GetMapMode(*args, **kwargs)
+
+    def SetMapMode(*args, **kwargs):
+        """SetMapMode(int mode)"""
+        return _gdi.DC_SetMapMode(*args, **kwargs)
+
+    def GetUserScale(*args, **kwargs):
+        """GetUserScale() -> (xScale, yScale)"""
+        return _gdi.DC_GetUserScale(*args, **kwargs)
+
+    def SetUserScale(*args, **kwargs):
+        """SetUserScale(double x, double y)"""
+        return _gdi.DC_SetUserScale(*args, **kwargs)
+
+    def GetLogicalScale(*args, **kwargs):
+        """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 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 GetDeviceOrigin(*args, **kwargs):
+        """GetDeviceOrigin() -> Point"""
+        return _gdi.DC_GetDeviceOrigin(*args, **kwargs)