summaryrefslogtreecommitdiff
path: root/ipl/mprocs/evinit.icn
diff options
context:
space:
mode:
Diffstat (limited to 'ipl/mprocs/evinit.icn')
-rw-r--r--ipl/mprocs/evinit.icn89
1 files changed, 0 insertions, 89 deletions
diff --git a/ipl/mprocs/evinit.icn b/ipl/mprocs/evinit.icn
deleted file mode 100644
index 09a2ee6..0000000
--- a/ipl/mprocs/evinit.icn
+++ /dev/null
@@ -1,89 +0,0 @@
-############################################################################
-#
-# File: evinit.icn
-#
-# Subject: Procedures for event monitoring
-#
-# Author: Ralph E. Griswold
-#
-# Date: November 5, 1995
-#
-############################################################################
-#
-# This file is in the public domain.
-#
-############################################################################
-#
-# This file provides initialization for event monitors.
-#
-# This file is intended for use with event monitors running under
-# MT Icon.
-#
-############################################################################
-
-$include "evdefs.icn"
-
-procedure EvInit(f,input,output,error)
- if not MTEvInit(f,input,output,error) then fail
- return
-end
-
-procedure EvTerm(win)
- if &eventsource === (Monitored | EventSource) then {
- if type(win) == "window" then
- Event(win)
- }
-end
-#
-# MultiThread EventMon support, from file mtsupport.icn
-#
-
-global Monitored, EventSource, MTEventMask
-
-#
-# If EvInit is called with a string or a list, run as a standalone MT-based
-# event monitor -- load the icode file and overload certain EvMon symbols.
-#
-# This operation is skipped if &eventsource has already been initialized,
-# presumably by some event broker such as Eve.
-#
-procedure MTEvInit(f,input,output,error)
-
- if \&eventsource then return
-
- if type(f) == "string" then {
- &eventsource := EventSource := Monitored := load(f,,input,output,error) | fail
- EvGet :=: MTEvGet
- }
- else if type(f) == "list" then {
- &eventsource := EventSource := Monitored := load(f[1],f[2:0],input,output,error) | fail
- EvGet :=: MTEvGet
- }
- return &eventsource
-end
-
-procedure MTEvGet(c,flag)
- static lastcset
- initial {
- lastcset := ''
- }
-
- if c ~=== lastcset then {
- lastcset := c
- eventmask(\(Monitored | EventSource) ,\c | &cset,&main)
- }
- return MTEvGet(c,flag)
-end
-
-#
-# Eve-specific extensions to the general model
-#
-procedure EvQuit()
- EvSignal("quit")
-end
-
-procedure EvSignal(x)
- if type(x) == "cset" then
- write(&errout, "EvSignal(", image(x), ") is ambiguous.")
- return x @ &eventsource
-end