Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site Glacier.ARPA Path: utzoo!watmath!clyde!burl!ulysses!allegra!oliveb!Glacier!@MIT-MC.ARPA:jqj@CU-ARPA.CS.CORNELL.EDU From: @MIT-MC.ARPA:jqj@CU-ARPA.CS.CORNELL.EDU Newsgroups: fa.info-terms Subject: information on serialized mouse data wanted Message-ID: <13682@Glacier.ARPA> Date: Fri, 25-Oct-85 09:49:03 EDT Article-I.D.: Glacier.13682 Posted: Fri Oct 25 09:49:03 1985 Date-Received: Sat, 26-Oct-85 08:37:35 EDT Sender: daemon@Glacier.ARPA Organization: Stanford University, IC Laboratory Lines: 34 From: jqj@CU-ARPA.CS.CORNELL.EDU (J.Q. Johnson) When using a workstation with a mouse to emulate a terminal, one problem is how to send mouse-position data inband to the host. This is important, for example, if you want to use the mouse with a host-based editor like Emacs that is designed for use with traditional character-oriented crt terminals. My question: has any standard arisen for encoding such mouse data? One possibility, of course, is to transmit a cursor-position sequence (if the emulation is ANSI standard, that's ESC [; R ), but one frequently wants to have the mouse cursor be independent of the display cursor, so this is a bad choice. A variation on this theme is to send a sequence of relative motion command, as if the user had pressed arrow keys. Another (even uglier) possibility is to second-guess why the host application program wants to know the mouse cursor; for example, in Interlisp-D a click of the mouse sends a sequence of Emacs commands (^A, ^P, ^N, ^F, etc.) to move the typein point to match the mouse position. Another possibility, which I prefer, is that used on the BBN Bitgraph -- to send a special command sequence to report on mouse position and status (e.g. buttons). For BBN, that sequence is ESC : 2 ;
; ; c where x and y are window- or screen-relative pixel coordinates, and flags encodes such things as which mouse button was pressed, or whether x and y represent deltas from the previous mouse position. The Bitgraph may be programmed to send status reports at timed intervals (to allow host tracking), on button events, on motion, etc. I would like to see some standard including these features and others (e.g. status reports when the mouse enters a host-settable hotzone or crosses a boundary such as a window edge, position reporting in either pixel or character units, and perhaps support for multiple or 3d pointing devices). Ideally, this would become an extension to X3.64. Is such a standard unreasonable? Are there any de facto standards now?