]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/msw/gdi.py
reSWIGged
[wxWidgets.git] / wxPython / src / msw / gdi.py
index 40a48c5cb2196047fc4e847bf6590d06a8d349df..b9da9091e1e5d997b84da216869ad490ef51a897 100644 (file)
@@ -45,10 +45,31 @@ _gdi.GDIObject_swigregister(GDIObjectPtr)
 #---------------------------------------------------------------------------
 
 class Colour(core.Object):
 #---------------------------------------------------------------------------
 
 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):
     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
         newobj = _gdi.new_Colour(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -60,45 +81,104 @@ class Colour(core.Object):
         except: pass
 
     def Red(*args, **kwargs):
         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):
         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):
         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):
         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):
         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):
         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)
 
         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):
     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):
         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):
 
     def Get(*args, **kwargs):
-        """Get() -> PyObject"""
+        """
+        Get() -> (r, g, b)
+
+        Returns the RGB intensity values as a tuple.
+        """
         return _gdi.Colour_Get(*args, **kwargs)
 
         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())
     asTuple = Get
     def __str__(self):                  return str(self.asTuple())
     def __repr__(self):                 return 'wx.Colour' + str(self.asTuple())
@@ -115,13 +195,21 @@ class ColourPtr(Colour):
 _gdi.Colour_swigregister(ColourPtr)
 
 def NamedColour(*args, **kwargs):
 _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):
     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
     val = _gdi.new_ColourRGB(*args, **kwargs)
     val.thisown = 1
     return val
@@ -236,9 +324,13 @@ class Pen(GDIObject):
         return _gdi.Pen_GetDashes(*args, **kwargs)
 
     def __eq__(*args, **kwargs):
         return _gdi.Pen_GetDashes(*args, **kwargs)
 
     def __eq__(*args, **kwargs):
-        """__eq__(Pen pen) -> bool"""
+        """__eq__(Pen other) -> bool"""
         return _gdi.Pen___eq__(*args, **kwargs)
 
         return _gdi.Pen___eq__(*args, **kwargs)
 
+    def __ne__(*args, **kwargs):
+        """__ne__(Pen other) -> bool"""
+        return _gdi.Pen___ne__(*args, **kwargs)
+
     def GetDashCount(*args, **kwargs):
         """GetDashCount() -> int"""
         return _gdi.Pen_GetDashCount(*args, **kwargs)
     def GetDashCount(*args, **kwargs):
         """GetDashCount() -> int"""
         return _gdi.Pen_GetDashCount(*args, **kwargs)
@@ -1491,11 +1583,11 @@ class Font(GDIObject):
 
     def __nonzero__(self): return self.Ok() 
     def __eq__(*args, **kwargs):
 
     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):
         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):
         return _gdi.Font___ne__(*args, **kwargs)
 
     def GetPointSize(*args, **kwargs):
@@ -2894,16 +2986,13 @@ def MemoryDCFromDC(*args, **kwargs):
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
-BUFFER_DC_OVERWRITE_BG = _gdi.BUFFER_DC_OVERWRITE_BG
-BUFFER_DC_PRESERVE_BG = _gdi.BUFFER_DC_PRESERVE_BG
-BUFFER_DC_DEFAULT = _gdi.BUFFER_DC_DEFAULT
 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):
         """
         __init__(DC dc, Bitmap buffer) -> BufferedDC
 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):
         """
         __init__(DC dc, Bitmap buffer) -> BufferedDC
-        __init__(DC dc, Size area, int flags=BUFFER_DC_DEFAULT) -> BufferedDC
+        __init__(DC dc, Size area) -> BufferedDC
         """
         newobj = _gdi.new_BufferedDC(*args)
         self.this = newobj.this
         """
         newobj = _gdi.new_BufferedDC(*args)
         self.this = newobj.this
@@ -2911,6 +3000,12 @@ class BufferedDC(MemoryDC):
         del newobj.thisown
         self._dc = args[0] # save a ref so the other dc will not be deleted before self
 
         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)
     def UnMask(*args, **kwargs):
         """UnMask()"""
         return _gdi.BufferedDC_UnMask(*args, **kwargs)
@@ -2924,7 +3019,7 @@ class BufferedDCPtr(BufferedDC):
 _gdi.BufferedDC_swigregister(BufferedDCPtr)
 
 def BufferedDCInternalBuffer(*args):
 _gdi.BufferedDC_swigregister(BufferedDCPtr)
 
 def BufferedDCInternalBuffer(*args):
-    """BufferedDCInternalBuffer(DC dc, Size area, int flags=BUFFER_DC_DEFAULT) -> BufferedDC"""
+    """BufferedDCInternalBuffer(DC dc, Size area) -> BufferedDC"""
     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
     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
@@ -2933,12 +3028,9 @@ def BufferedDCInternalBuffer(*args):
 class BufferedPaintDC(BufferedDC):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxBufferedPaintDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
 class BufferedPaintDC(BufferedDC):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxBufferedPaintDC instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args):
-        """
-        __init__(Window window, Bitmap buffer) -> BufferedPaintDC
-        __init__(Window window, int flags=BUFFER_DC_DEFAULT) -> BufferedPaintDC
-        """
-        newobj = _gdi.new_BufferedPaintDC(*args)
+    def __init__(self, *args, **kwargs):
+        """__init__(Window window, Bitmap buffer=NullBitmap) -> BufferedPaintDC"""
+        newobj = _gdi.new_BufferedPaintDC(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
         del newobj.thisown
         self.this = newobj.this
         self.thisown = 1
         del newobj.thisown