aboutsummaryrefslogtreecommitdiff
path: root/sys/gio/cursor/grcinit.x
blob: 3160203c9b3356501603a30409a4f7ce4da61c77 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc.

include	<gio.h>
include	"grc.h"

# GRC_INIT -- Initialize the rcursor descriptor.  Allocate storage for the
# descriptor and initialize all variables and the keystroke mapping.

procedure grc_init (rc)

pointer	rc			#U grc descriptor (pointer)

int	ip, ch
string	keys KEYSTROKES
errchk	malloc

begin
	if (rc == NULL)
	    call malloc (rc, LEN_RCSTRUCT, TY_STRUCT)
	call aclri (Memi[rc], LEN_RCSTRUCT)

	# Initialize variables.
	RC_CASE(rc) = YES
	RC_MARKCUR(rc) = NO
	RC_PHYSOPEN(rc) = NO

	# Initialize keystrokes.
	for (ip=1;  keys[ip] != EOS;  ip=ip+1) {
	    ch = keys[ip]
	    RC_KEYS(rc,keys[ip]) = ch
	}
end