create the actual windows. The creation of windows is done by
TopLevel as part of putting up a DisplayHandle inside a window,
so mkWindow and mkShellWindow is probably only of use if you
want to provide your own Window wrappers.
getWindowType win
Distinguish between four different types of windows:
data WindowType
= ShellWindow
| DialogueWindow
| PopupWindow
| SubWindow
getWinPainter win
return the Painter to renderPicture
values into the window.
getWinSize win
return current size (in pixels) of the Window.
getWinPos win
return the position of the top lefthand corner of the window.
return the foreground and background colours of the window.
resizeWindow win sz
change the size of the window.
moveWindow win pos
move the top lefthand corner of the window to new position.
iconifyWindow win
request the window manager to iconify window.
raiseWindow win
request the window manager to move the window to the top of the stack of
windows on the screen.
mapWindow win
unmapWindow win
mapRaisedWindow win
ask for the window to become (not) visible/mapped onto the screen.
mapRaisedWindow also requests the window to be displayed on top.
redisplayWindow win
repair the contents of the window by asking the user interface component
inside it to redisplay itself.
repairWindowRegion win region
repair part of the window.
grabWindow win grabType
ungrabWindow win
grab the mouse pointer/keyboard focus for the window:
data GrabType
= GrabTemp DeviceHandler
| GrabPointer
| GrabKeyboard
| GrabGlobal
| GrabLocal {- not implemented yet -}
[ToDo: explain their function in life]
translateWinCoord win pos
convert the coordinate of a window into the coordinate system of the
root window.
enableFocus win flg
turn on or off the tracking of keyboard focus.
registerFocus win handler
register a handler that is interested in keyboard focus input.
Returns an ID that can be used to grab the focus later.
getFocus win focusId
try grabbing the keyboard input focus.
nextFocus win focusId
prevFocus win focusId
move the keyboard focus to the next or previous handler. Very useful
when implementing input forms where you want Tab or CR to move on to the
next input field.
sendWindowDevEv win devev
sendWindowWComm win wcomm
Forward system commands to the user interface component inside a
window.