Gnash
0.8.10
|
Immutable data representing the definition of a movie display element. More...
#include <DefinitionTag.h>
Public Member Functions | |
virtual | ~DefinitionTag () |
virtual DisplayObject * | createDisplayObject (Global_as &gl, DisplayObject *parent) const =0 |
Create a DisplayObject with the given parent. | |
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. | |
Protected Member Functions | |
DefinitionTag (boost::uint16_t id) |
Immutable data representing the definition of a movie display element.
TODO: rename this class so it's not the same as the SWF spec. It doesn't exactly correspond to the DefinitionTag defined there.
virtual gnash::SWF::DefinitionTag::~DefinitionTag | ( | ) | [inline, virtual] |
gnash::SWF::DefinitionTag::DefinitionTag | ( | boost::uint16_t | id | ) | [inline, protected] |
virtual DisplayObject* gnash::SWF::DefinitionTag::createDisplayObject | ( | Global_as & | gl, |
DisplayObject * | parent | ||
) | const [pure 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. |
Implemented in gnash::SWFMovieDefinition, gnash::sprite_definition, gnash::SWF::DefineButtonTag, gnash::SWF::DefineVideoStreamTag, gnash::SWF::DefineEditTextTag, gnash::SWF::DefineTextTag, gnash::BitmapMovieDefinition, gnash::SWF::DefineMorphShapeTag, and gnash::SWF::DefineShapeTag.
Referenced by gnash::MovieClip::add_display_object(), and gnash::MovieClip::replace_display_object().
void gnash::SWF::DefinitionTag::executeState | ( | MovieClip * | m, |
DisplayList & | |||
) | const [virtual] |
Executing a DefinitionTag adds its id to list of known characters.
The process is different for imported DefinitionTags, which are added with a new id.
Reimplemented from gnash::SWF::ControlTag.
References gnash::MovieClip::get_root(), and gnash::Movie::addCharacter().
boost::uint16_t gnash::SWF::DefinitionTag::id | ( | ) | const [inline] |
The immutable id of the DefinitionTag.
Referenced by gnash::sprite_definition::set_loading_sound_stream_id(), gnash::SWFMovieDefinition::registerExport(), and gnash::SWFMovieDefinition::set_loading_sound_stream_id().