X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c1cb24a46088fe648eabf5bf12cda8d2779c734f..c1718b2c8a1ae4e7f2a6f421cc398a21dfdb07cb:/wxPython/src/msw/_core.py diff --git a/wxPython/src/msw/_core.py b/wxPython/src/msw/_core.py index c119ea25f1..c340efe8c7 100644 --- a/wxPython/src/msw/_core.py +++ b/wxPython/src/msw/_core.py @@ -1520,6 +1520,12 @@ class InputStream(object): self.this = newobj.this self.thisown = 1 del newobj.thisown + def __del__(self, destroy=_core_.delete_InputStream): + """__del__(self)""" + try: + if self.thisown: destroy(self) + except: pass + def close(*args, **kwargs): """close(self)""" return _core_.InputStream_close(*args, **kwargs) @@ -2125,6 +2131,20 @@ class Image(Object): """ return _core_.Image_ConvertAlphaToMask(*args, **kwargs) + def ConvertColourToAlpha(*args, **kwargs): + """ + ConvertColourToAlpha(self, unsigned char r, unsigned char g, unsigned char b) -> bool + + This method converts an image where the original alpha information is + only available as a shades of a colour (actually shades of grey) + typically when you draw anti-aliased text into a bitmap. The DC + drawing routines draw grey values on the black background although + they actually mean to draw white with differnt alpha values. This + method reverses it, assuming a black (!) background and white text. + The method will then fill up the whole image with the colour given. + """ + return _core_.Image_ConvertColourToAlpha(*args, **kwargs) + def SetMaskFromImage(*args, **kwargs): """SetMaskFromImage(self, Image mask, byte mr, byte mg, byte mb) -> bool""" return _core_.Image_SetMaskFromImage(*args, **kwargs) @@ -5306,6 +5326,9 @@ your Mac.""" if redirect: self.RedirectStdio(filename) + # Use Python's install prefix as the default + wx.StandardPaths.Get().SetInstallPrefix(_sys.prefix) + # This finishes the initialization of wxWindows and then calls # the OnInit that should be present in the derived class self._BootstrapApp() @@ -10860,7 +10883,6 @@ class _wxPyUnbornObject(object): #---------------------------------------------------------------------------- -_wxPyCallAfterId = None def CallAfter(callable, *args, **kw): """ @@ -10874,25 +10896,23 @@ def CallAfter(callable, *args, **kw): app = wx.GetApp() assert app is not None, 'No wx.App created yet' - global _wxPyCallAfterId - if _wxPyCallAfterId is None: - _wxPyCallAfterId = wx.NewEventType() - app.Connect(-1, -1, _wxPyCallAfterId, - lambda event: event.callable(*event.args, **event.kw) ) + if not hasattr(app, "_CallAfterId"): + app._CallAfterId = wx.NewEventType() + app.Connect(-1, -1, app._CallAfterId, + lambda event: event.callable(*event.args, **event.kw) ) evt = wx.PyEvent() - evt.SetEventType(_wxPyCallAfterId) + evt.SetEventType(app._CallAfterId) evt.callable = callable evt.args = args evt.kw = kw wx.PostEvent(app, evt) - #---------------------------------------------------------------------------- class FutureCall: """ - A convenience class for wx.Timer, that calls the given callable + A convenience class for `wx.Timer`, that calls the given callable object once after the given amount of milliseconds, passing any positional or keyword args. The return value of the callable is availbale after it has been run with the `GetResult` method.