event = record[kind: int, value: int, mask: int, win: x_window, sub: x_window, x: int, y: int, x0: int, y0: int, time: int] % map values IsUnmapped = 0 IsMapped = 1 IsInvisible = 2 % kind values IsTransparent = 0 IsOpaque = 1 IsIcon = 2 % Input Event Codes NoEvent = 0 KeyPressed = 1 KeyReleased = 2 ButtonPressed = 4 ButtonReleased = 8 EnterWindow = 16 LeaveWindow = 32 MouseMoved = 64 ExposeWindow = 128 ExposeRegion = 256 ExposeCopy = 512 RightDownMotion = 1024 MiddleDownMotion = 2048 LeftDownMotion = 4096 UnmapWindow = 8192 FocusChange = 16384 % Event detail codes RightButton = 0 MiddleButton = 1 LeftButton = 2 IntoOrFromSubwindow = 1 VirtualCrossing = 2 % input state masks ControlMask = 16384 MetaMask = 8192 ShiftMask = 4096 ShiftLockMask = 2048 LeftMask = 1024 MiddleMask = 512 RightMask = 256 BlackPixel = 0 WhitePixel = 1 % x_vlist flag bits. If the bit is 1 the predicate is true VertexRelative = 1 % else absolute VertexDontDraw = 2 % else draw VertexCurved = 4 % else straight VertexStartClosed = 8 % else not VertexEndClosed = 16 % else not VertexDrawLastPoint = 32 % else don't GXclear = 0 % 0 GXand = 1 % src AND dst GXandReverse = 2 % src AND NOT dst GXcopy = 3 % src GXandInverted = 4 % NOT src AND dst GXnoop = 5 % dst GXxor = 6 % src XOR dst GXor = 7 % src OR dst GXnor = 8 % NOT src AND NOT dst GXequiv = 9 % NOT src XOR dst GXinvert = 10 % NOT dst GXorReverse = 11 % src OR NOT dst GXcopyInverted = 12 % NOT src GXorInverted = 13 % NOT src OR dst GXnand = 14 % NOT src OR NOT dst GXset = 15 % 1 pixellist = array[int] colordef = record[pixel, red, green, blue: int] colordeflist = array[colordef]