X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fc46b7f37c8818707e3921ce42892d5c6859c096..36751d973eca2dd1c04ab3ac0c9d11d93077bf11:/wxPython/src/gtk/_gdi.py?ds=inline diff --git a/wxPython/src/gtk/_gdi.py b/wxPython/src/gtk/_gdi.py index 08dec1ccae..335c1b37a1 100644 --- a/wxPython/src/gtk/_gdi.py +++ b/wxPython/src/gtk/_gdi.py @@ -146,15 +146,16 @@ class Colour(_core.Object): """ return _gdi_.Colour_Alpha(*args, **kwargs) - def Ok(*args, **kwargs): + def IsOk(*args, **kwargs): """ - Ok(self) -> bool + IsOk(self) -> bool Returns True if the colour object is valid (the colour has been initialised with RGB values). """ - return _gdi_.Colour_Ok(*args, **kwargs) + return _gdi_.Colour_IsOk(*args, **kwargs) + Ok = IsOk def Set(*args, **kwargs): """ Set(self, byte red, byte green, byte blue, byte alpha=ALPHA_OPAQUE) @@ -239,10 +240,14 @@ class Colour(_core.Object): asTuple = wx._deprecated(Get, "asTuple is deprecated, use `Get` instead") def __str__(self): return str(self.Get(True)) def __repr__(self): return 'wx.Colour' + str(self.Get(True)) - def __nonzero__(self): return self.Ok() + def __len__(self): return len(self.Get()) + def __getitem__(self, index): return self.Get()[index] + def __nonzero__(self): return self.IsOk() __safe_for_unpickling__ = True 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): @@ -289,11 +294,13 @@ class Palette(GDIObject): """GetColoursCount(self) -> int""" return _gdi_.Palette_GetColoursCount(*args, **kwargs) - def Ok(*args, **kwargs): - """Ok(self) -> bool""" - return _gdi_.Palette_Ok(*args, **kwargs) + def IsOk(*args, **kwargs): + """IsOk(self) -> bool""" + return _gdi_.Palette_IsOk(*args, **kwargs) - def __nonzero__(self): return self.Ok() + Ok = IsOk + def __nonzero__(self): return self.IsOk() + ColoursCount = property(GetColoursCount,doc="See `GetColoursCount`") _gdi_.Palette_swigregister(Palette) #--------------------------------------------------------------------------- @@ -327,10 +334,11 @@ class Pen(GDIObject): """GetWidth(self) -> int""" return _gdi_.Pen_GetWidth(*args, **kwargs) - def Ok(*args, **kwargs): - """Ok(self) -> bool""" - return _gdi_.Pen_Ok(*args, **kwargs) + def IsOk(*args, **kwargs): + """IsOk(self) -> bool""" + return _gdi_.Pen_IsOk(*args, **kwargs) + Ok = IsOk def SetCap(*args, **kwargs): """SetCap(self, int cap_style)""" return _gdi_.Pen_SetCap(*args, **kwargs) @@ -373,6 +381,7 @@ class Pen(GDIObject): """GetDashCount(self) -> int""" return _gdi_.Pen_GetDashCount(*args, **kwargs) + DashCount = property(GetDashCount,doc="See `GetDashCount`") def __eq__(*args, **kwargs): """__eq__(self, Pen other) -> bool""" return _gdi_.Pen___eq__(*args, **kwargs) @@ -381,7 +390,13 @@ class Pen(GDIObject): """__ne__(self, Pen other) -> bool""" return _gdi_.Pen___ne__(*args, **kwargs) - def __nonzero__(self): return self.Ok() + def __nonzero__(self): return self.IsOk() + Cap = property(GetCap,SetCap,doc="See `GetCap` and `SetCap`") + Colour = property(GetColour,SetColour,doc="See `GetColour` and `SetColour`") + Dashes = property(GetDashes,SetDashes,doc="See `GetDashes` and `SetDashes`") + Join = property(GetJoin,SetJoin,doc="See `GetJoin` and `SetJoin`") + Style = property(GetStyle,SetStyle,doc="See `GetStyle` and `SetStyle`") + Width = property(GetWidth,SetWidth,doc="See `GetWidth` and `SetWidth`") _gdi_.Pen_swigregister(Pen) #--------------------------------------------------------------------------- @@ -391,6 +406,18 @@ class Brush(GDIObject): A brush is a drawing tool for filling in areas. It is used for painting the background of rectangles, ellipses, etc. when drawing on a `wx.DC`. It has a colour and a style. + + :warning: Do not create instances of wx.Brush before the `wx.App` + object has been created because, depending on the platform, + required internal data structures may not have been initialized + yet. Instead create your brushes in the app's OnInit or as they + are needed for drawing. + + :note: On monochrome displays all brushes are white, unless the colour + really is black. + + :see: `wx.BrushList`, `wx.DC`, `wx.DC.SetBrush` + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr @@ -398,7 +425,24 @@ class Brush(GDIObject): """ __init__(self, Colour colour, int style=SOLID) -> Brush - Constructs a brush from a `wx.Colour` object and a style. + Constructs a brush from a `wx.Colour` object and a style.The style parameter may be one of the following: + + =================== ============================= + Style Meaning + =================== ============================= + wx.TRANSPARENT Transparent (no fill). + wx.SOLID Solid. + wx.STIPPLE Uses a bitmap as a stipple. + wx.BDIAGONAL_HATCH Backward diagonal hatch. + wx.CROSSDIAG_HATCH Cross-diagonal hatch. + wx.FDIAGONAL_HATCH Forward diagonal hatch. + wx.CROSS_HATCH Cross hatch. + wx.HORIZONTAL_HATCH Horizontal hatch. + wx.VERTICAL_HATCH Vertical hatch. + =================== ============================= + + :see: `wx.BrushFromBitmap` + """ _gdi_.Brush_swiginit(self,_gdi_.new_Brush(*args, **kwargs)) __swig_destroy__ = _gdi_.delete_Brush @@ -462,15 +506,19 @@ class Brush(GDIObject): """ return _gdi_.Brush_IsHatch(*args, **kwargs) - def Ok(*args, **kwargs): + def IsOk(*args, **kwargs): """ - Ok(self) -> bool + IsOk(self) -> bool Returns True if the brush is initialised and valid. """ - return _gdi_.Brush_Ok(*args, **kwargs) + return _gdi_.Brush_IsOk(*args, **kwargs) - def __nonzero__(self): return self.Ok() + Ok = IsOk + def __nonzero__(self): return self.IsOk() + 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): @@ -490,6 +538,23 @@ class Bitmap(GDIObject): device context (instance of `wx.MemoryDC`). This enables the bitmap to be copied to a window or memory device context using `wx.DC.Blit`, or to be used as a drawing surface. + + The BMP and XMP image file formats are supported on all platforms by + wx.Bitmap. Other formats are automatically loaded by `wx.Image` and + converted to a wx.Bitmap, so any image file format supported by + `wx.Image` can be used. + + :todo: Add wrappers and support for raw bitmap data access. Can this + be be put into Python without losing the speed benefits of the + teplates and iterators in rawbmp.h? + + :todo: Find a way to do very efficient PIL Image <--> wx.Bitmap + converstions. + + :see: `wx.EmptyBitmap`, `wx.BitmapFromIcon`, `wx.BitmapFromImage`, + `wx.BitmapFromXPMData`, `wx.BitmapFromBits`, `wx.BitmapFromBuffer`, + `wx.BitmapFromBufferRGBA`, `wx.Image` + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr @@ -498,14 +563,41 @@ class Bitmap(GDIObject): __init__(self, String name, int type=BITMAP_TYPE_ANY) -> Bitmap Loads a bitmap from a file. + :param name: Name of the file to load the bitmap from. + :param type: The type of image to expect. Can be one of the following + constants (assuming that the neccessary `wx.Image` handlers are + loaded): + + * wx.BITMAP_TYPE_ANY + * wx.BITMAP_TYPE_BMP + * wx.BITMAP_TYPE_ICO + * wx.BITMAP_TYPE_CUR + * wx.BITMAP_TYPE_XBM + * wx.BITMAP_TYPE_XPM + * wx.BITMAP_TYPE_TIF + * wx.BITMAP_TYPE_GIF + * wx.BITMAP_TYPE_PNG + * wx.BITMAP_TYPE_JPEG + * wx.BITMAP_TYPE_PNM + * wx.BITMAP_TYPE_PCX + * wx.BITMAP_TYPE_PICT + * wx.BITMAP_TYPE_ICON + * wx.BITMAP_TYPE_ANI + * wx.BITMAP_TYPE_IFF + + :see: Alternate constructors `wx.EmptyBitmap`, `wx.BitmapFromIcon`, + `wx.BitmapFromImage`, `wx.BitmapFromXPMData`, `wx.BitmapFromBits`, + `wx.BitmapFromBuffer`, `wx.BitmapFromBufferRGBA`, + """ _gdi_.Bitmap_swiginit(self,_gdi_.new_Bitmap(*args, **kwargs)) __swig_destroy__ = _gdi_.delete_Bitmap __del__ = lambda self : None; - def Ok(*args, **kwargs): - """Ok(self) -> bool""" - return _gdi_.Bitmap_Ok(*args, **kwargs) + def IsOk(*args, **kwargs): + """IsOk(self) -> bool""" + return _gdi_.Bitmap_IsOk(*args, **kwargs) + Ok = IsOk def GetWidth(*args, **kwargs): """ GetWidth(self) -> int @@ -648,7 +740,7 @@ class Bitmap(GDIObject): """ return _gdi_.Bitmap_SetSize(*args, **kwargs) - def __nonzero__(self): return self.Ok() + def __nonzero__(self): return self.IsOk() def __eq__(*args, **kwargs): """__eq__(self, Bitmap other) -> bool""" return _gdi_.Bitmap___eq__(*args, **kwargs) @@ -657,6 +749,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): @@ -724,29 +823,26 @@ def _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, or - is convertable to a buffer object, 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 appear to already be premultiplying the - alpha.) - - 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`. + 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 not isinstance(dataBuffer, buffer): - dataBuffer = buffer(dataBuffer) - if alphaBuffer is not None and not isinstance(alphaBuffer, buffer): - alphaBuffer = buffer(alphaBuffer) if alphaBuffer is not None: return _gdi_._BitmapFromBufferAlpha(width, height, dataBuffer, alphaBuffer) else: @@ -759,25 +855,24 @@ def _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, or - is convertable to a buffer object, 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 - appear to already be premultiplying the alpha.) - - 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`. + 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` """ - if not isinstance(dataBuffer, buffer): - dataBuffer = buffer(dataBuffer) return _gdi_._BitmapFromBufferRGBA(width, height, dataBuffer) class PixelDataBase(object): @@ -805,6 +900,11 @@ class PixelDataBase(object): """GetRowStride(self) -> int""" return _gdi_.PixelDataBase_GetRowStride(*args, **kwargs) + Height = property(GetHeight,doc="See `GetHeight`") + Origin = property(GetOrigin,doc="See `GetOrigin`") + RowStride = property(GetRowStride,doc="See `GetRowStride`") + Size = property(GetSize,doc="See `GetSize`") + Width = property(GetWidth,doc="See `GetWidth`") _gdi_.PixelDataBase_swigregister(PixelDataBase) class NativePixelData(PixelDataBase): @@ -833,53 +933,41 @@ class NativePixelData(PixelDataBase): return _gdi_.NativePixelData___nonzero__(*args, **kwargs) def __iter__(self): - """Create and return an iterator object for this pixel data object.""" - return self.PixelIterator(self) - - class PixelIterator(object): - """ - Sequential iterator which returns pixel accessor objects starting at the - the top-left corner, and going row-by-row until the bottom-right - corner is reached. - """ - - class PixelAccessor(object): - """ - This class is what is returned by the iterator and allows the pixel - to be Get or Set. - """ - def __init__(self, data, pixels, x, y): - self.data = data - self.pixels = pixels - self.x = x - self.y = y - def Set(self, *args, **kw): - self.pixels.MoveTo(self.data, self.x, self.y) - return self.pixels.Set(*args, **kw) + """ + 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): - self.pixels.MoveTo(self.data, self.x, self.y) - return self.pixels.Get() - - def __init__(self, pixelData): - self.x = self.y = 0 - self.w = pixelData.GetWidth() - self.h = pixelData.GetHeight() - self.data = pixelData - self.pixels = pixelData.GetPixels() - - def __iter__(self): - return self - - def next(self): - if self.y >= self.h: - raise StopIteration - p = self.PixelAccessor(self.data, self.pixels, self.x, self.y) - self.x += 1 - if self.x >= self.w: - self.x = 0 - self.y += 1 - return p + 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): @@ -961,53 +1049,41 @@ class AlphaPixelData(PixelDataBase): return _gdi_.AlphaPixelData___nonzero__(*args, **kwargs) def __iter__(self): - """Create and return an iterator object for this pixel data object.""" - return self.PixelIterator(self) - - class PixelIterator(object): - """ - Sequential iterator which returns pixel accessor objects starting at the - the top-left corner, and going row-by-row until the bottom-right - corner is reached. - """ - - class PixelAccessor(object): - """ - This class is what is returned by the iterator and allows the pixel - to be Get or Set. - """ - def __init__(self, data, pixels, x, y): - self.data = data - self.pixels = pixels - self.x = x - self.y = y - def Set(self, *args, **kw): - self.pixels.MoveTo(self.data, self.x, self.y) - return self.pixels.Set(*args, **kw) + """ + 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): - self.pixels.MoveTo(self.data, self.x, self.y) - return self.pixels.Get() - - def __init__(self, pixelData): - self.x = self.y = 0 - self.w = pixelData.GetWidth() - self.h = pixelData.GetHeight() - self.data = pixelData - self.pixels = pixelData.GetPixels() - - def __iter__(self): - return self - - def next(self): - if self.y >= self.h: - raise StopIteration - p = self.PixelAccessor(self.data, self.pixels, self.x, self.y) - self.x += 1 - if self.x >= self.w: - self.x = 0 - self.y += 1 - return p + 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): @@ -1106,10 +1182,11 @@ class Icon(GDIObject): """LoadFile(self, String name, int type) -> bool""" return _gdi_.Icon_LoadFile(*args, **kwargs) - def Ok(*args, **kwargs): - """Ok(self) -> bool""" - return _gdi_.Icon_Ok(*args, **kwargs) + def IsOk(*args, **kwargs): + """IsOk(self) -> bool""" + return _gdi_.Icon_IsOk(*args, **kwargs) + Ok = IsOk def GetWidth(*args, **kwargs): """GetWidth(self) -> int""" return _gdi_.Icon_GetWidth(*args, **kwargs) @@ -1138,7 +1215,10 @@ class Icon(GDIObject): """CopyFromBitmap(self, Bitmap bmp)""" return _gdi_.Icon_CopyFromBitmap(*args, **kwargs) - def __nonzero__(self): return self.Ok() + def __nonzero__(self): return self.IsOk() + 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): @@ -1174,7 +1254,7 @@ class IconLocation(object): """IsOk(self) -> bool""" return _gdi_.IconLocation_IsOk(*args, **kwargs) - def __nonzero__(self): return self.Ok() + def __nonzero__(self): return self.IsOk() def SetFileName(*args, **kwargs): """SetFileName(self, String filename)""" return _gdi_.IconLocation_SetFileName(*args, **kwargs) @@ -1191,6 +1271,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): @@ -1214,6 +1296,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): @@ -1237,6 +1320,40 @@ class Cursor(GDIObject): 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. + + Stock Cursor IDs + ----------------- + ======================== ====================================== + wx.CURSOR_ARROW A standard arrow cursor. + wx.CURSOR_RIGHT_ARROW A standard arrow cursor pointing to the right. + wx.CURSOR_BLANK Transparent cursor. + wx.CURSOR_BULLSEYE Bullseye cursor. + wx.CURSOR_CHAR Rectangular character cursor. + wx.CURSOR_CROSS A cross cursor. + wx.CURSOR_HAND A hand cursor. + wx.CURSOR_IBEAM An I-beam cursor (vertical line). + wx.CURSOR_LEFT_BUTTON Represents a mouse with the left button depressed. + wx.CURSOR_MAGNIFIER A magnifier icon. + wx.CURSOR_MIDDLE_BUTTON Represents a mouse with the middle button depressed. + wx.CURSOR_NO_ENTRY A no-entry sign cursor. + wx.CURSOR_PAINT_BRUSH A paintbrush cursor. + wx.CURSOR_PENCIL A pencil cursor. + wx.CURSOR_POINT_LEFT A cursor that points left. + wx.CURSOR_POINT_RIGHT A cursor that points right. + wx.CURSOR_QUESTION_ARROW An arrow and question mark. + wx.CURSOR_RIGHT_BUTTON Represents a mouse with the right button depressed. + wx.CURSOR_SIZENESW A sizing cursor pointing NE-SW. + wx.CURSOR_SIZENS A sizing cursor pointing N-S. + wx.CURSOR_SIZENWSE A sizing cursor pointing NW-SE. + wx.CURSOR_SIZEWE A sizing cursor pointing W-E. + wx.CURSOR_SIZING A general sizing cursor. + wx.CURSOR_SPRAYCAN A spraycan cursor. + wx.CURSOR_WAIT A wait cursor. + wx.CURSOR_WATCH A watch cursor. + wx.CURSOR_ARROWWAIT A cursor with both an arrow and an hourglass, (windows.) + ======================== ====================================== + + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr @@ -1247,15 +1364,17 @@ class Cursor(GDIObject): 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. + :see: Alternate constructors `wx.StockCursor`,`wx.CursorFromImage` """ _gdi_.Cursor_swiginit(self,_gdi_.new_Cursor(*args, **kwargs)) __swig_destroy__ = _gdi_.delete_Cursor __del__ = lambda self : None; - def Ok(*args, **kwargs): - """Ok(self) -> bool""" - return _gdi_.Cursor_Ok(*args, **kwargs) + def IsOk(*args, **kwargs): + """IsOk(self) -> bool""" + return _gdi_.Cursor_IsOk(*args, **kwargs) - def __nonzero__(self): return self.Ok() + Ok = IsOk + def __nonzero__(self): return self.IsOk() _gdi_.Cursor_swigregister(Cursor) def StockCursor(*args, **kwargs): @@ -1274,6 +1393,11 @@ def CursorFromImage(*args, **kwargs): Constructs a cursor from a `wx.Image`. The mask (if any) will be used for setting the transparent portions of the cursor. + In MSW the cursor is resized to 32x32 if it was larger. + + In GTK the cursor will be displayed at the size of the image. + + On MacOS the cursor is resized to 16x16 if it was larger. """ val = _gdi_.new_CursorFromImage(*args, **kwargs) return val @@ -1336,6 +1460,10 @@ class Region(GDIObject): """IsEmpty(self) -> bool""" return _gdi_.Region_IsEmpty(*args, **kwargs) + def IsEqual(*args, **kwargs): + """IsEqual(self, Region region) -> bool""" + return _gdi_.Region_IsEqual(*args, **kwargs) + def Union(*args, **kwargs): """Union(self, int x, int y, int width, int height) -> bool""" return _gdi_.Region_Union(*args, **kwargs) @@ -1384,6 +1512,7 @@ class Region(GDIObject): """UnionBitmapColour(self, Bitmap bmp, Colour transColour, int tolerance=0) -> bool""" return _gdi_.Region_UnionBitmapColour(*args, **kwargs) + Box = property(GetBox,doc="See `GetBox`") _gdi_.Region_swigregister(Region) def RegionFromBitmap(*args, **kwargs): @@ -1454,6 +1583,13 @@ class RegionIterator(_core.Object): """__nonzero__(self) -> bool""" return _gdi_.RegionIterator___nonzero__(*args, **kwargs) + H = property(GetH,doc="See `GetH`") + Height = property(GetHeight,doc="See `GetHeight`") + Rect = property(GetRect,doc="See `GetRect`") + W = property(GetW,doc="See `GetW`") + Width = property(GetWidth,doc="See `GetWidth`") + X = property(GetX,doc="See `GetX`") + Y = property(GetY,doc="See `GetY`") _gdi_.RegionIterator_swigregister(RegionIterator) #--------------------------------------------------------------------------- @@ -1677,6 +1813,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): @@ -1783,6 +1926,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): @@ -1826,6 +1970,71 @@ class Font(GDIObject): of a window's text. You can retrieve the current system font settings with `wx.SystemSettings`. + + The possible values for the family parameter of wx.Font constructor are: + + ======================== ============================= + wx.FONTFAMILY_DEFAULT Chooses a default font. + wx.FONTFAMILY_DECORATIVE A decorative font. + wx.FONTFAMILY_ROMAN A formal, serif font. + wx.FONTFAMILY_SCRIPT A handwriting font. + wx.FONTFAMILY_SWISS A sans-serif font. + wx.FONTFAMILY_MODERN Usually a fixed pitch font. + wx.FONTFAMILY_TELETYPE A teletype font. + ======================== ============================= + + The possible values for the weight parameter are: + + ==================== == + wx.FONTWEIGHT_NORMAL + wx.FONTWEIGHT_LIGHT + wx.FONTWEIGHT_BOLD + ==================== == + + The known font encodings are: + + =========================== ==================================== + wx.FONTENCODING_SYSTEM system default + wx.FONTENCODING_DEFAULT current default encoding + wx.FONTENCODING_ISO8859_1 West European (Latin1) + wx.FONTENCODING_ISO8859_2 Central and East European (Latin2) + wx.FONTENCODING_ISO8859_3 Esperanto (Latin3) + wx.FONTENCODING_ISO8859_4 Baltic (old) (Latin4) + wx.FONTENCODING_ISO8859_5 Cyrillic + wx.FONTENCODING_ISO8859_6 Arabic + wx.FONTENCODING_ISO8859_7 Greek + wx.FONTENCODING_ISO8859_8 Hebrew + wx.FONTENCODING_ISO8859_9 Turkish (Latin5) + wx.FONTENCODING_ISO8859_10 Variation of Latin4 (Latin6) + wx.FONTENCODING_ISO8859_11 Thai + wx.FONTENCODING_ISO8859_12 doesn't exist currently, but put it + here anyhow to make all ISO8859 + consecutive numbers + wx.FONTENCODING_ISO8859_13 Baltic (Latin7) + wx.FONTENCODING_ISO8859_14 Latin8 + wx.FONTENCODING_ISO8859_15 Latin9 (a.k.a. Latin0, includes euro) + wx.FONTENCODING_KOI8 Cyrillic charset + wx.FONTENCODING_ALTERNATIVE same as MS-DOS CP866 + wx.FONTENCODING_BULGARIAN used under Linux in Bulgaria + wx.FONTENCODING_CP437 original MS-DOS codepage + wx.FONTENCODING_CP850 CP437 merged with Latin1 + wx.FONTENCODING_CP852 CP437 merged with Latin2 + wx.FONTENCODING_CP855 another cyrillic encoding + wx.FONTENCODING_CP866 and another one + wx.FONTENCODING_CP874 WinThai + wx.FONTENCODING_CP1250 WinLatin2 + wx.FONTENCODING_CP1251 WinCyrillic + wx.FONTENCODING_CP1252 WinLatin1 + wx.FONTENCODING_CP1253 WinGreek (8859-7) + wx.FONTENCODING_CP1254 WinTurkish + wx.FONTENCODING_CP1255 WinHebrew + wx.FONTENCODING_CP1256 WinArabic + wx.FONTENCODING_CP1257 WinBaltic (same as Latin 7) + wx.FONTENCODING_UTF7 UTF-7 Unicode encoding + wx.FONTENCODING_UTF8 UTF-8 Unicode encoding + =========================== ==================================== + + """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag') __repr__ = _swig_repr @@ -1868,15 +2077,16 @@ class Font(GDIObject): _gdi_.Font_swiginit(self,_gdi_.new_Font(*args, **kwargs)) __swig_destroy__ = _gdi_.delete_Font __del__ = lambda self : None; - def Ok(*args, **kwargs): + def IsOk(*args, **kwargs): """ - Ok(self) -> bool + IsOk(self) -> bool Returns ``True`` if this font was successfully created. """ - return _gdi_.Font_Ok(*args, **kwargs) + return _gdi_.Font_IsOk(*args, **kwargs) - def __nonzero__(self): return self.Ok() + Ok = IsOk + def __nonzero__(self): return self.IsOk() def __eq__(*args, **kwargs): """__eq__(self, Font other) -> bool""" return _gdi_.Font___eq__(*args, **kwargs) @@ -2143,6 +2353,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): @@ -2630,6 +2855,11 @@ class Locale(object): """AddCatalog(self, String szDomain) -> bool""" return _gdi_.Locale_AddCatalog(*args, **kwargs) + def IsAvailable(*args, **kwargs): + """IsAvailable(int lang) -> bool""" + return _gdi_.Locale_IsAvailable(*args, **kwargs) + + IsAvailable = staticmethod(IsAvailable) def IsLoaded(*args, **kwargs): """IsLoaded(self, String szDomain) -> bool""" return _gdi_.Locale_IsLoaded(*args, **kwargs) @@ -2662,6 +2892,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): @@ -2680,6 +2916,10 @@ def Locale_AddCatalogLookupPathPrefix(*args, **kwargs): """Locale_AddCatalogLookupPathPrefix(String prefix)""" return _gdi_.Locale_AddCatalogLookupPathPrefix(*args, **kwargs) +def Locale_IsAvailable(*args, **kwargs): + """Locale_IsAvailable(int lang) -> bool""" + return _gdi_.Locale_IsAvailable(*args, **kwargs) + def Locale_GetLanguageInfo(*args, **kwargs): """Locale_GetLanguageInfo(int lang) -> LanguageInfo""" return _gdi_.Locale_GetLanguageInfo(*args, **kwargs) @@ -3137,6 +3377,8 @@ class DC(_core.Object): Draws a circle with the given center point and radius. The current pen is used for the outline and the current brush for filling the shape. + + :see: `DrawEllipse` """ return _gdi_.DC_DrawCircle(*args, **kwargs) @@ -3147,6 +3389,8 @@ class DC(_core.Object): Draws a circle with the given center point and radius. The current pen is used for the outline and the current brush for filling the shape. + + :see: `DrawEllipse` """ return _gdi_.DC_DrawCirclePoint(*args, **kwargs) @@ -3156,6 +3400,8 @@ class DC(_core.Object): Draws an ellipse contained in the specified rectangle. The current pen is used for the outline and the current brush for filling the shape. + + :see: `DrawCircle` """ return _gdi_.DC_DrawEllipse(*args, **kwargs) @@ -3165,6 +3411,8 @@ class DC(_core.Object): Draws an ellipse contained in the specified rectangle. The current pen is used for the outline and the current brush for filling the shape. + + :see: `DrawCircle` """ return _gdi_.DC_DrawEllipseRect(*args, **kwargs) @@ -3174,6 +3422,8 @@ class DC(_core.Object): Draws an ellipse contained in the specified rectangle. The current pen is used for the outline and the current brush for filling the shape. + + :see: `DrawCircle` """ return _gdi_.DC_DrawEllipsePointSize(*args, **kwargs) @@ -3205,6 +3455,13 @@ class DC(_core.Object): *transparent* is true and the bitmap has a transparency mask, (or alpha channel on the platforms that support it) then the bitmap will be drawn transparently. + + When drawing a mono-bitmap, the current text foreground colour will be + used to draw the foreground of the bitmap (all bits set to 1), and the + current text background colour to draw the background (all bits set to + 0). + + :see: `SetTextForeground`, `SetTextBackground` and `wx.MemoryDC` """ return _gdi_.DC_DrawBitmap(*args, **kwargs) @@ -3216,6 +3473,13 @@ class DC(_core.Object): *transparent* is true and the bitmap has a transparency mask, (or alpha channel on the platforms that support it) then the bitmap will be drawn transparently. + + When drawing a mono-bitmap, the current text foreground colour will be + used to draw the foreground of the bitmap (all bits set to 1), and the + current text background colour to draw the background (all bits set to + 0). + + :see: `SetTextForeground`, `SetTextBackground` and `wx.MemoryDC` """ return _gdi_.DC_DrawBitmapPoint(*args, **kwargs) @@ -3233,6 +3497,8 @@ class DC(_core.Object): **NOTE**: under wxGTK the current logical function is used by this function but it is ignored by wxMSW. Thus, you should avoid using logical functions with this function in portable programs. + + :see: `DrawRotatedText` """ return _gdi_.DC_DrawText(*args, **kwargs) @@ -3250,6 +3516,8 @@ class DC(_core.Object): **NOTE**: under wxGTK the current logical function is used by this function but it is ignored by wxMSW. Thus, you should avoid using logical functions with this function in portable programs. + + :see: `DrawRotatedText` """ return _gdi_.DC_DrawTextPoint(*args, **kwargs) @@ -3263,6 +3531,8 @@ class DC(_core.Object): function. In particular, a font different from ``wx.NORMAL_FONT`` should be used as the it is not normally a TrueType font. ``wx.SWISS_FONT`` is an example of a font which is. + + :see: `DrawText` """ return _gdi_.DC_DrawRotatedText(*args, **kwargs) @@ -3276,6 +3546,8 @@ class DC(_core.Object): function. In particular, a font different from ``wx.NORMAL_FONT`` should be used as the it is not normally a TrueType font. ``wx.SWISS_FONT`` is an example of a font which is. + + :see: `DrawText` """ return _gdi_.DC_DrawRotatedTextPoint(*args, **kwargs) @@ -3289,6 +3561,23 @@ class DC(_core.Object): coordinates, size of area to copy, source DC, source coordinates, logical function, whether to use a bitmap mask, and mask source position. + + :param xdest: Destination device context x position. + :param ydest: Destination device context y position. + :param width: Width of source area to be copied. + :param height: Height of source area to be copied. + :param source: Source device context. + :param xsrc: Source device context x position. + :param ysrc: Source device context y position. + :param rop: Logical function to use: see `SetLogicalFunction`. + :param useMask: If true, Blit does a transparent blit using the mask + that is associated with the bitmap selected into the + source device context. + :param xsrcMask: Source x position on the mask. If both xsrcMask and + ysrcMask are -1, xsrc and ysrc will be assumed for + the mask source position. + :param ysrcMask: Source y position on the mask. + """ return _gdi_.DC_Blit(*args, **kwargs) @@ -3301,6 +3590,17 @@ class DC(_core.Object): coordinates, size of area to copy, source DC, source coordinates, logical function, whether to use a bitmap mask, and mask source position. + + :param destPt: Destination device context position. + :param sz: Size of source area to be copied. + :param source: Source device context. + :param srcPt: Source device context position. + :param rop: Logical function to use: see `SetLogicalFunction`. + :param useMask: If true, Blit does a transparent blit using the mask + that is associated with the bitmap selected into the + source device context. + :param srcPtMask: Source position on the mask. + """ return _gdi_.DC_BlitPointSize(*args, **kwargs) @@ -3318,6 +3618,8 @@ class DC(_core.Object): restricted. Possible uses for the clipping region are for clipping text or for speeding up window redraws when only a known area of the screen is damaged. + + :see: `DestroyClippingRegion`, `wx.Region` """ return _gdi_.DC_SetClippingRegion(*args, **kwargs) @@ -3335,6 +3637,8 @@ class DC(_core.Object): restricted. Possible uses for the clipping region are for clipping text or for speeding up window redraws when only a known area of the screen is damaged. + + :see: `DestroyClippingRegion`, `wx.Region` """ return _gdi_.DC_SetClippingRegionPointSize(*args, **kwargs) @@ -3352,6 +3656,8 @@ class DC(_core.Object): restricted. Possible uses for the clipping region are for clipping text or for speeding up window redraws when only a known area of the screen is damaged. + + :see: `DestroyClippingRegion`, `wx.Region` """ return _gdi_.DC_SetClippingRegionAsRegion(*args, **kwargs) @@ -3369,6 +3675,8 @@ class DC(_core.Object): restricted. Possible uses for the clipping region are for clipping text or for speeding up window redraws when only a known area of the screen is damaged. + + :see: `DestroyClippingRegion`, `wx.Region` """ return _gdi_.DC_SetClippingRect(*args, **kwargs) @@ -3406,6 +3714,8 @@ class DC(_core.Object): Draw *text* within the specified rectangle, abiding by the alignment flags. Will additionally emphasize the character at *indexAccel* if it is not -1. + + :see: `DrawImageLabel` """ return _gdi_.DC_DrawLabel(*args, **kwargs) @@ -3478,6 +3788,8 @@ class DC(_core.Object): Sets the current font for the DC. It must be a valid font, in particular you should not pass ``wx.NullFont`` to this method. + + :see: `wx.Font` """ return _gdi_.DC_SetFont(*args, **kwargs) @@ -3489,6 +3801,8 @@ class DC(_core.Object): If the argument is ``wx.NullPen``, the current pen is selected out of the device context, and the original pen restored. + + :see: `wx.Pen` """ return _gdi_.DC_SetPen(*args, **kwargs) @@ -3501,6 +3815,8 @@ class DC(_core.Object): If the argument is ``wx.NullBrush``, the current brush is selected out of the device context, and the original brush restored, allowing the current brush to be destroyed safely. + + :see: `wx.Brush` """ return _gdi_.DC_SetBrush(*args, **kwargs) @@ -3530,6 +3846,8 @@ class DC(_core.Object): window or bitmap associated with the DC. If the argument is ``wx.NullPalette``, the current palette is selected out of the device context, and the original palette restored. + + :see: `wx.Palette` """ return _gdi_.DC_SetPalette(*args, **kwargs) @@ -3539,6 +3857,8 @@ class DC(_core.Object): Destroys the current clipping region so that none of the DC is clipped. + + :see: `SetClippingRegion` """ return _gdi_.DC_DestroyClippingRegion(*args, **kwargs) @@ -3598,7 +3918,7 @@ class DC(_core.Object): GetMultiLineTextExtent(wxString string, Font font=None) -> (width, height, lineHeight) - Get the width, height, decent and leading of the text using the + Get the width, height, and line height of the text using the current or specified font. Works for single as well as multi-line strings. """ @@ -3769,20 +4089,23 @@ class DC(_core.Object): """ return _gdi_.DC_GetPPI(*args, **kwargs) - def Ok(*args, **kwargs): + def IsOk(*args, **kwargs): """ - Ok(self) -> bool + IsOk(self) -> bool Returns true if the DC is ok to use. """ - return _gdi_.DC_Ok(*args, **kwargs) + return _gdi_.DC_IsOk(*args, **kwargs) + Ok = IsOk def GetBackgroundMode(*args, **kwargs): """ GetBackgroundMode(self) -> int Returns the current background mode, either ``wx.SOLID`` or ``wx.TRANSPARENT``. + + :see: `SetBackgroundMode` """ return _gdi_.DC_GetBackgroundMode(*args, **kwargs) @@ -3791,6 +4114,8 @@ class DC(_core.Object): GetBackground(self) -> Brush Gets the brush used for painting the background. + + :see: `SetBackground` """ return _gdi_.DC_GetBackground(*args, **kwargs) @@ -3875,6 +4200,18 @@ class DC(_core.Object): wx.MM_TEXT Each logical unit is 1 pixel. ================ ============================================= + Note that in X, text drawing isn't handled consistently with the + mapping mode; a font is always specified in point size. However, + setting the user scale (see `SetUserScale`) scales the text + appropriately. In Windows, scalable TrueType fonts are always used; in + X, results depend on availability of fonts, but usually a reasonable + match is found. + + The coordinate origin is always at the top left of the screen/printer. + + Drawing to a Windows printer device context uses the current mapping + mode, but mapping mode is currently ignored for PostScript output. + """ return _gdi_.DC_SetMapMode(*args, **kwargs) @@ -4079,7 +4416,27 @@ class DC(_core.Object): """ return _gdi_.DC_GetBoundingBox(*args, **kwargs) - def __nonzero__(self): return self.Ok() + def __nonzero__(self): return self.IsOk() + def GetLayoutDirection(*args, **kwargs): + """ + GetLayoutDirection(self) -> int + + Get the layout direction (LTR or RTL)_ for this dc. On platforms + where RTL layout is supported, the return value will either be + ``wx.Layout_LeftToRight`` or ``wx.Layout_RightToLeft``. + ``wx.Layout_Default`` is returned if layout direction is not + supported. + """ + return _gdi_.DC_GetLayoutDirection(*args, **kwargs) + + def SetLayoutDirection(*args, **kwargs): + """ + SetLayoutDirection(self, int dir) + + Change the layout direction for this dc. + """ + return _gdi_.DC_SetLayoutDirection(*args, **kwargs) + def _DrawPointList(*args, **kwargs): """_DrawPointList(self, PyObject pyCoords, PyObject pyPens, PyObject pyBrushes) -> PyObject""" return _gdi_.DC__DrawPointList(*args, **kwargs) @@ -4265,6 +4622,36 @@ 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`") + LayoutDirection = property(GetLayoutDirection,SetLayoutDirection) _gdi_.DC_swigregister(DC) #--------------------------------------------------------------------------- @@ -4277,7 +4664,7 @@ class MemoryDC(DC): dc = wx.MemoryDC() dc.SelectObject(bitmap) - # draw on the dc usign any of the Draw methods + # draw on the dc using any of the Draw methods dc.SelectObject(wx.NullBitmap) # the bitmap now contains wahtever was drawn upon it @@ -4289,13 +4676,16 @@ class MemoryDC(DC): __repr__ = _swig_repr def __init__(self, *args, **kwargs): """ - __init__(self) -> MemoryDC + __init__(self, Bitmap bitmap=NullBitmap) -> MemoryDC Constructs a new memory device context. Use the Ok member to test whether the constructor was successful in - creating a usable device context. Don't forget to select a bitmap into - the DC before drawing on it. + creating a usable device context. If a bitmap is not given to this + constructor then don't forget to select a bitmap into the DC before + drawing on it. + + :see: `MemoryDCFromDC` """ _gdi_.MemoryDC_swiginit(self,_gdi_.new_MemoryDC(*args, **kwargs)) def SelectObject(*args, **kwargs): @@ -4327,88 +4717,6 @@ def MemoryDCFromDC(*args, **kwargs): #--------------------------------------------------------------------------- -BUFFER_VIRTUAL_AREA = _gdi_.BUFFER_VIRTUAL_AREA -BUFFER_CLIENT_AREA = _gdi_.BUFFER_CLIENT_AREA -class BufferedDC(MemoryDC): - """ - This simple class provides a simple way to avoid flicker: when drawing - on it, everything is in fact first drawn on an in-memory buffer (a - `wx.Bitmap`) and then copied to the screen only once, when this object - is destroyed. - - It can be used in the same way as any other device - context. wx.BufferedDC itself typically replaces `wx.ClientDC`, if you - want to use it in your EVT_PAINT handler, you should look at - `wx.BufferedPaintDC`. - - """ - 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, DC dc, Bitmap buffer=NullBitmap, int style=BUFFER_CLIENT_AREA) -> BufferedDC - __init__(self, DC dc, Size area, int style=BUFFER_CLIENT_AREA) -> BufferedDC - - Constructs a buffered DC. - """ - _gdi_.BufferedDC_swiginit(self,_gdi_.new_BufferedDC(*args)) - self.__dc = args[0] # save a ref so the other dc will not be deleted before self - - __swig_destroy__ = _gdi_.delete_BufferedDC - __del__ = lambda self : None; - def UnMask(*args, **kwargs): - """ - UnMask(self) - - Blits the buffer to the dc, and detaches the dc from the buffer (so it - can be effectively used once only). This is usually only called in - the destructor. - """ - return _gdi_.BufferedDC_UnMask(*args, **kwargs) - -_gdi_.BufferedDC_swigregister(BufferedDC) - -class BufferedPaintDC(BufferedDC): - """ - This is a subclass of `wx.BufferedDC` which can be used inside of an - EVT_PAINT event handler. Just create an object of this class instead - of `wx.PaintDC` and that's all you have to do to (mostly) avoid - flicker. The only thing to watch out for is that if you are using this - class together with `wx.ScrolledWindow`, you probably do **not** want - to call `wx.Window.PrepareDC` on it as it already does this internally - for the real underlying `wx.PaintDC`. - - If your window is already fully buffered in a `wx.Bitmap` then your - EVT_PAINT handler can be as simple as just creating a - ``wx.BufferedPaintDC`` as it will `Blit` the buffer to the window - automatically when it is destroyed. For example:: - - def OnPaint(self, event): - dc = wx.BufferedPaintDC(self, self.buffer) - - - - - - """ - 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, Window window, Bitmap buffer=NullBitmap, int style=BUFFER_CLIENT_AREA) -> BufferedPaintDC - - Create a buffered paint DC. As with `wx.BufferedDC`, you may either - provide the bitmap to be used for buffering or let this object create - one internally (in the latter case, the size of the client part of the - window is automatically used). - - - """ - _gdi_.BufferedPaintDC_swiginit(self,_gdi_.new_BufferedPaintDC(*args, **kwargs)) -_gdi_.BufferedPaintDC_swigregister(BufferedPaintDC) - -#--------------------------------------------------------------------------- - class ScreenDC(DC): """ A wxScreenDC can be used to paint anywhere on the screen. This should @@ -4473,7 +4781,27 @@ _gdi_.ScreenDC_swigregister(ScreenDC) #--------------------------------------------------------------------------- -class ClientDC(DC): +class WindowDC(DC): + """ + A wx.WindowDC must be constructed if an application wishes to paint on + the whole area of a window (client and decorations). This should + normally be constructed as a temporary stack object; don't store a + wx.WindowDC object. + """ + 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, Window win) -> WindowDC + + Constructor. Pass the window on which you wish to paint. + """ + _gdi_.WindowDC_swiginit(self,_gdi_.new_WindowDC(*args, **kwargs)) +_gdi_.WindowDC_swigregister(WindowDC) + +#--------------------------------------------------------------------------- + +class ClientDC(WindowDC): """ A wx.ClientDC must be constructed if an application wishes to paint on the client area of a window from outside an EVT_PAINT event. This should @@ -4500,7 +4828,7 @@ _gdi_.ClientDC_swigregister(ClientDC) #--------------------------------------------------------------------------- -class PaintDC(DC): +class PaintDC(ClientDC): """ A wx.PaintDC must be constructed if an application wishes to paint on the client area of a window from within an EVT_PAINT event @@ -4530,26 +4858,148 @@ _gdi_.PaintDC_swigregister(PaintDC) #--------------------------------------------------------------------------- -class WindowDC(DC): +BUFFER_VIRTUAL_AREA = _gdi_.BUFFER_VIRTUAL_AREA +BUFFER_CLIENT_AREA = _gdi_.BUFFER_CLIENT_AREA +class BufferedDC(MemoryDC): """ - A wx.WindowDC must be constructed if an application wishes to paint on - the whole area of a window (client and decorations). This should - normally be constructed as a temporary stack object; don't store a - wx.WindowDC object. + This simple class provides a simple way to avoid flicker: when drawing + on it, everything is in fact first drawn on an in-memory buffer (a + `wx.Bitmap`) and then copied to the screen only once, when this object + is destroyed. + + It can be used in the same way as any other device context. + wx.BufferedDC itself typically replaces `wx.ClientDC`, if you want to + use it in your EVT_PAINT handler, you should look at + `wx.BufferedPaintDC`. + + Please note that GTK+ 2.0 and OS X provide double buffering themselves + natively. wxBufferedDC is aware of this however, and will bypass the buffering + unless an explicit buffer bitmap is given. + + """ + 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, DC dc, Bitmap buffer=NullBitmap, int style=BUFFER_CLIENT_AREA) -> BufferedDC + __init__(self, DC dc, Size area, int style=BUFFER_CLIENT_AREA) -> BufferedDC + + Constructs a buffered DC. + + :param dc: The underlying DC: everything drawn to this object will + be flushed to this DC when this object is destroyed. You may + pass ``None`` in order to just initialize the buffer, and not + flush it. + + :param buffer: If a `wx.Size` object is passed as the 2nd arg then + it is the size of the bitmap that will be created internally + and used for an implicit buffer. If the 2nd arg is a + `wx.Bitmap` then it is the explicit buffer that will be + used. Using an explicit buffer is the most efficient solution + as the bitmap doesn't have to be recreated each time but it + also requires more memory as the bitmap is never freed. The + bitmap should have appropriate size, anything drawn outside of + its bounds is clipped. If wx.NullBitmap is used then a new + buffer will be allocated that is the same size as the dc. + + :param style: The style parameter indicates whether the supplied buffer is + intended to cover the entire virtual size of a `wx.ScrolledWindow` or + if it only covers the client area. Acceptable values are + ``wx.BUFFER_VIRTUAL_AREA`` and ``wx.BUFFER_CLIENT_AREA``. + + + """ + _gdi_.BufferedDC_swiginit(self,_gdi_.new_BufferedDC(*args)) + self.__dc = args[0] # save a ref so the other dc will not be deleted before self + + __swig_destroy__ = _gdi_.delete_BufferedDC + __del__ = lambda self : None; + def UnMask(*args, **kwargs): + """ + UnMask(self) + + Blits the buffer to the dc, and detaches the dc from the buffer (so it + can be effectively used once only). This is usually only called in + the destructor. + """ + return _gdi_.BufferedDC_UnMask(*args, **kwargs) + +_gdi_.BufferedDC_swigregister(BufferedDC) + +class BufferedPaintDC(BufferedDC): + """ + This is a subclass of `wx.BufferedDC` which can be used inside of an + EVT_PAINT event handler. Just create an object of this class instead + of `wx.PaintDC` and that's all you have to do to (mostly) avoid + flicker. The only thing to watch out for is that if you are using this + class together with `wx.ScrolledWindow`, you probably do **not** want + to call `wx.Window.PrepareDC` on it as it already does this internally + for the real underlying `wx.PaintDC`. + + If your window is already fully buffered in a `wx.Bitmap` then your + EVT_PAINT handler can be as simple as just creating a + ``wx.BufferedPaintDC`` as it will `Blit` the buffer to the window + automatically when it is destroyed. For example:: + + def OnPaint(self, event): + dc = wx.BufferedPaintDC(self, self.buffer) + + + """ 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, Window win) -> WindowDC + __init__(self, Window window, Bitmap buffer=NullBitmap, int style=BUFFER_CLIENT_AREA) -> BufferedPaintDC - Constructor. Pass the window on which you wish to paint. + Create a buffered paint DC. As with `wx.BufferedDC`, you may either + provide the bitmap to be used for buffering or let this object create + one internally (in the latter case, the size of the client part of the + window is automatically used). """ - _gdi_.WindowDC_swiginit(self,_gdi_.new_WindowDC(*args, **kwargs)) -_gdi_.WindowDC_swigregister(WindowDC) + _gdi_.BufferedPaintDC_swiginit(self,_gdi_.new_BufferedPaintDC(*args, **kwargs)) +_gdi_.BufferedPaintDC_swigregister(BufferedPaintDC) #--------------------------------------------------------------------------- +class AutoBufferedPaintDC(DC): + """ + If the current platform double buffers by default then this DC is the + same as a plain `wx.PaintDC`, otherwise it is a `wx.BufferedPaintDC`. + + :see: `wx.AutoBufferedPaintDCFactory` + + """ + 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, Window win) -> AutoBufferedPaintDC + + If the current platform double buffers by default then this DC is the + same as a plain `wx.PaintDC`, otherwise it is a `wx.BufferedPaintDC`. + + :see: `wx.AutoBufferedPaintDCFactory` + + """ + _gdi_.AutoBufferedPaintDC_swiginit(self,_gdi_.new_AutoBufferedPaintDC(*args, **kwargs)) +_gdi_.AutoBufferedPaintDC_swigregister(AutoBufferedPaintDC) + + +def AutoBufferedPaintDCFactory(*args, **kwargs): + """ + AutoBufferedPaintDCFactory(Window window) -> DC + + Checks if the window is natively double buffered and will return a + `wx.PaintDC` if it is, a `wx.BufferedPaintDC` otherwise. The advantage of + this function over `wx.AutoBufferedPaintDC` is that this function will check + if the the specified window has double-buffering enabled rather than just + going by platform defaults. + """ + return _gdi_.AutoBufferedPaintDCFactory(*args, **kwargs) +#--------------------------------------------------------------------------- + class MirrorDC(DC): """ wx.MirrorDC is a simple wrapper class which is always associated with a @@ -4613,6 +5063,7 @@ class PostScriptDC(DC): return _gdi_.PostScriptDC_GetResolution(*args, **kwargs) GetResolution = staticmethod(GetResolution) + PrintData = property(GetPrintData,SetPrintData,doc="See `GetPrintData` and `SetPrintData`") _gdi_.PostScriptDC_swigregister(PostScriptDC) def PostScriptDC_SetResolution(*args, **kwargs): @@ -4666,6 +5117,298 @@ _gdi_.PrinterDC_swigregister(PrinterDC) #--------------------------------------------------------------------------- +class GraphicsPath(object): + """Proxy of C++ GraphicsPath 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 + __swig_destroy__ = _gdi_.delete_GraphicsPath + __del__ = lambda self : None; + def MoveToPoint(*args, **kwargs): + """ + MoveToPoint(self, Double x, Double y) + + Begins a new subpath at (x,y) + """ + return _gdi_.GraphicsPath_MoveToPoint(*args, **kwargs) + + def AddLineToPoint(*args, **kwargs): + """ + AddLineToPoint(self, Double x, Double y) + + Adds a straight line from the current point to (x,y) + """ + return _gdi_.GraphicsPath_AddLineToPoint(*args, **kwargs) + + def AddCurveToPoint(*args, **kwargs): + """ + AddCurveToPoint(self, Double cx1, Double cy1, Double cx2, Double cy2, Double x, + Double y) + + Adds a cubic Bezier curve from the current point, using two control + points and an end point + """ + return _gdi_.GraphicsPath_AddCurveToPoint(*args, **kwargs) + + def CloseSubpath(*args, **kwargs): + """ + CloseSubpath(self) + + closes the current sub-path + """ + return _gdi_.GraphicsPath_CloseSubpath(*args, **kwargs) + + def GetCurrentPoint(*args, **kwargs): + """ + GetCurrentPoint(self) -> Point2D + + Gets the last point of the current path, (0,0) if not yet set + """ + return _gdi_.GraphicsPath_GetCurrentPoint(*args, **kwargs) + + def AddArc(*args, **kwargs): + """ + AddArc(self, Double x, Double y, Double r, Double startAngle, Double endAngle, + bool clockwise) + + Adds an arc of a circle centering at (x,y) with radius (r) from + startAngle to endAngle + """ + return _gdi_.GraphicsPath_AddArc(*args, **kwargs) + + def AddQuadCurveToPoint(*args, **kwargs): + """ + AddQuadCurveToPoint(self, Double cx, Double cy, Double x, Double y) + + Adds a quadratic Bezier curve from the current point, using a control + point and an end point + """ + return _gdi_.GraphicsPath_AddQuadCurveToPoint(*args, **kwargs) + + def AddRectangle(*args, **kwargs): + """ + AddRectangle(self, Double x, Double y, Double w, Double h) + + Appends a rectangle as a new closed subpath + """ + return _gdi_.GraphicsPath_AddRectangle(*args, **kwargs) + + def AddCircle(*args, **kwargs): + """ + AddCircle(self, Double x, Double y, Double r) + + Appends a circle as a new closed subpath with the given radius. + """ + return _gdi_.GraphicsPath_AddCircle(*args, **kwargs) + + def AddArcToPoint(*args, **kwargs): + """ + AddArcToPoint(self, Double x1, Double y1, Double x2, Double y2, Double r) + + Draws a an arc to two tangents connecting (current) to (x1,y1) and (x1,y1) + to (x2,y2), also a straight line from (current) to (x1,y1) + """ + return _gdi_.GraphicsPath_AddArcToPoint(*args, **kwargs) + +_gdi_.GraphicsPath_swigregister(GraphicsPath) + +class GraphicsContext(object): + """Proxy of C++ GraphicsContext 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 + __swig_destroy__ = _gdi_.delete_GraphicsContext + __del__ = lambda self : None; + def Create(*args, **kwargs): + """Create(WindowDC dc) -> GraphicsContext""" + val = _gdi_.GraphicsContext_Create(*args, **kwargs) + val.__dc = args[0] # save a ref so the other dc will not be deleted before self + return val + + Create = staticmethod(Create) + def CreatePath(*args, **kwargs): + """CreatePath(self) -> GraphicsPath""" + return _gdi_.GraphicsContext_CreatePath(*args, **kwargs) + + def PushState(*args, **kwargs): + """PushState(self)""" + return _gdi_.GraphicsContext_PushState(*args, **kwargs) + + def PopState(*args, **kwargs): + """PopState(self)""" + return _gdi_.GraphicsContext_PopState(*args, **kwargs) + + def Clip(*args, **kwargs): + """Clip(self, Region region)""" + return _gdi_.GraphicsContext_Clip(*args, **kwargs) + + def Translate(*args, **kwargs): + """Translate(self, Double dx, Double dy)""" + return _gdi_.GraphicsContext_Translate(*args, **kwargs) + + def Scale(*args, **kwargs): + """Scale(self, Double xScale, Double yScale)""" + return _gdi_.GraphicsContext_Scale(*args, **kwargs) + + def Rotate(*args, **kwargs): + """Rotate(self, Double angle)""" + return _gdi_.GraphicsContext_Rotate(*args, **kwargs) + + def SetPen(*args, **kwargs): + """SetPen(self, Pen pen)""" + return _gdi_.GraphicsContext_SetPen(*args, **kwargs) + + def SetBrush(*args, **kwargs): + """SetBrush(self, Brush brush)""" + return _gdi_.GraphicsContext_SetBrush(*args, **kwargs) + + def SetLinearGradientBrush(*args, **kwargs): + """ + SetLinearGradientBrush(self, Double x1, Double y1, Double x2, Double y2, Colour c1, + Colour c2) + """ + return _gdi_.GraphicsContext_SetLinearGradientBrush(*args, **kwargs) + + def SetRadialGradientBrush(*args, **kwargs): + """ + SetRadialGradientBrush(self, Double xo, Double yo, Double xc, Double yc, Double radius, + Colour oColor, Colour cColor) + """ + return _gdi_.GraphicsContext_SetRadialGradientBrush(*args, **kwargs) + + def SetFont(*args, **kwargs): + """SetFont(self, Font font)""" + return _gdi_.GraphicsContext_SetFont(*args, **kwargs) + + def SetTextColor(*args, **kwargs): + """SetTextColor(self, Colour col)""" + return _gdi_.GraphicsContext_SetTextColor(*args, **kwargs) + + def StrokePath(*args, **kwargs): + """StrokePath(self, GraphicsPath path)""" + return _gdi_.GraphicsContext_StrokePath(*args, **kwargs) + + def FillPath(*args, **kwargs): + """FillPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)""" + return _gdi_.GraphicsContext_FillPath(*args, **kwargs) + + def DrawPath(*args, **kwargs): + """DrawPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)""" + return _gdi_.GraphicsContext_DrawPath(*args, **kwargs) + + def DrawText(*args, **kwargs): + """DrawText(self, String str, Double x, Double y)""" + return _gdi_.GraphicsContext_DrawText(*args, **kwargs) + + def DrawRotatedText(*args, **kwargs): + """DrawRotatedText(self, String str, Double x, Double y, Double angle)""" + return _gdi_.GraphicsContext_DrawRotatedText(*args, **kwargs) + + def GetTextExtent(*args, **kwargs): + """GetTextExtend(self, text) --> (width, height, descent, externalLeading)""" + return _gdi_.GraphicsContext_GetTextExtent(*args, **kwargs) + + def GetPartialTextExtents(*args, **kwargs): + """GetPartialTextExtents(self, text) -> [widths]""" + return _gdi_.GraphicsContext_GetPartialTextExtents(*args, **kwargs) + + def DrawBitmap(*args, **kwargs): + """DrawBitmap(self, Bitmap bmp, Double x, Double y, Double w, Double h)""" + return _gdi_.GraphicsContext_DrawBitmap(*args, **kwargs) + + def DrawIcon(*args, **kwargs): + """DrawIcon(self, Icon icon, Double x, Double y, Double w, Double h)""" + return _gdi_.GraphicsContext_DrawIcon(*args, **kwargs) + + def StrokeLine(*args, **kwargs): + """StrokeLine(self, Double x1, Double y1, Double x2, Double y2)""" + return _gdi_.GraphicsContext_StrokeLine(*args, **kwargs) + + def StrokeLines(*args, **kwargs): + """StrokeLines(self, List points)""" + return _gdi_.GraphicsContext_StrokeLines(*args, **kwargs) + + def StrokeLineSegements(*args, **kwargs): + """StrokeLineSegements(self, PyObject beginPoints, PyObject endPoints)""" + return _gdi_.GraphicsContext_StrokeLineSegements(*args, **kwargs) + + def DrawLines(*args, **kwargs): + """DrawLines(self, size_t points, int fillStyle=WINDING_RULE)""" + return _gdi_.GraphicsContext_DrawLines(*args, **kwargs) + + def DrawRectangle(*args, **kwargs): + """DrawRectangle(self, Double x, Double y, Double w, Double h)""" + return _gdi_.GraphicsContext_DrawRectangle(*args, **kwargs) + + def DrawEllipse(*args, **kwargs): + """DrawEllipse(self, Double x, Double y, Double w, Double h)""" + return _gdi_.GraphicsContext_DrawEllipse(*args, **kwargs) + + def DrawRoundedRectangle(*args, **kwargs): + """DrawRoundedRectangle(self, Double x, Double y, Double w, Double h, Double radius)""" + return _gdi_.GraphicsContext_DrawRoundedRectangle(*args, **kwargs) + +_gdi_.GraphicsContext_swigregister(GraphicsContext) + +def GraphicsContext_Create(*args, **kwargs): + """GraphicsContext_Create(WindowDC dc) -> GraphicsContext""" + val = _gdi_.GraphicsContext_Create(*args, **kwargs) + val.__dc = args[0] # save a ref so the other dc will not be deleted before self + return val + +class GCDC(DC): + """Proxy of C++ GCDC 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, WindowDC dc) -> GCDC""" + _gdi_.GCDC_swiginit(self,_gdi_.new_GCDC(*args, **kwargs)) + self.__dc = args[0] # save a ref so the other dc will not be deleted before self + + __swig_destroy__ = _gdi_.delete_GCDC + __del__ = lambda self : None; + def GetGraphicContext(*args, **kwargs): + """GetGraphicContext(self) -> GraphicsContext""" + return _gdi_.GCDC_GetGraphicContext(*args, **kwargs) + +_gdi_.GCDC_swigregister(GCDC) + +class Overlay(object): + """Proxy of C++ Overlay 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) -> Overlay""" + _gdi_.Overlay_swiginit(self,_gdi_.new_Overlay(*args, **kwargs)) + __swig_destroy__ = _gdi_.delete_Overlay + __del__ = lambda self : None; + def Reset(*args, **kwargs): + """Reset(self)""" + return _gdi_.Overlay_Reset(*args, **kwargs) + +_gdi_.Overlay_swigregister(Overlay) + +class DCOverlay(object): + """Proxy of C++ DCOverlay 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, Overlay overlay, WindowDC dc, int x, int y, int width, + int height) -> DCOverlay + __init__(self, Overlay overlay, WindowDC dc) -> DCOverlay + """ + _gdi_.DCOverlay_swiginit(self,_gdi_.new_DCOverlay(*args)) + __swig_destroy__ = _gdi_.delete_DCOverlay + __del__ = lambda self : None; + def Clear(*args, **kwargs): + """Clear(self)""" + return _gdi_.DCOverlay_Clear(*args, **kwargs) + +_gdi_.DCOverlay_swigregister(DCOverlay) + +#--------------------------------------------------------------------------- + IMAGELIST_DRAW_NORMAL = _gdi_.IMAGELIST_DRAW_NORMAL IMAGELIST_DRAW_TRANSPARENT = _gdi_.IMAGELIST_DRAW_TRANSPARENT IMAGELIST_DRAW_SELECTED = _gdi_.IMAGELIST_DRAW_SELECTED @@ -4729,6 +5472,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) #--------------------------------------------------------------------------- @@ -5135,6 +5880,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) #--------------------------------------------------------------------------- @@ -5142,9 +5892,11 @@ _gdi_.Effects_swigregister(Effects) CONTROL_DISABLED = _gdi_.CONTROL_DISABLED CONTROL_FOCUSED = _gdi_.CONTROL_FOCUSED CONTROL_PRESSED = _gdi_.CONTROL_PRESSED +CONTROL_SPECIAL = _gdi_.CONTROL_SPECIAL CONTROL_ISDEFAULT = _gdi_.CONTROL_ISDEFAULT CONTROL_ISSUBMENU = _gdi_.CONTROL_ISSUBMENU CONTROL_EXPANDED = _gdi_.CONTROL_EXPANDED +CONTROL_SIZEGRIP = _gdi_.CONTROL_SIZEGRIP CONTROL_CURRENT = _gdi_.CONTROL_CURRENT CONTROL_SELECTED = _gdi_.CONTROL_SELECTED CONTROL_CHECKED = _gdi_.CONTROL_CHECKED @@ -5190,6 +5942,31 @@ class SplitterRenderParams(object): isHotSensitive = property(_gdi_.SplitterRenderParams_isHotSensitive_get) _gdi_.SplitterRenderParams_swigregister(SplitterRenderParams) +class HeaderButtonParams(object): + """Extra (optional) parameters for `wx.RendererNative.DrawHeaderButton`""" + 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) -> HeaderButtonParams + + Extra (optional) parameters for `wx.RendererNative.DrawHeaderButton` + """ + _gdi_.HeaderButtonParams_swiginit(self,_gdi_.new_HeaderButtonParams(*args, **kwargs)) + __swig_destroy__ = _gdi_.delete_HeaderButtonParams + __del__ = lambda self : None; + m_arrowColour = property(_gdi_.HeaderButtonParams_m_arrowColour_get, _gdi_.HeaderButtonParams_m_arrowColour_set) + m_selectionColour = property(_gdi_.HeaderButtonParams_m_selectionColour_get, _gdi_.HeaderButtonParams_m_selectionColour_set) + m_labelText = property(_gdi_.HeaderButtonParams_m_labelText_get, _gdi_.HeaderButtonParams_m_labelText_set) + m_labelFont = property(_gdi_.HeaderButtonParams_m_labelFont_get, _gdi_.HeaderButtonParams_m_labelFont_set) + m_labelColour = property(_gdi_.HeaderButtonParams_m_labelColour_get, _gdi_.HeaderButtonParams_m_labelColour_set) + m_labelBitmap = property(_gdi_.HeaderButtonParams_m_labelBitmap_get, _gdi_.HeaderButtonParams_m_labelBitmap_set) + m_labelAlignment = property(_gdi_.HeaderButtonParams_m_labelAlignment_get, _gdi_.HeaderButtonParams_m_labelAlignment_set) +_gdi_.HeaderButtonParams_swigregister(HeaderButtonParams) + +HDR_SORT_ICON_NONE = _gdi_.HDR_SORT_ICON_NONE +HDR_SORT_ICON_UP = _gdi_.HDR_SORT_ICON_UP +HDR_SORT_ICON_DOWN = _gdi_.HDR_SORT_ICON_DOWN class RendererVersion(object): """ This simple struct represents the `wx.RendererNative` interface @@ -5226,11 +6003,12 @@ def RendererVersion_IsCompatible(*args, **kwargs): class RendererNative(object): """ - One of the design principles of wxWidgets is to use the native widgets - on every platform in order to be as close to the native look and feel - on every platform. However there are still cases when some generic - widgets are needed for various reasons, but it can sometimes take a - lot of messy work to make them conform to the native LnF. + One of the design principles of wxWidgets is to use the native + widgets on every platform in order to be as close as possible to + the native look and feel on every platform. However there are + still cases when some generic widgets are needed for various + reasons, but it can sometimes take a lot of messy work to make + them conform to the native LnF. The wx.RendererNative class is a collection of functions that have platform-specific implementations for drawing certain parts of @@ -5248,13 +6026,33 @@ class RendererNative(object): __repr__ = _swig_repr def DrawHeaderButton(*args, **kwargs): """ - DrawHeaderButton(self, Window win, DC dc, Rect rect, int flags=0) + DrawHeaderButton(self, Window win, DC dc, Rect rect, int flags=0, int sortArrow=HDR_SORT_ICON_NONE, + HeaderButtonParams params=None) Draw the header control button (such as what is used by `wx.ListCtrl` in report mode.) """ return _gdi_.RendererNative_DrawHeaderButton(*args, **kwargs) + def DrawHeaderButtonContents(*args, **kwargs): + """ + DrawHeaderButtonContents(self, Window win, DC dc, Rect rect, int flags=0, int sortArrow=HDR_SORT_ICON_NONE, + HeaderButtonParams params=None) + + Draw the contents of a header control button, (label, sort + arrows, etc.) Normally this is only called by `DrawHeaderButton`. + """ + return _gdi_.RendererNative_DrawHeaderButtonContents(*args, **kwargs) + + def GetHeaderButtonHeight(*args, **kwargs): + """ + GetHeaderButtonHeight(self, Window win) -> int + + Returns the default height of a header button, either a fixed platform + height if available, or a generic height based on the window's font. + """ + return _gdi_.RendererNative_GetHeaderButtonHeight(*args, **kwargs) + def DrawTreeItemButton(*args, **kwargs): """ DrawTreeItemButton(self, Window win, DC dc, Rect rect, int flags=0) @@ -5405,6 +6203,8 @@ class RendererNative(object): """ return _gdi_.RendererNative_GetVersion(*args, **kwargs) + SplitterParams = property(GetSplitterParams,doc="See `GetSplitterParams`") + Version = property(GetVersion,doc="See `GetVersion`") _gdi_.RendererNative_swigregister(RendererNative) def RendererNative_Get(*args): @@ -5538,6 +6338,43 @@ class PseudoDC(_core.Object): """ return _gdi_.PseudoDC_TranslateId(*args, **kwargs) + def SetIdGreyedOut(*args, **kwargs): + """ + SetIdGreyedOut(self, int id, bool greyout=True) + + Set whether an object is drawn greyed out or not. + """ + return _gdi_.PseudoDC_SetIdGreyedOut(*args, **kwargs) + + def GetIdGreyedOut(*args, **kwargs): + """ + GetIdGreyedOut(self, int id) -> bool + + Get whether an object is drawn greyed out or not. + """ + return _gdi_.PseudoDC_GetIdGreyedOut(*args, **kwargs) + + def FindObjects(*args, **kwargs): + """ + FindObjects(self, int x, int y, int radius=1, wxColor bg=*wxWHITE) -> PyObject + + Returns a list of all the id's that draw a pixel with color + not equal to bg within radius of (x,y). + Returns an empty list if nothing is found. The list is in + reverse drawing order so list[0] is the top id. + """ + return _gdi_.PseudoDC_FindObjects(*args, **kwargs) + + def FindObjectsByBBox(*args, **kwargs): + """ + FindObjectsByBBox(self, int x, int y) -> PyObject + + Returns a list of all the id's whose bounding boxes include (x,y). + Returns an empty list if nothing is found. The list is in + reverse drawing order so list[0] is the top id. + """ + return _gdi_.PseudoDC_FindObjectsByBBox(*args, **kwargs) + def DrawIdToDC(*args, **kwargs): """ DrawIdToDC(self, int id, DC dc) @@ -5855,6 +6692,8 @@ class PseudoDC(_core.Object): Draws a circle with the given center point and radius. The current pen is used for the outline and the current brush for filling the shape. + + :see: `DrawEllipse` """ return _gdi_.PseudoDC_DrawCircle(*args, **kwargs) @@ -5865,6 +6704,8 @@ class PseudoDC(_core.Object): Draws a circle with the given center point and radius. The current pen is used for the outline and the current brush for filling the shape. + + :see: `DrawEllipse` """ return _gdi_.PseudoDC_DrawCirclePoint(*args, **kwargs) @@ -5874,6 +6715,8 @@ class PseudoDC(_core.Object): Draws an ellipse contained in the specified rectangle. The current pen is used for the outline and the current brush for filling the shape. + + :see: `DrawCircle` """ return _gdi_.PseudoDC_DrawEllipse(*args, **kwargs) @@ -5883,6 +6726,8 @@ class PseudoDC(_core.Object): Draws an ellipse contained in the specified rectangle. The current pen is used for the outline and the current brush for filling the shape. + + :see: `DrawCircle` """ return _gdi_.PseudoDC_DrawEllipseRect(*args, **kwargs) @@ -5892,6 +6737,8 @@ class PseudoDC(_core.Object): Draws an ellipse contained in the specified rectangle. The current pen is used for the outline and the current brush for filling the shape. + + :see: `DrawCircle` """ return _gdi_.PseudoDC_DrawEllipsePointSize(*args, **kwargs) @@ -5923,6 +6770,13 @@ class PseudoDC(_core.Object): *transparent* is true and the bitmap has a transparency mask, (or alpha channel on the platforms that support it) then the bitmap will be drawn transparently. + + When drawing a mono-bitmap, the current text foreground colour will be + used to draw the foreground of the bitmap (all bits set to 1), and the + current text background colour to draw the background (all bits set to + 0). + + :see: `SetTextForeground`, `SetTextBackground` and `wx.MemoryDC` """ return _gdi_.PseudoDC_DrawBitmap(*args, **kwargs) @@ -5934,6 +6788,13 @@ class PseudoDC(_core.Object): *transparent* is true and the bitmap has a transparency mask, (or alpha channel on the platforms that support it) then the bitmap will be drawn transparently. + + When drawing a mono-bitmap, the current text foreground colour will be + used to draw the foreground of the bitmap (all bits set to 1), and the + current text background colour to draw the background (all bits set to + 0). + + :see: `SetTextForeground`, `SetTextBackground` and `wx.MemoryDC` """ return _gdi_.PseudoDC_DrawBitmapPoint(*args, **kwargs) @@ -5953,6 +6814,8 @@ class PseudoDC(_core.Object): **NOTE**: under wxGTK the current logical function is used by this function but it is ignored by wxMSW. Thus, you should avoid using logical functions with this function in portable programs. + + :see: `DrawRotatedText` """ return _gdi_.PseudoDC_DrawText(*args, **kwargs) @@ -5972,6 +6835,8 @@ class PseudoDC(_core.Object): **NOTE**: under wxGTK the current logical function is used by this function but it is ignored by wxMSW. Thus, you should avoid using logical functions with this function in portable programs. + + :see: `DrawRotatedText` """ return _gdi_.PseudoDC_DrawTextPoint(*args, **kwargs) @@ -5985,6 +6850,8 @@ class PseudoDC(_core.Object): function. In particular, a font different from ``wx.NORMAL_FONT`` should be used as the it is not normally a TrueType font. ``wx.SWISS_FONT`` is an example of a font which is. + + :see: `DrawText` """ return _gdi_.PseudoDC_DrawRotatedText(*args, **kwargs) @@ -5998,6 +6865,8 @@ class PseudoDC(_core.Object): function. In particular, a font different from ``wx.NORMAL_FONT`` should be used as the it is not normally a TrueType font. ``wx.SWISS_FONT`` is an example of a font which is. + + :see: `DrawText` """ return _gdi_.PseudoDC_DrawRotatedTextPoint(*args, **kwargs) @@ -6035,6 +6904,8 @@ class PseudoDC(_core.Object): Draw *text* within the specified rectangle, abiding by the alignment flags. Will additionally emphasize the character at *indexAccel* if it is not -1. + + :see: `DrawImageLabel` """ return _gdi_.PseudoDC_DrawLabel(*args, **kwargs) @@ -6074,6 +6945,8 @@ class PseudoDC(_core.Object): Sets the current font for the DC. It must be a valid font, in particular you should not pass ``wx.NullFont`` to this method. + + :see: `wx.Font` """ return _gdi_.PseudoDC_SetFont(*args, **kwargs) @@ -6085,6 +6958,8 @@ class PseudoDC(_core.Object): If the argument is ``wx.NullPen``, the current pen is selected out of the device context, and the original pen restored. + + :see: `wx.Pen` """ return _gdi_.PseudoDC_SetPen(*args, **kwargs) @@ -6097,6 +6972,8 @@ class PseudoDC(_core.Object): If the argument is ``wx.NullBrush``, the current brush is selected out of the device context, and the original brush restored, allowing the current brush to be destroyed safely. + + :see: `wx.Brush` """ return _gdi_.PseudoDC_SetBrush(*args, **kwargs) @@ -6126,6 +7003,8 @@ class PseudoDC(_core.Object): window or bitmap associated with the DC. If the argument is ``wx.NullPalette``, the current palette is selected out of the device context, and the original palette restored. + + :see: `wx.Palette` """ return _gdi_.PseudoDC_SetPalette(*args, **kwargs) @@ -6184,6 +7063,8 @@ class PseudoDC(_core.Object): """ return _gdi_.PseudoDC_SetLogicalFunction(*args, **kwargs) + IdBounds = property(GetIdBounds,SetIdBounds,doc="See `GetIdBounds` and `SetIdBounds`") + Len = property(GetLen,doc="See `GetLen`") _gdi_.PseudoDC_swigregister(PseudoDC)