|
Gnash
0.8.10
|
#include <PathParser.h>
Inherited by gnash::CairoPathRunner.
Public Member Functions | |
| PathParser (const std::vector< Path > &paths, size_t num_styles) | |
| virtual | ~PathParser () |
| void | run (const SWFCxForm &cx, const SWFMatrix &mat) |
| virtual void | prepareFill (int fill_style, const SWFCxForm &cx)=0 |
| virtual void | terminateFill (int fill_style)=0 |
| virtual void | fillShape () |
| virtual void | moveTo (const point &p)=0 |
| virtual void | curveTo (const Edge &curve)=0 |
| Draw the given curve using the path pencil. | |
| virtual void | lineTo (const point &p)=0 |
| Draw a straight line to the given point. | |
PathParser is a class which aims to efficiently transpose Flash paths into well formed, single-filled shapes. A renderer should utilize this class by subclassing PathParser. The methods reimplemented will receive low level path information (e.g., moveTo).
| gnash::PathParser::PathParser | ( | const std::vector< Path > & | paths, |
| size_t | num_styles | ||
| ) |
| paths | list of Flash paths to be 'parsed'. |
| num_styles | count of fill styles pointed to by the first argument. |
| virtual gnash::PathParser::~PathParser | ( | ) | [inline, virtual] |
| virtual void gnash::PathParser::curveTo | ( | const Edge & | curve | ) | [pure virtual] |
Draw the given curve using the path pencil.
| virtual void gnash::PathParser::fillShape | ( | ) | [inline, virtual] |
Fill a single shape. Implementation is optional, because most renderers can handle multiple well-formed, singly-filled shapes and can do the render/fill stage during terminateFill(). However, those that can't may implement this method.
| virtual void gnash::PathParser::lineTo | ( | const point & | p | ) | [pure virtual] |
Draw a straight line to the given point.
| virtual void gnash::PathParser::moveTo | ( | const point & | p | ) | [pure virtual] |
Move the path pencil to the given location. Thus a new shape should be started. The parser may invoke this method several times for a single fill style, creating several shapes.
| virtual void gnash::PathParser::prepareFill | ( | int | fill_style, |
| const SWFCxForm & | cx | ||
| ) | [pure virtual] |
Prepare the fill style for subsequent use for filling one or more shapes.
| fill_style | fill style number, as indicated by class Path. |
| void gnash::PathParser::run | ( | const SWFCxForm & | cx, |
| const SWFMatrix & | mat | ||
| ) |
Runs the path parser, invoking the pure virtual methods where appropriate.
| cx | the color transform that will be passed to prepareFill. |
| mat | the SWFMatrix that will be passed to prepareFill. |
References _, gnash::UnivocalPath::FILL_LEFT, gnash::UnivocalPath::FILL_RIGHT, and gnash::key::i.
| virtual void gnash::PathParser::terminateFill | ( | int | fill_style | ) | [pure virtual] |
Terminates the fill style, that is, precludes the fill style from further use, which may be freed or otherwise cleaned up. Most renderers should fill the paths previously parsed.
1.7.6.1