Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit fd78de3

Browse files
committed
Under carbon use the GetQDGlobalxxx methods to implement Qd.qd.member access.
1 parent ca23d91 commit fd78de3

2 files changed

Lines changed: 84 additions & 0 deletions

File tree

Mac/Modules/qd/Qdmodule.c

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -447,6 +447,48 @@ static PyObject *QDGA_getattr(self, name)
447447
if ( strcmp(name, "randSeed") == 0 )
448448
return Py_BuildValue("l", &qd.randSeed);
449449

450+
#else
451+
452+
if ( strcmp(name, "arrow") == 0 ) {
453+
Cursor rv;
454+
GetQDGlobalsArrow(&rv);
455+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
456+
}
457+
if ( strcmp(name, "black") == 0 ) {
458+
Pattern rv;
459+
GetQDGlobalsBlack(&rv);
460+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
461+
}
462+
if ( strcmp(name, "white") == 0 ) {
463+
Pattern rv;
464+
GetQDGlobalsWhite(&rv);
465+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
466+
}
467+
if ( strcmp(name, "gray") == 0 ) {
468+
Pattern rv;
469+
GetQDGlobalsGray(&rv);
470+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
471+
}
472+
if ( strcmp(name, "ltGray") == 0 ) {
473+
Pattern rv;
474+
GetQDGlobalsLightGray(&rv);
475+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
476+
}
477+
if ( strcmp(name, "dkGray") == 0 ) {
478+
Pattern rv;
479+
GetQDGlobalsDarkGray(&rv);
480+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
481+
}
482+
if ( strcmp(name, "screenBits") == 0 ) {
483+
BitMap rv;
484+
GetQDGlobalsScreenBits(&rv);
485+
return BMObj_New(&rv);
486+
}
487+
if ( strcmp(name, "thePort") == 0 )
488+
return GrafObj_New(GetQDGlobalsThePort());
489+
if ( strcmp(name, "randSeed") == 0 )
490+
return Py_BuildValue("l", GetQDGlobalsRandomSeed());
491+
450492
#endif
451493
return Py_FindMethodInChain(&QDGA_chain, (PyObject *)self, name);
452494
}

Mac/Modules/qd/qdsupport.py

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,6 +282,48 @@ def outputGetattrHook(self):
282282
if ( strcmp(name, "randSeed") == 0 )
283283
return Py_BuildValue("l", &qd.randSeed);
284284
""")
285+
Output("#else")
286+
Output("""
287+
if ( strcmp(name, "arrow") == 0 ) {
288+
Cursor rv;
289+
GetQDGlobalsArrow(&rv);
290+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
291+
}
292+
if ( strcmp(name, "black") == 0 ) {
293+
Pattern rv;
294+
GetQDGlobalsBlack(&rv);
295+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
296+
}
297+
if ( strcmp(name, "white") == 0 ) {
298+
Pattern rv;
299+
GetQDGlobalsWhite(&rv);
300+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
301+
}
302+
if ( strcmp(name, "gray") == 0 ) {
303+
Pattern rv;
304+
GetQDGlobalsGray(&rv);
305+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
306+
}
307+
if ( strcmp(name, "ltGray") == 0 ) {
308+
Pattern rv;
309+
GetQDGlobalsLightGray(&rv);
310+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
311+
}
312+
if ( strcmp(name, "dkGray") == 0 ) {
313+
Pattern rv;
314+
GetQDGlobalsDarkGray(&rv);
315+
return PyString_FromStringAndSize((char *)&rv, sizeof(rv));
316+
}
317+
if ( strcmp(name, "screenBits") == 0 ) {
318+
BitMap rv;
319+
GetQDGlobalsScreenBits(&rv);
320+
return BMObj_New(&rv);
321+
}
322+
if ( strcmp(name, "thePort") == 0 )
323+
return GrafObj_New(GetQDGlobalsThePort());
324+
if ( strcmp(name, "randSeed") == 0 )
325+
return Py_BuildValue("l", GetQDGlobalsRandomSeed());
326+
""")
285327
Output("#endif")
286328

287329
# Create the generator groups and link them

0 commit comments

Comments
 (0)