Go to the documentation of this file.
20 #ifndef GNASH_DISPLAY_OBJECT_H
21 #define GNASH_DISPLAY_OBJECT_H
32 #include <boost/noncopyable.hpp>
33 #include <boost/logic/tribool.hpp>
59 class movie_definition;
61 class InteractiveObject;
195 static const int lowerAccessibleBound = -16384;
200 static const int upperAccessibleBound = 2130690044;
205 static const int staticDepthOffset = lowerAccessibleBound;
222 static const int removedDepthOffset = -32769;
230 static const int noClipDepthValue = -1000000;
237 assert(_parent !=
nullptr);
238 return _parent->get_environment();
285 int getWorldVolume()
const;
304 void setMatrix(
const SWFMatrix&
m,
bool updateCache =
false);
313 void set_x_scale(
double factor);
322 void set_y_scale(
double factor);
333 void set_rotation(
double rot);
342 virtual void setWidth(
double width);
354 if (_transform.colorTransform != cx) {
356 _transform.colorTransform = cx;
363 if (
r != _ratio) set_invalidated();
392 return (m_clip_depth != noClipDepthValue && !_maskee);
412 #if GNASH_PARANOIA_LEVEL > 1
413 if (_mask) assert(_mask->_maskee ==
this);
442 std::unique_ptr<ExecutableCode> get_event_handler(
const event_id&
id)
const;
518 if (isDynamicMask() || isMaskLayer())
return false;
519 return pointInShape(
x,
y);
575 return ! _scriptTransformed && ! _dynamicallyCreated;
593 return _dynamicallyCreated;
598 _dynamicallyCreated =
true;
613 _scriptTransformed =
true;
620 void set_visible(
bool visible);
632 bool hasEventHandler(
const event_id&
id)
const;
649 if (
this != dragging &&
visible() && pointInVisibleShape(
x,
y)) {
663 return _child_invalidated;
692 void set_invalidated();
693 void set_invalidated(
const char* debug_file,
int debug_line);
706 void set_child_invalidated();
721 _invalidated =
false;
722 _child_invalidated =
false;
723 m_old_invalidated_ranges.setNull();
765 saveOriginalTarget();
782 virtual void getLoadedMovie(
Movie* newMovie);
801 virtual void destroy();
815 bool boundsInClippingArea(
Renderer& renderer)
const;
821 std::string getTargetPath()
const;
854 typedef tree<std::pair<std::string, std::string> > InfoTree;
864 virtual InfoTree::iterator getMovieInfo(InfoTree& tr,
865 InfoTree::iterator it);
873 BLENDMODE_UNDEFINED = 0,
874 BLENDMODE_NORMAL = 1,
887 BLENDMODE_HARDLIGHT = 14
900 typedef std::map<event_id, BufferList>
Events;
943 virtual void markReachableResources()
const;
993 _origTarget=getTarget();
998 return _event_handlers;
1001 void set_event_handlers(
const Events& copyfrom);
1049 double _xscale, _yscale, _rotation;
1052 std::int32_t _depth;
1054 boost::tribool _focusRect;
1066 std::uint16_t _ratio;
1076 std::string _origTarget;
1089 bool _scriptTransformed;
1091 bool _dynamicallyCreated;
1112 bool _child_invalidated;
1121 return o.transform().matrix;
1124 inline const SWFCxForm&
1127 return o.transform().colorTransform;
1136 if (
d.parent() || includeRoot)
m.concatenate(
getMatrix(
d));
1162 return d ?
d->object() :
nullptr;
1172 #ifdef DEBUG_SET_INVALIDATED
1173 #define set_invalidated() set_invalidated(__FILE__, __LINE__)
1177 #endif // GNASH_CHARACTER_H
bool isInf(const T &num)
Definition: as_value.h:56
bool isLevelTarget(int version, const std::string &name, unsigned int &levelno)
Return true if the given string can be interpreted as a _level name.
Definition: movie_root.cpp:2387
@ PROP_uXMOUSE
Definition: namedStrings.h:124
VGPath path
Definition: testr_gtk.cpp:84
const std::string & getOrigTarget() const
Definition: DisplayObject.h:829
double scaleY() const
Definition: DisplayObject.h:927
virtual MovieClip * getAsRoot()
Return the _root ActionScript property of this DisplayObject.
Definition: DisplayObject.cpp:847
const std::string & toString(string_table &st) const
Definition: ObjectURI.h:80
double toNumber(const as_value &v, const VM &vm)
Convert an as_value to a double.
Definition: VM.cpp:451
Collectable resource.
Definition: GC.h:75
void set_depth(int d)
Definition: DisplayObject.h:270
@ PROP_uHIGHQUALITY
Definition: namedStrings.h:106
void set_parent(DisplayObject *parent)
Set the parent of this DisplayObject.
Definition: DisplayObject.h:261
std::vector< const action_buffer * > BufferList
Definition: DisplayObject.h:899
std::string name
Definition: LocalConnection_as.cpp:149
bool isNaN(const T &num)
Definition: GnashNumeric.h:62
bool visible(const Property &prop, int version)
Is this member supposed to be visible by a VM of given version ?
Definition: Property.h:423
bool toBool(const as_value &v, const VM &vm)
Convert an as_value to boolean type.
Definition: VM.cpp:445
@ height
Definition: klash_part.cpp:329
@ d
Definition: GnashKey.h:150
BlendMode
Definition: DisplayObject.h:872
const Events & get_event_handlers() const
Definition: DisplayObject.h:996
static const int upperAccessibleBound
Definition: DisplayObject.h:200
as_object * _object
Definition: Array_as.cpp:680
The base class for all ActionScript objects.
Definition: as_object.h:162
std::unique_ptr< ExecutableCode > get_event_handler(const event_id &id) const
Get the built-in function handlers code for the given event.
Definition: DisplayObject.cpp:434
Render a dynamic mask for a specified DisplayObject.
Definition: DisplayObject.h:969
@ QUALITY_BEST
Definition: GnashEnums.h:39
std::pair< std::int32_t, std::int32_t > mousePosition() const
Use this to retrieve the last state of the mouse.
Definition: movie_root.cpp:736
@ BLENDMODE_HARDLIGHT
Definition: DisplayObject.h:887
double rotation() const
Definition: DisplayObject.h:919
void transformedByScript()
Call this function when the sprite has been transformed due to ActionScript code.
Definition: DisplayObject.h:611
@ PROP_uTARGET
Definition: namedStrings.h:115
string_table::key getName(const ObjectURI &o)
Get the name element of an ObjectURI.
Definition: ObjectURI.h:116
size_t arraySize(T(&)[N])
Get the size of an array without passing a pointer by mistake.
Definition: GnashAlgorithm.h:58
A general use string table.
Definition: string_table.h:42
static const int staticDepthOffset
Definition: DisplayObject.h:205
bool is_null() const
Definition: as_value.h:340
string_table & getStringTable() const
Get a reference to the string table used by the VM.
Definition: VM.h:117
geometry::Range2d< std::int32_t > getRange() const
Construct and return a Range2d object.
Definition: SWFRect.h:222
@ PROP_uTOTALFRAMES
Definition: namedStrings.h:116
void log_debug(StringType msg, Args... args)
Definition: log.h:301
std::int32_t y
Definition: BitmapData_as.cpp:435
@ i
Definition: GnashKey.h:155
bool pointInBounds(std::int32_t x, std::int32_t y) const
Return true if the given point falls in this DisplayObject's bounds.
Definition: DisplayObject.h:488
@ BLENDMODE_LIGHTEN
Definition: DisplayObject.h:878
#define LOG_ONCE(x)
Definition: log.h:49
void setVolume(int vol)
Set sound volume for this DisplayObject.
Definition: DisplayObject.h:276
@ BLENDMODE_SUBTRACT
Definition: DisplayObject.h:882
std::string typeName(const T &inst)
Definition: utility.h:93
@ PROP_uCURRENTFRAME
Definition: namedStrings.h:100
as_object * object() const
Definition: DisplayObject.h:931
void set_visible(bool visible)
Set whether this DisplayObject should be rendered.
Definition: DisplayObject.cpp:323
std::int32_t pixelsToTwips(double a)
Definition: GnashNumeric.h:144
#define _(String)
Definition: log.h:44
Provides information about timeline context.
Definition: as_environment.h:51
void setMask(DisplayObject *mask)
Definition: DisplayObject.cpp:726
bool isDestroyed() const
Return true if this DisplayObject was destroyed.
Definition: DisplayObject.h:807
A class to identify 'static' SWF events (system events).
Definition: event_id.h:53
@ PROP_uPARENT
Definition: namedStrings.h:110
The AVM1 virtual machine.
Definition: VM.h:72
const SWFCxForm & getCxForm(const DisplayObject &o)
Definition: DisplayObject.h:1125
Event code.
Definition: ExecutableCode.h:85
virtual void markReachableResources() const
Mark all reachable resources.
Definition: DisplayObject.cpp:695
virtual void getLoadedMovie(Movie *newMovie)
Accept a loaded Movie.
Definition: DisplayObject.cpp:121
Anonymous namespace for callbacks, local functions, event handlers etc.
Definition: dbus_ext.cpp:41
void setBlendMode(BlendMode bm)
Definition: DisplayObject.h:894
virtual StaticText * getStaticText(std::vector< const SWF::TextRecord * > &, size_t &)
Search for StaticText objects.
Definition: DisplayObject.h:475
void set_ratio(std::uint16_t r)
Definition: DisplayObject.h:362
boost::tribool focusRect() const
Definition: DisplayObject.h:950
SWFMatrix getWorldMatrix(const DisplayObject &d, bool includeRoot=true)
Get concatenated SWFMatrix (all ancestor transforms and our SWFMatrix)
Definition: DisplayObject.h:1131
virtual as_environment & get_environment()
Return a reference to the variable scope of this DisplayObject.
Definition: DisplayObject.h:233
DisplayObject * getFocus()
Get the DisplayObject having focus.
Definition: movie_root.cpp:1084
@ PROP_uQUALITY
Definition: namedStrings.h:111
@ BLENDMODE_NORMAL
Definition: DisplayObject.h:874
DisplayObject(movie_root &mr, as_object *object, DisplayObject *parent)
Construct a DisplayObject.
Definition: DisplayObject.cpp:86
ObjectURI getNextUnnamedInstanceName()
Used to assign a name to unnamed instances.
Definition: DisplayObject.cpp:134
Base class for render handlers.
Definition: Renderer.h:189
as_value getHeight(DisplayObject &o)
Definition: DisplayObject.cpp:356
@ m
Definition: GnashKey.h:159
InvalidatedRanges m_old_invalidated_ranges
Bounds of this DisplayObject instance before first invalidation since last call to clear_invalidated(...
Definition: DisplayObject.h:1029
bool isDynamicMask() const
Definition: DisplayObject.h:404
@ s
Definition: GnashKey.h:165
void clearProperties()
Drop all properties from this object.
Definition: as_object.h:533
void setMatrix(const SWFMatrix &m, bool updateCache=false)
Set local transform SWFMatrix for this DisplayObject.
Definition: DisplayObject.cpp:395
@ PROP_uSOUNDBUFTIME
Definition: namedStrings.h:114
@ PROP_uDROPTARGET
Definition: namedStrings.h:101
void saveOriginalTarget()
Definition: DisplayObject.h:991
@ n
Definition: GnashKey.h:160
@ QUALITY_MEDIUM
Definition: GnashEnums.h:37
double get_rotation() const
return rotation component in radians.
Definition: SWFMatrix.cpp:330
@ PROP_uGLOBAL
Definition: namedStrings.h:104
@ PROP_uVISIBLE
Definition: namedStrings.h:121
const Transform & transform() const
Definition: DisplayObject.h:292
std::string DSOEXPORT getTarget() const
Return full path to this object, in dot notation.
Definition: DisplayObject.cpp:621
DisplayObject * _parent
Definition: DisplayObject.h:1006
Global_as & getGlobal(const as_environment &env)
Definition: as_environment.cpp:651
bool isDynamic() const
Was this DisplayObject dynamically created ?
Definition: DisplayObject.h:592
@ BLENDMODE_MULTIPLY
Definition: DisplayObject.h:876
double twipsToPixels(int i)
Definition: GnashNumeric.h:97
A MovieClip is a container for DisplayObjects.
Definition: MovieClip.h:84
VM & getVM(const as_environment &env)
Definition: as_environment.h:222
bool isNull() const
Returns true, when there is no range.
Definition: snappingrange.h:315
void set_event_handlers(const Events ©from)
Definition: DisplayObject.cpp:413
#define UNUSED(x)
Definition: utility.h:113
~MaskRenderer()
Definition: DisplayObject.cpp:984
static const int noClipDepthValue
Definition: DisplayObject.h:230
virtual void construct(as_object *=nullptr)
Callback invoked whenever a DisplayObject is placed on stage.
Definition: DisplayObject.h:763
double infinite_to_zero(double x)
Definition: GnashNumeric.h:70
@ PROP_uY
Definition: namedStrings.h:126
The base class for interactive objects.
Definition: InteractiveObject.h:45
@ BLENDMODE_LAYER
Definition: DisplayObject.h:875
@ volume
Definition: klash_part.cpp:331
@ PROP_uROOT
Definition: namedStrings.h:112
bool DSOEXPORT allowHandCursor() const
Return true if this DisplayObject allows turning the cursor into an hand shape when it happens to be ...
Definition: DisplayObject.cpp:713
Rectangle class, see swf defined rectangle record.
Definition: SWFRect.h:45
void setIndexedProperty(size_t index, DisplayObject &o, const as_value &val)
Set a property by its numeric index.
Definition: DisplayObject.cpp:853
Parameters/environment for builtin or user-defined functions callable from ActionScript.
Definition: fn_call.h:118
An abstract key visitor.
Definition: PropertyList.h:58
virtual void omit_display()
Definition: DisplayObject.h:750
@ PROP_uNAME
Definition: namedStrings.h:108
@ r
Definition: GnashKey.h:164
SWFCxForm getWorldCxForm(const DisplayObject &d)
Get concatenated color transform of a DisplayObject.
Definition: DisplayObject.h:1141
void getIndexedProperty(size_t index, DisplayObject &o, as_value &val)
Get a property by its numeric index.
Definition: DisplayObject.cpp:870
virtual void visitNonProperties(KeyVisitor &) const
Enumerate any non-proper properties.
Definition: DisplayObject.h:247
bool get_accept_anim_moves() const
Return true if PlaceObjects tag are allowed to move this DisplayObject.
Definition: DisplayObject.h:573
bool setDisplayObjectProperty(DisplayObject &obj, const ObjectURI &uri, const as_value &val)
Set special properties.
Definition: DisplayObject.cpp:961
virtual bool handleFocus()
Set the current focus to this DisplayObject.
Definition: DisplayObject.h:910
@ a
Definition: GnashKey.h:147
int get_depth() const
Definition: DisplayObject.h:268
virtual bool isSelectableTextField() const
Return true if this DisplayObject is a selectable TextField.
Definition: DisplayObject.h:845
void focusRect(boost::tribool focus)
Definition: DisplayObject.h:954
DisplayObject * getDisplayListObject(const ObjectURI &uri)
Search for a named object on the DisplayList.
Definition: MovieClip.cpp:1617
DSOTEXPORT std::string to_string(int version=7) const
Get a std::string representation for this value.
Definition: as_value.cpp:205
virtual MovieClip * to_movie()
Definition: DisplayObject.h:266
as_object * getPathElementSeparator(string_table::key key)
look for '.', 'this', '..', '_parent', '_level0' and '_root'
@ BLENDMODE_ADD
Definition: DisplayObject.h:881
#define IF_VERBOSE_ASCODING_ERRORS(x)
Definition: log.h:397
code
Definition: GnashKey.h:44
void transform(geometry::Point2d &p) const
Transform a given point by our SWFMatrix.
Definition: SWFMatrix.cpp:99
@ PROP_uWIDTH
Definition: namedStrings.h:122
int get_clip_depth() const
Definition: DisplayObject.h:375
@ BLENDMODE_DIFFERENCE
Definition: DisplayObject.h:880
A subset of a shape, a series of edges sharing a single set of styles.
Definition: Geometry.h:167
virtual bool unloadChildren()
Definition: DisplayObject.h:978
int getWorldVolume() const
Get concatenated sound volume for this DisplayObject.
Definition: DisplayObject.cpp:148
void copyMatrix(const DisplayObject &from, DisplayObject &to)
Copy SWFMatrix and caches from given DisplayObjecta.
bool is_number() const
Return true if this value is strictly a number.
Definition: as_value.h:212
An abstract property.
Definition: Property.h:277
VM & getVM()
Return the VM used by this movie_root.
Definition: movie_root.h:356
void set_undefined()
Set to undefined.
Definition: as_value.cpp:519
bool setFocus(DisplayObject *to)
Set the DisplayObject having focus.
Definition: movie_root.cpp:1090
void setCxForm(const SWFCxForm &cx)
Definition: DisplayObject.h:352
virtual bool get_member(const ObjectURI &uri, as_value *val)
Get a property by name if it exists.
Definition: as_object.cpp:378
ObjectURI _name
Name of this DisplayObject (if any)
Definition: DisplayObject.h:1004
std::int32_t height() const
Return height of this rectangle in TWIPS.
Definition: SWFRect.h:109
@ p
Definition: GnashKey.h:162
void setDynamic()
Mark this DisplayObject as dynamically created.
Definition: DisplayObject.h:597
Args::size_type nargs
Number of arguments to this ActionScript function call.
Definition: fn_call.h:178
@ q
Definition: GnashKey.h:163
geometry::Point2d point
Definition: Point2d.h:143
void set_child_invalidated()
Definition: DisplayObject.cpp:238
@ _1
Definition: GnashKey.h:95
virtual void update()
Notify a change in the DisplayObject's appearance.
Definition: DisplayObject.h:667
Static text fields, SWF-defined with read-only text.
Definition: StaticText.h:44
@ BLENDMODE_UNDEFINED
Definition: DisplayObject.h:873
@ PROP_uFOCUSRECT
Definition: namedStrings.h:102
void set_invalidated()
This function marks the DisplayObject as being modified in aspect and keeps track of current invalida...
Definition: DisplayObject.cpp:183
bool childInvalidated() const
Return whether this DisplayObject has and invalidated child or not.
Definition: DisplayObject.h:662
virtual void markOwnResources() const
Called by markReachableResources()
Definition: DisplayObject.h:948
Definition: SWFMatrix.h:54
ActionScript value type.
Definition: as_value.h:95
A top-level, standalone Movie that can be loaded and played.
Definition: Movie.h:47
double get_x_scale() const
return the magnitude scale of our x coord output
Definition: SWFMatrix.cpp:314
bool unloaded() const
Return true if this DisplayObject was unloaded from the stage.
Definition: DisplayObject.h:785
size_t nextUnnamedInstance()
Get a unique number for unnamed instances.
Definition: movie_root.h:390
DisplayObject * getMask() const
Return the DisplayObject masking this instance (if any)
Definition: DisplayObject.h:410
Property * findProperty(const ObjectURI &uri, as_object **owner=nullptr)
Find a property, scanning the inheritance chain.
Definition: as_object.cpp:477
bool getDisplayObjectProperty(DisplayObject &obj, const ObjectURI &uri, as_value &val)
DisplayObject property lookup.
Definition: DisplayObject.cpp:897
void set_clip_depth(int d)
See get_clip_depth()
Definition: DisplayObject.h:378
virtual void killFocus()
Some DisplayObjects require actions on losing focus.
Definition: DisplayObject.h:917
@ BLENDMODE_SCREEN
Definition: DisplayObject.h:877
std::map< event_id, BufferList > Events
Definition: DisplayObject.h:900
const Args::value_type & arg(unsigned int n) const
Access a particular argument.
Definition: fn_call.h:194
std::string getTargetPath() const
Return full path to this object, in slash notation.
Definition: DisplayObject.cpp:567
bool is_undefined() const
Definition: as_value.h:336
key find(const std::string &to_find, bool insert_unfound=true)
Find a key for a string.
Definition: string_table.cpp:40
virtual void setHeight(double height)
Set the height of this DisplayObject, modifying its SWFMatrix.
Definition: DisplayObject.cpp:378
void log_aserror(StringType msg, Args... args)
Definition: log.h:331
@ QUALITY_HIGH
Definition: GnashEnums.h:38
bool hasEventHandler(const event_id &id) const
Return true if an handler for the given event is defined.
Definition: DisplayObject.cpp:462
virtual bool pointInVisibleShape(std::int32_t x, std::int32_t y) const
true if the given point falls in this DisplayObject's visible shape
Definition: DisplayObject.h:515
void clear_invalidated()
Definition: DisplayObject.h:720
DisplayObject * parent() const
Return the parent of this DisplayObject, or NULL if the DisplayObject has no parent.
Definition: DisplayObject.h:252
void add(const RangeType &range)
Add a Range to the set, merging when possible and appropriate.
Definition: snappingrange.h:250
movie_root & getRoot(const as_environment &env)
Definition: as_environment.cpp:645
void setNull()
Resets to NULL range.
Definition: snappingrange.h:298
static const int lowerAccessibleBound
See also http://www.kirupa.com/developer/actionscript/depths2.htm.
Definition: DisplayObject.h:195
Definition: ObjectURI.h:147
bool isMaskLayer() const
Definition: DisplayObject.h:390
virtual ~DisplayObject()
Definition: DisplayObject.h:184
@ BLENDMODE_INVERT
Definition: DisplayObject.h:883
virtual void end_submit_mask()=0
@ PROP_uYSCALE
Definition: namedStrings.h:128
const ObjectURI & get_name() const
Definition: DisplayObject.h:432
as_object * getObject(const DisplayObject *d)
Return the as_object associated with a DisplayObject if it exists.
Definition: DisplayObject.h:1160
BlendMode getBlendMode() const
Definition: DisplayObject.h:890
This class represents the 'Stage' and top-level movie.
Definition: movie_root.h:151
#define DSOTEXPORT
Definition: dsodefs.h:63
int getSWFVersion(const as_environment &env)
Definition: as_environment.cpp:657
@ PROP_uURL
Definition: namedStrings.h:120
virtual void add_invalidated_bounds(InvalidatedRanges &ranges, bool force)
Add the DisplayObject's invalidated bounds to the given ranges list.
Definition: DisplayObject.cpp:226
uri
Definition: test.py:12
static as_value blendMode(const fn_call &fn)
Getter-setter for blendMode.
Definition: DisplayObject.cpp:254
bool point_test(std::int32_t x, std::int32_t y) const
Return true if the given point is inside this SWFRect.
Definition: SWFRect.h:143
string_table & getStringTable(const as_environment &env)
Definition: as_environment.cpp:639
bool boundsInClippingArea(Renderer &renderer) const
Definition: DisplayObject.cpp:784
virtual void begin_submit_mask()=0
@ BLENDMODE_OVERLAY
Definition: DisplayObject.h:886
@ BLENDMODE_DARKEN
Definition: DisplayObject.h:879
static const int removedDepthOffset
Definition: DisplayObject.h:222
virtual const DisplayObject * findDropTarget(std::int32_t x, std::int32_t y, DisplayObject *dragging) const
Point coordinates in global twips.
Definition: DisplayObject.h:646
@ QUALITY_LOW
Definition: GnashEnums.h:36
std::int32_t width() const
Return width of this rectangle in TWIPS.
Definition: SWFRect.h:103
@ PROP_uROTATION
Definition: namedStrings.h:113
#define DSOEXPORT
Definition: dsodefs.h:55
virtual SWFRect getBounds() const =0
virtual bool pointInShape(std::int32_t x, std::int32_t y) const =0
Return true if the given point falls in this DisplayObject's shape.
virtual void display(Renderer &renderer, const Transform &xform)=0
Render the DisplayObject.
@ PROP_uFRAMESLOADED
Definition: namedStrings.h:103
ObjectURI getURI(const VM &vm, const std::string &str, bool lowerCaseHint=false)
Definition: VM.h:290
void set_name(const ObjectURI &uri)
Set DisplayObject name, initializing the original target member.
Definition: DisplayObject.h:428
DisplayObject is the base class for all DisplayList objects.
Definition: DisplayObject.h:169
A code segment.
Definition: action_buffer.h:50
double get_y_scale() const
return the magnitude scale of our y coord output
Definition: SWFMatrix.cpp:322
virtual void destroy()
Mark this DisplayObject as destroyed.
Definition: DisplayObject.cpp:677
MaskRenderer(Renderer &r, const DisplayObject &o)
Definition: DisplayObject.cpp:968
bool unload()
Unload this instance from the stage.
Definition: DisplayObject.cpp:448
Quality getQuality() const
Get the current display quality.
Definition: movie_root.h:490
void add_event_handler(const event_id &id, const action_buffer &code)
Set a built-in function handler for the given event.
Definition: DisplayObject.cpp:428
virtual int getDefinitionVersion() const
DisplayObjects can return the version of the SWF they were parsed from.
Definition: DisplayObject.h:288
int getVolume() const
Get sound volume for this DisplayObject.
Definition: DisplayObject.h:273
void setDisplayObject(DisplayObject *d)
Set the DisplayObject associated with this as_object.
Definition: as_object.h:643
@ PROP_uX
Definition: namedStrings.h:123
@ PROP_uXSCALE
Definition: namedStrings.h:125
double scaleX() const
Definition: DisplayObject.h:923
std::size_t key
Definition: string_table.h:83
virtual void setWidth(double width)
Set the width of this DisplayObject, modifying its SWFMatrix.
Definition: DisplayObject.cpp:340
bool getTextFieldVariables(const ObjectURI &uri, as_value &val)
Get TextField variables.
Definition: MovieClip.cpp:558
std::uint16_t get_ratio() const
Definition: DisplayObject.h:360
virtual Movie * get_root() const
Return the relative root of this DisplayObject.
Definition: DisplayObject.h:531
@ PROP_USEHANDCURSOR
Definition: namedStrings.h:193
bool caseless(const as_object &o)
Return whether property matching is caseless.
Definition: as_object.h:924
@ PROP_uHEIGHT
Definition: namedStrings.h:105
virtual InteractiveObject * topmostMouseEntity(std::int32_t, std::int32_t)
DisplayObjects are not a mouse entity by default.
Definition: DisplayObject.h:637
virtual as_object * pathElement(const ObjectURI &uri)
Definition: DisplayObject.cpp:160
@ o
Definition: GnashKey.h:161
void set_x_scale(double factor)
Set the xscale value of current SWFMatrix.
Definition: DisplayObject.cpp:483
@ PROP_uALPHA
Definition: namedStrings.h:99
@ width
Definition: klash_part.cpp:329
const SWFMatrix & getMatrix(const DisplayObject &o)
Get local transform SWFMatrix for this DisplayObject.
Definition: DisplayObject.h:1119
@ PROP_uYMOUSE
Definition: namedStrings.h:127
@ SWF
Definition: GnashKey.h:331
void log_unimpl(StringType msg, Args... args)
Definition: log.h:289
void extend_invalidated_bounds(const InvalidatedRanges &ranges)
Definition: DisplayObject.cpp:247
A URI for describing as_objects.
Definition: ObjectURI.h:45
bool invalidated() const
Return whether this DisplayObject has been invalidated or not.
Definition: DisplayObject.h:657
MovieClip * getLevel(unsigned int num) const
Return the movie at the given level (0 if unloaded level).
Definition: movie_root.cpp:508
std::int32_t x
Definition: BitmapData_as.cpp:434
bool isReferenceable(const DisplayObject &d)
Returns true if the DisplayObject is referenceable in ActionScript.
Definition: DisplayObject.h:1149
void set_y_scale(double factor)
Set the yscale value of current SWFMatrix.
Definition: DisplayObject.cpp:546
DSOEXPORT void expand_to_transformed_rect(const SWFMatrix &m, const SWFRect &r)
Definition: SWFRect.cpp:74
@ PROP_THIS
Definition: namedStrings.h:96
movie_root & stage() const
Get the movie_root to which this DisplayObject belongs.
Definition: DisplayObject.h:981
void set_rotation(double rot)
Set the rotation value of current SWFMatrix.
Definition: DisplayObject.cpp:515
void setHeight(DisplayObject &o, const as_value &val)
Definition: DisplayObject.cpp:365
bool visible() const
Definition: DisplayObject.h:623
virtual bool bounds_in_clipping_area(const geometry::Range2d< int > &) const
Checks if the given bounds are (partially) in the current drawing clipping area.
Definition: Renderer.h:422
std::ostream & operator<<(std::ostream &o, const URL &u)
Definition: URL.cpp:447
void setReachable() const
Mark this resource as being reachable.
Definition: GC.h:92
@ BLENDMODE_ALPHA
Definition: DisplayObject.h:884
@ BLENDMODE_ERASE
Definition: DisplayObject.h:885