comments and cleanup

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn 2004-05-28 20:40:12 +00:00
parent 96fc3ef4f0
commit 6186384153
4 changed files with 35 additions and 23 deletions

View File

@ -96,7 +96,10 @@ def CallAfter(callable, *args, **kw):
"""
Call the specified function after the current and pending event
handlers have been completed. This is also good for making GUI
method calls from non-GUI threads.
method calls from non-GUI threads. Any extra positional or
keyword args are passed on to the callable when it is called.
:see: `wx.FutureCall`
"""
app = wx.GetApp()
assert app, 'No wxApp created yet'
@ -122,7 +125,7 @@ class FutureCall:
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.
availbale after it has been run with the `GetResult` method.
If you don't need to get the return value or restart the timer
then there is no need to hold a reference to this object. It will
@ -130,6 +133,8 @@ class FutureCall:
has a reference to self.Notify) but the cycle will be broken when
the timer completes, automatically cleaning up the wx.FutureCall
object.
:see: `wx.CallAfter`
"""
def __init__(self, millis, callable, *args, **kwargs):
self.millis = millis

View File

@ -30,6 +30,7 @@
%native(_wxPySetDictionary) __wxPySetDictionary;
%native(_wxPyFixStockObjects) __wxPyFixStockObjects;
%pythoncode {
%#// Give a reference to the dictionary of this module to the C++ extension
%#// code.

View File

@ -5773,7 +5773,7 @@ class Window(EvtHandler):
"""
GetClientRect(self) -> Rect
Get the client area position and size as a wx.Rect object.
Get the client area position and size as a `wx.Rect` object.
"""
return _core_.Window_GetClientRect(*args, **kwargs)
@ -9613,7 +9613,10 @@ def CallAfter(callable, *args, **kw):
"""
Call the specified function after the current and pending event
handlers have been completed. This is also good for making GUI
method calls from non-GUI threads.
method calls from non-GUI threads. Any extra positional or
keyword args are passed on to the callable when it is called.
:see: `wx.FutureCall`
"""
app = wx.GetApp()
assert app, 'No wxApp created yet'
@ -9639,7 +9642,7 @@ class FutureCall:
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.
availbale after it has been run with the `GetResult` method.
If you don't need to get the return value or restart the timer
then there is no need to hold a reference to this object. It will
@ -9647,6 +9650,8 @@ class FutureCall:
has a reference to self.Notify) but the cycle will be broken when
the timer completes, automatically cleaning up the wx.FutureCall
object.
:see: `wx.CallAfter`
"""
def __init__(self, millis, callable, *args, **kwargs):
self.millis = millis

View File

@ -511,8 +511,8 @@ inline const char* dropwx(const char* name) {
//----------------------------------------------------------------------
// This function is called when the wxc module is imported to do some initial
// setup. (Before there is a wxApp object.) The rest happens in
// This function is called when the wx._core_ module is imported to do some
// initial setup. (Before there is a wxApp object.) The rest happens in
// wxPyApp::_BootstrapApp
void __wxPyPreStart(PyObject* moduleDict)
{
@ -665,20 +665,20 @@ bool wxPySwigInstance_Check(PyObject* obj) {
//---------------------------------------------------------------------------
// The stock objects are no longer created when the wxc module is imported,
// but only after the app object has been created. The
// The stock objects are no longer created when the wx._core_ module is
// imported, but only after the app object has been created. The
// wxPy_ReinitStockObjects function will be called 3 times to pass the stock
// objects though various stages of evolution:
//
// pass 1: Set all the pointers to a non-NULL value so the Python proxy
// object will be created (otherwise it will just use None.)
// object will be created (otherwise SWIG will just use None.)
//
// pass 2: After the module has been imported and the python proxys have
// been created, then set the __class__ to be _wxPyUnbornObject so
// it will catch any access to the object and will raise an exception.
//
// pass 3: Finally, from OnInit patch things up so the stock objects can
// be used.
// pass 3: Finally, from BootstrapApp patch things up so the stock objects
// can be used.
PyObject* __wxPyFixStockObjects(PyObject* /* self */, PyObject* args)
@ -735,6 +735,17 @@ static void rsoPass3(const char* name, const char* classname, void* ptr)
void wxPy_ReinitStockObjects(int pass)
{
// If there is already an App object then wxPython is probably embedded in
// a wx C++ application, so there is no need to do all this.
static bool embedded = false;
if ((pass == 1 || pass == 2) && wxTheApp) {
embedded = true;
return;
}
if (pass == 3 && embedded)
return;
#define REINITOBJ(name, classname) \
if (pass == 1) { name = (classname*)0xC0C0C0C0; } \
else if (pass == 2) { rsoPass2(#name); } \
@ -746,16 +757,6 @@ void wxPy_ReinitStockObjects(int pass)
else if (pass == 2) { rsoPass2(#name); } \
else if (pass == 3) { rsoPass3(#name, #classname, (void*)&name); }
// If there is already an App object then wxPython is probably embedded in
// a wx C++ application, so there is no need to do all this.
static bool embedded = false;
if ((pass == 1 || pass == 2) && wxTheApp) {
embedded = true;
return;
}
if (pass == 3 && embedded)
return;
REINITOBJ(wxNORMAL_FONT, wxFont);
REINITOBJ(wxSMALL_FONT, wxFont);