NextPrevUpTopContentsIndex

pinboard-object

Class
Summary

Provides a rectangular area in a pinboard-layout with drawing capabilities.

Package

capi

Superclasses

capi-object

Subclasses

item-pinboard-object
image-pinboard-object
line-pinboard-object
drawn-pinboard-object
rectangle

Initargs

:pinboard

The output pane on which the pinboard object is drawn.

:activep

If t , the pinboard object is made active.

:graphics-args

A plist of Graphics Ports drawing options.

:help-key

An object used for lookup of help. Default value t .

The following initargs are geometry hints, influencing the initial size and position of a pinboard-object :

:x

The x position of the pinboard object in the pinboard.

:y

The y position of the pinboard object in the pinboard.

:external-min-width

The minimum width of the pinboard object in the pinboard.

:external-min-height

The minimum height of the pinboard object in the pinboard.

:external-max-width

The maximum width of the pinboard object in the pinboard.

:external-max-height

The maximum height of the pinboard object in the pinboard.

:visible-min-width

The minimum visible width of the pinboard object.

:visible-min-height

The minimum visible height of the pinboard object.

:visible-max-width

The maximum visible width of the pinboard object.

:visible-max-height

The maximum height of the pinboard object.

:internal-min-width

The minimum width of the display region.

:internal-min-height

The minimum height of the display region.

:internal-max-width

The maximum width of the display region.

:internal-max-height

The maximum height of the display region.

Accessors

pinboard-object-pinboard
pinboard-object-activep
pinboard-object-graphics-args

Readers

help-key

Description

The class pinboard-object provides a rectangular area in a pinboard-layout with drawing and highlighting capabilities. A pinboard object behaves just like a simple pane within layouts, meaning that they can be placed into rows, columns and other layouts, and that they size themselves in the same way. The main distinction is that a pinboard object is a much smaller object than a simple pane as it does not need to create a native window for itself.

Each pinboard object is placed into a pinboard layout (or into a layout itself inside a pinboard layout), and then when the pinboard layout wishes to redisplay a region of itself, it calls the function draw-pinboard-object on each of the pinboard objects that are contained in that region (in the order that they are specified as children to the layout).

The graphics-args slot allows drawing options to be set. These include the font, the background and foreground colors, and others (see the section Graphics State in the LispWorks CAPI User Guide for details).

help-key and the geometry hints are interpreted as described for element.

By default a pinboard-object does not accept the input focus.

There are a number of predefined pinboard objects provided by the CAPI. They are as follows:

item-pinboard-object

Draws a title.

line-pinboard-object

Draws a line.

right-angle-line-pinboard-object

Draws a right-angled line.

image-pinboard-object

Draws an image.

drawn-pinboard-object

Uses a user-defined display function.

The main user of pinboard objects in the CAPI is the graph pane, which uses item-pinboard-object and line-pinboard-object to display its nodes and edges respectively.

To force a pinboard object to redraw itself, either call the function invalidate-rectangle on it (in which case the redrawing is done immediately), or call redraw-pinboard-object in which case the redrawing may be cached and displayed at a later date.

Call the generic functions highlight-pinboard-object and unhighlight-pinboard-object to highlight a pinboard and remove its highlighting.

Examples

See the file examples/capi/graphics/pinboard-test.lisp .

See also

pinboard-layout
draw-pinboard-object
graph-pane
highlight-pinboard-object
redraw-pinboard-object
redraw-pinboard-layout
unhighlight-pinboard-object


LispWorks CAPI Reference Manual - 25 Jul 2006

NextPrevUpTopContentsIndex