#include <pathpcs.h>
Inheritance diagram for PathProcessor:
Public Member Functions | |
PathProcessor () | |
Constructor. | |
virtual | ~PathProcessor () |
Destructor. | |
virtual void | ProcessPath (Path *pPath, RenderRegion *pRender, PathShape ShapePath=PATHSHAPE_PATH)=0 |
virtual BOOL | WillChangeFillAndStrokeSeparately (void) |
Called by the RenderRegion to determine if this PathProcessor affects the "fill" and "stroke" portions of the path separately. (Generally speaking, only fill/stroke providers will cause these two different "bits" of a path to be rendered separately). This call is made BEFORE this Processor's ProcessPath function will be called. | |
AttributeValue * | GetParentAttr (void) |
void | SetParentAttr (AttributeValue *pParent) |
virtual BOOL | IsAPathProcessorBrush () |
virtual BOOL | IsAPathProcessorStroke () |
PathProcessor * | GetNextProcessor (void) |
void | SetNextProcessor (PathProcessor *pNext) |
virtual BOOL | DoBecomeA (BecomeA *pBecomeA, Path *pPath, Node *pParent) |
virtual BOOL | NeedsTransparency () const |
virtual BOOL | DoesActuallyDoAnything (RenderRegion *pRender) |
ABSTRACT FUNCTION - see derived classesTo determine whether or not our path processor is 'default' i.e. if does not change the path at all. If so then the render region will be free to use DrawPathToOutputDevice which will let us use dash patterns, arrowheads etc. | |
void | SetDisabled (BOOL Value) |
Sets the flag which we use to determine whether or not we should do anything when it comes to rendering. | |
BOOL | IsDisabled () |
virtual BOOL | AllowsPropertiesDialog (void) |
Private Member Functions | |
CC_DECLARE_DYNAMIC (PathProcessor) | |
Private Attributes | |
PathProcessor * | NextProcessor |
AttributeValue * | ParentAttr |
BOOL | m_DisableMe |
Friends | |
class | RenderRegion |
This can be used to "filter" almost any rendering, but is mainly intended for use by stroke and fill providers, which replace input paths with more suitable shapes to be rendered.
Definition at line 132 of file pathpcs.h.
|
Constructor.
Definition at line 124 of file pathpcs.cpp. 00125 { 00126 NextProcessor = NULL; 00127 ParentAttr = NULL; 00128 m_DisableMe = FALSE; 00129 }
|
|
Destructor.
Definition at line 147 of file pathpcs.cpp. 00148 { 00149 ERROR3IF(NextProcessor != NULL, "PathProcessor deleted while still possibly held in stack"); 00150 }
|
|
Reimplemented in PathProcessorStrokeVector. Definition at line 175 of file pathpcs.h. 00175 {return FALSE;}
|
|
|
|
Reimplemented in PathProcessorBrush, and PathProcessorStroke. Definition at line 163 of file pathpcs.h. 00163 {return FALSE;}
|
|
ABSTRACT FUNCTION - see derived classesTo determine whether or not our path processor is 'default' i.e. if does not change the path at all. If so then the render region will be free to use DrawPathToOutputDevice which will let us use dash patterns, arrowheads etc.
Reimplemented in PathProcessorBrush, and PathProcessorStroke. Definition at line 234 of file pathpcs.cpp. 00235 { 00236 return !m_DisableMe; 00237 }
|
|
Definition at line 160 of file pathpcs.h. 00160 { return(NextProcessor); };
|
|
Definition at line 150 of file pathpcs.h. 00150 { return(ParentAttr); };
|
|
Reimplemented in PathProcessorBrush. Definition at line 156 of file pathpcs.h. 00156 { return FALSE;} // identifier
|
|
Reimplemented in PathProcessorStroke. Definition at line 157 of file pathpcs.h. 00157 { return FALSE;}
|
|
Definition at line 271 of file pathpcs.cpp. 00272 { 00273 return m_DisableMe; 00274 }
|
|
Reimplemented in PathProcessorStrokeAirbrush, PathProcessorBrush, PathProcessorStroke, and PathProcessorStrokeVector. Definition at line 165 of file pathpcs.h. 00165 {return FALSE;};
|
|
|
Sets the flag which we use to determine whether or not we should do anything when it comes to rendering.
Definition at line 253 of file pathpcs.cpp. 00254 { 00255 m_DisableMe = Value; 00256 }
|
|
Definition at line 161 of file pathpcs.h. 00161 { ERROR3IF(pNext == this, "Awooga!"); NextProcessor = pNext; };
|
|
Definition at line 151 of file pathpcs.h. 00151 { ParentAttr = pParent; };
|
|
Called by the RenderRegion to determine if this PathProcessor affects the "fill" and "stroke" portions of the path separately. (Generally speaking, only fill/stroke providers will cause these two different "bits" of a path to be rendered separately). This call is made BEFORE this Processor's ProcessPath function will be called.
Notes: Base class implementation returns FALSE. Derived Stroke and Fill processors should probably override this method to return TRUE. Reimplemented in PathProcessorStrokeAirbrush, PathProcessorStroke, and PathProcessorStrokeVector. Definition at line 175 of file pathpcs.cpp. 00176 { 00177 return(FALSE); 00178 }
|
|
Reimplemented in PathProcessorStrokeAirbrush, PathProcessorStroke, and PathProcessorStrokeVector. |
|
Reimplemented in PathProcessorBrush. |
|
|
|
|