]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/msw/_gdi.py
implemented DrawPoint in terms of DrawLine (for now)
[wxWidgets.git] / wxPython / src / msw / _gdi.py
index 7869a827b7a6d27509e279dd88549416b8de87e9..70139b4fde3d8b7f56dced9bd24c54bce3a4808e 100644 (file)
@@ -75,6 +75,8 @@ _gdi_.GDIObject_swigregister(GDIObject)
 C2S_NAME = _gdi_.C2S_NAME
 C2S_CSS_SYNTAX = _gdi_.C2S_CSS_SYNTAX
 C2S_HTML_SYNTAX = _gdi_.C2S_HTML_SYNTAX
+ALPHA_TRANSPARENT = _gdi_.ALPHA_TRANSPARENT
+ALPHA_OPAQUE = _gdi_.ALPHA_OPAQUE
 class Colour(_core.Object):
     """
     A colour is an object representing a combination of Red, Green, and
@@ -102,7 +104,7 @@ class Colour(_core.Object):
     __repr__ = _swig_repr
     def __init__(self, *args, **kwargs): 
         """
-        __init__(self, byte red=0, byte green=0, byte blue=0) -> Colour
+        __init__(self, byte red=0, byte green=0, byte blue=0, byte alpha=ALPHA_OPAQUE) -> Colour
 
         Constructs a colour from red, green and blue values.
 
@@ -136,6 +138,14 @@ class Colour(_core.Object):
         """
         return _gdi_.Colour_Blue(*args, **kwargs)
 
+    def Alpha(*args, **kwargs):
+        """
+        Alpha(self) -> byte
+
+        Returns the Alpha value.
+        """
+        return _gdi_.Colour_Alpha(*args, **kwargs)
+
     def Ok(*args, **kwargs):
         """
         Ok(self) -> bool
@@ -147,7 +157,7 @@ class Colour(_core.Object):
 
     def Set(*args, **kwargs):
         """
-        Set(self, byte red, byte green, byte blue)
+        Set(self, byte red, byte green, byte blue, byte alpha=ALPHA_OPAQUE)
 
         Sets the RGB intensity values.
         """
@@ -227,12 +237,14 @@ class Colour(_core.Object):
         return _gdi_.Colour_GetRGB(*args, **kwargs)
 
     asTuple = wx._deprecated(Get, "asTuple is deprecated, use `Get` instead")
-    def __str__(self):                  return str(self.Get())
-    def __repr__(self):                 return 'wx.Colour' + str(self.Get())
+    def __str__(self):                  return str(self.Get(True))
+    def __repr__(self):                 return 'wx.Colour' + str(self.Get(True))
     def __nonzero__(self):              return self.Ok()
     __safe_for_unpickling__ = True
-    def __reduce__(self):               return (Colour, self.Get())
+    def __reduce__(self):               return (Colour, self.Get(True))
 
+    Pixel = property(GetPixel,doc="See `GetPixel`") 
+    RGB = property(GetRGB,SetRGB,doc="See `GetRGB` and `SetRGB`") 
 _gdi_.Colour_swigregister(Colour)
 
 def NamedColour(*args, **kwargs):
@@ -469,6 +481,9 @@ class Brush(GDIObject):
         return _gdi_.Brush_Ok(*args, **kwargs)
 
     def __nonzero__(self): return self.Ok() 
+    Colour = property(GetColour,SetColour,doc="See `GetColour` and `SetColour`") 
+    Stipple = property(GetStipple,SetStipple,doc="See `GetStipple` and `SetStipple`") 
+    Style = property(GetStyle,SetStyle,doc="See `GetStyle` and `SetStyle`") 
 _gdi_.Brush_swigregister(Brush)
 
 def BrushFromBitmap(*args, **kwargs):
@@ -671,6 +686,13 @@ class Bitmap(GDIObject):
         """__ne__(self, Bitmap other) -> bool"""
         return _gdi_.Bitmap___ne__(*args, **kwargs)
 
+    Depth = property(GetDepth,SetDepth,doc="See `GetDepth` and `SetDepth`") 
+    Height = property(GetHeight,SetHeight,doc="See `GetHeight` and `SetHeight`") 
+    Mask = property(GetMask,SetMask,doc="See `GetMask` and `SetMask`") 
+    Palette = property(GetPalette,doc="See `GetPalette`") 
+    Size = property(GetSize,SetSize,doc="See `GetSize` and `SetSize`") 
+    SubBitmap = property(GetSubBitmap,doc="See `GetSubBitmap`") 
+    Width = property(GetWidth,SetWidth,doc="See `GetWidth` and `SetWidth`") 
 _gdi_.Bitmap_swigregister(Bitmap)
 
 def EmptyBitmap(*args, **kwargs):
@@ -727,6 +749,326 @@ def BitmapFromBits(*args, **kwargs):
     val = _gdi_.new_BitmapFromBits(*args, **kwargs)
     return val
 
+
+def _BitmapFromBufferAlpha(*args, **kwargs):
+  """_BitmapFromBufferAlpha(int width, int height, buffer data, buffer alpha) -> Bitmap"""
+  return _gdi_._BitmapFromBufferAlpha(*args, **kwargs)
+
+def _BitmapFromBuffer(*args, **kwargs):
+  """_BitmapFromBuffer(int width, int height, buffer data) -> Bitmap"""
+  return _gdi_._BitmapFromBuffer(*args, **kwargs)
+def BitmapFromBuffer(width, height, dataBuffer, alphaBuffer=None):
+    """
+    Creates a `wx.Bitmap` from the data in dataBuffer.  The dataBuffer
+    parameter must be a Python object that implements the buffer
+    interface, such as a string, array, etc.  The dataBuffer object is
+    expected to contain a series of RGB bytes and be width*height*3
+    bytes long.  A buffer object can optionally be supplied for the
+    image's alpha channel data, and it is expected to be width*height
+    bytes long.  On Windows the RGB values are 'premultiplied' by the
+    alpha values.  (The other platforms do the multiplication
+    themselves.)
+
+    Unlike `wx.ImageFromBuffer` the bitmap created with this function
+    does not share the memory buffer with the buffer object.  This is
+    because the native pixel buffer format varies on different
+    platforms, and so instead an efficient as possible copy of the
+    data is made from the buffer objects to the bitmap's native pixel
+    buffer.  For direct access to a bitmap's pixel buffer see
+    `wx.NativePixelData` and `wx.AlphaPixelData`.
+
+    :see: `wx.Bitmap`, `wx.BitmapFromBufferRGBA`, `wx.NativePixelData`,
+          `wx.AlphaPixelData`, `wx.ImageFromBuffer`
+    """
+    if alphaBuffer is not None:
+        return _gdi_._BitmapFromBufferAlpha(width, height, dataBuffer, alphaBuffer)
+    else:
+        return _gdi_._BitmapFromBuffer(width, height, dataBuffer)
+
+
+def _BitmapFromBufferRGBA(*args, **kwargs):
+  """_BitmapFromBufferRGBA(int width, int height, buffer data) -> Bitmap"""
+  return _gdi_._BitmapFromBufferRGBA(*args, **kwargs)
+def BitmapFromBufferRGBA(width, height, dataBuffer):
+    """
+    Creates a `wx.Bitmap` from the data in dataBuffer.  The dataBuffer
+    parameter must be a Python object that implements the buffer
+    interface, such as a string, array, etc.  The dataBuffer object is
+    expected to contain a series of RGBA bytes (red, green, blue and
+    alpha) and be width*height*4 bytes long.  On Windows the RGB
+    values are 'premultiplied' by the alpha values.  (The other
+    platforms do the multiplication themselves.)
+
+    Unlike `wx.ImageFromBuffer` the bitmap created with this function
+    does not share the memory buffer with the buffer object.  This is
+    because the native pixel buffer format varies on different
+    platforms, and so instead an efficient as possible copy of the
+    data is made from the buffer object to the bitmap's native pixel
+    buffer.  For direct access to a bitmap's pixel buffer see
+    `wx.NativePixelData` and `wx.AlphaPixelData`.
+
+    :see: `wx.Bitmap`, `wx.BitmapFromBuffer`, `wx.NativePixelData`,
+          `wx.AlphaPixelData`, `wx.ImageFromBuffer`
+    """
+    return _gdi_._BitmapFromBufferRGBA(width, height, dataBuffer)
+
+class PixelDataBase(object):
+    """Proxy of C++ PixelDataBase class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+    def GetOrigin(*args, **kwargs):
+        """GetOrigin(self) -> Point"""
+        return _gdi_.PixelDataBase_GetOrigin(*args, **kwargs)
+
+    def GetWidth(*args, **kwargs):
+        """GetWidth(self) -> int"""
+        return _gdi_.PixelDataBase_GetWidth(*args, **kwargs)
+
+    def GetHeight(*args, **kwargs):
+        """GetHeight(self) -> int"""
+        return _gdi_.PixelDataBase_GetHeight(*args, **kwargs)
+
+    def GetSize(*args, **kwargs):
+        """GetSize(self) -> Size"""
+        return _gdi_.PixelDataBase_GetSize(*args, **kwargs)
+
+    def GetRowStride(*args, **kwargs):
+        """GetRowStride(self) -> int"""
+        return _gdi_.PixelDataBase_GetRowStride(*args, **kwargs)
+
+_gdi_.PixelDataBase_swigregister(PixelDataBase)
+
+class NativePixelData(PixelDataBase):
+    """Proxy of C++ NativePixelData class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args): 
+        """
+        __init__(self, Bitmap bmp) -> NativePixelData
+        __init__(self, Bitmap bmp, Rect rect) -> NativePixelData
+        __init__(self, Bitmap bmp, Point pt, Size sz) -> NativePixelData
+        """
+        _gdi_.NativePixelData_swiginit(self,_gdi_.new_NativePixelData(*args))
+    __swig_destroy__ = _gdi_.delete_NativePixelData
+    __del__ = lambda self : None;
+    def GetPixels(*args, **kwargs):
+        """GetPixels(self) -> NativePixelData_Accessor"""
+        return _gdi_.NativePixelData_GetPixels(*args, **kwargs)
+
+    def UseAlpha(*args, **kwargs):
+        """UseAlpha(self)"""
+        return _gdi_.NativePixelData_UseAlpha(*args, **kwargs)
+
+    def __nonzero__(*args, **kwargs):
+        """__nonzero__(self) -> bool"""
+        return _gdi_.NativePixelData___nonzero__(*args, **kwargs)
+
+    def __iter__(self):
+        """
+        Create and return an iterator object for this pixel data
+        object.  (It's really a generator but I won't tell if you
+        don't tell.)
+        """
+        width  = self.GetWidth()
+        height = self.GetHeight()
+        pixels = self.GetPixels()
+        
+
+
+
+        class PixelFacade(object):
+            def Get(self):
+                return pixels.Get()
+            def Set(self, *args, **kw):
+                return pixels.Set(*args, **kw)
+            def __str__(self):
+                return str(self.Get())
+            def __repr__(self):
+                return 'pixel(%d,%d): %s' % (x,y,self.Get())
+            X = property(lambda self: x)
+            Y = property(lambda self: y)
+            
+        pf = PixelFacade()        
+        for y in xrange(height):
+            for x in xrange(width):
+
+
+
+                yield pf    
+                pixels.nextPixel()
+            pixels.MoveTo(self, 0, y)
+
+    Pixels = property(GetPixels,doc="See `GetPixels`") 
+_gdi_.NativePixelData_swigregister(NativePixelData)
+
+class NativePixelData_Accessor(object):
+    """Proxy of C++ NativePixelData_Accessor class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args): 
+        """
+        __init__(self, NativePixelData data) -> NativePixelData_Accessor
+        __init__(self, Bitmap bmp, NativePixelData data) -> NativePixelData_Accessor
+        __init__(self) -> NativePixelData_Accessor
+        """
+        _gdi_.NativePixelData_Accessor_swiginit(self,_gdi_.new_NativePixelData_Accessor(*args))
+    __swig_destroy__ = _gdi_.delete_NativePixelData_Accessor
+    __del__ = lambda self : None;
+    def Reset(*args, **kwargs):
+        """Reset(self, NativePixelData data)"""
+        return _gdi_.NativePixelData_Accessor_Reset(*args, **kwargs)
+
+    def IsOk(*args, **kwargs):
+        """IsOk(self) -> bool"""
+        return _gdi_.NativePixelData_Accessor_IsOk(*args, **kwargs)
+
+    def nextPixel(*args, **kwargs):
+        """nextPixel(self)"""
+        return _gdi_.NativePixelData_Accessor_nextPixel(*args, **kwargs)
+
+    def Offset(*args, **kwargs):
+        """Offset(self, NativePixelData data, int x, int y)"""
+        return _gdi_.NativePixelData_Accessor_Offset(*args, **kwargs)
+
+    def OffsetX(*args, **kwargs):
+        """OffsetX(self, NativePixelData data, int x)"""
+        return _gdi_.NativePixelData_Accessor_OffsetX(*args, **kwargs)
+
+    def OffsetY(*args, **kwargs):
+        """OffsetY(self, NativePixelData data, int y)"""
+        return _gdi_.NativePixelData_Accessor_OffsetY(*args, **kwargs)
+
+    def MoveTo(*args, **kwargs):
+        """MoveTo(self, NativePixelData data, int x, int y)"""
+        return _gdi_.NativePixelData_Accessor_MoveTo(*args, **kwargs)
+
+    def Set(*args, **kwargs):
+        """Set(self, byte red, byte green, byte blue)"""
+        return _gdi_.NativePixelData_Accessor_Set(*args, **kwargs)
+
+    def Get(*args, **kwargs):
+        """Get(self) -> PyObject"""
+        return _gdi_.NativePixelData_Accessor_Get(*args, **kwargs)
+
+_gdi_.NativePixelData_Accessor_swigregister(NativePixelData_Accessor)
+
+class AlphaPixelData(PixelDataBase):
+    """Proxy of C++ AlphaPixelData class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args): 
+        """
+        __init__(self, Bitmap bmp) -> AlphaPixelData
+        __init__(self, Bitmap bmp, Rect rect) -> AlphaPixelData
+        __init__(self, Bitmap bmp, Point pt, Size sz) -> AlphaPixelData
+        """
+        _gdi_.AlphaPixelData_swiginit(self,_gdi_.new_AlphaPixelData(*args))
+        self.UseAlpha()
+
+    __swig_destroy__ = _gdi_.delete_AlphaPixelData
+    __del__ = lambda self : None;
+    def GetPixels(*args, **kwargs):
+        """GetPixels(self) -> AlphaPixelData_Accessor"""
+        return _gdi_.AlphaPixelData_GetPixels(*args, **kwargs)
+
+    def UseAlpha(*args, **kwargs):
+        """UseAlpha(self)"""
+        return _gdi_.AlphaPixelData_UseAlpha(*args, **kwargs)
+
+    def __nonzero__(*args, **kwargs):
+        """__nonzero__(self) -> bool"""
+        return _gdi_.AlphaPixelData___nonzero__(*args, **kwargs)
+
+    def __iter__(self):
+        """
+        Create and return an iterator object for this pixel data
+        object.  (It's really a generator but I won't tell if you
+        don't tell.)
+        """
+        width  = self.GetWidth()
+        height = self.GetHeight()
+        pixels = self.GetPixels()
+        
+
+
+
+        class PixelFacade(object):
+            def Get(self):
+                return pixels.Get()
+            def Set(self, *args, **kw):
+                return pixels.Set(*args, **kw)
+            def __str__(self):
+                return str(self.Get())
+            def __repr__(self):
+                return 'pixel(%d,%d): %s' % (x,y,self.Get())
+            X = property(lambda self: x)
+            Y = property(lambda self: y)
+            
+        pf = PixelFacade()        
+        for y in xrange(height):
+            for x in xrange(width):
+
+
+
+                yield pf    
+                pixels.nextPixel()
+            pixels.MoveTo(self, 0, y)
+
+    Pixels = property(GetPixels,doc="See `GetPixels`") 
+_gdi_.AlphaPixelData_swigregister(AlphaPixelData)
+
+class AlphaPixelData_Accessor(object):
+    """Proxy of C++ AlphaPixelData_Accessor class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args): 
+        """
+        __init__(self, AlphaPixelData data) -> AlphaPixelData_Accessor
+        __init__(self, Bitmap bmp, AlphaPixelData data) -> AlphaPixelData_Accessor
+        __init__(self) -> AlphaPixelData_Accessor
+        """
+        _gdi_.AlphaPixelData_Accessor_swiginit(self,_gdi_.new_AlphaPixelData_Accessor(*args))
+    __swig_destroy__ = _gdi_.delete_AlphaPixelData_Accessor
+    __del__ = lambda self : None;
+    def Reset(*args, **kwargs):
+        """Reset(self, AlphaPixelData data)"""
+        return _gdi_.AlphaPixelData_Accessor_Reset(*args, **kwargs)
+
+    def IsOk(*args, **kwargs):
+        """IsOk(self) -> bool"""
+        return _gdi_.AlphaPixelData_Accessor_IsOk(*args, **kwargs)
+
+    def nextPixel(*args, **kwargs):
+        """nextPixel(self)"""
+        return _gdi_.AlphaPixelData_Accessor_nextPixel(*args, **kwargs)
+
+    def Offset(*args, **kwargs):
+        """Offset(self, AlphaPixelData data, int x, int y)"""
+        return _gdi_.AlphaPixelData_Accessor_Offset(*args, **kwargs)
+
+    def OffsetX(*args, **kwargs):
+        """OffsetX(self, AlphaPixelData data, int x)"""
+        return _gdi_.AlphaPixelData_Accessor_OffsetX(*args, **kwargs)
+
+    def OffsetY(*args, **kwargs):
+        """OffsetY(self, AlphaPixelData data, int y)"""
+        return _gdi_.AlphaPixelData_Accessor_OffsetY(*args, **kwargs)
+
+    def MoveTo(*args, **kwargs):
+        """MoveTo(self, AlphaPixelData data, int x, int y)"""
+        return _gdi_.AlphaPixelData_Accessor_MoveTo(*args, **kwargs)
+
+    def Set(*args, **kwargs):
+        """Set(self, byte red, byte green, byte blue, byte alpha)"""
+        return _gdi_.AlphaPixelData_Accessor_Set(*args, **kwargs)
+
+    def Get(*args, **kwargs):
+        """Get(self) -> PyObject"""
+        return _gdi_.AlphaPixelData_Accessor_Get(*args, **kwargs)
+
+_gdi_.AlphaPixelData_Accessor_swigregister(AlphaPixelData_Accessor)
+
 class Mask(_core.Object):
     """
     This class encapsulates a monochrome mask bitmap, where the masked
@@ -817,6 +1159,9 @@ class Icon(GDIObject):
         return _gdi_.Icon_CopyFromBitmap(*args, **kwargs)
 
     def __nonzero__(self): return self.Ok() 
+    Depth = property(GetDepth,SetDepth,doc="See `GetDepth` and `SetDepth`") 
+    Height = property(GetHeight,SetHeight,doc="See `GetHeight` and `SetHeight`") 
+    Width = property(GetWidth,SetWidth,doc="See `GetWidth` and `SetWidth`") 
 _gdi_.Icon_swigregister(Icon)
 
 def EmptyIcon(*args, **kwargs):
@@ -869,6 +1214,8 @@ class IconLocation(object):
         """GetIndex(self) -> int"""
         return _gdi_.IconLocation_GetIndex(*args, **kwargs)
 
+    FileName = property(GetFileName,SetFileName,doc="See `GetFileName` and `SetFileName`") 
+    Index = property(GetIndex,SetIndex,doc="See `GetIndex` and `SetIndex`") 
 _gdi_.IconLocation_swigregister(IconLocation)
 
 class IconBundle(object):
@@ -892,6 +1239,7 @@ class IconBundle(object):
         """GetIcon(self, Size size) -> Icon"""
         return _gdi_.IconBundle_GetIcon(*args, **kwargs)
 
+    Icon = property(GetIcon,doc="See `GetIcon`") 
 _gdi_.IconBundle_swigregister(IconBundle)
 
 def IconBundleFromFile(*args, **kwargs):
@@ -1407,6 +1755,13 @@ class NativeFontInfo(object):
         """ToUserString(self) -> String"""
         return _gdi_.NativeFontInfo_ToUserString(*args, **kwargs)
 
+    Encoding = property(GetEncoding,SetEncoding,doc="See `GetEncoding` and `SetEncoding`") 
+    FaceName = property(GetFaceName,SetFaceName,doc="See `GetFaceName` and `SetFaceName`") 
+    Family = property(GetFamily,SetFamily,doc="See `GetFamily` and `SetFamily`") 
+    PointSize = property(GetPointSize,SetPointSize,doc="See `GetPointSize` and `SetPointSize`") 
+    Style = property(GetStyle,SetStyle,doc="See `GetStyle` and `SetStyle`") 
+    Underlined = property(GetUnderlined,SetUnderlined,doc="See `GetUnderlined` and `SetUnderlined`") 
+    Weight = property(GetWeight,SetWeight,doc="See `GetWeight` and `SetWeight`") 
 _gdi_.NativeFontInfo_swigregister(NativeFontInfo)
 
 class NativeEncodingInfo(object):
@@ -1513,6 +1868,7 @@ class FontMapper(object):
         """SetDialogTitle(self, String title)"""
         return _gdi_.FontMapper_SetDialogTitle(*args, **kwargs)
 
+    AltForEncoding = property(GetAltForEncoding,doc="See `GetAltForEncoding`") 
 _gdi_.FontMapper_swigregister(FontMapper)
 
 def FontMapper_Get(*args):
@@ -1873,6 +2229,21 @@ class Font(GDIObject):
         return _gdi_.Font_SetDefaultEncoding(*args, **kwargs)
 
     SetDefaultEncoding = staticmethod(SetDefaultEncoding)
+    Encoding = property(GetEncoding,SetEncoding,doc="See `GetEncoding` and `SetEncoding`") 
+    FaceName = property(GetFaceName,SetFaceName,doc="See `GetFaceName` and `SetFaceName`") 
+    Family = property(GetFamily,SetFamily,doc="See `GetFamily` and `SetFamily`") 
+    FamilyString = property(GetFamilyString,doc="See `GetFamilyString`") 
+    NativeFontInfo = property(GetNativeFontInfo,SetNativeFontInfo,doc="See `GetNativeFontInfo` and `SetNativeFontInfo`") 
+    NativeFontInfoDesc = property(GetNativeFontInfoDesc,doc="See `GetNativeFontInfoDesc`") 
+    NativeFontInfoUserDesc = property(GetNativeFontInfoUserDesc,SetNativeFontInfoUserDesc,doc="See `GetNativeFontInfoUserDesc` and `SetNativeFontInfoUserDesc`") 
+    NoAntiAliasing = property(GetNoAntiAliasing,SetNoAntiAliasing,doc="See `GetNoAntiAliasing` and `SetNoAntiAliasing`") 
+    PixelSize = property(GetPixelSize,SetPixelSize,doc="See `GetPixelSize` and `SetPixelSize`") 
+    PointSize = property(GetPointSize,SetPointSize,doc="See `GetPointSize` and `SetPointSize`") 
+    Style = property(GetStyle,SetStyle,doc="See `GetStyle` and `SetStyle`") 
+    StyleString = property(GetStyleString,doc="See `GetStyleString`") 
+    Underlined = property(GetUnderlined,SetUnderlined,doc="See `GetUnderlined` and `SetUnderlined`") 
+    Weight = property(GetWeight,SetWeight,doc="See `GetWeight` and `SetWeight`") 
+    WeightString = property(GetWeightString,doc="See `GetWeightString`") 
 _gdi_.Font_swigregister(Font)
 
 def FontFromNativeInfo(*args, **kwargs):
@@ -2038,6 +2409,9 @@ def FontEnumerator_IsValidFacename(*args, **kwargs):
 
 #---------------------------------------------------------------------------
 
+Layout_Default = _gdi_.Layout_Default
+Layout_LeftToRight = _gdi_.Layout_LeftToRight
+Layout_RightToLeft = _gdi_.Layout_RightToLeft
 LANGUAGE_DEFAULT = _gdi_.LANGUAGE_DEFAULT
 LANGUAGE_UNKNOWN = _gdi_.LANGUAGE_UNKNOWN
 LANGUAGE_ABKHAZIAN = _gdi_.LANGUAGE_ABKHAZIAN
@@ -2392,6 +2766,12 @@ class Locale(object):
         """GetName(self) -> String"""
         return _gdi_.Locale_GetName(*args, **kwargs)
 
+    CanonicalName = property(GetCanonicalName,doc="See `GetCanonicalName`") 
+    Language = property(GetLanguage,doc="See `GetLanguage`") 
+    Locale = property(GetLocale,doc="See `GetLocale`") 
+    Name = property(GetName,doc="See `GetName`") 
+    String = property(GetString,doc="See `GetString`") 
+    SysName = property(GetSysName,doc="See `GetSysName`") 
 _gdi_.Locale_swigregister(Locale)
 
 def Locale_GetSystemLanguage(*args):
@@ -2426,6 +2806,34 @@ def Locale_AddLanguage(*args, **kwargs):
   """Locale_AddLanguage(LanguageInfo info)"""
   return _gdi_.Locale_AddLanguage(*args, **kwargs)
 
+class PyLocale(Locale):
+    """Proxy of C++ PyLocale class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
+        """__init__(self, int language=-1, int flags=wxLOCALE_LOAD_DEFAULT|wxLOCALE_CONV_ENCODING) -> PyLocale"""
+        _gdi_.PyLocale_swiginit(self,_gdi_.new_PyLocale(*args, **kwargs))
+        self._setCallbackInfo(self, PyLocale)
+
+    __swig_destroy__ = _gdi_.delete_PyLocale
+    __del__ = lambda self : None;
+    def _setCallbackInfo(*args, **kwargs):
+        """_setCallbackInfo(self, PyObject self, PyObject _class)"""
+        return _gdi_.PyLocale__setCallbackInfo(*args, **kwargs)
+
+    def GetSingularString(*args, **kwargs):
+        """GetSingularString(self, wxChar szOrigString, wxChar szDomain=None) -> wxChar"""
+        return _gdi_.PyLocale_GetSingularString(*args, **kwargs)
+
+    def GetPluralString(*args, **kwargs):
+        """
+        GetPluralString(self, wxChar szOrigString, wxChar szOrigString2, size_t n, 
+            wxChar szDomain=None) -> wxChar
+        """
+        return _gdi_.PyLocale_GetPluralString(*args, **kwargs)
+
+_gdi_.PyLocale_swigregister(PyLocale)
+
 
 def GetLocale(*args):
   """GetLocale() -> Locale"""
@@ -2477,7 +2885,9 @@ _gdi_.EncodingConverter_swigregister(EncodingConverter)
 def GetTranslation(*args):
   """
     GetTranslation(String str) -> String
+    GetTranslation(String str, String domain) -> String
     GetTranslation(String str, String strPlural, size_t n) -> String
+    GetTranslation(String str, String strPlural, size_t n, String domain) -> String
     """
   return _gdi_.GetTranslation(*args)
 
@@ -2498,7 +2908,7 @@ def EncodingConverter_CanConvert(*args, **kwargs):
 # to the default catalog path.
 if wx.Platform == "__WXMSW__":
     import os
-    _localedir = os.path.join(os.path.split(__file__)[0], "locale")
+    _localedir = os.path.join(os.path.split(__file__)[0], "i18n")
     Locale.AddCatalogLookupPathPrefix(_localedir)
     del os
 
@@ -3296,7 +3706,7 @@ class DC(_core.Object):
     def GetMultiLineTextExtent(*args, **kwargs):
         """
         GetMultiLineTextExtent(wxString string, Font font=None) ->
-           (width, height, descent, externalLeading)
+           (width, height, lineHeight)
 
         Get the width, height, decent and leading of the text using the
         current or specified font. Works for single as well as multi-line
@@ -3969,6 +4379,35 @@ class DC(_core.Object):
            raise ValueError('backgrounds and coords must have same length')
         return  self._DrawTextList(textList, coords, foregrounds, backgrounds)
 
+    Background = property(GetBackground,SetBackground,doc="See `GetBackground` and `SetBackground`") 
+    BackgroundMode = property(GetBackgroundMode,SetBackgroundMode,doc="See `GetBackgroundMode` and `SetBackgroundMode`") 
+    BoundingBox = property(GetBoundingBox,doc="See `GetBoundingBox`") 
+    Brush = property(GetBrush,SetBrush,doc="See `GetBrush` and `SetBrush`") 
+    CharHeight = property(GetCharHeight,doc="See `GetCharHeight`") 
+    CharWidth = property(GetCharWidth,doc="See `GetCharWidth`") 
+    ClippingBox = property(GetClippingBox,doc="See `GetClippingBox`") 
+    ClippingRect = property(GetClippingRect,SetClippingRect,doc="See `GetClippingRect` and `SetClippingRect`") 
+    Depth = property(GetDepth,doc="See `GetDepth`") 
+    DeviceOrigin = property(GetDeviceOrigin,SetDeviceOrigin,doc="See `GetDeviceOrigin` and `SetDeviceOrigin`") 
+    Font = property(GetFont,SetFont,doc="See `GetFont` and `SetFont`") 
+    FullTextExtent = property(GetFullTextExtent,doc="See `GetFullTextExtent`") 
+    LogicalFunction = property(GetLogicalFunction,SetLogicalFunction,doc="See `GetLogicalFunction` and `SetLogicalFunction`") 
+    LogicalOrigin = property(GetLogicalOrigin,SetLogicalOrigin,doc="See `GetLogicalOrigin` and `SetLogicalOrigin`") 
+    LogicalScale = property(GetLogicalScale,SetLogicalScale,doc="See `GetLogicalScale` and `SetLogicalScale`") 
+    MapMode = property(GetMapMode,SetMapMode,doc="See `GetMapMode` and `SetMapMode`") 
+    MultiLineTextExtent = property(GetMultiLineTextExtent,doc="See `GetMultiLineTextExtent`") 
+    Optimization = property(GetOptimization,SetOptimization,doc="See `GetOptimization` and `SetOptimization`") 
+    PPI = property(GetPPI,doc="See `GetPPI`") 
+    PartialTextExtents = property(GetPartialTextExtents,doc="See `GetPartialTextExtents`") 
+    Pen = property(GetPen,SetPen,doc="See `GetPen` and `SetPen`") 
+    Pixel = property(GetPixel,doc="See `GetPixel`") 
+    PixelPoint = property(GetPixelPoint,doc="See `GetPixelPoint`") 
+    Size = property(GetSize,doc="See `GetSize`") 
+    SizeMM = property(GetSizeMM,doc="See `GetSizeMM`") 
+    TextBackground = property(GetTextBackground,SetTextBackground,doc="See `GetTextBackground` and `SetTextBackground`") 
+    TextExtent = property(GetTextExtent,doc="See `GetTextExtent`") 
+    TextForeground = property(GetTextForeground,SetTextForeground,doc="See `GetTextForeground` and `SetTextForeground`") 
+    UserScale = property(GetUserScale,SetUserScale,doc="See `GetUserScale` and `SetUserScale`") 
 _gdi_.DC_swigregister(DC)
 
 #---------------------------------------------------------------------------
@@ -4464,6 +4903,8 @@ class ImageList(_core.Object):
         """GetSize(index) -> (width,height)"""
         return _gdi_.ImageList_GetSize(*args, **kwargs)
 
+    ImageCount = property(GetImageCount,doc="See `GetImageCount`") 
+    Size = property(GetSize,doc="See `GetSize`") 
 _gdi_.ImageList_swigregister(ImageList)
 
 #---------------------------------------------------------------------------
@@ -4870,6 +5311,11 @@ class Effects(_core.Object):
         """TileBitmap(self, Rect rect, DC dc, Bitmap bitmap) -> bool"""
         return _gdi_.Effects_TileBitmap(*args, **kwargs)
 
+    DarkShadow = property(GetDarkShadow,SetDarkShadow,doc="See `GetDarkShadow` and `SetDarkShadow`") 
+    FaceColour = property(GetFaceColour,SetFaceColour,doc="See `GetFaceColour` and `SetFaceColour`") 
+    HighlightColour = property(GetHighlightColour,SetHighlightColour,doc="See `GetHighlightColour` and `SetHighlightColour`") 
+    LightShadow = property(GetLightShadow,SetLightShadow,doc="See `GetLightShadow` and `SetLightShadow`") 
+    MediumShadow = property(GetMediumShadow,SetMediumShadow,doc="See `GetMediumShadow` and `SetMediumShadow`") 
 _gdi_.Effects_swigregister(Effects)
 
 #---------------------------------------------------------------------------
@@ -5104,7 +5550,7 @@ class RendererNative(object):
         Return the generic implementation of the renderer. Under some
         platforms, this is the default renderer implementation, others have
         platform-specific default renderer which can be retrieved by calling
-        `GetDefault`.
+        `wx.RendererNative.GetDefault`.
         """
         return _gdi_.RendererNative_GetGeneric(*args, **kwargs)
 
@@ -5114,9 +5560,9 @@ class RendererNative(object):
         GetDefault() -> RendererNative
 
         Return the default (native) implementation for this platform -- this
-        is also the one used by default but this may be changed by calling `Set`
-        in which case the return value of this method may be different from
-        the return value of `Get`.
+        is also the one used by default but this may be changed by calling
+        `wx.RendererNative.Set` in which case the return value of this method
+        may be different from the return value of `wx.RendererNative.Get`.
         """
         return _gdi_.RendererNative_GetDefault(*args, **kwargs)
 
@@ -5157,7 +5603,7 @@ def RendererNative_GetGeneric(*args):
     Return the generic implementation of the renderer. Under some
     platforms, this is the default renderer implementation, others have
     platform-specific default renderer which can be retrieved by calling
-    `GetDefault`.
+    `wx.RendererNative.GetDefault`.
     """
   return _gdi_.RendererNative_GetGeneric(*args)
 
@@ -5166,9 +5612,9 @@ def RendererNative_GetDefault(*args):
     RendererNative_GetDefault() -> RendererNative
 
     Return the default (native) implementation for this platform -- this
-    is also the one used by default but this may be changed by calling `Set`
-    in which case the return value of this method may be different from
-    the return value of `Get`.
+    is also the one used by default but this may be changed by calling
+    `wx.RendererNative.Set` in which case the return value of this method
+    may be different from the return value of `wx.RendererNative.Get`.
     """
   return _gdi_.RendererNative_GetDefault(*args)
 
@@ -5680,8 +6126,10 @@ class PseudoDC(_core.Object):
         font, and the current text foreground and background colours.
 
         The coordinates refer to the top-left corner of the rectangle bounding
-        the string. See `GetTextExtent` for how to get the dimensions of a
-        text string, which can be used to position the text more precisely.
+        the string. See `wx.DC.GetTextExtent` for how to get the dimensions of
+        a text string, which can be used to position the text more precisely,
+        (you will need to use a real DC with GetTextExtent as wx.PseudoDC does
+        not implement it.)
 
         **NOTE**: under wxGTK the current logical function is used by this
         function but it is ignored by wxMSW. Thus, you should avoid using
@@ -5697,8 +6145,10 @@ class PseudoDC(_core.Object):
         font, and the current text foreground and background colours.
 
         The coordinates refer to the top-left corner of the rectangle bounding
-        the string. See `GetTextExtent` for how to get the dimensions of a
-        text string, which can be used to position the text more precisely.
+        the string. See `wx.DC.GetTextExtent` for how to get the dimensions of
+        a text string, which can be used to position the text more precisely,
+        (you will need to use a real DC with GetTextExtent as wx.PseudoDC does
+        not implement it.)
 
         **NOTE**: under wxGTK the current logical function is used by this
         function but it is ignored by wxMSW. Thus, you should avoid using
@@ -5881,9 +6331,8 @@ class PseudoDC(_core.Object):
         SetLogicalFunction(self, int function)
 
         Sets the current logical function for the device context. This
-        determines how a source pixel (from a pen or brush colour, or source
-        device context if using `Blit`) combines with a destination pixel in
-        the current device context.
+        determines how a source pixel (from a pen or brush colour, combines
+        with a destination pixel in the current device context.
 
         The possible values and their meaning in terms of source and
         destination pixel values are as follows: