WINDOWS(1)
Series 300 and 500 Only
NAME
windows − window system concepts and commands
DESCRIPTION
There are a number of user-level commands which help you manage windows. Each is described separately. This manual entry covers concepts they share in common.
All numeric variables given to commands are limited to 16 bits, e.g. the (x,y) pair for wmove(1) must be in the range -16383 through +16382.
Window Types
The following window types are supported:
term0
Terminal level-0 emulation window. This type acts like an HP2622 Terminal without block or format mode. It also supports the HP2627 color escape sequences.
graphics
Starbase graphics window. This type implements the procedural interface defined in the Starbase Device Drivers Library and supports the Font Manager and Fast Alpha libraries.
see_thru
See_thru window used to view the image planes. This window type is not really a separate window type. It is a special case of the graphics window. Some Series 300 frame buffer devices support two sets of frame buffer memory. One set is called the image planes and is the area where most graphics output is sent; the other set is called the overlay planes and is where the human interface operations take place. The number of planes present in the overlay planes is device-dependent. If an overlay colormap is supported, the colors that can be set include combinations of red, green, blue, and see_thru. If a pixel in the overlay planes is see_thru, then the pixel color will be the color of the image planes “behind” the overlay planes; otherwise, the pixel color is forced to the color specified by the overlay planes. On this type of a display, the window manager runs in the overlay planes. A see_thru window is a non-retained graphics window whose background color is set to see_thru. A server, stserver, is started for the see_thru window. This server catches the SIGWINDOW signal for the repaint event. When a repaint event occurs, stserver repaints the window with the see_thru index value, causing the window to create a “peep-hole” through the overlay planes to the image planes. The see_thru color index value defaults to three (usually yellow), but can be changed via the SB_OV_SEE_THRU_INDEX environment variable; simply set this variable to the desired color map value before starting the window manager. The see_thru window type is used only by wcreate(1) and wsh(1). For all other purposes, the see_thru window is considered a graphics window.
Window Specification
A particular window can be specified to the commands in several ways.
1. Give no window_specs at all.
In this case, some commands create a window with a default name obtained from the window manager, and others operate on the window connected to standard input, as appropriate. For example:
wdisp -i
Put into iconic form the window connected to standard input.
2. Give "−" as a window_spec.
This also means "default window name from the window manager" or "window connected to standard input", as appropriate. For example:
wcreate win1 − win2
Create three windows named "win1", some default name, and "win2".
3. Give a basename or indefinite pathname.
If window_spec does not begin with "/", "./", or "../", and it is not a pattern (see below), the window’s special file resides in the directory specified by environment variable $WMDIR. If this variable is null or not defined, or if window_spec already begins with "$WMDIR/", its value is not prepended, and the window’s location is relative to the window manager’s current working directory. For example:
wcreate wconsole
Create the (term0) window "$WMDIR/wconsole".
4. Give a definite pathname.
If window_spec begins with "/", "./", or "../", $WMDIR is never prepended. For example:
wcreate −wgraphics /dev/HP9837A/sales_graph
Create the graphics window "sales_graph" whose special file lives in the directory "/dev/HP9837A".
5. Give a shell-style pattern.
Window names may be specified using meta-characters, similar to sh(1) and find(1) (but different than ed(1)). Be sure to quote patterns to hide them from the shell. Unlike find, which always compares patterns with basenames only, the appearance of ’/’ requires a pattern to match against full window pathnames (as known to the window manager) rather than basenames. For example:
wsize ’∗’ Set default sizes for all windows, wherever they are located.
wlist ’/∗3’ List information on all windows whose full pathnames start with slash and end with ’3’.
Pattern meta-characters are ’∗’, ’?’, and ’[’. Following ’[’, special meanings are also assigned to ’!’, ’−’, and ’]’. Any character, including ’\’, may be quoted (made to stand for itself) by preceding it with ’\’.
Patterns are compared against the names of all existing windows known to the window manager. If a pattern contains a ’/’ anywhere, it must match a window’s full pathname. Otherwise, it is only compared against each window’s basename. Either way, the result is the alphabetically sorted list of full pathnames of selected windows, or the pattern itself if no window matches.
Meanings of pattern meta-characters:
∗ Matches any string, including the null string.
? Matches any single character.
[...] Matches any one of the enclosed characters. A pair of characters separated by ’−’ matches any character lexically between the pair, inclusive.
[!...] A NOT operator can be specified immediately following the left bracket to invert the sense of the comparison, i.e. match any single character not enclosed (explicitly and/or in a range) in the brackets. (Note, this is different syntax than the ’^’ used in regular expressions.)
Like the shell, "[]" matches no character. Unlike the shell, "[!]" matches any character, and ’−’ in a list is not taken as part of a range unless used properly.
Also note:
Window basenames are truncated to 12 characters (not 14).
Window pathnames are limited to 37 characters after possibly prepending $WMDIR, and/or expanding "./" or "../" to the current working directory or its parent, respectively. If you try to refer to a window with a final pathname longer than 37, you get an error from the commands.
Font file pathnames are similarly truncated (to 39), but no check is performed. Attempts to use longer final pathnames normally fail (no such file).
Summary of Command Options
This table tersely summarizes the options recognized by the window commands. Note that commands which do not have any options are not shown in the table (i.e., wmstart(1), wselect(1), wmstop(1)).
option bordr creat destr wdisp wfont wlist wmove wsh wsize wmrdy
====== ===== ===== ===== ===== ===== ===== ===== ===== ===== =====
−a . . adest . alt . . adest . .
−b . bottm . bottm . . . bottm . .
−cf,b color . . . . . . . . .
−cxxx . . . . . . . cmdln . .
−d . . wdest down . . . wdest . .
−e . . . . . . . exist . .
−f . . . . flush fonts . . . .
−F . . . . flush . . . . .
−g . . . . . . . login . .
−i . icon . icon . . icon icon . .
−k . keybd . . . . . keybd . .
−l . . . . . long . . . .
−lx,y . locat . . . . loca locat . .
−lxxx label . . . . . . . . .
−n norml noret nodst norml . . . noret . .
−o . concl . concl . . . concl . .
−r . . . . replc . . . . .
−rw,h . rsize . . . . . rsize . .
−sw,h . size . . . . . size size .
−t thin thin . top . . . thin . .
−T bdrls bdrls . . . . . bdrls . .
−u . . . up . . . . . .
−v . verbo . . . . . verbo . verbo
−wxxx . type . . . . . type . .
HARDWARE DEPENDENCIES
Series 500:
Borderless windows (−T option) is not supported on Series 500.
The see_thru window type is supported on only certain types of Series 300 hardware.
HP-15 (two-byte) fonts are not supported on Series 500; they can be used only on Series 300.
SEE ALSO
wmstart(1), wmready(1), wmstop(1), wborder(1), wcreate(1), wdestroy(1), wdisp(1), wfont(1), wlist(1), wmove(1), wselect(1), wsh(1), wsize(1).
DIAGNOSTICS
All of the commands try to give helpful error messages. When an error is detected in a call to a system or Windows routine, the commands also print and interpret the value of errno (see errno(2)). They tell you the name of the routine which returned the error so you can look in the appropriate manual entry for more information.
Hewlett-Packard Company — May 11, 2021