summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Mac/Lib/test/progressbar.py10
-rw-r--r--Mac/Lib/test/tctl.py3
-rw-r--r--Mac/Lib/test/tdlg.py7
-rw-r--r--Mac/Lib/toolbox/Controls.py36
-rw-r--r--Mac/Lib/toolbox/Dialogs.py3
-rw-r--r--Mac/Modules/ctl/Ctlmodule.c132
-rw-r--r--Mac/Modules/ctl/ctlgen.py106
-rw-r--r--Mac/Modules/ctl/ctlscan.py9
-rw-r--r--Mac/Modules/ctl/ctlsupport.py4
-rw-r--r--Mac/Modules/dlg/Dlgmodule.c282
-rw-r--r--Mac/Modules/dlg/dlggen.py113
-rw-r--r--Mac/Modules/dlg/dlgscan.py8
-rw-r--r--Mac/Modules/dlg/dlgsupport.py5
-rw-r--r--Tools/bgen/bgen/bgenBuffer.py6
-rw-r--r--Tools/bgen/bgen/macsupport.py8
-rw-r--r--Tools/bgen/bgen/scantools.py10
16 files changed, 462 insertions, 280 deletions
diff --git a/Mac/Lib/test/progressbar.py b/Mac/Lib/test/progressbar.py
index 59e0cc1..e165061 100644
--- a/Mac/Lib/test/progressbar.py
+++ b/Mac/Lib/test/progressbar.py
@@ -1,12 +1,12 @@
# Progress dialog
from addpack import addpack
-addpack('Demo')
+addpack('Tools')
addpack('bgen')
addpack('dlg')
addpack('evt')
-from Dlg import GetNewDialog, ModalDialog, SetIText
+from Dlg import GetNewDialog, ModalDialog, SetDialogItemText
count = 0
@@ -17,12 +17,12 @@ def filter(d, e):
def main():
d = GetNewDialog(256, -1)
- tp, h, rect = d.GetDItem(2)
- SetIText(h, "Progress...")
+ tp, h, rect = d.GetDialogItem(2)
+ SetDialogItemText(h, "Progress...")
for i in range(100):
if i%10 == 0:
str = "Progress...%d" % i
- SetIText(h, str)
+ SetDialogItemText(h, str)
ModalDialog(filter)
for j in range(100): pass
diff --git a/Mac/Lib/test/tctl.py b/Mac/Lib/test/tctl.py
index 862eeb5..a255c56 100644
--- a/Mac/Lib/test/tctl.py
+++ b/Mac/Lib/test/tctl.py
@@ -5,6 +5,7 @@ from Ctl import *
from Win import *
from Evt import *
import time
+import sys
def main():
r = (40, 40, 400, 300)
@@ -12,6 +13,8 @@ def main():
w.DrawGrowIcon()
r = (40, 40, 100, 60)
c = NewControl(w, r, "SPAM!", 1, 0, 0, 1, 0, 0)
+ print 'Ok, try it...'
+ sys.exit(1) # So we can see what happens...
main()
diff --git a/Mac/Lib/test/tdlg.py b/Mac/Lib/test/tdlg.py
index d6fdd97..654a9a5 100644
--- a/Mac/Lib/test/tdlg.py
+++ b/Mac/Lib/test/tdlg.py
@@ -3,6 +3,9 @@
# Python library.
# The ID can be overridden by passing a second parameter.
+import addpack
+addpack.addpack(':Tools:bgen:evt')
+
from Dlg import *
from Events import *
import string
@@ -17,8 +20,8 @@ def f(d, event):
def message(str = "Hello, world!", id = ID):
d = GetNewDialog(id, -1)
- tp, h, rect = d.GetDItem(2)
- SetIText(h, str)
+ tp, h, rect = d.GetDialogItem(2)
+ SetDialogItemText(h, str)
while 1:
n = ModalDialog(f)
if n == 1: break
diff --git a/Mac/Lib/toolbox/Controls.py b/Mac/Lib/toolbox/Controls.py
index 0686580..af1747f 100644
--- a/Mac/Lib/toolbox/Controls.py
+++ b/Mac/Lib/toolbox/Controls.py
@@ -1,10 +1,14 @@
-# Generated from 'D:Development:THINK C:Mac #includes:Apple #includes:Controls.h'
+# Generated from 'Moes:CW5 GOLD \304:Metrowerks C/C++ \304:Headers \304:Universal Headers 2.0a3 \304:Controls.h'
pushButProc = 0
checkBoxProc = 1
radioButProc = 2
-useWFont = 8
scrollBarProc = 16
+popupMenuProc = 1008
+useWFont = 8
+inLabel = 1
+inMenu = 2
+inTriangle = 4
inButton = 10
inCheckBox = 11
inUpButton = 20
@@ -12,17 +16,34 @@ inDownButton = 21
inPageUp = 22
inPageDown = 23
inThumb = 129
-popupMenuProc = 1008
-inLabel = 1
-inMenu = 2
-inTriangle = 4
+kNoHiliteControlPart = 0
+kInLabelControlPart = 1
+kInMenuControlPart = 2
+kInTriangleControlPart = 4
+kInButtonControlPart = 10
+kInCheckBoxControlPart = 11
+kInUpButtonControlPart = 20
+kInDownButtonControlPart = 21
+kInPageUpControlPart = 22
+kInPageDownControlPart = 23
+kInIndicatorControlPart = 129
+kReservedControlPart = 254
+kControlInactiveControlPart = 255
+popupFixedWidth = 1 << 0
+popupVariableWidth = 1 << 1
+popupUseAddResMenu = 1 << 2
popupUseWFont = 1 << 3
+popupTitleBold = 1 << 8
+popupTitleItalic = 1 << 9
+popupTitleUnderline = 1 << 10
popupTitleOutline = 1 << 11
+popupTitleShadow = 1 << 12
+popupTitleCondense = 1 << 13
popupTitleExtend = 1 << 14
+popupTitleNoStyle = 1 << 15
popupTitleLeftJust = 0x00000000
popupTitleCenterJust = 0x00000001
popupTitleRightJust = 0x000000FF
-noConstraint = 0
hAxisOnly = 1
vAxisOnly = 2
drawCntl = 0
@@ -36,6 +57,7 @@ dragCntl = 7
autoTrack = 8
calcCntlRgn = 10
calcThumbRgn = 11
+drawThumbOutline = 12
cFrameColor = 0
cBodyColor = 1
cTextColor = 2
diff --git a/Mac/Lib/toolbox/Dialogs.py b/Mac/Lib/toolbox/Dialogs.py
index c31bfbe..66fea6b 100644
--- a/Mac/Lib/toolbox/Dialogs.py
+++ b/Mac/Lib/toolbox/Dialogs.py
@@ -1,4 +1,4 @@
-# Generated from 'D:Development:THINK C:Mac #includes:Apple #includes:Dialogs.h'
+# Generated from 'Moes:CW5 GOLD \304:Metrowerks C/C++ \304:Headers \304:Universal Headers 2.0a3 \304:Dialogs.h'
ctrlItem = 4
btnCtrl = 0
@@ -16,6 +16,7 @@ cancel = 2
stopIcon = 0
noteIcon = 1
cautionIcon = 2
+kIDODialogItem = 24
overlayDITL = 0
appendDITLRight = 1
appendDITLBottom = 2
diff --git a/Mac/Modules/ctl/Ctlmodule.c b/Mac/Modules/ctl/Ctlmodule.c
index fb1459a..6af76a5 100644
--- a/Mac/Modules/ctl/Ctlmodule.c
+++ b/Mac/Modules/ctl/Ctlmodule.c
@@ -56,7 +56,7 @@ typedef struct ControlObject {
} ControlObject;
PyObject *CtlObj_New(itself)
- const ControlHandle itself;
+ ControlHandle itself;
{
ControlObject *it;
if (itself == NULL) return PyMac_Error(resNotFound);
@@ -86,7 +86,7 @@ static void CtlObj_dealloc(self)
PyMem_DEL(self);
}
-static PyObject *CtlObj_SetCTitle(_self, _args)
+static PyObject *CtlObj_SetControlTitle(_self, _args)
ControlObject *_self;
PyObject *_args;
{
@@ -95,14 +95,14 @@ static PyObject *CtlObj_SetCTitle(_self, _args)
if (!PyArg_ParseTuple(_args, "O&",
PyMac_GetStr255, title))
return NULL;
- SetCTitle(_self->ob_itself,
- title);
+ SetControlTitle(_self->ob_itself,
+ title);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *CtlObj_GetCTitle(_self, _args)
+static PyObject *CtlObj_GetControlTitle(_self, _args)
ControlObject *_self;
PyObject *_args;
{
@@ -111,8 +111,8 @@ static PyObject *CtlObj_GetCTitle(_self, _args)
if (!PyArg_ParseTuple(_args, "O&",
PyMac_GetStr255, title))
return NULL;
- GetCTitle(_self->ob_itself,
- title);
+ GetControlTitle(_self->ob_itself,
+ title);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
@@ -224,7 +224,7 @@ static PyObject *CtlObj_SizeControl(_self, _args)
return _res;
}
-static PyObject *CtlObj_SetCtlValue(_self, _args)
+static PyObject *CtlObj_SetControlValue(_self, _args)
ControlObject *_self;
PyObject *_args;
{
@@ -233,14 +233,14 @@ static PyObject *CtlObj_SetCtlValue(_self, _args)
if (!PyArg_ParseTuple(_args, "h",
&theValue))
return NULL;
- SetCtlValue(_self->ob_itself,
- theValue);
+ SetControlValue(_self->ob_itself,
+ theValue);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *CtlObj_GetCtlValue(_self, _args)
+static PyObject *CtlObj_GetControlValue(_self, _args)
ControlObject *_self;
PyObject *_args;
{
@@ -248,13 +248,13 @@ static PyObject *CtlObj_GetCtlValue(_self, _args)
short _rv;
if (!PyArg_ParseTuple(_args, ""))
return NULL;
- _rv = GetCtlValue(_self->ob_itself);
+ _rv = GetControlValue(_self->ob_itself);
_res = Py_BuildValue("h",
_rv);
return _res;
}
-static PyObject *CtlObj_SetCtlMin(_self, _args)
+static PyObject *CtlObj_SetControlMinimum(_self, _args)
ControlObject *_self;
PyObject *_args;
{
@@ -263,14 +263,14 @@ static PyObject *CtlObj_SetCtlMin(_self, _args)
if (!PyArg_ParseTuple(_args, "h",
&minValue))
return NULL;
- SetCtlMin(_self->ob_itself,
- minValue);
+ SetControlMinimum(_self->ob_itself,
+ minValue);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *CtlObj_GetCtlMin(_self, _args)
+static PyObject *CtlObj_GetControlMinimum(_self, _args)
ControlObject *_self;
PyObject *_args;
{
@@ -278,13 +278,13 @@ static PyObject *CtlObj_GetCtlMin(_self, _args)
short _rv;
if (!PyArg_ParseTuple(_args, ""))
return NULL;
- _rv = GetCtlMin(_self->ob_itself);
+ _rv = GetControlMinimum(_self->ob_itself);
_res = Py_BuildValue("h",
_rv);
return _res;
}
-static PyObject *CtlObj_SetCtlMax(_self, _args)
+static PyObject *CtlObj_SetControlMaximum(_self, _args)
ControlObject *_self;
PyObject *_args;
{
@@ -293,14 +293,14 @@ static PyObject *CtlObj_SetCtlMax(_self, _args)
if (!PyArg_ParseTuple(_args, "h",
&maxValue))
return NULL;
- SetCtlMax(_self->ob_itself,
- maxValue);
+ SetControlMaximum(_self->ob_itself,
+ maxValue);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *CtlObj_GetCtlMax(_self, _args)
+static PyObject *CtlObj_GetControlMaximum(_self, _args)
ControlObject *_self;
PyObject *_args;
{
@@ -308,13 +308,13 @@ static PyObject *CtlObj_GetCtlMax(_self, _args)
short _rv;
if (!PyArg_ParseTuple(_args, ""))
return NULL;
- _rv = GetCtlMax(_self->ob_itself);
+ _rv = GetControlMaximum(_self->ob_itself);
_res = Py_BuildValue("h",
_rv);
return _res;
}
-static PyObject *CtlObj_SetCRefCon(_self, _args)
+static PyObject *CtlObj_SetControlReference(_self, _args)
ControlObject *_self;
PyObject *_args;
{
@@ -323,14 +323,14 @@ static PyObject *CtlObj_SetCRefCon(_self, _args)
if (!PyArg_ParseTuple(_args, "l",
&data))
return NULL;
- SetCRefCon(_self->ob_itself,
- data);
+ SetControlReference(_self->ob_itself,
+ data);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *CtlObj_GetCRefCon(_self, _args)
+static PyObject *CtlObj_GetControlReference(_self, _args)
ControlObject *_self;
PyObject *_args;
{
@@ -338,12 +338,26 @@ static PyObject *CtlObj_GetCRefCon(_self, _args)
long _rv;
if (!PyArg_ParseTuple(_args, ""))
return NULL;
- _rv = GetCRefCon(_self->ob_itself);
+ _rv = GetControlReference(_self->ob_itself);
_res = Py_BuildValue("l",
_rv);
return _res;
}
+static PyObject *CtlObj_SetControlAction(_self, _args)
+ ControlObject *_self;
+ PyObject *_args;
+{
+ PyObject *_res = NULL;
+ if (!PyArg_ParseTuple(_args, ""))
+ return NULL;
+ SetControlAction(_self->ob_itself,
+ (ControlActionUPP)0);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
+}
+
static PyObject *CtlObj_DragControl(_self, _args)
ControlObject *_self;
PyObject *_args;
@@ -386,42 +400,42 @@ static PyObject *CtlObj_TestControl(_self, _args)
return _res;
}
-static PyObject *CtlObj_TrackControl(_self, _args)
+static PyObject *CtlObj_GetControlVariant(_self, _args)
ControlObject *_self;
PyObject *_args;
{
PyObject *_res = NULL;
short _rv;
- Point thePoint;
- if (!PyArg_ParseTuple(_args, "O&",
- PyMac_GetPoint, &thePoint))
+ if (!PyArg_ParseTuple(_args, ""))
return NULL;
- _rv = TrackControl(_self->ob_itself,
- thePoint,
- (ControlActionUPP)0);
+ _rv = GetControlVariant(_self->ob_itself);
_res = Py_BuildValue("h",
_rv);
return _res;
}
-static PyObject *CtlObj_GetCVariant(_self, _args)
+static PyObject *CtlObj_TrackControl(_self, _args)
ControlObject *_self;
PyObject *_args;
{
PyObject *_res = NULL;
short _rv;
- if (!PyArg_ParseTuple(_args, ""))
+ Point thePoint;
+ if (!PyArg_ParseTuple(_args, "O&",
+ PyMac_GetPoint, &thePoint))
return NULL;
- _rv = GetCVariant(_self->ob_itself);
+ _rv = TrackControl(_self->ob_itself,
+ thePoint,
+ (ControlActionUPP)0);
_res = Py_BuildValue("h",
_rv);
return _res;
}
static PyMethodDef CtlObj_methods[] = {
- {"SetCTitle", (PyCFunction)CtlObj_SetCTitle, 1,
+ {"SetControlTitle", (PyCFunction)CtlObj_SetControlTitle, 1,
"(Str255 title) -> None"},
- {"GetCTitle", (PyCFunction)CtlObj_GetCTitle, 1,
+ {"GetControlTitle", (PyCFunction)CtlObj_GetControlTitle, 1,
"(Str255 title) -> None"},
{"DisposeControl", (PyCFunction)CtlObj_DisposeControl, 1,
"() -> None"},
@@ -437,30 +451,32 @@ static PyMethodDef CtlObj_methods[] = {
"(short h, short v) -> None"},
{"SizeControl", (PyCFunction)CtlObj_SizeControl, 1,
"(short w, short h) -> None"},
- {"SetCtlValue", (PyCFunction)CtlObj_SetCtlValue, 1,
+ {"SetControlValue", (PyCFunction)CtlObj_SetControlValue, 1,
"(short theValue) -> None"},
- {"GetCtlValue", (PyCFunction)CtlObj_GetCtlValue, 1,
+ {"GetControlValue", (PyCFunction)CtlObj_GetControlValue, 1,
"() -> (short _rv)"},
- {"SetCtlMin", (PyCFunction)CtlObj_SetCtlMin, 1,
+ {"SetControlMinimum", (PyCFunction)CtlObj_SetControlMinimum, 1,
"(short minValue) -> None"},
- {"GetCtlMin", (PyCFunction)CtlObj_GetCtlMin, 1,
+ {"GetControlMinimum", (PyCFunction)CtlObj_GetControlMinimum, 1,
"() -> (short _rv)"},
- {"SetCtlMax", (PyCFunction)CtlObj_SetCtlMax, 1,
+ {"SetControlMaximum", (PyCFunction)CtlObj_SetControlMaximum, 1,
"(short maxValue) -> None"},
- {"GetCtlMax", (PyCFunction)CtlObj_GetCtlMax, 1,
+ {"GetControlMaximum", (PyCFunction)CtlObj_GetControlMaximum, 1,
"() -> (short _rv)"},
- {"SetCRefCon", (PyCFunction)CtlObj_SetCRefCon, 1,
+ {"SetControlReference", (PyCFunction)CtlObj_SetControlReference, 1,
"(long data) -> None"},
- {"GetCRefCon", (PyCFunction)CtlObj_GetCRefCon, 1,
+ {"GetControlReference", (PyCFunction)CtlObj_GetControlReference, 1,
"() -> (long _rv)"},
+ {"SetControlAction", (PyCFunction)CtlObj_SetControlAction, 1,
+ "() -> None"},
{"DragControl", (PyCFunction)CtlObj_DragControl, 1,
"(Point startPt, Rect limitRect, Rect slopRect, short axis) -> None"},
{"TestControl", (PyCFunction)CtlObj_TestControl, 1,
"(Point thePt) -> (short _rv)"},
+ {"GetControlVariant", (PyCFunction)CtlObj_GetControlVariant, 1,
+ "() -> (short _rv)"},
{"TrackControl", (PyCFunction)CtlObj_TrackControl, 1,
"(Point thePoint) -> (short _rv)"},
- {"GetCVariant", (PyCFunction)CtlObj_GetCVariant, 1,
- "() -> (short _rv)"},
{NULL, NULL, 0}
};
@@ -580,22 +596,6 @@ static PyObject *Ctl_DrawControls(_self, _args)
return _res;
}
-static PyObject *Ctl_UpdtControl(_self, _args)
- PyObject *_self;
- PyObject *_args;
-{
- PyObject *_res = NULL;
- WindowPtr theWindow;
- if (!PyArg_ParseTuple(_args, "O&",
- WinObj_Convert, &theWindow))
- return NULL;
- UpdtControl(theWindow,
- theWindow->visRgn);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
-}
-
static PyObject *Ctl_UpdateControls(_self, _args)
PyObject *_self;
PyObject *_args;
@@ -643,8 +643,6 @@ static PyMethodDef Ctl_methods[] = {
"(WindowPtr theWindow) -> None"},
{"DrawControls", (PyCFunction)Ctl_DrawControls, 1,
"(WindowPtr theWindow) -> None"},
- {"UpdtControl", (PyCFunction)Ctl_UpdtControl, 1,
- "(WindowPtr theWindow) -> None"},
{"UpdateControls", (PyCFunction)Ctl_UpdateControls, 1,
"(WindowPtr theWindow) -> None"},
{"FindControl", (PyCFunction)Ctl_FindControl, 1,
diff --git a/Mac/Modules/ctl/ctlgen.py b/Mac/Modules/ctl/ctlgen.py
index 0a355cf..85fc6c7 100644
--- a/Mac/Modules/ctl/ctlgen.py
+++ b/Mac/Modules/ctl/ctlgen.py
@@ -1,7 +1,7 @@
-# Generated from 'D:Development:THINK C:Mac #includes:Apple #includes:Controls.h'
+# Generated from 'Moes:CW5 GOLD \304:Metrowerks C/C++ \304:Headers \304:Universal Headers 2.0a3 \304:Controls.h'
-f = Function(ControlHandle, 'NewControl',
- (WindowPtr, 'theWindow', InMode),
+f = Function(ControlRef, 'NewControl',
+ (WindowRef, 'theWindow', InMode),
(Rect_ptr, 'boundsRect', InMode),
(ConstStr255Param, 'title', InMode),
(Boolean, 'visible', InMode),
@@ -13,132 +13,132 @@ f = Function(ControlHandle, 'NewControl',
)
functions.append(f)
-f = Method(void, 'SetCTitle',
- (ControlHandle, 'theControl', InMode),
+f = Method(void, 'SetControlTitle',
+ (ControlRef, 'theControl', InMode),
(ConstStr255Param, 'title', InMode),
)
methods.append(f)
-f = Method(void, 'GetCTitle',
- (ControlHandle, 'theControl', InMode),
+f = Method(void, 'GetControlTitle',
+ (ControlRef, 'theControl', InMode),
(Str255, 'title', InMode),
)
methods.append(f)
-f = Function(ControlHandle, 'GetNewControl',
+f = Function(ControlRef, 'GetNewControl',
(short, 'controlID', InMode),
- (WindowPtr, 'owner', InMode),
+ (WindowRef, 'owner', InMode),
)
functions.append(f)
f = Method(void, 'DisposeControl',
- (ControlHandle, 'theControl', InMode),
+ (ControlRef, 'theControl', InMode),
)
methods.append(f)
f = Function(void, 'KillControls',
- (WindowPtr, 'theWindow', InMode),
+ (WindowRef, 'theWindow', InMode),
)
functions.append(f)
f = Method(void, 'HideControl',
- (ControlHandle, 'theControl', InMode),
+ (ControlRef, 'theControl', InMode),
)
methods.append(f)
f = Method(void, 'ShowControl',
- (ControlHandle, 'theControl', InMode),
+ (ControlRef, 'theControl', InMode),
)
methods.append(f)
f = Function(void, 'DrawControls',
- (WindowPtr, 'theWindow', InMode),
+ (WindowRef, 'theWindow', InMode),
)
functions.append(f)
f = Method(void, 'Draw1Control',
- (ControlHandle, 'theControl', InMode),
+ (ControlRef, 'theControl', InMode),
)
methods.append(f)
f = Method(void, 'HiliteControl',
- (ControlHandle, 'theControl', InMode),
+ (ControlRef, 'theControl', InMode),
(short, 'hiliteState', InMode),
)
methods.append(f)
-f = Function(void, 'UpdtControl',
- (WindowPtr, 'theWindow', InMode),
- (RgnHandle, 'updateRgn', InMode),
-)
-functions.append(f)
-
f = Function(void, 'UpdateControls',
- (WindowPtr, 'theWindow', InMode),
+ (WindowRef, 'theWindow', InMode),
(RgnHandle, 'updateRgn', InMode),
)
functions.append(f)
f = Method(void, 'MoveControl',
- (ControlHandle, 'theControl', InMode),
+ (ControlRef, 'theControl', InMode),
(short, 'h', InMode),
(short, 'v', InMode),
)
methods.append(f)
f = Method(void, 'SizeControl',
- (ControlHandle, 'theControl', InMode),
+ (ControlRef, 'theControl', InMode),
(short, 'w', InMode),
(short, 'h', InMode),
)
methods.append(f)
-f = Method(void, 'SetCtlValue',
- (ControlHandle, 'theControl', InMode),
+f = Method(void, 'SetControlValue',
+ (ControlRef, 'theControl', InMode),
(short, 'theValue', InMode),
)
methods.append(f)
-f = Method(short, 'GetCtlValue',
- (ControlHandle, 'theControl', InMode),
+f = Method(short, 'GetControlValue',
+ (ControlRef, 'theControl', InMode),
)
methods.append(f)
-f = Method(void, 'SetCtlMin',
- (ControlHandle, 'theControl', InMode),
+f = Method(void, 'SetControlMinimum',
+ (ControlRef, 'theControl', InMode),
(short, 'minValue', InMode),
)
methods.append(f)
-f = Method(short, 'GetCtlMin',
- (ControlHandle, 'theControl', InMode),
+f = Method(short, 'GetControlMinimum',
+ (ControlRef, 'theControl', InMode),
)
methods.append(f)
-f = Method(void, 'SetCtlMax',
- (ControlHandle, 'theControl', InMode),
+f = Method(void, 'SetControlMaximum',
+ (ControlRef, 'theControl', InMode),
(short, 'maxValue', InMode),
)
methods.append(f)
-f = Method(short, 'GetCtlMax',
- (ControlHandle, 'theControl', InMode),
+f = Method(short, 'GetControlMaximum',
+ (ControlRef, 'theControl', InMode),
)
methods.append(f)
-f = Method(void, 'SetCRefCon',
- (ControlHandle, 'theControl', InMode),
+f = Method(void, 'SetControlReference',
+ (ControlRef, 'theControl', InMode),
(long, 'data', InMode),
)
methods.append(f)
-f = Method(long, 'GetCRefCon',
- (ControlHandle, 'theControl', InMode),
+f = Method(long, 'GetControlReference',
+ (ControlRef, 'theControl', InMode),
+)
+methods.append(f)
+
+f = Method(void, 'SetControlAction',
+ (ControlRef, 'theControl', InMode),
+ (FakeType('(ControlActionUPP)0'), 'actionProc', InMode),
)
methods.append(f)
f = Method(void, 'DragControl',
- (ControlHandle, 'theControl', InMode),
+ (ControlRef, 'theControl', InMode),
(Point, 'startPt', InMode),
(Rect_ptr, 'limitRect', InMode),
(Rect_ptr, 'slopRect', InMode),
@@ -147,27 +147,27 @@ f = Method(void, 'DragControl',
methods.append(f)
f = Method(short, 'TestControl',
- (ControlHandle, 'theControl', InMode),
+ (ControlRef, 'theControl', InMode),
(Point, 'thePt', InMode),
)
methods.append(f)
-f = Method(short, 'TrackControl',
- (ControlHandle, 'theControl', InMode),
- (Point, 'thePoint', InMode),
- (FakeType('(ControlActionUPP)0'), 'actionProc', InMode),
-)
-methods.append(f)
-
f = Function(short, 'FindControl',
(Point, 'thePoint', InMode),
- (WindowPtr, 'theWindow', InMode),
+ (WindowRef, 'theWindow', InMode),
(ExistingControlHandle, 'theControl', OutMode),
)
functions.append(f)
-f = Method(short, 'GetCVariant',
- (ControlHandle, 'theControl', InMode),
+f = Method(short, 'GetControlVariant',
+ (ControlRef, 'theControl', InMode),
+)
+methods.append(f)
+
+f = Method(short, 'TrackControl',
+ (ControlRef, 'theControl', InMode),
+ (Point, 'thePoint', InMode),
+ (FakeType('(ControlActionUPP)0'), 'actionProc', InMode),
)
methods.append(f)
diff --git a/Mac/Modules/ctl/ctlscan.py b/Mac/Modules/ctl/ctlscan.py
index f104e8d..e36db2c 100644
--- a/Mac/Modules/ctl/ctlscan.py
+++ b/Mac/Modules/ctl/ctlscan.py
@@ -1,4 +1,6 @@
# Scan <Controls.h>, generating ctlgen.py.
+import addpack
+addpack.addpack(':Tools:bgen:bgen')
from scantools import Scanner
@@ -20,7 +22,7 @@ class MyScanner(Scanner):
listname = "functions"
if arglist:
t, n, m = arglist[0]
- if t == "ControlHandle" and m == "InMode":
+ if t in ("ControlHandle", "ControlRef") and m == "InMode":
classname = "Method"
listname = "methods"
return classname, listname
@@ -35,6 +37,7 @@ class MyScanner(Scanner):
def makeblacklisttypes(self):
return [
'ProcPtr',
+ 'ControlActionUPP',
'CCTabHandle',
'AuxCtlHandle',
]
@@ -51,9 +54,13 @@ class MyScanner(Scanner):
# For TrackControl
([("ProcPtr", "actionProc", "InMode")],
[("FakeType('(ControlActionUPP)0')", "*", "*")]),
+ ([("ControlActionUPP", "actionProc", "InMode")],
+ [("FakeType('(ControlActionUPP)0')", "*", "*")]),
([("ControlHandle", "*", "OutMode")],
[("ExistingControlHandle", "*", "*")]),
+ ([("ControlRef", "*", "OutMode")], # Ditto, for Universal Headers
+ [("ExistingControlHandle", "*", "*")]),
]
if __name__ == "__main__":
diff --git a/Mac/Modules/ctl/ctlsupport.py b/Mac/Modules/ctl/ctlsupport.py
index 97b1f33..9846631 100644
--- a/Mac/Modules/ctl/ctlsupport.py
+++ b/Mac/Modules/ctl/ctlsupport.py
@@ -5,6 +5,9 @@
import string
+import addpack
+addpack.addpack(':Tools:bgen:bgen')
+
# Declarations that change for each manager
MACHEADERFILE = 'Controls.h' # The Apple header file
MODNAME = 'Ctl' # The name of the module
@@ -22,6 +25,7 @@ from macsupport import *
# Create the type objects
ControlHandle = OpaqueByValueType(OBJECTTYPE, OBJECTPREFIX)
+ControlRef = ControlHandle
ExistingControlHandle = OpaqueByValueType(OBJECTTYPE, "CtlObj_WhichControl", "BUG")
RgnHandle = FakeType("theWindow->visRgn") # XXX
diff --git a/Mac/Modules/dlg/Dlgmodule.c b/Mac/Modules/dlg/Dlgmodule.c
index b297e1c..f1010a2 100644
--- a/Mac/Modules/dlg/Dlgmodule.c
+++ b/Mac/Modules/dlg/Dlgmodule.c
@@ -172,7 +172,7 @@ static PyObject *DlgObj_UpdateDialog(_self, _args)
return _res;
}
-static PyObject *DlgObj_GetDItem(_self, _args)
+static PyObject *DlgObj_GetDialogItem(_self, _args)
DialogObject *_self;
PyObject *_args;
{
@@ -184,11 +184,11 @@ static PyObject *DlgObj_GetDItem(_self, _args)
if (!PyArg_ParseTuple(_args, "h",
&itemNo))
return NULL;
- GetDItem(_self->ob_itself,
- itemNo,
- &itemType,
- &item,
- &box);
+ GetDialogItem(_self->ob_itself,
+ itemNo,
+ &itemType,
+ &item,
+ &box);
_res = Py_BuildValue("hO&O&",
itemType,
ResObj_New, item,
@@ -196,7 +196,7 @@ static PyObject *DlgObj_GetDItem(_self, _args)
return _res;
}
-static PyObject *DlgObj_SetDItem(_self, _args)
+static PyObject *DlgObj_SetDialogItem(_self, _args)
DialogObject *_self;
PyObject *_args;
{
@@ -211,17 +211,17 @@ static PyObject *DlgObj_SetDItem(_self, _args)
ResObj_Convert, &item,
PyMac_GetRect, &box))
return NULL;
- SetDItem(_self->ob_itself,
- itemNo,
- itemType,
- item,
- &box);
+ SetDialogItem(_self->ob_itself,
+ itemNo,
+ itemType,
+ item,
+ &box);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *DlgObj_HideDItem(_self, _args)
+static PyObject *DlgObj_HideDialogItem(_self, _args)
DialogObject *_self;
PyObject *_args;
{
@@ -230,14 +230,14 @@ static PyObject *DlgObj_HideDItem(_self, _args)
if (!PyArg_ParseTuple(_args, "h",
&itemNo))
return NULL;
- HideDItem(_self->ob_itself,
- itemNo);
+ HideDialogItem(_self->ob_itself,
+ itemNo);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *DlgObj_ShowDItem(_self, _args)
+static PyObject *DlgObj_ShowDialogItem(_self, _args)
DialogObject *_self;
PyObject *_args;
{
@@ -246,14 +246,14 @@ static PyObject *DlgObj_ShowDItem(_self, _args)
if (!PyArg_ParseTuple(_args, "h",
&itemNo))
return NULL;
- ShowDItem(_self->ob_itself,
- itemNo);
+ ShowDialogItem(_self->ob_itself,
+ itemNo);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *DlgObj_SelIText(_self, _args)
+static PyObject *DlgObj_SelectDialogItemText(_self, _args)
DialogObject *_self;
PyObject *_args;
{
@@ -266,16 +266,16 @@ static PyObject *DlgObj_SelIText(_self, _args)
&strtSel,
&endSel))
return NULL;
- SelIText(_self->ob_itself,
- itemNo,
- strtSel,
- endSel);
+ SelectDialogItemText(_self->ob_itself,
+ itemNo,
+ strtSel,
+ endSel);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *DlgObj_FindDItem(_self, _args)
+static PyObject *DlgObj_FindDialogItem(_self, _args)
DialogObject *_self;
PyObject *_args;
{
@@ -285,60 +285,60 @@ static PyObject *DlgObj_FindDItem(_self, _args)
if (!PyArg_ParseTuple(_args, "O&",
PyMac_GetPoint, &thePt))
return NULL;
- _rv = FindDItem(_self->ob_itself,
- thePt);
+ _rv = FindDialogItem(_self->ob_itself,
+ thePt);
_res = Py_BuildValue("h",
_rv);
return _res;
}
-static PyObject *DlgObj_DlgCut(_self, _args)
+static PyObject *DlgObj_DialogCut(_self, _args)
DialogObject *_self;
PyObject *_args;
{
PyObject *_res = NULL;
if (!PyArg_ParseTuple(_args, ""))
return NULL;
- DlgCut(_self->ob_itself);
+ DialogCut(_self->ob_itself);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *DlgObj_DlgPaste(_self, _args)
+static PyObject *DlgObj_DialogPaste(_self, _args)
DialogObject *_self;
PyObject *_args;
{
PyObject *_res = NULL;
if (!PyArg_ParseTuple(_args, ""))
return NULL;
- DlgPaste(_self->ob_itself);
+ DialogPaste(_self->ob_itself);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *DlgObj_DlgCopy(_self, _args)
+static PyObject *DlgObj_DialogCopy(_self, _args)
DialogObject *_self;
PyObject *_args;
{
PyObject *_res = NULL;
if (!PyArg_ParseTuple(_args, ""))
return NULL;
- DlgCopy(_self->ob_itself);
+ DialogCopy(_self->ob_itself);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *DlgObj_DlgDelete(_self, _args)
+static PyObject *DlgObj_DialogDelete(_self, _args)
DialogObject *_self;
PyObject *_args;
{
PyObject *_res = NULL;
if (!PyArg_ParseTuple(_args, ""))
return NULL;
- DlgDelete(_self->ob_itself);
+ DialogDelete(_self->ob_itself);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
@@ -393,30 +393,104 @@ static PyObject *DlgObj_ShortenDITL(_self, _args)
return _res;
}
+static PyObject *DlgObj_StdFilterProc(_self, _args)
+ DialogObject *_self;
+ PyObject *_args;
+{
+ PyObject *_res = NULL;
+ Boolean _rv;
+ EventRecord event;
+ short itemHit;
+ if (!PyArg_ParseTuple(_args, ""))
+ return NULL;
+ _rv = StdFilterProc(_self->ob_itself,
+ &event,
+ &itemHit);
+ _res = Py_BuildValue("bO&h",
+ _rv,
+ PyMac_BuildEventRecord, &event,
+ itemHit);
+ return _res;
+}
+
+static PyObject *DlgObj_SetDialogDefaultItem(_self, _args)
+ DialogObject *_self;
+ PyObject *_args;
+{
+ PyObject *_res = NULL;
+ OSErr _err;
+ short newItem;
+ if (!PyArg_ParseTuple(_args, "h",
+ &newItem))
+ return NULL;
+ _err = SetDialogDefaultItem(_self->ob_itself,
+ newItem);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
+}
+
+static PyObject *DlgObj_SetDialogCancelItem(_self, _args)
+ DialogObject *_self;
+ PyObject *_args;
+{
+ PyObject *_res = NULL;
+ OSErr _err;
+ short newItem;
+ if (!PyArg_ParseTuple(_args, "h",
+ &newItem))
+ return NULL;
+ _err = SetDialogCancelItem(_self->ob_itself,
+ newItem);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
+}
+
+static PyObject *DlgObj_SetDialogTracksCursor(_self, _args)
+ DialogObject *_self;
+ PyObject *_args;
+{
+ PyObject *_res = NULL;
+ OSErr _err;
+ Boolean tracks;
+ if (!PyArg_ParseTuple(_args, "b",
+ &tracks))
+ return NULL;
+ _err = SetDialogTracksCursor(_self->ob_itself,
+ tracks);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
+}
+
static PyMethodDef DlgObj_methods[] = {
{"DrawDialog", (PyCFunction)DlgObj_DrawDialog, 1,
"() -> None"},
{"UpdateDialog", (PyCFunction)DlgObj_UpdateDialog, 1,
"() -> None"},
- {"GetDItem", (PyCFunction)DlgObj_GetDItem, 1,
+ {"GetDialogItem", (PyCFunction)DlgObj_GetDialogItem, 1,
"(short itemNo) -> (short itemType, Handle item, Rect box)"},
- {"SetDItem", (PyCFunction)DlgObj_SetDItem, 1,
+ {"SetDialogItem", (PyCFunction)DlgObj_SetDialogItem, 1,
"(short itemNo, short itemType, Handle item, Rect box) -> None"},
- {"HideDItem", (PyCFunction)DlgObj_HideDItem, 1,
+ {"HideDialogItem", (PyCFunction)DlgObj_HideDialogItem, 1,
"(short itemNo) -> None"},
- {"ShowDItem", (PyCFunction)DlgObj_ShowDItem, 1,
+ {"ShowDialogItem", (PyCFunction)DlgObj_ShowDialogItem, 1,
"(short itemNo) -> None"},
- {"SelIText", (PyCFunction)DlgObj_SelIText, 1,
+ {"SelectDialogItemText", (PyCFunction)DlgObj_SelectDialogItemText, 1,
"(short itemNo, short strtSel, short endSel) -> None"},
- {"FindDItem", (PyCFunction)DlgObj_FindDItem, 1,
+ {"FindDialogItem", (PyCFunction)DlgObj_FindDialogItem, 1,
"(Point thePt) -> (short _rv)"},
- {"DlgCut", (PyCFunction)DlgObj_DlgCut, 1,
+ {"DialogCut", (PyCFunction)DlgObj_DialogCut, 1,
"() -> None"},
- {"DlgPaste", (PyCFunction)DlgObj_DlgPaste, 1,
+ {"DialogPaste", (PyCFunction)DlgObj_DialogPaste, 1,
"() -> None"},
- {"DlgCopy", (PyCFunction)DlgObj_DlgCopy, 1,
+ {"DialogCopy", (PyCFunction)DlgObj_DialogCopy, 1,
"() -> None"},
- {"DlgDelete", (PyCFunction)DlgObj_DlgDelete, 1,
+ {"DialogDelete", (PyCFunction)DlgObj_DialogDelete, 1,
"() -> None"},
{"AppendDITL", (PyCFunction)DlgObj_AppendDITL, 1,
"(Handle theHandle, DITLMethod method) -> None"},
@@ -424,6 +498,14 @@ static PyMethodDef DlgObj_methods[] = {
"() -> (short _rv)"},
{"ShortenDITL", (PyCFunction)DlgObj_ShortenDITL, 1,
"(short numberItems) -> None"},
+ {"StdFilterProc", (PyCFunction)DlgObj_StdFilterProc, 1,
+ "() -> (Boolean _rv, EventRecord event, short itemHit)"},
+ {"SetDialogDefaultItem", (PyCFunction)DlgObj_SetDialogDefaultItem, 1,
+ "(short newItem) -> None"},
+ {"SetDialogCancelItem", (PyCFunction)DlgObj_SetDialogCancelItem, 1,
+ "(short newItem) -> None"},
+ {"SetDialogTracksCursor", (PyCFunction)DlgObj_SetDialogTracksCursor, 1,
+ "(Boolean tracks) -> None"},
{NULL, NULL, 0}
};
@@ -541,12 +623,12 @@ static PyObject *Dlg_ModalDialog(_self, _args)
PyObject *_args;
{
PyObject *_res = NULL;
- PyObject* filterProc;
+ PyObject* modalFilter;
short itemHit;
if (!PyArg_ParseTuple(_args, "O",
- &filterProc))
+ &modalFilter))
return NULL;
- ModalDialog(NewModalFilterProc(Dlg_PassFilterProc(filterProc)),
+ ModalDialog(NewModalFilterProc(Dlg_PassFilterProc(modalFilter)),
&itemHit);
_res = Py_BuildValue("h",
itemHit);
@@ -598,13 +680,13 @@ static PyObject *Dlg_Alert(_self, _args)
PyObject *_res = NULL;
short _rv;
short alertID;
- PyObject* filterProc;
+ PyObject* modalFilter;
if (!PyArg_ParseTuple(_args, "hO",
&alertID,
- &filterProc))
+ &modalFilter))
return NULL;
_rv = Alert(alertID,
- NewModalFilterProc(Dlg_PassFilterProc(filterProc)));
+ NewModalFilterProc(Dlg_PassFilterProc(modalFilter)));
_res = Py_BuildValue("h",
_rv);
return _res;
@@ -617,13 +699,13 @@ static PyObject *Dlg_StopAlert(_self, _args)
PyObject *_res = NULL;
short _rv;
short alertID;
- PyObject* filterProc;
+ PyObject* modalFilter;
if (!PyArg_ParseTuple(_args, "hO",
&alertID,
- &filterProc))
+ &modalFilter))
return NULL;
_rv = StopAlert(alertID,
- NewModalFilterProc(Dlg_PassFilterProc(filterProc)));
+ NewModalFilterProc(Dlg_PassFilterProc(modalFilter)));
_res = Py_BuildValue("h",
_rv);
return _res;
@@ -636,13 +718,13 @@ static PyObject *Dlg_NoteAlert(_self, _args)
PyObject *_res = NULL;
short _rv;
short alertID;
- PyObject* filterProc;
+ PyObject* modalFilter;
if (!PyArg_ParseTuple(_args, "hO",
&alertID,
- &filterProc))
+ &modalFilter))
return NULL;
_rv = NoteAlert(alertID,
- NewModalFilterProc(Dlg_PassFilterProc(filterProc)));
+ NewModalFilterProc(Dlg_PassFilterProc(modalFilter)));
_res = Py_BuildValue("h",
_rv);
return _res;
@@ -655,19 +737,19 @@ static PyObject *Dlg_CautionAlert(_self, _args)
PyObject *_res = NULL;
short _rv;
short alertID;
- PyObject* filterProc;
+ PyObject* modalFilter;
if (!PyArg_ParseTuple(_args, "hO",
&alertID,
- &filterProc))
+ &modalFilter))
return NULL;
_rv = CautionAlert(alertID,
- NewModalFilterProc(Dlg_PassFilterProc(filterProc)));
+ NewModalFilterProc(Dlg_PassFilterProc(modalFilter)));
_res = Py_BuildValue("h",
_rv);
return _res;
}
-static PyObject *Dlg_GetIText(_self, _args)
+static PyObject *Dlg_GetDialogItemText(_self, _args)
PyObject *_self;
PyObject *_args;
{
@@ -677,14 +759,14 @@ static PyObject *Dlg_GetIText(_self, _args)
if (!PyArg_ParseTuple(_args, "O&",
ResObj_Convert, &item))
return NULL;
- GetIText(item,
- text);
+ GetDialogItemText(item,
+ text);
_res = Py_BuildValue("O&",
PyMac_BuildStr255, text);
return _res;
}
-static PyObject *Dlg_SetIText(_self, _args)
+static PyObject *Dlg_SetDialogItemText(_self, _args)
PyObject *_self;
PyObject *_args;
{
@@ -695,14 +777,14 @@ static PyObject *Dlg_SetIText(_self, _args)
ResObj_Convert, &item,
PyMac_GetStr255, text))
return NULL;
- SetIText(item,
- text);
+ SetDialogItemText(item,
+ text);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *Dlg_NewCDialog(_self, _args)
+static PyObject *Dlg_NewColorDialog(_self, _args)
PyObject *_self;
PyObject *_args;
{
@@ -726,43 +808,57 @@ static PyObject *Dlg_NewCDialog(_self, _args)
&refCon,
ResObj_Convert, &items))
return NULL;
- _rv = NewCDialog((void *)0,
- &boundsRect,
- title,
- visible,
- procID,
- behind,
- goAwayFlag,
- refCon,
- items);
+ _rv = NewColorDialog((void *)0,
+ &boundsRect,
+ title,
+ visible,
+ procID,
+ behind,
+ goAwayFlag,
+ refCon,
+ items);
_res = Py_BuildValue("O&",
DlgObj_New, _rv);
return _res;
}
-static PyObject *Dlg_ResetAlrtStage(_self, _args)
+static PyObject *Dlg_GetAlertStage(_self, _args)
+ PyObject *_self;
+ PyObject *_args;
+{
+ PyObject *_res = NULL;
+ short _rv;
+ if (!PyArg_ParseTuple(_args, ""))
+ return NULL;
+ _rv = GetAlertStage();
+ _res = Py_BuildValue("h",
+ _rv);
+ return _res;
+}
+
+static PyObject *Dlg_ResetAlertStage(_self, _args)
PyObject *_self;
PyObject *_args;
{
PyObject *_res = NULL;
if (!PyArg_ParseTuple(_args, ""))
return NULL;
- ResetAlrtStage();
+ ResetAlertStage();
Py_INCREF(Py_None);
_res = Py_None;
return _res;
}
-static PyObject *Dlg_SetDAFont(_self, _args)
+static PyObject *Dlg_SetDialogFont(_self, _args)
PyObject *_self;
PyObject *_args;
{
PyObject *_res = NULL;
- short fontNum;
+ short value;
if (!PyArg_ParseTuple(_args, "h",
- &fontNum))
+ &value))
return NULL;
- SetDAFont(fontNum);
+ SetDialogFont(value);
Py_INCREF(Py_None);
_res = Py_None;
return _res;
@@ -776,29 +872,31 @@ static PyMethodDef Dlg_methods[] = {
{"ParamText", (PyCFunction)Dlg_ParamText, 1,
"(Str255 param0, Str255 param1, Str255 param2, Str255 param3) -> None"},
{"ModalDialog", (PyCFunction)Dlg_ModalDialog, 1,
- "(PyObject* filterProc) -> (short itemHit)"},
+ "(PyObject* modalFilter) -> (short itemHit)"},
{"IsDialogEvent", (PyCFunction)Dlg_IsDialogEvent, 1,
"(EventRecord theEvent) -> (Boolean _rv)"},
{"DialogSelect", (PyCFunction)Dlg_DialogSelect, 1,
"(EventRecord theEvent) -> (Boolean _rv, DialogPtr theDialog, short itemHit)"},
{"Alert", (PyCFunction)Dlg_Alert, 1,
- "(short alertID, PyObject* filterProc) -> (short _rv)"},
+ "(short alertID, PyObject* modalFilter) -> (short _rv)"},
{"StopAlert", (PyCFunction)Dlg_StopAlert, 1,
- "(short alertID, PyObject* filterProc) -> (short _rv)"},
+ "(short alertID, PyObject* modalFilter) -> (short _rv)"},
{"NoteAlert", (PyCFunction)Dlg_NoteAlert, 1,
- "(short alertID, PyObject* filterProc) -> (short _rv)"},
+ "(short alertID, PyObject* modalFilter) -> (short _rv)"},
{"CautionAlert", (PyCFunction)Dlg_CautionAlert, 1,
- "(short alertID, PyObject* filterProc) -> (short _rv)"},
- {"GetIText", (PyCFunction)Dlg_GetIText, 1,
+ "(short alertID, PyObject* modalFilter) -> (short _rv)"},
+ {"GetDialogItemText", (PyCFunction)Dlg_GetDialogItemText, 1,
"(Handle item) -> (Str255 text)"},
- {"SetIText", (PyCFunction)Dlg_SetIText, 1,
+ {"SetDialogItemText", (PyCFunction)Dlg_SetDialogItemText, 1,
"(Handle item, Str255 text) -> None"},
- {"NewCDialog", (PyCFunction)Dlg_NewCDialog, 1,
+ {"NewColorDialog", (PyCFunction)Dlg_NewColorDialog, 1,
"(Rect boundsRect, Str255 title, Boolean visible, short procID, WindowPtr behind, Boolean goAwayFlag, long refCon, Handle items) -> (DialogPtr _rv)"},
- {"ResetAlrtStage", (PyCFunction)Dlg_ResetAlrtStage, 1,
+ {"GetAlertStage", (PyCFunction)Dlg_GetAlertStage, 1,
+ "() -> (short _rv)"},
+ {"ResetAlertStage", (PyCFunction)Dlg_ResetAlertStage, 1,
"() -> None"},
- {"SetDAFont", (PyCFunction)Dlg_SetDAFont, 1,
- "(short fontNum) -> None"},
+ {"SetDialogFont", (PyCFunction)Dlg_SetDialogFont, 1,
+ "(short value) -> None"},
{NULL, NULL, 0}
};
diff --git a/Mac/Modules/dlg/dlggen.py b/Mac/Modules/dlg/dlggen.py
index bd65cd0..c6ae362 100644
--- a/Mac/Modules/dlg/dlggen.py
+++ b/Mac/Modules/dlg/dlggen.py
@@ -1,22 +1,22 @@
-# Generated from 'D:Development:THINK C:Mac #includes:Apple #includes:Dialogs.h'
+# Generated from 'Moes:CW5 GOLD \304:Metrowerks C/C++ \304:Headers \304:Universal Headers 2.0a3 \304:Dialogs.h'
-f = Function(DialogPtr, 'NewDialog',
+f = Function(DialogRef, 'NewDialog',
(NullStorage, 'wStorage', InMode),
(Rect_ptr, 'boundsRect', InMode),
(ConstStr255Param, 'title', InMode),
(Boolean, 'visible', InMode),
(short, 'procID', InMode),
- (WindowPtr, 'behind', InMode),
+ (WindowRef, 'behind', InMode),
(Boolean, 'goAwayFlag', InMode),
(long, 'refCon', InMode),
(Handle, 'itmLstHndl', InMode),
)
functions.append(f)
-f = Function(DialogPtr, 'GetNewDialog',
+f = Function(DialogRef, 'GetNewDialog',
(short, 'dialogID', InMode),
(NullStorage, 'dStorage', InMode),
- (WindowPtr, 'behind', InMode),
+ (WindowRef, 'behind', InMode),
)
functions.append(f)
@@ -29,7 +29,7 @@ f = Function(void, 'ParamText',
functions.append(f)
f = Function(void, 'ModalDialog',
- (ModalFilterProcPtr, 'filterProc', InMode),
+ (ModalFilterUPP, 'modalFilter', InMode),
(short, 'itemHit', OutMode),
)
functions.append(f)
@@ -47,42 +47,42 @@ f = Function(Boolean, 'DialogSelect',
functions.append(f)
f = Method(void, 'DrawDialog',
- (DialogPtr, 'theDialog', InMode),
+ (DialogRef, 'theDialog', InMode),
)
methods.append(f)
f = Method(void, 'UpdateDialog',
- (DialogPtr, 'theDialog', InMode),
+ (DialogRef, 'theDialog', InMode),
(RgnHandle, 'updateRgn', InMode),
)
methods.append(f)
f = Function(short, 'Alert',
(short, 'alertID', InMode),
- (ModalFilterProcPtr, 'filterProc', InMode),
+ (ModalFilterUPP, 'modalFilter', InMode),
)
functions.append(f)
f = Function(short, 'StopAlert',
(short, 'alertID', InMode),
- (ModalFilterProcPtr, 'filterProc', InMode),
+ (ModalFilterUPP, 'modalFilter', InMode),
)
functions.append(f)
f = Function(short, 'NoteAlert',
(short, 'alertID', InMode),
- (ModalFilterProcPtr, 'filterProc', InMode),
+ (ModalFilterUPP, 'modalFilter', InMode),
)
functions.append(f)
f = Function(short, 'CautionAlert',
(short, 'alertID', InMode),
- (ModalFilterProcPtr, 'filterProc', InMode),
+ (ModalFilterUPP, 'modalFilter', InMode),
)
functions.append(f)
-f = Method(void, 'GetDItem',
- (DialogPtr, 'theDialog', InMode),
+f = Method(void, 'GetDialogItem',
+ (DialogRef, 'theDialog', InMode),
(short, 'itemNo', InMode),
(short, 'itemType', OutMode),
(Handle, 'item', OutMode),
@@ -90,8 +90,8 @@ f = Method(void, 'GetDItem',
)
methods.append(f)
-f = Method(void, 'SetDItem',
- (DialogPtr, 'theDialog', InMode),
+f = Method(void, 'SetDialogItem',
+ (DialogRef, 'theDialog', InMode),
(short, 'itemNo', InMode),
(short, 'itemType', InMode),
(Handle, 'item', InMode),
@@ -99,101 +99,130 @@ f = Method(void, 'SetDItem',
)
methods.append(f)
-f = Method(void, 'HideDItem',
- (DialogPtr, 'theDialog', InMode),
+f = Method(void, 'HideDialogItem',
+ (DialogRef, 'theDialog', InMode),
(short, 'itemNo', InMode),
)
methods.append(f)
-f = Method(void, 'ShowDItem',
- (DialogPtr, 'theDialog', InMode),
+f = Method(void, 'ShowDialogItem',
+ (DialogRef, 'theDialog', InMode),
(short, 'itemNo', InMode),
)
methods.append(f)
-f = Method(void, 'SelIText',
- (DialogPtr, 'theDialog', InMode),
+f = Method(void, 'SelectDialogItemText',
+ (DialogRef, 'theDialog', InMode),
(short, 'itemNo', InMode),
(short, 'strtSel', InMode),
(short, 'endSel', InMode),
)
methods.append(f)
-f = Function(void, 'GetIText',
+f = Function(void, 'GetDialogItemText',
(Handle, 'item', InMode),
(Str255, 'text', OutMode),
)
functions.append(f)
-f = Function(void, 'SetIText',
+f = Function(void, 'SetDialogItemText',
(Handle, 'item', InMode),
(ConstStr255Param, 'text', InMode),
)
functions.append(f)
-f = Method(short, 'FindDItem',
- (DialogPtr, 'theDialog', InMode),
+f = Method(short, 'FindDialogItem',
+ (DialogRef, 'theDialog', InMode),
(Point, 'thePt', InMode),
)
methods.append(f)
-f = Function(DialogPtr, 'NewCDialog',
+f = Function(DialogRef, 'NewColorDialog',
(NullStorage, 'dStorage', InMode),
(Rect_ptr, 'boundsRect', InMode),
(ConstStr255Param, 'title', InMode),
(Boolean, 'visible', InMode),
(short, 'procID', InMode),
- (WindowPtr, 'behind', InMode),
+ (WindowRef, 'behind', InMode),
(Boolean, 'goAwayFlag', InMode),
(long, 'refCon', InMode),
(Handle, 'items', InMode),
)
functions.append(f)
-f = Function(void, 'ResetAlrtStage',
+f = Function(short, 'GetAlertStage',
)
functions.append(f)
-f = Method(void, 'DlgCut',
- (DialogPtr, 'theDialog', InMode),
+f = Function(void, 'ResetAlertStage',
+)
+functions.append(f)
+
+f = Method(void, 'DialogCut',
+ (DialogRef, 'theDialog', InMode),
)
methods.append(f)
-f = Method(void, 'DlgPaste',
- (DialogPtr, 'theDialog', InMode),
+f = Method(void, 'DialogPaste',
+ (DialogRef, 'theDialog', InMode),
)
methods.append(f)
-f = Method(void, 'DlgCopy',
- (DialogPtr, 'theDialog', InMode),
+f = Method(void, 'DialogCopy',
+ (DialogRef, 'theDialog', InMode),
)
methods.append(f)
-f = Method(void, 'DlgDelete',
- (DialogPtr, 'theDialog', InMode),
+f = Method(void, 'DialogDelete',
+ (DialogRef, 'theDialog', InMode),
)
methods.append(f)
-f = Function(void, 'SetDAFont',
- (short, 'fontNum', InMode),
+f = Function(void, 'SetDialogFont',
+ (short, 'value', InMode),
)
functions.append(f)
f = Method(void, 'AppendDITL',
- (DialogPtr, 'theDialog', InMode),
+ (DialogRef, 'theDialog', InMode),
(Handle, 'theHandle', InMode),
(DITLMethod, 'method', InMode),
)
methods.append(f)
f = Method(short, 'CountDITL',
- (DialogPtr, 'theDialog', InMode),
+ (DialogRef, 'theDialog', InMode),
)
methods.append(f)
f = Method(void, 'ShortenDITL',
- (DialogPtr, 'theDialog', InMode),
+ (DialogRef, 'theDialog', InMode),
(short, 'numberItems', InMode),
)
methods.append(f)
+f = Method(Boolean, 'StdFilterProc',
+ (DialogRef, 'theDialog', InMode),
+ (EventRecord, 'event', OutMode),
+ (short, 'itemHit', OutMode),
+)
+methods.append(f)
+
+f = Method(OSErr, 'SetDialogDefaultItem',
+ (DialogRef, 'theDialog', InMode),
+ (short, 'newItem', InMode),
+)
+methods.append(f)
+
+f = Method(OSErr, 'SetDialogCancelItem',
+ (DialogRef, 'theDialog', InMode),
+ (short, 'newItem', InMode),
+)
+methods.append(f)
+
+f = Method(OSErr, 'SetDialogTracksCursor',
+ (DialogRef, 'theDialog', InMode),
+ (Boolean, 'tracks', InMode),
+)
+methods.append(f)
+
diff --git a/Mac/Modules/dlg/dlgscan.py b/Mac/Modules/dlg/dlgscan.py
index d0cf144..6738828 100644
--- a/Mac/Modules/dlg/dlgscan.py
+++ b/Mac/Modules/dlg/dlgscan.py
@@ -1,5 +1,8 @@
# Scan an Apple header file, generating a Python file of generator calls.
+import addpack
+addpack.addpack(':Tools:bgen:bgen')
+
from scantools import Scanner
LONG = "Dialogs"
@@ -24,7 +27,7 @@ class MyScanner(Scanner):
listname = "functions"
if arglist:
t, n, m = arglist[0]
- if t == "DialogPtr" and m == "InMode":
+ if t in ("DialogPtr", "DialogRef") and m == "InMode":
classname = "Method"
listname = "methods"
return classname, listname
@@ -42,6 +45,7 @@ class MyScanner(Scanner):
'FreeAlert',
'CouldDialog',
'FreeDialog',
+ 'GetStdFilterProc',
]
def makeblacklisttypes(self):
@@ -66,6 +70,8 @@ class MyScanner(Scanner):
([("DialogPtr", "*", "OutMode")],
[("ExistingDialogPtr", "*", "*")]),
+ ([("DialogRef", "*", "OutMode")],
+ [("ExistingDialogPtr", "*", "*")]),
]
if __name__ == "__main__":
diff --git a/Mac/Modules/dlg/dlgsupport.py b/Mac/Modules/dlg/dlgsupport.py
index d3491fe..8761ea8 100644
--- a/Mac/Modules/dlg/dlgsupport.py
+++ b/Mac/Modules/dlg/dlgsupport.py
@@ -3,14 +3,19 @@
# It execs the file dlggen.py which contain the function definitions
# (dlggen.py was generated by dlgscan.py, scanning the <Dialogs.h> header file).
+import addpack
+addpack.addpack(':Tools:bgen:bgen')
+
from macsupport import *
# Create the type objects
DialogPtr = OpaqueByValueType("DialogPtr", "DlgObj")
+DialogRef = DialogPtr
ModalFilterProcPtr = InputOnlyType("PyObject*", "O")
ModalFilterProcPtr.passInput = lambda name: "NewModalFilterProc(Dlg_PassFilterProc(%s))" % name
+ModalFilterUPP = ModalFilterProcPtr
RgnHandle = FakeType("_self->ob_itself->visRgn") # XXX
diff --git a/Tools/bgen/bgen/bgenBuffer.py b/Tools/bgen/bgen/bgenBuffer.py
index b7abe9d..af9fb19 100644
--- a/Tools/bgen/bgen/bgenBuffer.py
+++ b/Tools/bgen/bgen/bgenBuffer.py
@@ -68,9 +68,9 @@ class FixedInputOutputBufferType(InputOnlyType):
self.size)
Output("goto %s__error__;", name)
OutRbrace()
- self.transferSize()
+ self.transferSize(name)
- def transferSize():
+ def transferSize(self, name):
Output("%s__len__ = %s__in_len__;", name, name)
def passOutput(self, name):
@@ -174,7 +174,7 @@ class StructInputOutputBufferType(FixedInputOutputBufferType):
def getargsArgs(self, name):
return "(char **)&%s__in__, &%s__in_len__" % (name, name)
- def transferSize(self):
+ def transferSize(self, name):
pass
def passInput(self, name):
diff --git a/Tools/bgen/bgen/macsupport.py b/Tools/bgen/bgen/macsupport.py
index 4839cb6..f17bb96 100644
--- a/Tools/bgen/bgen/macsupport.py
+++ b/Tools/bgen/bgen/macsupport.py
@@ -32,11 +32,15 @@ ResType = OSTypeType("ResType")
# Handles (always resources in our case)
Handle = OpaqueByValueType("Handle", "ResObj")
MenuHandle = OpaqueByValueType("MenuHandle", "MenuObj")
+MenuRef = MenuHandle
ControlHandle = OpaqueByValueType("ControlHandle", "CtlObj")
+ControlRef = ControlHandle
# Windows and Dialogs
WindowPtr = OpaqueByValueType("WindowPtr", "WinObj")
+WindowRef = WindowPtr
DialogPtr = OpaqueByValueType("DialogPtr", "DlgObj")
+DialogRef = DialogPtr
ExistingWindowPtr = OpaqueByValueType("WindowPtr", "WinObj_WhichWindow", "BUG")
ExistingDialogPtr = OpaqueByValueType("DialogPtr", "WinObj_WhichWindow", "BUG")
@@ -137,8 +141,8 @@ class MacModule(Module):
_SetOutputFileName = SetOutputFileName # Save original
def SetOutputFileName(file = None):
- "Set the output file name and set its creator&type to KAHL&TEXT"
+ "Set the output file name and set its creator&type to MPCC&TEXT"
_SetOutputFileName(file)
if file:
import MacOS
- MacOS.SetCreatorAndType(file, 'KAHL', 'TEXT')
+ MacOS.SetCreatorAndType(file, 'MPCC', 'TEXT')
diff --git a/Tools/bgen/bgen/scantools.py b/Tools/bgen/bgen/scantools.py
index ff76d6c..3d546d8 100644
--- a/Tools/bgen/bgen/scantools.py
+++ b/Tools/bgen/bgen/scantools.py
@@ -27,8 +27,10 @@ except ImportError:
MacOS = None
# Default preferences
-CREATOR = 'KAHL' # My favorite text editor on the Mac
-INCLUDEDIR = "D:Development:THINK C:Mac #includes:Apple #includes:"
+#CREATOR = 'KAHL' # Guido's favorite text editor on the Mac
+#INCLUDEDIR = "D:Development:THINK C:Mac #includes:Apple #includes:"
+CREATOR = 'MPCC' # Jack's favorite text editor on the Mac
+INCLUDEDIR = "Moes:CW5 GOLD Ä:Metrowerks C/C++ Ä:Headers Ä:Universal Headers 2.0a3 Ä:"
Error = "scantools.Error"
@@ -203,9 +205,9 @@ class Scanner:
self.includepath = [':', INCLUDEDIR]
def initpatterns(self):
- self.head_pat = "^pascal[ \t]+" # XXX Mac specific!
+ self.head_pat = "^extern pascal[ \t]+" # XXX Mac specific!
self.tail_pat = "[;={}]"
- self.type_pat = "pascal[ \t\n]+\(<type>[a-zA-Z0-9_]+\)[ \t\n]+"
+ self.type_pat = "pascal[ \t\n]+\(<type>[a-zA-Z0-9_ \t]*[a-zA-Z0-9_]\)[ \t\n]+"
self.name_pat = "\(<name>[a-zA-Z0-9_]+\)[ \t\n]*"
self.args_pat = "(\(<args>\([^(;=)]+\|([^(;=)]*)\)*\))"
self.whole_pat = self.type_pat + self.name_pat + self.args_pat