Commit a7019265 authored by Jack Jansen's avatar Jack Jansen

Use ResObj_OptNew for GetDialogItem return value: the handle returned

may be NULL (for user items, for instance).
parent 92a64b57
...@@ -64,6 +64,10 @@ class MyScanner(Scanner): ...@@ -64,6 +64,10 @@ class MyScanner(Scanner):
("long", "*", "OutMode")], ("long", "*", "OutMode")],
[("VarVarOutBuffer", "*", "InOutMode")]), [("VarVarOutBuffer", "*", "InOutMode")]),
# GetDialogItem return handle is optional
([("Handle", "item", "OutMode")],
[("OptHandle", "item", "OutMode")]),
# NewDialog ETC. # NewDialog ETC.
([("void", "*", "OutMode")], ([("void", "*", "OutMode")],
[("NullStorage", "*", "InMode")]), [("NullStorage", "*", "InMode")]),
......
...@@ -13,6 +13,12 @@ from macsupport import * ...@@ -13,6 +13,12 @@ from macsupport import *
DialogPtr = OpaqueByValueType("DialogPtr", "DlgObj") DialogPtr = OpaqueByValueType("DialogPtr", "DlgObj")
DialogRef = DialogPtr DialogRef = DialogPtr
# XXXX There must be a more elegant way to do this. An OptHandle is
# either a handle or None (in case NULL is passed in). This is needed
# for GetDialogItem().
OptHandle = OpaqueByValueType("Handle", "ResObj")
OptHandle.new = "ResObj_OptNew"
ModalFilterProcPtr = InputOnlyType("PyObject*", "O") ModalFilterProcPtr = InputOnlyType("PyObject*", "O")
ModalFilterProcPtr.passInput = lambda name: "NewModalFilterProc(Dlg_PassFilterProc(%s))" % name ModalFilterProcPtr.passInput = lambda name: "NewModalFilterProc(Dlg_PassFilterProc(%s))" % name
ModalFilterUPP = ModalFilterProcPtr ModalFilterUPP = ModalFilterProcPtr
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment