[Python-checkins] CVS: python/dist/src/Mac/Modules/dlg _Dlgmodule.c,1.4,1.4.2.1

Jack Jansen jackjansen@users.sourceforge.net
2001年11月29日 05:23:29 -0800


Update of /cvsroot/python/python/dist/src/Mac/Modules/dlg
In directory usw-pr-cvs1:/tmp/cvs-serv23268/Python/Mac/Modules/dlg
Modified Files:
 Tag: r22b2-branch
	_Dlgmodule.c 
Log Message:
Use the WeakLink generators where it makes sense. This allows the resulting module to be imported on older versions of MacOS that do not support all routines encasulated in the module. Using a routine thats unavailable results in a RuntimeError, "Routine not available on this platform".
Index: _Dlgmodule.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Mac/Modules/dlg/_Dlgmodule.c,v
retrieving revision 1.4
retrieving revision 1.4.2.1
diff -C2 -d -r1.4 -r1.4.2.1
*** _Dlgmodule.c	2001年11月05日 16:16:34	1.4
--- _Dlgmodule.c	2001年11月29日 13:23:27	1.4.2.1
***************
*** 6,15 ****
 
 
- #ifdef _WIN32
- #include "pywintoolbox.h"
- #else
 #include "macglue.h"
 #include "pymactoolbox.h"
- #endif
 
 /* Macro to test whether a weak-loaded CFM function exists */
--- 6,11 ----
***************
*** 186,189 ****
--- 182,188 ----
 {
 	PyObject *_res = NULL;
+ #ifndef DrawDialog
+ 	PyMac_PRECHECK(DrawDialog);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 198,201 ****
--- 197,203 ----
 	PyObject *_res = NULL;
 	RgnHandle updateRgn;
+ #ifndef UpdateDialog
+ 	PyMac_PRECHECK(UpdateDialog);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&",
 	 ResObj_Convert, &updateRgn))
***************
*** 212,215 ****
--- 214,220 ----
 	PyObject *_res = NULL;
 	DialogItemIndex itemNo;
+ #ifndef HideDialogItem
+ 	PyMac_PRECHECK(HideDialogItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, "h",
 	 &itemNo))
***************
*** 226,229 ****
--- 231,237 ----
 	PyObject *_res = NULL;
 	DialogItemIndex itemNo;
+ #ifndef ShowDialogItem
+ 	PyMac_PRECHECK(ShowDialogItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, "h",
 	 &itemNo))
***************
*** 241,244 ****
--- 249,255 ----
 	DialogItemIndexZeroBased _rv;
 	Point thePt;
+ #ifndef FindDialogItem
+ 	PyMac_PRECHECK(FindDialogItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&",
 	 PyMac_GetPoint, &thePt))
***************
*** 254,257 ****
--- 265,271 ----
 {
 	PyObject *_res = NULL;
+ #ifndef DialogCut
+ 	PyMac_PRECHECK(DialogCut);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 265,268 ****
--- 279,285 ----
 {
 	PyObject *_res = NULL;
+ #ifndef DialogPaste
+ 	PyMac_PRECHECK(DialogPaste);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 276,279 ****
--- 293,299 ----
 {
 	PyObject *_res = NULL;
+ #ifndef DialogCopy
+ 	PyMac_PRECHECK(DialogCopy);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 287,290 ****
--- 307,313 ----
 {
 	PyObject *_res = NULL;
+ #ifndef DialogDelete
+ 	PyMac_PRECHECK(DialogDelete);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 302,305 ****
--- 325,331 ----
 	Handle item;
 	Rect box;
+ #ifndef GetDialogItem
+ 	PyMac_PRECHECK(GetDialogItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, "h",
 	 &itemNo))
***************
*** 324,327 ****
--- 350,356 ----
 	Handle item;
 	Rect box;
+ #ifndef SetDialogItem
+ 	PyMac_PRECHECK(SetDialogItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hhO&O&",
 	 &itemNo,
***************
*** 346,349 ****
--- 375,381 ----
 	SInt16 strtSel;
 	SInt16 endSel;
+ #ifndef SelectDialogItemText
+ 	PyMac_PRECHECK(SelectDialogItemText);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hhh",
 	 &itemNo,
***************
*** 365,368 ****
--- 397,403 ----
 	Handle theHandle;
 	DITLMethod method;
+ #ifndef AppendDITL
+ 	PyMac_PRECHECK(AppendDITL);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&h",
 	 ResObj_Convert, &theHandle,
***************
*** 381,384 ****
--- 416,422 ----
 	PyObject *_res = NULL;
 	DialogItemIndex _rv;
+ #ifndef CountDITL
+ 	PyMac_PRECHECK(CountDITL);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 393,396 ****
--- 431,437 ----
 	PyObject *_res = NULL;
 	DialogItemIndex numberItems;
+ #ifndef ShortenDITL
+ 	PyMac_PRECHECK(ShortenDITL);
+ #endif
 	if (!PyArg_ParseTuple(_args, "h",
 	 &numberItems))
***************
*** 413,416 ****
--- 454,460 ----
 	Handle itemHandle;
 	Rect box;
+ #ifndef InsertDialogItem
+ 	PyMac_PRECHECK(InsertDialogItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hhO&O&",
 	 &afterItem,
***************
*** 440,443 ****
--- 484,490 ----
 	DialogItemIndex amountToRemove;
 	Boolean disposeItemData;
+ #ifndef RemoveDialogItems
+ 	PyMac_PRECHECK(RemoveDialogItems);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hhb",
 	 &itemNo,
***************
*** 462,465 ****
--- 509,515 ----
 	EventRecord event;
 	DialogItemIndex itemHit;
+ #ifndef StdFilterProc
+ 	PyMac_PRECHECK(StdFilterProc);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 479,482 ****
--- 529,535 ----
 	OSErr _err;
 	DialogItemIndex newItem;
+ #ifndef SetDialogDefaultItem
+ 	PyMac_PRECHECK(SetDialogDefaultItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, "h",
 	 &newItem))
***************
*** 495,498 ****
--- 548,554 ----
 	OSErr _err;
 	DialogItemIndex newItem;
+ #ifndef SetDialogCancelItem
+ 	PyMac_PRECHECK(SetDialogCancelItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, "h",
 	 &newItem))
***************
*** 511,514 ****
--- 567,573 ----
 	OSErr _err;
 	Boolean tracks;
+ #ifndef SetDialogTracksCursor
+ 	PyMac_PRECHECK(SetDialogTracksCursor);
+ #endif
 	if (!PyArg_ParseTuple(_args, "b",
 	 &tracks))
***************
*** 526,529 ****
--- 585,591 ----
 	PyObject *_res = NULL;
 	OSErr _err;
+ #ifndef AutoSizeDialog
+ 	PyMac_PRECHECK(AutoSizeDialog);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 541,544 ****
--- 603,609 ----
 	SInt16 inItemNo;
 	ControlHandle outControl;
+ #ifndef GetDialogItemAsControl
+ 	PyMac_PRECHECK(GetDialogItemAsControl);
+ #endif
 	if (!PyArg_ParseTuple(_args, "h",
 	 &inItemNo))
***************
*** 560,563 ****
--- 625,631 ----
 	SInt16 inHoriz;
 	SInt16 inVert;
+ #ifndef MoveDialogItem
+ 	PyMac_PRECHECK(MoveDialogItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hhh",
 	 &inItemNo,
***************
*** 582,585 ****
--- 650,656 ----
 	SInt16 inWidth;
 	SInt16 inHeight;
+ #ifndef SizeDialogItem
+ 	PyMac_PRECHECK(SizeDialogItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hhh",
 	 &inItemNo,
***************
*** 603,606 ****
--- 674,680 ----
 	SInt16 ditlID;
 	DITLMethod method;
+ #ifndef AppendDialogItemList
+ 	PyMac_PRECHECK(AppendDialogItemList);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hh",
 	 &ditlID,
***************
*** 622,625 ****
--- 696,702 ----
 	SInt16 inButtonToPress;
 	UInt32 inSecondsToWait;
+ #ifndef SetDialogTimeout
+ 	PyMac_PRECHECK(SetDialogTimeout);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hl",
 	 &inButtonToPress,
***************
*** 642,645 ****
--- 719,725 ----
 	UInt32 outSecondsToWait;
 	UInt32 outSecondsRemaining;
+ #ifndef GetDialogTimeout
+ 	PyMac_PRECHECK(GetDialogTimeout);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 661,664 ****
--- 741,747 ----
 	OSStatus _err;
 	EventMask inMask;
+ #ifndef SetModalDialogEventMask
+ 	PyMac_PRECHECK(SetModalDialogEventMask);
+ #endif
 	if (!PyArg_ParseTuple(_args, "H",
 	 &inMask))
***************
*** 677,680 ****
--- 760,766 ----
 	OSStatus _err;
 	EventMask outMask;
+ #ifndef GetModalDialogEventMask
+ 	PyMac_PRECHECK(GetModalDialogEventMask);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 691,694 ****
--- 777,783 ----
 	PyObject *_res = NULL;
 	WindowPtr _rv;
+ #ifndef GetDialogWindow
+ 	PyMac_PRECHECK(GetDialogWindow);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 703,706 ****
--- 792,798 ----
 	PyObject *_res = NULL;
 	TEHandle _rv;
+ #ifndef GetDialogTextEditHandle
+ 	PyMac_PRECHECK(GetDialogTextEditHandle);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 715,718 ****
--- 807,813 ----
 	PyObject *_res = NULL;
 	SInt16 _rv;
+ #ifndef GetDialogDefaultItem
+ 	PyMac_PRECHECK(GetDialogDefaultItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 727,730 ****
--- 822,828 ----
 	PyObject *_res = NULL;
 	SInt16 _rv;
+ #ifndef GetDialogCancelItem
+ 	PyMac_PRECHECK(GetDialogCancelItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 739,742 ****
--- 837,843 ----
 	PyObject *_res = NULL;
 	SInt16 _rv;
+ #ifndef GetDialogKeyboardFocusItem
+ 	PyMac_PRECHECK(GetDialogKeyboardFocusItem);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 750,753 ****
--- 851,857 ----
 {
 	PyObject *_res = NULL;
+ #ifndef SetPortDialogPort
+ 	PyMac_PRECHECK(SetPortDialogPort);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 762,765 ****
--- 866,872 ----
 	PyObject *_res = NULL;
 	CGrafPtr _rv;
+ #ifndef GetDialogPort
+ 	PyMac_PRECHECK(GetDialogPort);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 770,773 ****
--- 877,897 ----
 }
 
+ #if !TARGET_API_MAC_CARBON
+ 
+ static PyObject *DlgObj_SetGrafPortOfDialog(DialogObject *_self, PyObject *_args)
+ {
+ 	PyObject *_res = NULL;
+ #ifndef SetGrafPortOfDialog
+ 	PyMac_PRECHECK(SetGrafPortOfDialog);
+ #endif
+ 	if (!PyArg_ParseTuple(_args, ""))
+ 		return NULL;
+ 	SetGrafPortOfDialog(_self->ob_itself);
+ 	Py_INCREF(Py_None);
+ 	_res = Py_None;
+ 	return _res;
+ }
+ #endif
+ 
 static PyMethodDef DlgObj_methods[] = {
 	{"DrawDialog", (PyCFunction)DlgObj_DrawDialog, 1,
***************
*** 852,855 ****
--- 976,983 ----
 	 "() -> (CGrafPtr _rv)"},
 
+ #if !TARGET_API_MAC_CARBON
+ 	{"SetGrafPortOfDialog", (PyCFunction)DlgObj_SetGrafPortOfDialog, 1,
+ 	 "() -> None"},
+ #endif
 	{NULL, NULL, 0}
 };
***************
*** 879,883 ****
 
 PyTypeObject Dialog_Type = {
! 	PyObject_HEAD_INIT(&PyType_Type)
 	0, /*ob_size*/
 	"Dialog", /*tp_name*/
--- 1007,1011 ----
 
 PyTypeObject Dialog_Type = {
! 	PyObject_HEAD_INIT(NULL)
 	0, /*ob_size*/
 	"Dialog", /*tp_name*/
***************
*** 912,915 ****
--- 1040,1046 ----
 	SInt32 refCon;
 	Handle items;
+ #ifndef NewDialog
+ 	PyMac_PRECHECK(NewDialog);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&O&bhO&blO&",
 	 PyMac_GetRect, &boundsRect,
***************
*** 942,945 ****
--- 1073,1079 ----
 	SInt16 dialogID;
 	WindowPtr behind;
+ #ifndef GetNewDialog
+ 	PyMac_PRECHECK(GetNewDialog);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hO&",
 	 &dialogID,
***************
*** 966,969 ****
--- 1100,1106 ----
 	SInt32 refCon;
 	Handle items;
+ #ifndef NewColorDialog
+ 	PyMac_PRECHECK(NewColorDialog);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&O&bhO&blO&",
 	 PyMac_GetRect, &boundsRect,
***************
*** 995,998 ****
--- 1132,1138 ----
 	PyObject* modalFilter;
 	DialogItemIndex itemHit;
+ #ifndef ModalDialog
+ 	PyMac_PRECHECK(ModalDialog);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O",
 	 &modalFilter))
***************
*** 1010,1013 ****
--- 1150,1156 ----
 	Boolean _rv;
 	EventRecord theEvent;
+ #ifndef IsDialogEvent
+ 	PyMac_PRECHECK(IsDialogEvent);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&",
 	 PyMac_GetEventRecord, &theEvent))
***************
*** 1026,1029 ****
--- 1169,1175 ----
 	DialogPtr theDialog;
 	DialogItemIndex itemHit;
+ #ifndef DialogSelect
+ 	PyMac_PRECHECK(DialogSelect);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&",
 	 PyMac_GetEventRecord, &theEvent))
***************
*** 1045,1048 ****
--- 1191,1197 ----
 	SInt16 alertID;
 	PyObject* modalFilter;
+ #ifndef Alert
+ 	PyMac_PRECHECK(Alert);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hO",
 	 &alertID,
***************
*** 1062,1065 ****
--- 1211,1217 ----
 	SInt16 alertID;
 	PyObject* modalFilter;
+ #ifndef StopAlert
+ 	PyMac_PRECHECK(StopAlert);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hO",
 	 &alertID,
***************
*** 1079,1082 ****
--- 1231,1237 ----
 	SInt16 alertID;
 	PyObject* modalFilter;
+ #ifndef NoteAlert
+ 	PyMac_PRECHECK(NoteAlert);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hO",
 	 &alertID,
***************
*** 1096,1099 ****
--- 1251,1257 ----
 	SInt16 alertID;
 	PyObject* modalFilter;
+ #ifndef CautionAlert
+ 	PyMac_PRECHECK(CautionAlert);
+ #endif
 	if (!PyArg_ParseTuple(_args, "hO",
 	 &alertID,
***************
*** 1114,1117 ****
--- 1272,1278 ----
 	Str255 param2;
 	Str255 param3;
+ #ifndef ParamText
+ 	PyMac_PRECHECK(ParamText);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&O&O&O&",
 	 PyMac_GetStr255, param0,
***************
*** 1134,1137 ****
--- 1295,1301 ----
 	Handle item;
 	Str255 text;
+ #ifndef GetDialogItemText
+ 	PyMac_PRECHECK(GetDialogItemText);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&",
 	 ResObj_Convert, &item))
***************
*** 1149,1152 ****
--- 1313,1319 ----
 	Handle item;
 	Str255 text;
+ #ifndef SetDialogItemText
+ 	PyMac_PRECHECK(SetDialogItemText);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&O&",
 	 ResObj_Convert, &item,
***************
*** 1164,1167 ****
--- 1331,1337 ----
 	PyObject *_res = NULL;
 	SInt16 _rv;
+ #ifndef GetAlertStage
+ 	PyMac_PRECHECK(GetAlertStage);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 1176,1179 ****
--- 1346,1352 ----
 	PyObject *_res = NULL;
 	SInt16 fontNum;
+ #ifndef SetDialogFont
+ 	PyMac_PRECHECK(SetDialogFont);
+ #endif
 	if (!PyArg_ParseTuple(_args, "h",
 	 &fontNum))
***************
*** 1188,1191 ****
--- 1361,1367 ----
 {
 	PyObject *_res = NULL;
+ #ifndef ResetAlertStage
+ 	PyMac_PRECHECK(ResetAlertStage);
+ #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
***************
*** 1205,1208 ****
--- 1381,1387 ----
 	Str255 param2;
 	Str255 param3;
+ #ifndef GetParamText
+ 	PyMac_PRECHECK(GetParamText);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&O&O&O&",
 	 PyMac_GetStr255, param0,
***************
*** 1234,1237 ****
--- 1413,1419 ----
 	Handle inItemListHandle;
 	UInt32 inFlags;
+ #ifndef NewFeaturesDialog
+ 	PyMac_PRECHECK(NewFeaturesDialog);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&O&bhO&blO&l",
 	 PyMac_GetRect, &inBoundsRect,
***************
*** 1265,1268 ****
--- 1447,1453 ----
 	DialogPtr _rv;
 	WindowPtr window;
+ #ifndef GetDialogFromWindow
+ 	PyMac_PRECHECK(GetDialogFromWindow);
+ #endif
 	if (!PyArg_ParseTuple(_args, "O&",
 	 WinObj_Convert, &window))

AltStyle によって変換されたページ (->オリジナル) /