@@ -329,6 +329,81 @@ PyTypeObject BitMap_Type = {
329329/* --------------------- End object type BitMap --------------------- */
330330
331331
332+ /* ------------------ Object type QDGlobalsAccess ------------------- */
333+
334+ staticforward PyTypeObject QDGlobalsAccess_Type ;
335+
336+ #define QDGA_Check (x ) ((x)->ob_type == &QDGlobalsAccess_Type)
337+
338+ typedef struct QDGlobalsAccessObject {
339+ PyObject_HEAD
340+ } QDGlobalsAccessObject ;
341+
342+ static PyObject * QDGA_New ()
343+ {
344+ QDGlobalsAccessObject * it ;
345+ it = PyObject_NEW (QDGlobalsAccessObject , & QDGlobalsAccess_Type );
346+ if (it == NULL ) return NULL ;
347+ return (PyObject * )it ;
348+ }
349+
350+ static void QDGA_dealloc (self )
351+ QDGlobalsAccessObject * self ;
352+ {
353+ PyMem_DEL (self );
354+ }
355+
356+ static PyMethodDef QDGA_methods [] = {
357+ {NULL , NULL , 0 }
358+ };
359+
360+ static PyMethodChain QDGA_chain = { QDGA_methods , NULL };
361+
362+ static PyObject * QDGA_getattr (self , name )
363+ QDGlobalsAccessObject * self ;
364+ char * name ;
365+ {
366+
367+ if ( strcmp (name , "arrow" ) == 0 )
368+ return PyString_FromStringAndSize ((char * )& qd .arrow , sizeof (qd .arrow ));
369+ if ( strcmp (name , "black" ) == 0 )
370+ return PyString_FromStringAndSize ((char * )& qd .black , sizeof (qd .black ));
371+ if ( strcmp (name , "white" ) == 0 )
372+ return PyString_FromStringAndSize ((char * )& qd .white , sizeof (qd .white ));
373+ if ( strcmp (name , "gray" ) == 0 )
374+ return PyString_FromStringAndSize ((char * )& qd .gray , sizeof (qd .gray ));
375+ if ( strcmp (name , "ltGray" ) == 0 )
376+ return PyString_FromStringAndSize ((char * )& qd .ltGray , sizeof (qd .ltGray ));
377+ if ( strcmp (name , "dkGray" ) == 0 )
378+ return PyString_FromStringAndSize ((char * )& qd .dkGray , sizeof (qd .dkGray ));
379+ if ( strcmp (name , "screenBits" ) == 0 )
380+ return BMObj_New (& qd .screenBits );
381+ if ( strcmp (name , "thePort" ) == 0 )
382+ return GrafObj_New (qd .thePort );
383+ if ( strcmp (name , "randSeed" ) == 0 )
384+ return Py_BuildValue ("l" , & qd .randSeed );
385+
386+ return Py_FindMethodInChain (& QDGA_chain , (PyObject * )self , name );
387+ }
388+
389+ #define QDGA_setattr NULL
390+
391+ staticforward PyTypeObject QDGlobalsAccess_Type = {
392+ PyObject_HEAD_INIT (& PyType_Type )
393+ 0 , /*ob_size*/
394+ "QDGlobalsAccess" , /*tp_name*/
395+ sizeof (QDGlobalsAccessObject ), /*tp_basicsize*/
396+ 0 , /*tp_itemsize*/
397+ /* methods */
398+ (destructor ) QDGA_dealloc , /*tp_dealloc*/
399+ 0 , /*tp_print*/
400+ (getattrfunc ) QDGA_getattr , /*tp_getattr*/
401+ (setattrfunc ) QDGA_setattr , /*tp_setattr*/
402+ };
403+
404+ /* ---------------- End object type QDGlobalsAccess ----------------- */
405+
406+
332407static PyObject * Qd_SetPort (_self , _args )
333408 PyObject * _self ;
334409 PyObject * _args ;
@@ -3855,26 +3930,10 @@ void initQd()
38553930
38563931 {
38573932 PyObject * o ;
3858-
3859- o = PyString_FromStringAndSize ((char * )& qd .arrow , sizeof (qd .arrow ));
3860- if (o == NULL || PyDict_SetItemString (d , "arrow" , o ) != 0 )
3861- Py_FatalError ("can't initialize Qd.arrow" );
3862- o = PyString_FromStringAndSize ((char * )& qd .black , sizeof (qd .black ));
3863- if (o == NULL || PyDict_SetItemString (d , "black" , o ) != 0 )
3864- Py_FatalError ("can't initialize Qd.black" );
3865- o = PyString_FromStringAndSize ((char * )& qd .white , sizeof (qd .white ));
3866- if (o == NULL || PyDict_SetItemString (d , "white" , o ) != 0 )
3867- Py_FatalError ("can't initialize Qd.white" );
3868- o = PyString_FromStringAndSize ((char * )& qd .gray , sizeof (qd .gray ));
3869- if (o == NULL || PyDict_SetItemString (d , "gray" , o ) != 0 )
3870- Py_FatalError ("can't initialize Qd.gray" );
3871- o = PyString_FromStringAndSize ((char * )& qd .ltGray , sizeof (qd .ltGray ));
3872- if (o == NULL || PyDict_SetItemString (d , "ltGray" , o ) != 0 )
3873- Py_FatalError ("can't initialize Qd.ltGray" );
3874- o = PyString_FromStringAndSize ((char * )& qd .dkGray , sizeof (qd .dkGray ));
3875- if (o == NULL || PyDict_SetItemString (d , "dkGray" , o ) != 0 )
3876- Py_FatalError ("can't initialize Qd.dkGray" );
3877- /* thePort, screenBits and randSeed still missing... */
3933+
3934+ o = QDGA_New ();
3935+ if (o == NULL || PyDict_SetItemString (d , "qd" , o ) != 0 )
3936+ Py_FatalError ("can't initialize Qd.qd" );
38783937 }
38793938
38803939
0 commit comments