From fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Wed, 8 Jul 2015 20:46:52 -0400 Subject: Initial commit --- sys/gio/greact.x | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 sys/gio/greact.x (limited to 'sys/gio/greact.x') diff --git a/sys/gio/greact.x b/sys/gio/greact.x new file mode 100644 index 00000000..e201d543 --- /dev/null +++ b/sys/gio/greact.x @@ -0,0 +1,32 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include +include + +# GREACTIVATE -- Reactivate the workstation, i.e., for an interactive device +# (graphics terminal) restore the terminal to graphics mode, following a call +# to gdeactivate to do some normal terminal mode text i/o. + +procedure greactivate (gp, flags) + +pointer gp # graphics descriptor +int flags # action flags + +int and() +errchk gki_reactivatews, gactivate + +begin + call flush (STDOUT) + if (and (GP_GFLAGS(gp), GF_WSOPEN) != 0) { + # The workstation is already open - just reactivate it. + call gki_reactivatews (GP_FD(gp), flags) + if (and (GP_GFLAGS(gp), GF_WSACTIVE) == 0) + GP_GFLAGS(gp) = GP_GFLAGS(gp) + GF_WSACTIVE + } else { + # Open the workstation (implies an automatic reactivatews). + call gactivate (gp, flags) + } + + if (and (flags, AW_CLEAR) != 0) + call gfrinit (gp) +end -- cgit