Copyright (C) 1994, Digital Equipment Corp.
by Steve Glassman, Mark Manasse and Greg Nelson
<*PRAGMA LL*>
UNSAFE INTERFACE XClient;
NEW(XClient.T).connect(xs) creates a Trestle.T that displays windows on
the X server xs.
IMPORT Trestle, X, TrestleComm, TrestleOnX, VBT, Point, Ctypes;
TYPE
T_Public = Trestle.T OBJECT dpy: X.DisplayStar END;
T <: TrestleOnX.Display;
REVEAL TrestleOnX.Display <: T_Public;
PROCEDURE ToName (trsl: T; a: X.Atom): TEXT RAISES {TrestleComm.Failure};
Return the name of the atom a of the X server underlying trsl, avoiding
a round trip if possible. LL = trsl.
PROCEDURE ToAtom (trsl: T; t: TEXT): X.Atom RAISES {TrestleComm.Failure};
Return the atom of the X server underlying trsl whose name is t,
avoiding a round trip if possible. LL = trsl.
PROCEDURE Init ();
Register XClient as a source of Trestle connections. LL = {}
PROCEDURE InnerOverlap ( trsl : T;
v : VBT.T;
id : Trestle.ScreenID;
READONLY nw : Point.T;
knownPosition: BOOLEAN;
iconic, userPosition := FALSE;
prop, type := X.None;
len, format := 0;
addr: Ctypes.unsigned_char_star := NIL)
RAISES {TrestleComm.Failure};
END XClient.