mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2026-01-06 20:10:08 +01:00
Add __index__ to wx.WindowID, and __bool__ to wx.Region
This commit is contained in:
@@ -88,11 +88,12 @@ def run():
|
||||
c.mustHaveApp()
|
||||
c.find('operator++').ignore()
|
||||
|
||||
# SIP maps operator bool() to __int__, but Classic used __nonzero__. Does
|
||||
# it make any difference either way?
|
||||
c.find('operator bool').ignore()
|
||||
c.addCppMethod('int', '__nonzero__', '()', 'return (int)self->operator bool();',
|
||||
'Returns true while there are still rectangles available in the iteration.')
|
||||
c.addCppMethod('int', '__bool__', '()', 'return (int)self->operator bool();',
|
||||
'Returns true while there are still rectangles available in the iteration.')
|
||||
|
||||
|
||||
c.addCppMethod('void', 'Next', '()', 'self->operator++();',
|
||||
'Move the iterator to the next rectangle in the region.')
|
||||
|
||||
@@ -53,12 +53,12 @@ def run():
|
||||
MethodDef(name='wxWindowIDRef', className='wxWindowIDRef', isCtor=True,
|
||||
briefDoc='Create reference from an ID',
|
||||
items=[ ParamDef(type='int', name='id') ]),
|
||||
|
||||
|
||||
MethodDef(name='wxWindowIDRef', className='wxWindowIDRef', isCtor=True,
|
||||
briefDoc='Copy an ID reference',
|
||||
items=[ ParamDef(type='const wxWindowIDRef&', name='idref') ]),
|
||||
]),
|
||||
|
||||
|
||||
MethodDef(name='~wxWindowIDRef', className='wxWindowIDRef', isDtor=True),
|
||||
|
||||
MethodDef(type='int', name='GetValue',
|
||||
@@ -73,11 +73,13 @@ def run():
|
||||
""")
|
||||
|
||||
klass.addCppMethod('int', '__int__', '()',
|
||||
doc="Alias for GetValue allowing the IDRef to be passed as the WindowID parameter when creating widgets or etc.",
|
||||
body="""\
|
||||
return self->GetValue();
|
||||
""")
|
||||
|
||||
doc="Alias for GetValue allowing the IDRef to be passed as the WindowID parameter when creating widgets or other places an integer type is needed.",
|
||||
body="return self->GetValue();")
|
||||
klass.addCppMethod('int', '__index__', '()',
|
||||
doc="See :meth:`__int__`",
|
||||
body="return self->GetValue();")
|
||||
|
||||
|
||||
klass.addCppMethod('bool', '__eq__', '(wxWindowID id)', "return self->GetValue() == id;")
|
||||
klass.addCppMethod('bool', '__ne__', '(wxWindowID id)', "return self->GetValue() != id;")
|
||||
klass.addCppMethod('bool', '__lt__', '(wxWindowID id)', "return self->GetValue() < id;")
|
||||
@@ -92,17 +94,17 @@ def run():
|
||||
# and finish it up by adding it to the module
|
||||
module.addItem(klass)
|
||||
|
||||
# Now, let's add a new Python function to the global scope that reserves an
|
||||
# ID (or range) and returns a ref object for it.
|
||||
module.addPyFunction('NewIdRef', '(count=1)',
|
||||
# Now, let's add a new Python function to the global scope that reserves an
|
||||
# ID (or range) and returns a ref object for it.
|
||||
module.addPyFunction('NewIdRef', '(count=1)',
|
||||
doc="""\
|
||||
Reserves a new Window ID (or range of WindowIDs) and returns a
|
||||
:class:`wx.WindowIDRef` object (or list of them) that will help
|
||||
Reserves a new Window ID (or range of WindowIDs) and returns a
|
||||
:class:`wx.WindowIDRef` object (or list of them) that will help
|
||||
manage the reservation of that ID.
|
||||
|
||||
This function is intended to be a drop-in replacement of the old
|
||||
and deprecated :func:`wx.NewId` function, with the added benefit
|
||||
that the ID should never conflict with an in-use ID or other IDs
|
||||
This function is intended to be a drop-in replacement of the old
|
||||
and deprecated :func:`wx.NewId` function, with the added benefit
|
||||
that the ID should never conflict with an in-use ID or other IDs
|
||||
generated by this function.
|
||||
""",
|
||||
body="""\
|
||||
|
||||
Reference in New Issue
Block a user