Adobe.com
Contents Suites Classes Class Index Member Index

AIAnnotatorMessage Struct Reference

A plug-in that has registered an annotator receives this message with kSelectorAIInvalAnnotation and kSelectorAIDrawAnnotation. More...

#include <AIAnnotator.h>

List of all members.

Public Attributes

SPMessageData d
 The message data.
AIAnnotatorHandle annotator
 The annotator reference for the handler that is requested to invalidate or draw the annotation.
AIDocumentViewHandle view
 The document view; see apiAIDocumentView.h.
ai::int32 updateType
 The type of update being requested.
void * updateData
 Not meaningful for invalidation.
ai::int32 portType
 The port type.
AIPortRef port
AIBoolean showEdges
 When true, draw an outline around the annotation area.
const AIRealRect * invalidationRects
 For drawing, the list of regions that have been invalidated by an annotator and need to be redrawn.
ai::int32 numInvalidationRects
 The number of rectangles in the invalidationRects list.
class AIAnnotatorDrawer * drawer
 Pointer to annotator drawer object.

Detailed Description

A plug-in that has registered an annotator receives this message with kSelectorAIInvalAnnotation and kSelectorAIDrawAnnotation.


Member Data Documentation

The annotator reference for the handler that is requested to invalidate or draw the annotation.

class AIAnnotatorDrawer* AIAnnotatorMessage::drawer

Pointer to annotator drawer object.

Pointer guaranteed to be non-NULL for kSelectorAIDrawAnnotation messages. See AIAnnotatorDrawer.h for more information.

For drawing, the list of regions that have been invalidated by an annotator and need to be redrawn.

Can be NULL.

The memory for invalidated regions is owned and deleted by Illustrator after a draw message completes. When any annotator invalidates a region all the annotators are asked to draw themselves regardless of whether their annotations lie within the invalidation rectangles. Illustrator erases annotations only from the invalidated region. This means that an annotator can be asked to draw itself when the area it is drawing still contains the drawing that was done during the previous draw message.

Most light-weight annotations can ignore this and just draw the entire annotation in response to kSelectorAIDrawAnnotation. If there are performance issues drawing an annotator or an annotator uses transparency/blending modes when drawing, it can clip its drawing to the invalidation rectangles. This avoids the problem of transparency build up in areas where the previous drawing was not cleared.


NULL for an invalidation request.

The number of rectangles in the invalidationRects list.


Always 0 for an invalidation request.

Deprecated:
For drawing, the port to which to draw the annotation. The AIPortRef is the same as an ADMPortRef, and can be used directly to create an ADM drawer for platform-independent drawing.
NULL for an invalidation request. Deprecated in AI 15.0. Use AIAnnotatorDrawerSuite for platform-independent drawing instead.

The port type.

When true, draw an outline around the annotation area.

This is controlled by the View > Show Edges value.

Not meaningful for invalidation.

For a drawing update, a value of 1 indicates that the update was triggered by auto-scrolling the window during mouse drag. Otherwise 0.

The type of update being requested.

The document view; see apiAIDocumentView.h.


The documentation for this struct was generated from the following file:


Contents Suites Classes Class Index Member Index
Adobe Solutions Network
 
Copyright © 2014 Adobe Systems Incorporated. All rights reserved.
Terms of Use Online Privacy Policy Adobe and accessibility Avoid software piracy Permissions and Trademarks