Generic Function | Package: cg | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 9.0 Unrevised from 8.2 to 9.0. 8.2 version

## nget-shape-fixed-box

Arguments: window-or-screen old-box draw-fn erase-fn &optional scroll-p cursor

A destructive version of get-shape-fixed-box. The old-box argument (which provides the initial box and the height and width of the resulting box) is modified to be the box chosen by the user and then returned. Like get-shape-fixed-box, this function waits as the user moves the mouse about to establish the top-left corner of the desired box. When the user presses a mouse button to establish the corner, old-box is set to the resulting box and returned.

window-or-screen should be a window or the screen. The screen is the value returned by `(screen *system*)`. See screen and `*system*`.

draw-fn should be a function object or a symbol naming a function, as should erase-fn. draw-fn is called each time the shape is to be drawn and erase-fn is called each time it is to be erased. draw-fn and erase-fn each have two arguments: the stream and the current box. When they are called, the stream brush will be set to one pixel-width black, the stream paint operation to `po-xor`. Thus, drawing the shape twice will suffice.

As the mouse moves about, candidate boxes are drawn and erased using draw-fn and erase-fn.

If scroll-p is true, the window identified by window-or-screen will be scrolled if the cursor moves outside it. Sets the stream cursor to cursor while running. If the cursor argument is t, a stream default is used (typically the cross-hair cursor).

Copyright (c) 1998-2019, Franz Inc. Oakland, CA., USA. All rights reserved.
This page was not revised from the 8.2 page.
Created 2012.5.30.

|  | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 9.0 Unrevised from 8.2 to 9.0. 8.2 version