| 1 | # FindControlUnderMouse() returns an existing control, not a new one,
|
|---|
| 2 | # so create this one by hand.
|
|---|
| 3 | f = Function(ExistingControlHandle, 'FindControlUnderMouse',
|
|---|
| 4 | (Point, 'inWhere', InMode),
|
|---|
| 5 | (WindowRef, 'inWindow', InMode),
|
|---|
| 6 | (SInt16, 'outPart', OutMode),
|
|---|
| 7 | )
|
|---|
| 8 | functions.append(f)
|
|---|
| 9 |
|
|---|
| 10 | f = Function(ControlHandle, 'as_Control',
|
|---|
| 11 | (Handle, 'h', InMode))
|
|---|
| 12 | functions.append(f)
|
|---|
| 13 |
|
|---|
| 14 | f = Method(Handle, 'as_Resource', (ControlHandle, 'ctl', InMode))
|
|---|
| 15 | methods.append(f)
|
|---|
| 16 |
|
|---|
| 17 | f = Method(void, 'GetControlRect', (ControlHandle, 'ctl', InMode), (Rect, 'rect', OutMode))
|
|---|
| 18 | methods.append(f)
|
|---|
| 19 |
|
|---|
| 20 | DisposeControl_body = """
|
|---|
| 21 | if (!PyArg_ParseTuple(_args, ""))
|
|---|
| 22 | return NULL;
|
|---|
| 23 | if ( _self->ob_itself ) {
|
|---|
| 24 | SetControlReference(_self->ob_itself, (long)0); /* Make it forget about us */
|
|---|
| 25 | DisposeControl(_self->ob_itself);
|
|---|
| 26 | _self->ob_itself = NULL;
|
|---|
| 27 | }
|
|---|
| 28 | Py_INCREF(Py_None);
|
|---|
| 29 | _res = Py_None;
|
|---|
| 30 | return _res;
|
|---|
| 31 | """
|
|---|
| 32 |
|
|---|
| 33 | f = ManualGenerator("DisposeControl", DisposeControl_body)
|
|---|
| 34 | f.docstring = lambda : "() -> None"
|
|---|
| 35 |
|
|---|
| 36 | methods.append(f)
|
|---|
| 37 |
|
|---|
| 38 | # All CreateXxxXxxControl() functions return a new object in an output
|
|---|
| 39 | # parameter; these should however be managed by us (we're creating them
|
|---|
| 40 | # after all), so set the type to ControlRef.
|
|---|
| 41 | for f in functions:
|
|---|
| 42 | if f.name.startswith("Create"):
|
|---|
| 43 | v = f.argumentList[-1]
|
|---|
| 44 | if v.type == ExistingControlHandle:
|
|---|
| 45 | v.type = ControlRef
|
|---|