11/**********************************************************
2- Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The
3- Netherlands.
2+ Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum,
3+ Amsterdam, The Netherlands.
44
55 All Rights Reserved
66
@@ -614,18 +614,12 @@ call_forms_OUTfOUTf (func, obj, args)
614614 object * args ;
615615{
616616 float f1 , f2 ;
617- object * arg ;
618617
619618 if (!getnoarg (args )) return NULL ;
620619
621620 (* func ) (obj , & f1 , & f2 );
622-
623- arg = newtupleobject (2 );
624- if (arg == NULL ) return NULL ;
625621
626- settupleitem (arg , 0 , newfloatobject (f1 ));
627- settupleitem (arg , 1 , newfloatobject (f2 ));
628- return arg ;
622+ return mkvalue ("(ff)" , f1 , f2 );
629623}
630624
631625#ifdef UNUSED
@@ -966,20 +960,13 @@ get_clock(g, args)
966960 object * args ;
967961{
968962 int i0 , i1 , i2 ;
969- object * arg ;
970963
971964 if (!getnoarg (args ))
972965 return NULL ;
973966
974967 fl_get_clock (g -> ob_generic , & i0 , & i1 , & i2 );
975968
976- arg = newtupleobject (3 );
977- if (arg == NULL ) return NULL ;
978-
979- settupleitem (arg , 0 , newintobject (i0 ));
980- settupleitem (arg , 1 , newintobject (i1 ));
981- settupleitem (arg , 2 , newintobject (i2 ));
982- return arg ;
969+ return mkvalue ("(iii)" , i0 , i1 , i2 );
983970}
984971
985972static struct methodlist clock_methods [] = {
@@ -2064,11 +2051,9 @@ forms_do_or_check_forms(dummy, args, func)
20642051 if (my_event_callback == NULL )
20652052 return newintobject (-1L );
20662053 dev = fl_qread (& val );
2067- arg = newtupleobject ( 2 );
2054+ arg = mkvalue ( "(ih)" , dev , val );
20682055 if (arg == NULL )
20692056 return NULL ;
2070- settupleitem (arg , 0 , newintobject ((long )dev ));
2071- settupleitem (arg , 1 , newintobject ((long )val ));
20722057 res = call_object (my_event_callback , arg );
20732058 XDECREF (res );
20742059 DECREF (arg );
@@ -2085,11 +2070,9 @@ forms_do_or_check_forms(dummy, args, func)
20852070 INCREF (g );
20862071 return ((object * ) g );
20872072 }
2088- arg = newtupleobject (2 );
2089- INCREF (g );
2090- settupleitem (arg , 0 , (object * )g );
2091- INCREF (g -> ob_callback_arg );
2092- settupleitem (arg , 1 , g -> ob_callback_arg );
2073+ arg = mkvalue ("(OO)" , (object * )g , g -> ob_callback_arg );
2074+ if (arg == NULL )
2075+ return NULL ;
20932076 res = call_object (g -> ob_callback , arg );
20942077 XDECREF (res );
20952078 DECREF (arg );
@@ -2259,18 +2242,12 @@ forms_qread(self, args)
22592242 object * self ;
22602243 object * args ;
22612244{
2262- long retval ;
2263- short arg1 ;
2245+ int dev ;
2246+ short val ;
22642247 BGN_SAVE
2265- retval = fl_qread (& arg1 );
2248+ dev = fl_qread (& val );
22662249 END_SAVE
2267- {
2268- object * v = newtupleobject (2 );
2269- if (v == NULL ) return NULL ;
2270- settupleitem (v , 0 , newintobject (retval ));
2271- settupleitem (v , 1 , newintobject ((long )arg1 ));
2272- return v ;
2273- }
2250+ return mkvalue ("(ih)" , dev , val );
22742251}
22752252
22762253static object *
@@ -2336,43 +2313,26 @@ forms_getmcolor(self, args)
23362313{
23372314 int arg ;
23382315 short r , g , b ;
2339- object * v ;
23402316
23412317 if (!getintarg (args , & arg )) return NULL ;
23422318
23432319 fl_getmcolor (arg , & r , & g , & b );
23442320
2345- v = newtupleobject (3 );
2346-
2347- if (v == NULL ) return NULL ;
2348-
2349- settupleitem (v , 0 , newintobject ((long )r ));
2350- settupleitem (v , 1 , newintobject ((long )g ));
2351- settupleitem (v , 2 , newintobject ((long )b ));
2352-
2353- return v ;
2321+ return mkvalue ("(hhh)" , r , g , b );
23542322}
23552323
23562324static object *
23572325forms_get_mouse (self , args )
23582326 object * self ;
23592327 object * args ;
23602328{
2361- float x , y ;
2362- object * v ;
2329+ float x , y ;
23632330
23642331 if (!getnoarg (args )) return NULL ;
23652332
23662333 fl_get_mouse (& x , & y );
23672334
2368- v = newtupleobject (2 );
2369-
2370- if (v == NULL ) return NULL ;
2371-
2372- settupleitem (v , 0 , newfloatobject (x ));
2373- settupleitem (v , 1 , newfloatobject (y ));
2374-
2375- return v ;
2335+ return mkvalue ("(ff)" , x , y );
23762336}
23772337
23782338static object *
0 commit comments