diff options
author | Guido van Rossum <guido@python.org> | 1992-09-17 17:54:56 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1992-09-17 17:54:56 (GMT) |
commit | 7066dd75c5ee8385135541d03fb8edd8939ad740 (patch) | |
tree | e118a32af87a83e295de0985b67da90524203c6a /Modules | |
parent | c2670a000bd69fb689a7b05436ff0091052f4f3c (diff) | |
download | cpython-7066dd75c5ee8385135541d03fb8edd8939ad740.zip cpython-7066dd75c5ee8385135541d03fb8edd8939ad740.tar.gz cpython-7066dd75c5ee8385135541d03fb8edd8939ad740.tar.bz2 |
* Makefile: added IMGFILE; moved some stuff around.
* flmodule.c: added some missing functions; changed readonly flags of
some data members based upon FORMS documentation.
* listobject.c: fixed int/long arg lint bug (bites PC compilers).
* several: removed redundant print methods (repr is good enough).
* posixmodule.c: added (still experimental) process group functions.
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/flmodule.c | 87 | ||||
-rw-r--r-- | Modules/posixmodule.c | 44 | ||||
-rw-r--r-- | Modules/stdwinmodule.c | 14 |
3 files changed, 117 insertions, 28 deletions
diff --git a/Modules/flmodule.c b/Modules/flmodule.c index 7a8d014..34f0121 100644 --- a/Modules/flmodule.c +++ b/Modules/flmodule.c @@ -315,11 +315,11 @@ static struct memberlist generic_memberlist[] = { {"focus", T_INT, OFF(focus), RO}, {"belowmouse", T_INT, OFF(belowmouse),RO}, {"frozen", T_INT, OFF(frozen), RO}, - {"active", T_INT, OFF(active), RO}, - {"input", T_INT, OFF(input), RO}, + {"active", T_INT, OFF(active)}, + {"input", T_INT, OFF(input)}, {"visible", T_INT, OFF(visible), RO}, - {"radio", T_INT, OFF(radio), RO}, - {"automatic", T_INT, OFF(automatic), RO}, + {"radio", T_INT, OFF(radio)}, + {"automatic", T_INT, OFF(automatic)}, {NULL} /* Sentinel */ }; @@ -1827,6 +1827,22 @@ form_find_last(f, args) return forms_find_first_or_last(fl_find_last, f, args); } +static object * +form_set_object_focus(f, args) + formobject *f; + object *args; +{ + genericobject *g; + if (args == NULL || !is_genericobject(args)) { + err_badarg(); + return NULL; + } + g = (genericobject *)args; + fl_set_object_focus(f->ob_form, g->ob_generic); + INCREF(None); + return None; +} + static struct methodlist form_methods[] = { /* adm */ {"show_form", form_show_form}, @@ -1844,6 +1860,7 @@ static struct methodlist form_methods[] = { {"end_group", form_end_group}, {"find_first", form_find_first}, {"find_last", form_find_last}, + {"set_object_focus", form_set_object_focus}, /* basic objects */ {"add_button", form_add_button}, @@ -1886,11 +1903,11 @@ static struct memberlist form_memberlist[] = { {"window", T_LONG, OFF(window), RO}, {"w", T_FLOAT, OFF(w)}, {"h", T_FLOAT, OFF(h)}, - {"x", T_FLOAT, OFF(x)}, - {"y", T_FLOAT, OFF(y)}, + {"x", T_FLOAT, OFF(x), RO}, + {"y", T_FLOAT, OFF(y), RO}, {"deactivated", T_INT, OFF(deactivated)}, - {"visible", T_INT, OFF(visible)}, - {"frozen", T_INT, OFF(frozen)}, + {"visible", T_INT, OFF(visible), RO}, + {"frozen", T_INT, OFF(frozen), RO}, {"doublebuf", T_INT, OFF(doublebuf)}, {NULL} /* Sentinel */ }; @@ -2045,7 +2062,7 @@ forms_do_or_check_forms(dummy, args, func) int dev; short val; if (my_event_callback == NULL) - return newintobject(-1); + return newintobject(-1L); dev = fl_qread(&val); arg = newtupleobject(2); if (arg == NULL) @@ -2100,6 +2117,22 @@ forms_check_forms(dummy, args) return forms_do_or_check_forms(dummy, args, fl_check_forms); } +static object * +forms_do_only_forms(dummy, args) + object *dummy; + object *args; +{ + return forms_do_or_check_forms(dummy, args, fl_do_only_forms); +} + +static object * +forms_check_only_forms(dummy, args) + object *dummy; + object *args; +{ + return forms_do_or_check_forms(dummy, args, fl_check_only_forms); +} + #ifdef UNUSED static object * fl_call(func, args) @@ -2134,14 +2167,42 @@ forms_get_rgbmode(dummy, args) object *dummy; object *args; { - extern fl_rgbmode; + extern int fl_rgbmode; if (args != NULL) { err_badarg(); return NULL; } - return newintobject(fl_rgbmode); + return newintobject((long)fl_rgbmode); } + +static object * +forms_show_errors(dummy, args) + object *dummy; + object *args; +{ + int show; + if (!getargs(args, "i", &show)) + return NULL; + fl_show_errors(show); + INCREF(None); + return None; +} + +static object * +forms_set_font_name(dummy, args) + object *dummy; + object *args; +{ + int numb; + char *name; + if (!getargs(args, "(is)", &numb, &name)) + return NULL; + fl_set_font_name(numb, name); + INCREF(None); + return None; +} + #endif /* !FL_V15 */ @@ -2355,7 +2416,7 @@ forms_show_choice(f, args) char *m1, *m2, *m3, *b1, *b2, *b3; int nb; char *format; - int rv; + long rv; if (args == NULL || !is_tupleobject(args)) { err_badarg(); @@ -2526,6 +2587,8 @@ static struct methodlist forms_methods[] = { #ifndef FL_V15 {"set_graphics_mode", forms_set_graphics_mode}, {"get_rgbmode", forms_get_rgbmode}, + {"show_errors", forms_show_errors}, + {"set_font_name", forms_set_font_name}, #endif /* !FL_V15 */ {NULL, NULL} /* sentinel */ }; diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 0bc0f91..a263f1b 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -819,7 +819,7 @@ posix_times(self, args) errno = 0; c = times(&t); if (c == (clock_t) -1) { - err_errno(IOError); + err_errno(PosixError); return NULL; } tuple = newtupleobject(4); @@ -847,8 +847,10 @@ posix_setsid(self, args) { if (!getnoarg(args)) return NULL; - if (setsid() < 0) + if (setsid() < 0) { err_errno(PosixError); + return NULL; + } INCREF(None); return None; } @@ -861,12 +863,46 @@ posix_setpgid(self, args) int pid, pgrp; if (!getargs(args, "(ii)", &pid, &pgrp)) return NULL; - if (setpgid(pid, pgrp) < 0) + if (setpgid(pid, pgrp) < 0) { err_errno(PosixError); + return NULL; + } INCREF(None); return None; } +static object * +posix_tcgetpgrp(self, args) + object *self; + object *args; +{ + int fd, pgid; + if (!getargs(args, "i", &fd)) + return NULL; + pgid = tcgetpgrp(fd); + if (pgid < 0) { + err_errno(PosixError); + return NULL; + } + return newintobject((long)pgid); +} + +static object * +posix_tcsetpgrp(self, args) + object *self; + object *args; +{ + int fd, pgid; + if (!getargs(args, "(ii)", &fd, &pgid)) + return NULL; + if (tcsetpgrp(fd, pgid) < 0) { + err_errno(PosixError); + return NULL; + } + INCREF(None); + return None; +} + #endif /* DO_PG */ @@ -919,6 +955,8 @@ static struct methodlist posix_methods[] = { #ifdef DO_PG {"setsid", posix_setsid}, {"setpgid", posix_setpgid}, + {"tcgetpgrp", posix_tcgetpgrp}, + {"tcsetpgrp", posix_tcsetpgrp}, #endif {NULL, NULL} /* Sentinel */ diff --git a/Modules/stdwinmodule.c b/Modules/stdwinmodule.c index 8b3812b..a33366d 100644 --- a/Modules/stdwinmodule.c +++ b/Modules/stdwinmodule.c @@ -1311,18 +1311,6 @@ window_dealloc(wp) free((char *)wp); } -static int -window_print(wp, fp, flags) - windowobject *wp; - FILE *fp; - int flags; -{ - fprintf(fp, "<%s window titled '%s'>", - wp->w_win == NULL ? "closed" : "open", - getstringvalue(wp->w_title)); - return 0; -} - static object * window_close(wp, args) windowobject *wp; @@ -1684,7 +1672,7 @@ typeobject Windowtype = { 0, /*tp_itemsize*/ /* methods */ window_dealloc, /*tp_dealloc*/ - window_print, /*tp_print*/ + 0, /*tp_print*/ window_getattr, /*tp_getattr*/ window_setattr, /*tp_setattr*/ 0, /*tp_compare*/ |