NAME¶
Perspective - visible portion of an interactor
SYNOPSIS¶
#include <InterViews/perspective.h>
DESCRIPTION¶
A perspective object describes which part of an interactor's total display area
is visible in the interactor's canvas. The main use of perspectives is for
scrolling, panning, and zooming interactors. The member variables (
x0,
y0) define the origin of the interactor's display
area;
width and
height define the total height of the area. The
member variables (
curx,
cury) define the lower-left corner
of the interactor's canvas relative to the total area;
curwidth and
curheight define how much of the total area is displayed in the canvas.
The member variables
sx,
sy,
lx, and
ly specify
small and large increments in each dimension. These increments are used by a
scroller to implement line and page scrolling.
PUBLIC OPERATIONS¶
- Perspective()
- Define a new perspective with all member variables
initialized to zero.
- void Attach(Interactor*)
- Add to the list of interactors that are interested in
updates to the perspective. These interactors reflect the perspective
visually; examples include scrollers and sliders.
- void Detach(Interactor*)
- Remove an interactor from the list of those interested in
updates. This operation should be called from the interactor's
destructor.
- void Init(Coord x0, Coord y0, Coord width, Coord
height)
- Initialize the perspective display area.
- void Update()
- Notify all the interactors interested in the perspective
that it has changed. The perspective's interactor should call Update after
modifying its perspective.
SEE ALSO¶
Adjuster(3I), Interactor(3I), Panner(3I), Scroller(3I)