File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -144,8 +144,14 @@ GrafObj_Convert(v, p_itself)
144144 PyObject * v ;
145145 GrafPtr * p_itself ;
146146{
147- if (DlgObj_Check (v ) || WinObj_Check (v )) {
148- * p_itself = ((GrafPortObject * )v )-> ob_itself ;
147+ if (DlgObj_Check (v )) {
148+ DialogRef dlg = (DialogRef )((GrafPortObject * )v )-> ob_itself ;
149+ * p_itself = (GrafPtr )GetWindowPort (GetDialogWindow (dlg ));
150+ return 1 ;
151+ }
152+ if (WinObj_Check (v )) {
153+ WindowRef win = (WindowRef )((GrafPortObject * )v )-> ob_itself ;
154+ * p_itself = (GrafPtr )GetWindowPort (win );
149155 return 1 ;
150156 }
151157 if (!GrafObj_Check (v ))
Original file line number Diff line number Diff line change @@ -219,8 +219,14 @@ class MyGRObjectDefinition(GlobalObjectDefinition):
219219 def outputCheckNewArg (self ):
220220 Output ("if (itself == NULL) return PyMac_Error(resNotFound);" )
221221 def outputCheckConvertArg (self ):
222- OutLbrace ("if (DlgObj_Check(v) || WinObj_Check(v))" )
223- Output ("*p_itself = ((GrafPortObject *)v)->ob_itself;" )
222+ OutLbrace ("if (DlgObj_Check(v))" )
223+ Output ("DialogRef dlg = (DialogRef)((GrafPortObject *)v)->ob_itself;" )
224+ Output ("*p_itself = (GrafPtr)GetWindowPort(GetDialogWindow(dlg));" )
225+ Output ("return 1;" )
226+ OutRbrace ()
227+ OutLbrace ("if (WinObj_Check(v))" )
228+ Output ("WindowRef win = (WindowRef)((GrafPortObject *)v)->ob_itself;" )
229+ Output ("*p_itself = (GrafPtr)GetWindowPort(win);" )
224230 Output ("return 1;" )
225231 OutRbrace ()
226232 def outputGetattrHook (self ):
You can’t perform that action at this time.
0 commit comments