X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/83448d71476c44b449f09395cda06fa72b19a50e..52f52ebc4e0be6a9899d328b08db9eb14629d219:/wxPython/src/msw/gdi.py diff --git a/wxPython/src/msw/gdi.py b/wxPython/src/msw/gdi.py index 142e4bac19..b9da9091e1 100644 --- a/wxPython/src/msw/gdi.py +++ b/wxPython/src/msw/gdi.py @@ -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,45 +81,104 @@ 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()) @@ -115,17 +195,29 @@ 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 +ColorRGB = ColourRGB + class Palette(GDIObject): def __repr__(self): return "<%s.%s; proxy of C++ wxPalette instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,) @@ -231,6 +323,14 @@ class Pen(GDIObject): """GetDashes() -> PyObject""" return _gdi.Pen_GetDashes(*args, **kwargs) + def __eq__(*args, **kwargs): + """__eq__(Pen other) -> bool""" + return _gdi.Pen___eq__(*args, **kwargs) + + def __ne__(*args, **kwargs): + """__ne__(Pen other) -> bool""" + return _gdi.Pen___ne__(*args, **kwargs) + def GetDashCount(*args, **kwargs): """GetDashCount() -> int""" return _gdi.Pen_GetDashCount(*args, **kwargs) @@ -580,9 +680,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 @@ -596,17 +697,7 @@ 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,) @@ -1492,11 +1583,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): @@ -2166,8 +2257,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) @@ -2516,6 +2607,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 @@ -2894,14 +2989,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) @@ -2914,9 +3018,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 @@ -3521,6 +3625,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" @@ -3624,6 +3771,7 @@ _gdi.FontList_swigregister(FontListPtr) #--------------------------------------------------------------------------- +NullColor = NullColour #--------------------------------------------------------------------------- class Effects(core.Object): @@ -3697,49 +3845,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