next up previous
Next: xdisplay Up: simxlib Previous: xprocess

eventclasses


     NAME
	  eventclasses - part of Simula	to Xlib	interface

     DESCRIPTION
     XBasicEvent
	     class XBasicEvent;
	  This is the rootclass	of all event  classes.	There  is  one
	  concrete  event  class  for  each  possible  event code (see
	  parameters  to  procedure  SelectInput  in  X_Window).  When
	  enabled  these  events  CAN  be generated, but for the exact
	  conditions when they are generated, see a X manual.

	  To wait for, and finally get an event	object,	subclasses  of
	  XProcess, should call	the procedure NextEvent. Event objects
	  of the concrete sub-classes of XBasicEvent  are  created  by
	  XEventManager	 and sent to an	XProcess object	based on which
	  XWindow the event is targeted	for.

	  The attributes in a given concrete sub-class	are  found  by
	  looking up its abstract super-classes.

     ATTRIBUTES
     SendEvent
	     boolean SendEvent ;
	  True if send via SendEvent rather tna	from the Server.

     Serial
	     integer Serial ; !	Event sequence number ;

     Window
	     ref(XWindow) Window; ! Target Window ;
	  The event is sent to the XProcess conected to	 this  XWindow
	  object.

     XInputEvent
	     XBasicEvent class XInputEvent;

     ATTRIBUTES
     State
	     integer State;
	  Key or  button  mask.	  In  the  subclasses  of  this	 class
	  (XKeyEvent,  XButtonEvent, XMotionNotifyEvent) the attribute
	  "State" is relevant. Its contents is a  bit-mask  specifying
	  the  position	 of  the  various  "shift"  keys and the mouse
	  buttons.  The	following constants are	names on  these	 bits.
	  When a bit is	set (=1) this means that the corresponding key
	  is currently pressed.

	  KeyMasks:   ShiftMask	LockMask ControlMask
	     Mod1Mask Mod2Mask Mod3Mask	Mod4Mask Mod5Mask
	  ButtonMaks:
	       Button1Mask   Button2Mask    Button3Mask	   Button4Mask

	  Button5Mask

     X_root,Y_root
	     integer Y_root, X_root;
	  Pointer  coordinates	relative   to	'Root',	  the	screen
	  Rootwindow.

     X,Y
	     integer Y,X;
	  Pointer coordinates relative to event	window,	'Window'

     Time
	     integer Time;
	  Time stamp in	milliseconds

     Root,Subwindow
	     ref(XWindow) Subwindow;   ! child window (?);
	     ref(XWindow) Root;

     XKeyEvent
	     XInputEvent class XKeyEvent;

     ATTRIBUTES
     Same_screen
	     boolean Same_screen; ! same screen	flag (?);

     KeyCode
	     integer KeyCode; !	Key position number (rarely used);

     KeySym
	     integer KeySym; ! ASCII translation (often	used);

     String
	     text    String;
	  String  is  an  expansion  to	 Ascii	string,	 relevant  for
	  function key bindings.

     XKeyPressEvent
	     XKeyEvent class XKeyPressEvent;

     XKeyReleaseEvent
	     XKeyEvent class XKeyReleaseEvent;

     XButtonEvent
	     XInputEvent class XButtonEvent;

     ATTRIBUTES
     State
	     boolean same_screen; ! same screen	flag ;

     Button
	     integer Button;	   ! Number of pressed/released
	     button.;
	  Button Names (only one may be	reported in each Press/Release
	  event, 1 is the leftmost button):

	     Button1  Button2  Button3	Button4	 Button5

     XButtonPressEvent
	     XButtonEvent class	XButtonPressEvent;

     XButtonReleaseEvent
	     XButtonEvent class	XButtonReleaseEvent;

     XMotionNotifyEvent
	     XInputEvent class XMotionNotifyEvent;

     ATTRIBUTES
     Same_screen
	     boolean Same_screen; ! same screen	flag ;

     Is_Hint
	     integer	Is_Hint; !-- Values: NotifyHint	( or =0	(?));

     State
	     integer State;	  ! key	or button mask,	see
	     XInputEvent.;

     XCrossingEvent
	     XInputEvent class XCrossingEvent;

     ATTRIBUTES
     Focus
	     boolean Focus;	  ! (?)	;

     Same_screen
	     boolean Same_screen; ! same screen	flag (?);

     Detail
	     integer Detail;
	  One of  the  values:	Detail=NotifyAncestor,	NotifyVirtual,
	  NotifyInferior, NotifyNonLinear, NotifyNonLinearVirtual

     Mode
	     integer Mode;
	  One  of  the	 values:   Mode=   NotifyNormal,   NotifyGrab,
	  NotifyUngrab

     XEnterNotifyEvent
	     XCrossingEvent class XEnterNotifyEvent;

     XLeaveNotifyEvent
	     XCrossingEvent class XLeaveNotifyEvent;

     XInputEvent
	     XBasicEvent class XFocusChangeEvent;

     ATTRIBUTES
     Detail
	     integer Detail;
	  Values: Detail= NotifyAncestor NotifyVirtual	NotifyInferior
	  NotifyNonlinear     NotifyNonlinearVirtual	 NotifyPointer
	  NotifyPointerRoot NotifyDetailNone

     Mode
	     integer Mode;
	  Values:  Mode	 =   NotifyNormal   NotifyGrab	  NotifyUngrab
	  NotifyWhileGrabbed

     XFocusInEvent
	     XFocusChangeEvent class XFocusInEvent;

     XFocusOutEvent
	     XFocusChangeEvent class XFocusOutEvent;

     XKeymapNotifyEvent
	     XBasicEvent class XKeymapNotifyEvent;

     ATTRIBUTES
     Key_Vector
	     Integer array Key_Vector(0:7); ! 8	* 32 bits;
	  a bit	per KeyCode, =1	if pressed. Use	BitsetClass to decode.

     XExposeEvent
	     XBasicEvent class XExposeEvent;

     ATTRIBUTES
     State
	     integer Count; ! if non-zero, at least this many more ;

     X,Y,Width,Height
	     integer Height;
	     integer Width;
	     integer y;
	     integer x;

     XGraphicsExposeEvent
	     XBasicEvent class XGraphicsExposeEvent;

     ATTRIBUTES
     Minor_Code,Major_code
	     integer Minor_Code; ! not defined in the core ;
	     integer Major_code; ! core	is CopyArea or CopyPlane ;

     Count
	     integer Count; ! if non-zero, at least this many more ;

     X,Y,Width,Height
	     integer Height;
	     integer Width;
	     integer y;
	     integer x;

     Drawable
	     ref(XWindow) Drawable;
	  This is the dest of the CopyArea or CopyPlane	that generated
	  the event.

     XNoExposeEvent
	     XBasicEvent class XNoExposeEvent;

     ATTRIBUTES
     Minor_Code,Major_code
	     integer Minor_Code; ! not defined in the core ;
	     integer Major_code; ! core	is CopyArea or CopyPlane ;

     Count
	     integer Count; ! if non-zero, at least this many more ;

     X,Y,Width,Height
	     integer Height;
	     integer Width;
	     integer y;
	     integer x;

     Drawable
	     ref(XWindow) Drawable;
	  This is the dest of the CopyArea or CopyPlane	that generated
	  the event.

     XVisibilityNotifyEvent
	     XBasicEvent class XVisibilityNotifyEvent;

     ATTRIBUTES
     State
	     integer State; ! Visibility state;
	  State=VisibilityUnobscured	   VisibilityPartiallyObscured
	  VisibilityFullyObscured

     XCreateNotifyEvent
	     XBasicEvent class XCreateNotifyEvent;

     ATTRIBUTES
     override_redirect
	     Boolean override_redirect;	   ! creation should be
	     overridden	;

     Border_width
	     integer Border_width;    !	border width ;

     X,Y,Width,Height
	     integer Height;
	     integer Width;
	     integer y;
	     integer x;

     CreatedWindow
	     ref(XWindow) CreatedWindow;   ! window created ;

     XDestroyNotifyEvent
	     XBasicEvent class XDestroyNotifyEvent;

     ATTRIBUTES
     DestroyedWindow
	     ref(XWindow) DestroyedWindow; ! Same as target window ?;

     XUnmapNotifyEvent
	     XBasicEvent class XUnmapNotifyEvent;

     ATTRIBUTES
     from_configure
	     boolean from_configure; !?;

     UnmappedWindow
	     ref(XWindow) UnmappedWindow; ! Same as target window ?;

     XGraphicsExposeEvent
	     XBasicEvent class XMapNotifyEvent;

     ATTRIBUTES
     override_redirect
	     boolean override_redirect;	! boolean, is override set...
	     ;

     MappedWindow
	     ref(XWindow) MappedWindow;	! Same as target window	?;

     XMapRequestEvent
	     XBasicEvent class XMapRequestEvent;

     ATTRIBUTES
     MapWindow
	     ref(XWindow) MapWindow; ! Same as target window ?;

     XGraphicsExposeEvent
	     XBasicEvent class XReparentNotifyEvent;

     ATTRIBUTES
     override_redirect
	     boolean override_redirect;

     X,Y
	     integer y,	x;

     Parent
	     ref(XWindow) Parent;		! the new parent
	     window;

     ChangedWindow
	     ref(XWindow) ChangedWindow;   ! the reparented window
	     (same as Target?);

     XConfigureEvent
	     XBasicEvent class XConfigureEvent;

     ATTRIBUTES
     Above
	     ref(XWindow) Above;      !	NONE or	a sibling window;

     Border_width
	     integer Border_width;

     X,Y,Width,Height
	     integer Height,Width;
	     integer Y,X;

     ChangedWindow
	     ref(XWindow) ChangedWindow;

     XConfigureNotifyEvent
	     XConfigureEvent class XConfigureNotifyEvent;

     ATTRIBUTES
     Override_redirect
	     boolean Override_redirect;

     XConfigureRequestEvent
	     XConfigureEvent class XConfigureRequestEvent;

     ATTRIBUTES
     Value_mask
	     integer Value_mask;

     Detail
	     integer Detail;
	  Detail= Above, Below,	TopIf, BottomIf, Opposite

     XGravityNotifyEvent
	     XBasicEvent class XGravityNotifyEvent;

     ATTRIBUTES
     X,Y
	     integer X,Y;

     MovedWindow
	     ref(XWindow) MovedWindow;

     XResizeRequestEvent
	     XBasicEvent class XResizeRequestEvent;

     ATTRIBUTES
     Width,Height
	     integer Width,Height;

     XCirculateEvent
	     XBasicEvent class XCirculateEvent;

     ATTRIBUTES
     Place
	     integer Place;
	  Place= PlaceOnTop, PlaceOnBottom

     MovedWindow
	     ref(XWindow) MovedWindow;

     XInputEvent
	     XCirculateEvent class XCirculateNotifyEvent;

     XCirculateRequestEvent
	     XCirculateEvent class XCirculateRequestEvent;

     XPropertyNotifyEvent
	     XBasicEvent class XPropertyNotifyEvent;

     ATTRIBUTES
     PropState
	     integer PropState;
	  PropState= NewValue, Deleted

     Time
	     integer Time;

     Atom
	     integer Atom; ! the new Atom registered.;

     XSelectionClearEvent
	     XBasicEvent class XSelectionClearEvent;

     ATTRIBUTES
     Time
	     integer Time;

     Selection
	     integer Selection;

     XSelectionRequestEvent
	     XBasicEvent class XSelectionRequestEvent;

     ATTRIBUTES
     Time
	     integer	  Time;

     Property
	     integer	  Property;

     Target
	     integer	  Target;

     Selection
	     integer	  Selection;

     Requestor
	     ref(XWindow) Requestor;

     XSelectionNotifyEvent
	     XBasicEvent class XSelectionNotifyEvent;

     ATTRIBUTES
     Time
	     integer Time;

     Property
	     integer Property;	 ! ATOM	or None	;

     Target
	     integer Target;

     Selection
	     integer Selection;

     XColormapNotifyEvent
	     XBasicEvent class XColormapNotifyEvent;

     ATTRIBUTES
     MapState
	     integer MapState;!	MapState= ColormapInstalled,
	     ColormapUninstalled;

     Neww
	     boolean Neww;

     ColorMap
	     integer ColorMap;	 ! COLORMAP ID or None;

     XClientMessageEvent
	     XBasicEvent class XClientMessageEvent;

     ATTRIBUTES
     State
	     integer array Data(0:4);

     Format
	     integer	   Format;

     Message_type
	     integer	   Message_type;

     XMappingNotifyEvent
	     XBasicEvent class XMappingNotifyEvent;
	  if	Request=MappingKeyboard	    then     the     procedure
	  XRefreshKeyboardMapping is automatically called.

     ATTRIBUTES
     Count
	     integer Count;	    ! defines range of change w.
	     first_keycode;

     First_keycode
	     integer First_keycode; ! first keycode;

     Request
	     integer Request;
	  Request= MappingModifier, MappingKeyboard, MappingPointer