Gnash
0.8.11dev
|
Represents the outline of one or more shapes, along with information on fill and line styles. More...
#include <DefineShapeTag.h>
Public Member Functions | |
void | display (Renderer &renderer, const Transform &xform) const |
DisplayObject * | createDisplayObject (Global_as &gl, DisplayObject *parent) const |
Create a DisplayObject with the given parent. | |
const SWFRect & | bounds () const |
Get cached bounds of this shape. | |
bool | pointTestLocal (boost::int32_t x, boost::int32_t y, const SWFMatrix &wm) const |
Check if the given point is inside this shape. | |
![]() | |
virtual | ~DefinitionTag () |
virtual void | executeState (MovieClip *m, DisplayList &) const |
Executing a DefinitionTag adds its id to list of known characters. | |
boost::uint16_t | id () const |
The immutable id of the DefinitionTag. | |
![]() | |
virtual | ~ControlTag () |
virtual void | executeActions (MovieClip *, DisplayList &) const |
Execute Action tags. | |
![]() | |
ref_counted () | |
ref_counted (const ref_counted &) | |
void | add_ref () const |
void | drop_ref () const |
long | get_ref_count () const |
Static Public Member Functions | |
static void | loader (SWFStream &in, TagType tag, movie_definition &m, const RunResources &r) |
Additional Inherited Members | |
![]() | |
DefinitionTag (boost::uint16_t id) |
Represents the outline of one or more shapes, along with information on fill and line styles.
|
inline |
Get cached bounds of this shape.
References gnash::SWF::ShapeRecord::getBounds().
|
virtual |
Create a DisplayObject with the given parent.
This function will determine the correct prototype and associated object using the passed global.
gl | The global object used to set prototype and associated object. Calling this function creates a new DisplayObject from the DefinitionTag and adds it as a child of the specified parent DisplayObject. |
Implements gnash::SWF::DefinitionTag.
References gnash::getRoot().
References gnash::Renderer::drawShape().
|
static |
References _, gnash::movie_definition::addDisplayObject(), assert, gnash::SWF::DEFINESHAPE, gnash::SWF::DEFINESHAPE2, gnash::SWF::DEFINESHAPE3, gnash::SWF::DEFINESHAPE4, gnash::SWF::DEFINESHAPE4_, gnash::SWFStream::ensureBytes(), IF_VERBOSE_PARSE, and gnash::SWFStream::read_u16().
Referenced by gnash::SWF::addDefaultLoaders().
bool gnash::SWF::DefineShapeTag::pointTestLocal | ( | boost::int32_t | x, |
boost::int32_t | y, | ||
const SWFMatrix & | wm | ||
) | const |
Check if the given point is inside this shape.
Coordinates are given in the definition scale, but a matrix is given to allow computing proper line thickness based on display scale.
References gnash::SWF::ShapeRecord::lineStyles(), gnash::SWF::ShapeRecord::paths(), gnash::geometry::pointTest(), x, and y.