beautypg.com

Controlling clipping 13 – Apple Newton Programmer’s Newton 2.0 (for Newton 2.0) User Manual

Page 538

background image

C H A P T E R 1 3

Drawing and Graphics

13-12

Using the Drawing Interface

Default Transfer Mode

13

The default transfer mode is actually a split state: bitmaps and text are drawn with
a

modeOR

transfer mode, but other items (geometric shapes, pens, and fill patterns)

are drawn with a

modeCOPY

transfer mode. However, when you actually specify a

transfer mode (with a non-

nil

value in the

transferMode

slot of the style

frame), all drawing uses the specified mode.

Transfer Modes at Print Time

13

Only a few transfer modes are supported for printing. Only

modeCOPY

,

modeOR

,

and

modeBIC

may be used; other modes may produce

unexpected results.

Note

Most problems occur when using PostScript
printers, so you should test your code on
LaserWriters as well as StyleWriters.

Controlling Clipping

13

When the system draws a shape in a view for which the

vClipping

flag is set, it

draws only the part that fits inside the view in which drawing takes place. Any parts
of the shape that fall outside the boundaries of that view are not drawn, as if they
have been cut off or clipped. The term clipping refers to this view system behavior;
in common usage, the shape is said to have been “clipped to the destination view.”

Note

Although the view system allows drawing outside the boundaries
of a view for which the

vClipping

flag is not set, it does not

guarantee that drawing outside the boundaries of the view will
occur reliably. You need to make your destination view large
enough to completely enclose the shapes you want to draw. You
could also set the destination view’s

vClipping

flag to clip

drawing to the bounds of the destination view. Note also that an
application base view that is a child of the root view always clips
drawing to its boundaries.

When no other clipping region is specified and

vClipping

is set, the boundaries

of the destination view define the region outside of which drawing does not occur.
This area is known as the clipping region. If you want to specify different clipping
regions, you can use the style frame’s

clipping

slot to do so. Because drawing is

always clipped to the boundaries of the destination view, regardless of any other
clipping region you specify, you cannot use the

clipping

slot to force drawing

outside the boundaries of a view.