STATIC_BORDER = _core_.STATIC_BORDER
TRANSPARENT_WINDOW = _core_.TRANSPARENT_WINDOW
NO_BORDER = _core_.NO_BORDER
+DEFAULT_CONTROL_BORDER = _core_.DEFAULT_CONTROL_BORDER
+DEFAULT_STATUSBAR_STYLE = _core_.DEFAULT_STATUSBAR_STYLE
TAB_TRAVERSAL = _core_.TAB_TRAVERSAL
WANTS_CHARS = _core_.WANTS_CHARS
POPUP_WINDOW = _core_.POPUP_WINDOW
"""MemoryFSHandler_RemoveFile(String filename)"""
return _core_.MemoryFSHandler_RemoveFile(*args, **kwargs)
+IMAGE_ALPHA_TRANSPARENT = _core_.IMAGE_ALPHA_TRANSPARENT
+IMAGE_ALPHA_THRESHOLD = _core_.IMAGE_ALPHA_THRESHOLD
+IMAGE_ALPHA_OPAQUE = _core_.IMAGE_ALPHA_OPAQUE
#---------------------------------------------------------------------------
class ImageHandler(Object):
"""
return _core_.Image_InitAlpha(*args, **kwargs)
+ def IsTransparent(*args, **kwargs):
+ """
+ IsTransparent(self, int x, int y, unsigned char threshold=IMAGE_ALPHA_THRESHOLD) -> bool
+
+ Returns True if this pixel is masked or has an alpha value less than
+ the spcified threshold.
+ """
+ return _core_.Image_IsTransparent(*args, **kwargs)
+
def FindFirstUnusedColour(*args, **kwargs):
"""
FindFirstUnusedColour(int startR=1, int startG=0, int startB=0) -> (success, r, g, b)
def ConvertAlphaToMask(*args, **kwargs):
"""
- ConvertAlphaToMask(self, byte threshold=128) -> bool
+ ConvertAlphaToMask(self, byte threshold=IMAGE_ALPHA_THRESHOLD) -> bool
If the image has alpha channel, this method converts it to mask. All pixels
with alpha value less than ``threshold`` are replaced with mask colour and the
return _core_.Image_Paste(*args, **kwargs)
def GetData(*args, **kwargs):
- """GetData(self) -> PyObject"""
+ """
+ GetData(self) -> PyObject
+
+ Returns a string containing a copy of the RGB bytes of the image.
+ """
return _core_.Image_GetData(*args, **kwargs)
def SetData(*args, **kwargs):
- """SetData(self, PyObject data)"""
+ """
+ SetData(self, buffer data)
+
+ Resets the Image's RGB data from a buffer of RGB bytes. Accepts
+ either a string or a buffer object holding the data and the length of
+ the data must be width*height*3.
+ """
return _core_.Image_SetData(*args, **kwargs)
def GetDataBuffer(*args, **kwargs):
- """GetDataBuffer(self) -> PyObject"""
+ """
+ GetDataBuffer(self) -> PyObject
+
+ Returns a writable Python buffer object that is pointing at the RGB
+ image data buffer inside the wx.Image.
+ """
return _core_.Image_GetDataBuffer(*args, **kwargs)
def SetDataBuffer(*args, **kwargs):
- """SetDataBuffer(self, PyObject data)"""
+ """
+ SetDataBuffer(self, buffer data)
+
+ Sets the internal image data pointer to point at a Python buffer
+ object. This can save a copy of the data but you must ensure that the
+ buffer object lives longer than the wx.Image does.
+ """
return _core_.Image_SetDataBuffer(*args, **kwargs)
def GetAlphaData(*args, **kwargs):
- """GetAlphaData(self) -> PyObject"""
+ """
+ GetAlphaData(self) -> PyObject
+
+ Returns a string containing a copy of the alpha bytes of the image.
+ """
return _core_.Image_GetAlphaData(*args, **kwargs)
def SetAlphaData(*args, **kwargs):
- """SetAlphaData(self, PyObject data)"""
+ """
+ SetAlphaData(self, buffer alpha)
+
+ Resets the Image's alpha data from a buffer of bytes. Accepts either
+ a string or a buffer object holding the data and the length of the
+ data must be width*height.
+ """
return _core_.Image_SetAlphaData(*args, **kwargs)
def GetAlphaBuffer(*args, **kwargs):
return _core_.Image_GetAlphaBuffer(*args, **kwargs)
def SetAlphaBuffer(*args, **kwargs):
- """SetAlphaBuffer(self, PyObject data)"""
+ """SetAlphaBuffer(self, buffer alpha)"""
return _core_.Image_SetAlphaBuffer(*args, **kwargs)
def SetMaskColour(*args, **kwargs):
return val
def EmptyImage(*args, **kwargs):
- """EmptyImage(int width=0, int height=0, bool clear=True) -> Image"""
+ """
+ EmptyImage(int width=0, int height=0, bool clear=True) -> Image
+
+ Construct an empty image of a given size, optionally setting all
+ pixels to black.
+ """
val = _core_.new_EmptyImage(*args, **kwargs)
val.thisown = 1
return val
def ImageFromBitmap(*args, **kwargs):
- """ImageFromBitmap(Bitmap bitmap) -> Image"""
+ """
+ ImageFromBitmap(Bitmap bitmap) -> Image
+
+ Construct an Image from a `wx.Bitmap`.
+ """
val = _core_.new_ImageFromBitmap(*args, **kwargs)
val.thisown = 1
return val
def ImageFromData(*args, **kwargs):
- """ImageFromData(int width, int height, unsigned char data) -> Image"""
+ """
+ ImageFromData(int width, int height, buffer data) -> Image
+
+ Construct an Image from a buffer of RGB bytes. Accepts either a
+ string or a buffer object holding the data and the length of the data
+ must be width*height*3.
+ """
val = _core_.new_ImageFromData(*args, **kwargs)
val.thisown = 1
return val
def ImageFromDataWithAlpha(*args, **kwargs):
- """ImageFromDataWithAlpha(int width, int height, unsigned char data, unsigned char alpha) -> Image"""
+ """
+ ImageFromDataWithAlpha(int width, int height, buffer data, buffer alpha) -> Image
+
+ Construct an Image from a buffer of RGB bytes with an Alpha channel.
+ Accepts either a string or a buffer object holding the data and the
+ length of the data must be width*height*3.
+ """
val = _core_.new_ImageFromDataWithAlpha(*args, **kwargs)
val.thisown = 1
return val
self.this = newobj.this
self.thisown = 1
del newobj.thisown
- self._setCallbackInfo(self, PyApp)
- self._setOORInfo(self)
+ self._setCallbackInfo(self, PyApp, False)
+ self._setOORInfo(self, False)
def __del__(self, destroy=_core_.delete_PyApp):
"""__del__(self)"""
except: pass
def _setCallbackInfo(*args, **kwargs):
- """_setCallbackInfo(self, PyObject self, PyObject _class)"""
+ """_setCallbackInfo(self, PyObject self, PyObject _class, bool incref)"""
return _core_.PyApp__setCallbackInfo(*args, **kwargs)
def GetAppName(*args, **kwargs):
self._BootstrapApp()
- def __del__(self):
- try:
- self.RestoreStdio() # Just in case the MainLoop was overridden
- except:
- pass
+ def __del__(self, destroy=wx.PyApp.__del__):
+ self.RestoreStdio() # Just in case the MainLoop was overridden
+ destroy(self)
+ def Destroy(self):
+ wx.PyApp.Destroy(self)
+ self.thisown = 0
def SetTopWindow(self, frame):
"""Set the \"main\" top level window"""
def RestoreStdio(self):
- _sys.stdout, _sys.stderr = self.saveStdio
+ try:
+ _sys.stdout, _sys.stderr = self.saveStdio
+ except:
+ pass
def SetOutputWindowAttributes(self, title=None, pos=None, size=None):
def Window_FromHWND(*args, **kwargs):
"""Window_FromHWND(Window parent, unsigned long _hWnd) -> Window"""
return _core_.Window_FromHWND(*args, **kwargs)
+
+def GetTopLevelWindows(*args, **kwargs):
+ """
+ GetTopLevelWindows() -> PyObject
+
+ Returns a list of the the application's top-level windows, (frames,
+ dialogs, etc.) NOTE: Currently this is a copy of the list maintained
+ by wxWidgets, and so it is only valid as long as no top-level windows
+ are closed or new top-level windows are created.
+
+ """
+ return _core_.GetTopLevelWindows(*args, **kwargs)
#---------------------------------------------------------------------------
class Validator(EvtHandler):
#----------------------------------------------------------------------------
-# Set the default string<-->unicode conversion encoding from the
-# locale. This encoding is used when string or unicode objects need
-# to be converted in order to pass them to wxWidgets. Please be aware
-# that the default encoding within the same locale may be slightly
-# different on different platforms. For example, please see
+# Set wxPython's default string<-->unicode conversion encoding from
+# the locale, but only if Python's default hasn't been changed. (We
+# assume that if the user has customized it already then that is the
+# encoding we need to use as well.)
+#
+# The encoding selected here is used when string or unicode objects
+# need to be converted in order to pass them to wxWidgets. Please be
+# aware that the default encoding within the same locale may be
+# slightly different on different platforms. For example, please see
# http://www.alanwood.net/demos/charsetdiffs.html for differences
# between the common latin/roman encodings.
try:
default = locale.getdefaultlocale()[1]
codecs.lookup(default)
- except (ValueError, LookupError):
+ except (ValueError, LookupError, TypeError):
default = _sys.getdefaultencoding()
del locale
del codecs