Skip to main content

MSE Mouse State

String System Variable

Contents

String, current state of mouse

Description

The MSE variable contains a 32-byte string that describes the current state of the mouse. This table shows the positions of all mouse attributes represented in the MSE string:

MSE String

Description

(1,1)

Current state:

$FF$

Mouse inactive/unavailable (e.g. terminal, UNIX/Linux console)

$00$

Mouse present - no buttons pushed

$01$

Left button down

$02$

Right button down

$03$

Both buttons down

(2,1)

Current mouse column in binary

(3,1)

Current mouse line in binary

(4,2)

Current mouse X (column) position in binary

(6,2)

Current mouse Y (line) position in binary

(8,1)

Absolute column number

(9,1)

Absolute row number

(10,1)

Standard character width

(11,1)

Standard character height

(12,1)

Width of scroll box on standard scroll bar

(13,1)

Height of scroll box on standard scroll bar

(14,2)

Mouse X (column) position relative to current window in binary

(16,2)

Mouse Y (line) position relative to current window in binary

(18,2)

Current control object with focus

(20,2)

Last control object with focus, relative to the current window

(22,1)

WindX/JavX revision level from $00$ to $FF$ ($FF$ for no Thin-Client)

(23,2)

CTL value for context-sensitive help

(25,2)

Last control object to lose focus, relative to the current window

(27,2)

Maximum X (column) coordinates of the screen

(29,2)

Maximum Y (line) coordinates of the screen

(31,1)

Returns current window state. Values correspond to the 'SHOW' mnemonic.

DEC(MID(MSE,31,1)) Values:

  -1  Hidden
   0  Minimized
   1  Normal
   2  Maximized

(32,1)

Returns either W for WindX or J for JavX ($00$ for no Thin-Client)

Example

The following logic can be used to determine if WindX is running by checking its version number:

if mid(mse,22,1)>$00$ and mid(mse,22,1)<$FF$ \
     then %WDX$="[WDX]"

To get the maximum screen size in lines and columns:

X$=mse
XCHAR=dec($00$+X$(10,1))
YCHAR=dec($00$+X$(11,1))
MAX_WIDE=int(dec(X$(27,2))/XCHAR)
MAX_HIGH=int(dec(X$(29,2))/YCHAR)