Gnash  0.8.11dev
DisplayObject.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
3 // Free Software Foundation, Inc
4 //
5 // This program is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation; either version 3 of the License, or
8 // (at your option) any later version.
9 //
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
14 //
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software
17 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18 
19 
20 #ifndef GNASH_DISPLAY_OBJECT_H
21 #define GNASH_DISPLAY_OBJECT_H
22 
23 #ifdef HAVE_CONFIG_H
24 #include "gnashconfig.h" // USE_SWFTREE
25 #endif
26 
27 #include <vector>
28 #include <map>
29 #include <string>
30 #include <cassert>
31 #include <cstdint> // For C99 int types
32 #include <boost/noncopyable.hpp>
33 #include <boost/logic/tribool.hpp>
34 
35 #include "ObjectURI.h"
36 #include "GC.h"
37 #include "Transform.h"
38 #include "event_id.h"
39 #include "SWFRect.h"
40 #include "SWFMatrix.h"
41 #include "SWFCxForm.h"
42 #include "dsodefs.h"
43 #include "snappingrange.h"
44 #ifdef USE_SWFTREE
45 # include "tree.hh"
46 #endif
47 
48 
49 //#define DEBUG_SET_INVALIDATED 1
50 
51 // Forward declarations
52 namespace gnash {
53  class MovieClip;
54  class movie_root;
55  class fn_call;
56  class Movie;
57  class ExecutableCode;
58  class action_buffer;
59  class movie_definition;
60  class StaticText;
61  class InteractiveObject;
62  class Renderer;
63  class as_object;
64  class as_value;
65  class as_environment;
66  class DisplayObject;
67  class KeyVisitor;
68  namespace SWF {
69  class TextRecord;
70  }
71 }
72 
73 namespace gnash {
74 
76 //
78 bool isReferenceable(const DisplayObject& d);
79 
81 //
83 //
88 bool setDisplayObjectProperty(DisplayObject& obj, const ObjectURI& uri,
89  const as_value& val);
90 
92 //
95 //
99 bool getDisplayObjectProperty(DisplayObject& obj, const ObjectURI& uri,
100  as_value& val);
101 
103 //
105 //
109 void getIndexedProperty(size_t index, DisplayObject& o, as_value& val);
110 
112 //
114 //
119 void setIndexedProperty(size_t index, DisplayObject& o, const as_value& val);
120 
122 //
125 void copyMatrix(const DisplayObject& from, DisplayObject& to);
126 
128 //
131 //
135 SWFMatrix getWorldMatrix(const DisplayObject& d, bool includeRoot = true);
136 
138 //
141 
143 //
148 //
152 //
155 //
159 //
163 //
168 class DSOTEXPORT DisplayObject : public GcResource, boost::noncopyable
169 {
170 public:
171 
173  //
182  DisplayObject(movie_root& mr, as_object* object, DisplayObject* parent);
183 
184  virtual ~DisplayObject() {}
185 
190  //
192  //
195  static const int lowerAccessibleBound = -16384;
196 
200  static const int upperAccessibleBound = 2130690044;
201 
205  static const int staticDepthOffset = lowerAccessibleBound;
206 
222  static const int removedDepthOffset = -32769;
223 
226  //
230  static const int noClipDepthValue = -1000000;
231 
234  // MovieClip must override this
235  // and any other DisplayObject will have
236  // a parent!
237  assert(_parent != nullptr);
238  return _parent->get_environment();
239  }
240 
242  //
247  virtual void visitNonProperties(KeyVisitor&) const {}
248 
253  {
254  return _parent;
255  }
256 
258  //
261  void set_parent(DisplayObject* parent)
262  {
263  _parent = parent;
264  }
265 
266  virtual MovieClip* to_movie() { return nullptr; }
267 
268  int get_depth() const { return _depth; }
269 
270  void set_depth(int d) { _depth = d; }
271 
273  int getVolume() const { return _volume; }
274 
276  void setVolume(int vol) { _volume = vol; }
277 
279  //
285  int getWorldVolume() const;
286 
288  virtual int getDefinitionVersion() const {
289  return -1;
290  }
291 
292  const Transform& transform() const {
293  return _transform;
294  }
295 
296 
298  //
304  void setMatrix(const SWFMatrix& m, bool updateCache = false);
305 
307  //
313  void set_x_scale(double factor);
314 
316  //
322  void set_y_scale(double factor);
323 
325  //
333  void set_rotation(double rot);
334 
336  //
340  //
342  virtual void setWidth(double width);
343 
345  //
350  virtual void setHeight(double height);
351 
352  void setCxForm(const SWFCxForm& cx)
353  {
354  if (_transform.colorTransform != cx) {
355  set_invalidated();
356  _transform.colorTransform = cx;
357  }
358  }
359 
360  std::uint16_t get_ratio() const { return _ratio; }
361 
362  void set_ratio(std::uint16_t r) {
363  if (r != _ratio) set_invalidated();
364  _ratio = r;
365  }
366 
375  int get_clip_depth() const { return m_clip_depth; }
376 
378  void set_clip_depth(int d)
379  {
380  m_clip_depth = d;
381  }
382 
390  bool isMaskLayer() const
391  {
392  return (m_clip_depth != noClipDepthValue && !_maskee);
393  }
394 
404  bool isDynamicMask() const
405  {
406  return (_maskee);
407  }
408 
411  {
412 #if GNASH_PARANOIA_LEVEL > 1
413  if (_mask) assert(_mask->_maskee == this);
414 #endif
415  return _mask;
416  }
417 
425  void setMask(DisplayObject* mask);
426 
428  void set_name(const ObjectURI& uri) {
429  _name = uri;
430  }
431 
432  const ObjectURI& get_name() const { return _name; }
433 
435  //
442  std::unique_ptr<ExecutableCode> get_event_handler(const event_id& id) const;
443 
445  //
463  void add_event_handler(const event_id& id, const action_buffer& code);
464 
466  //
468  virtual void display(Renderer& renderer, const Transform& xform) = 0;
469 
471  //
475  virtual StaticText* getStaticText(std::vector<const SWF::TextRecord*>&,
476  size_t&) {
477  return nullptr;
478  }
479 
480  virtual SWFRect getBounds() const = 0;
481 
483  //
488  bool pointInBounds(std::int32_t x, std::int32_t y) const
489  {
490  SWFRect bounds = getBounds();
491  const SWFMatrix wm = getWorldMatrix(*this, false);
492  wm.transform(bounds);
493  return bounds.point_test(x, y);
494  }
495 
497  //
501  virtual bool pointInShape(std::int32_t x, std::int32_t y) const = 0;
502 
504  //
515  virtual bool pointInVisibleShape(std::int32_t x, std::int32_t y) const
516  {
517  if (!visible()) return false;
518  if (isDynamicMask() || isMaskLayer()) return false;
519  return pointInShape(x, y);
520  }
521 
523  //
531  virtual Movie* get_root() const {
532  return parent()->get_root();
533  }
534 
536  //
540  virtual MovieClip* getAsRoot();
541 
561  virtual as_object* pathElement(const ObjectURI& uri);
562 
566  //
574  {
575  return ! _scriptTransformed && ! _dynamicallyCreated;
576  }
577 
579  //
592  bool isDynamic() const {
593  return _dynamicallyCreated;
594  }
595 
597  void setDynamic() {
598  _dynamicallyCreated = true;
599  }
600 
604  //
612  {
613  _scriptTransformed = true;
614  }
615 
617  //
620  void set_visible(bool visible);
621 
622  // Return true if this DisplayObject should be rendered
623  bool visible() const { return _visible; }
624 
626  //
632  bool hasEventHandler(const event_id& id) const;
633 
635  //
637  virtual InteractiveObject* topmostMouseEntity(std::int32_t,
638  std::int32_t) {
639  return nullptr;
640  }
641 
644  //
646  virtual const DisplayObject* findDropTarget(std::int32_t x,
647  std::int32_t y, DisplayObject* dragging) const
648  {
649  if (this != dragging && visible() && pointInVisibleShape(x, y)) {
650  return this;
651  }
652 
653  return nullptr;
654  }
655 
657  bool invalidated() const {
658  return _invalidated;
659  }
660 
662  bool childInvalidated() const {
663  return _child_invalidated;
664  }
665 
667  virtual void update() {
668  set_invalidated();
669  }
670 
675  //
692  void set_invalidated();
693  void set_invalidated(const char* debug_file, int debug_line);
694 
695 
699  void extend_invalidated_bounds(const InvalidatedRanges& ranges);
700 
701 
706  void set_child_invalidated();
707 
721  _invalidated = false;
722  _child_invalidated = false;
723  m_old_invalidated_ranges.setNull();
724  }
725 
728  //
745  virtual void add_invalidated_bounds(InvalidatedRanges& ranges, bool force);
746 
750  virtual void omit_display() { clear_invalidated(); };
751 
753  //
763  virtual void construct(as_object* /*init*/ = nullptr)
764  {
765  saveOriginalTarget();
766  }
767 
769  //
779  bool unload();
780 
782  virtual void getLoadedMovie(Movie* newMovie);
783 
785  bool unloaded() const {
786  return _unloaded;
787  }
788 
790  //
801  virtual void destroy();
802 
804  //
807  bool isDestroyed() const { return _destroyed; }
808 
815  bool boundsInClippingArea(Renderer& renderer) const;
816 
818  //
821  std::string getTargetPath() const;
822 
825  //
829  const std::string& getOrigTarget() const
830  {
831  return _origTarget;
832  }
833 
835  //
838  std::string DSOEXPORT getTarget() const;
839 
841  //
845  virtual bool isSelectableTextField() const { return false; }
846 
851  bool DSOEXPORT allowHandCursor() const;
852 
853 #ifdef USE_SWFTREE
854  typedef tree<std::pair<std::string, std::string> > InfoTree;
856  //
864  virtual InfoTree::iterator getMovieInfo(InfoTree& tr,
865  InfoTree::iterator it);
866 #endif
867 
869  ObjectURI getNextUnnamedInstanceName();
870 
872  {
873  BLENDMODE_UNDEFINED = 0,
874  BLENDMODE_NORMAL = 1,
887  BLENDMODE_HARDLIGHT = 14
888  };
889 
891  return _blendMode;
892  }
893 
895  _blendMode = bm;
896  }
897 
898  // action_buffer is externally owned
899  typedef std::vector<const action_buffer*> BufferList;
900  typedef std::map<event_id, BufferList> Events;
901 
903  //
906  //
910  virtual bool handleFocus() {
911  return false;
912  }
913 
915  //
917  virtual void killFocus() {}
918 
919  double rotation() const {
920  return _rotation;
921  }
922 
923  double scaleX() const {
924  return _xscale;
925  }
926 
927  double scaleY() const {
928  return _yscale;
929  }
930 
931  as_object* object() const {
932  return _object;
933  }
934 
936  static as_value blendMode(const fn_call& fn);
937 
939  //
943  virtual void markReachableResources() const;
944 
946  //
948  virtual void markOwnResources() const {}
949 
950  boost::tribool focusRect() const {
951  return _focusRect;
952  }
953 
954  void focusRect(boost::tribool focus) {
955  _focusRect = focus;
956  }
957 
958 protected:
959 
961  //
964  //
969  {
970  public:
972  ~MaskRenderer();
973  private:
974  Renderer& _renderer;
975  DisplayObject* _mask;
976  };
977 
978  virtual bool unloadChildren() { return false; }
979 
981  movie_root& stage() const {
982  return _stage;
983  }
984 
992  {
993  _origTarget=getTarget();
994  }
995 
996  const Events& get_event_handlers() const
997  {
998  return _event_handlers;
999  }
1000 
1001  void set_event_handlers(const Events& copyfrom);
1002 
1005 
1007 
1009  //
1013 
1030 
1031 private:
1032 
1034  void setMaskee(DisplayObject* maskee);
1035 
1037  as_object* _object;
1038 
1040  movie_root& _stage;
1041 
1042  Transform _transform;
1043 
1044  Events _event_handlers;
1045 
1049  double _xscale, _yscale, _rotation;
1050 
1052  std::int32_t _depth;
1053 
1054  boost::tribool _focusRect;
1055 
1057  //
1064  int _volume;
1065 
1066  std::uint16_t _ratio;
1067  int m_clip_depth;
1068 
1070  DisplayObject* _mask;
1071 
1073  DisplayObject* _maskee;
1074 
1076  std::string _origTarget;
1077 
1078  BlendMode _blendMode;
1079 
1080  bool _visible;
1081 
1083  //
1089  bool _scriptTransformed;
1090 
1091  bool _dynamicallyCreated;
1092 
1094  bool _unloaded;
1095 
1097  bool _destroyed;
1098 
1102  //
1107  bool _invalidated;
1108 
1112  bool _child_invalidated;
1113 
1114 
1115 };
1116 
1118 inline const SWFMatrix&
1120 {
1121  return o.transform().matrix;
1122 }
1123 
1124 inline const SWFCxForm&
1126 {
1127  return o.transform().colorTransform;
1128 }
1129 
1130 inline SWFMatrix
1131 getWorldMatrix(const DisplayObject& d, bool includeRoot)
1132 {
1133  SWFMatrix m = d.parent() ?
1134  getWorldMatrix(*d.parent(), includeRoot) : SWFMatrix();
1135 
1136  if (d.parent() || includeRoot) m.concatenate(getMatrix(d));
1137  return m;
1138 }
1139 
1140 inline SWFCxForm
1142 {
1143  SWFCxForm cx = d.parent() ? getWorldCxForm(*d.parent()) : SWFCxForm();
1144  cx.concatenate(getCxForm(d));
1145  return cx;
1146 }
1147 
1148 inline bool
1150 {
1151  return d.object();
1152 }
1153 
1155 //
1159 inline as_object*
1161 {
1162  return d ? d->object() : nullptr;
1163 }
1164 
1166 std::ostream&
1167 operator<<(std::ostream& o, DisplayObject::BlendMode bm);
1168 
1169 } // end namespace gnash
1170 
1171 
1172 #ifdef DEBUG_SET_INVALIDATED
1173 #define set_invalidated() set_invalidated(__FILE__, __LINE__)
1174 #endif
1175 
1176 
1177 #endif // GNASH_CHARACTER_H
1178 
1179 
1180 // Local Variables:
1181 // mode: C++
1182 // indent-tabs-mode: t
1183 // End:
gnash::geometry::SnappingRanges2d< std::int32_t >
gnash::isInf
bool isInf(const T &num)
Definition: as_value.h:56
gnash::isLevelTarget
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
gnash::NSV::PROP_uXMOUSE
@ PROP_uXMOUSE
Definition: namedStrings.h:124
path
VGPath path
Definition: testr_gtk.cpp:84
gnash::DisplayObject::getOrigTarget
const std::string & getOrigTarget() const
Definition: DisplayObject.h:829
gnash::DisplayObject::scaleY
double scaleY() const
Definition: DisplayObject.h:927
gnash::DisplayObject::getAsRoot
virtual MovieClip * getAsRoot()
Return the _root ActionScript property of this DisplayObject.
Definition: DisplayObject.cpp:847
gnash::ObjectURI::toString
const std::string & toString(string_table &st) const
Definition: ObjectURI.h:80
gnash::toNumber
double toNumber(const as_value &v, const VM &vm)
Convert an as_value to a double.
Definition: VM.cpp:451
gnash::GcResource
Collectable resource.
Definition: GC.h:75
gnash::DisplayObject::set_depth
void set_depth(int d)
Definition: DisplayObject.h:270
gnash::NSV::PROP_uHIGHQUALITY
@ PROP_uHIGHQUALITY
Definition: namedStrings.h:106
gnash::DisplayObject::set_parent
void set_parent(DisplayObject *parent)
Set the parent of this DisplayObject.
Definition: DisplayObject.h:261
Movie.h
movie_root.h
gnash::DisplayObject::BufferList
std::vector< const action_buffer * > BufferList
Definition: DisplayObject.h:899
name
std::string name
Definition: LocalConnection_as.cpp:149
gnash::isNaN
bool isNaN(const T &num)
Definition: GnashNumeric.h:62
gnash::visible
bool visible(const Property &prop, int version)
Is this member supposed to be visible by a VM of given version ?
Definition: Property.h:423
ExecutableCode.h
gnash::toBool
bool toBool(const as_value &v, const VM &vm)
Convert an as_value to boolean type.
Definition: VM.cpp:445
height
@ height
Definition: klash_part.cpp:329
gnash::key::d
@ d
Definition: GnashKey.h:150
gnash::DisplayObject::BlendMode
BlendMode
Definition: DisplayObject.h:872
gnash::DisplayObject::get_event_handlers
const Events & get_event_handlers() const
Definition: DisplayObject.h:996
gnash::DisplayObject::upperAccessibleBound
static const int upperAccessibleBound
Definition: DisplayObject.h:200
_object
as_object * _object
Definition: Array_as.cpp:680
gnash::as_object
The base class for all ActionScript objects.
Definition: as_object.h:162
gnash::DisplayObject::get_event_handler
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
gnash::DisplayObject::MaskRenderer
Render a dynamic mask for a specified DisplayObject.
Definition: DisplayObject.h:969
gnash::QUALITY_BEST
@ QUALITY_BEST
Definition: GnashEnums.h:39
gnash::movie_root::mousePosition
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
ObjectURI.h
gnash::DisplayObject::BLENDMODE_HARDLIGHT
@ BLENDMODE_HARDLIGHT
Definition: DisplayObject.h:887
gnash::DisplayObject::rotation
double rotation() const
Definition: DisplayObject.h:919
gnash::DisplayObject::transformedByScript
void transformedByScript()
Call this function when the sprite has been transformed due to ActionScript code.
Definition: DisplayObject.h:611
gnash::Transform::matrix
SWFMatrix matrix
Definition: Transform.h:59
gnash::NSV::PROP_uTARGET
@ PROP_uTARGET
Definition: namedStrings.h:115
gnash::getName
string_table::key getName(const ObjectURI &o)
Get the name element of an ObjectURI.
Definition: ObjectURI.h:116
gnash::arraySize
size_t arraySize(T(&)[N])
Get the size of an array without passing a pointer by mistake.
Definition: GnashAlgorithm.h:58
gnash::string_table
A general use string table.
Definition: string_table.h:42
gnash::DisplayObject::staticDepthOffset
static const int staticDepthOffset
Definition: DisplayObject.h:205
gnash::as_value::is_null
bool is_null() const
Definition: as_value.h:340
dsodefs.h
gnash::VM::getStringTable
string_table & getStringTable() const
Get a reference to the string table used by the VM.
Definition: VM.h:117
gnash::SWFRect::getRange
geometry::Range2d< std::int32_t > getRange() const
Construct and return a Range2d object.
Definition: SWFRect.h:222
gnash::NSV::PROP_uTOTALFRAMES
@ PROP_uTOTALFRAMES
Definition: namedStrings.h:116
gnash::log_debug
void log_debug(StringType msg, Args... args)
Definition: log.h:301
y
std::int32_t y
Definition: BitmapData_as.cpp:435
gnash::key::i
@ i
Definition: GnashKey.h:155
gnash::DisplayObject::pointInBounds
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
gnash::DisplayObject::BLENDMODE_LIGHTEN
@ BLENDMODE_LIGHTEN
Definition: DisplayObject.h:878
LOG_ONCE
#define LOG_ONCE(x)
Definition: log.h:49
gnash::DisplayObject::setVolume
void setVolume(int vol)
Set sound volume for this DisplayObject.
Definition: DisplayObject.h:276
gnash::DisplayObject::BLENDMODE_SUBTRACT
@ BLENDMODE_SUBTRACT
Definition: DisplayObject.h:882
gnash::typeName
std::string typeName(const T &inst)
Definition: utility.h:93
gnash::NSV::PROP_uCURRENTFRAME
@ PROP_uCURRENTFRAME
Definition: namedStrings.h:100
gnash::DisplayObject::object
as_object * object() const
Definition: DisplayObject.h:931
gnash::DisplayObject::set_visible
void set_visible(bool visible)
Set whether this DisplayObject should be rendered.
Definition: DisplayObject.cpp:323
gnash::pixelsToTwips
std::int32_t pixelsToTwips(double a)
Definition: GnashNumeric.h:144
_
#define _(String)
Definition: log.h:44
Renderer.h
gnash::as_environment
Provides information about timeline context.
Definition: as_environment.h:51
gnash::DisplayObject::setMask
void setMask(DisplayObject *mask)
Definition: DisplayObject.cpp:726
gnash::DisplayObject::isDestroyed
bool isDestroyed() const
Return true if this DisplayObject was destroyed.
Definition: DisplayObject.h:807
gnash::event_id
A class to identify 'static' SWF events (system events).
Definition: event_id.h:53
gnash::NSV::PROP_uPARENT
@ PROP_uPARENT
Definition: namedStrings.h:110
gnash::VM
The AVM1 virtual machine.
Definition: VM.h:72
gnash::getCxForm
const SWFCxForm & getCxForm(const DisplayObject &o)
Definition: DisplayObject.h:1125
gnash::EventCode
Event code.
Definition: ExecutableCode.h:85
gnash::DisplayObject::markReachableResources
virtual void markReachableResources() const
Mark all reachable resources.
Definition: DisplayObject.cpp:695
gnash::DisplayObject::getLoadedMovie
virtual void getLoadedMovie(Movie *newMovie)
Accept a loaded Movie.
Definition: DisplayObject.cpp:121
Transform.h
gnash
Anonymous namespace for callbacks, local functions, event handlers etc.
Definition: dbus_ext.cpp:41
gnash::DisplayObject::setBlendMode
void setBlendMode(BlendMode bm)
Definition: DisplayObject.h:894
gnash::DisplayObject::getStaticText
virtual StaticText * getStaticText(std::vector< const SWF::TextRecord * > &, size_t &)
Search for StaticText objects.
Definition: DisplayObject.h:475
gnash::DisplayObject::set_ratio
void set_ratio(std::uint16_t r)
Definition: DisplayObject.h:362
gnash::DisplayObject::focusRect
boost::tribool focusRect() const
Definition: DisplayObject.h:950
gnash::getWorldMatrix
SWFMatrix getWorldMatrix(const DisplayObject &d, bool includeRoot=true)
Get concatenated SWFMatrix (all ancestor transforms and our SWFMatrix)
Definition: DisplayObject.h:1131
gnash::DisplayObject::get_environment
virtual as_environment & get_environment()
Return a reference to the variable scope of this DisplayObject.
Definition: DisplayObject.h:233
gnash::movie_root::getFocus
DisplayObject * getFocus()
Get the DisplayObject having focus.
Definition: movie_root.cpp:1084
gnash::NSV::PROP_uQUALITY
@ PROP_uQUALITY
Definition: namedStrings.h:111
gnash::DisplayObject::BLENDMODE_NORMAL
@ BLENDMODE_NORMAL
Definition: DisplayObject.h:874
gnash::DisplayObject::DisplayObject
DisplayObject(movie_root &mr, as_object *object, DisplayObject *parent)
Construct a DisplayObject.
Definition: DisplayObject.cpp:86
gnash::DisplayObject::getNextUnnamedInstanceName
ObjectURI getNextUnnamedInstanceName()
Used to assign a name to unnamed instances.
Definition: DisplayObject.cpp:134
gnash::Renderer
Base class for render handlers.
Definition: Renderer.h:189
gnash::getHeight
as_value getHeight(DisplayObject &o)
Definition: DisplayObject.cpp:356
boost
Definition: gui.h:74
gnash::key::m
@ m
Definition: GnashKey.h:159
gnash::DisplayObject::m_old_invalidated_ranges
InvalidatedRanges m_old_invalidated_ranges
Bounds of this DisplayObject instance before first invalidation since last call to clear_invalidated(...
Definition: DisplayObject.h:1029
gnash::DisplayObject::isDynamicMask
bool isDynamicMask() const
Definition: DisplayObject.h:404
gnash::key::s
@ s
Definition: GnashKey.h:165
gnash::as_object::clearProperties
void clearProperties()
Drop all properties from this object.
Definition: as_object.h:533
gnash::DisplayObject::setMatrix
void setMatrix(const SWFMatrix &m, bool updateCache=false)
Set local transform SWFMatrix for this DisplayObject.
Definition: DisplayObject.cpp:395
gnash::NSV::PROP_uSOUNDBUFTIME
@ PROP_uSOUNDBUFTIME
Definition: namedStrings.h:114
gnash::NSV::PROP_uDROPTARGET
@ PROP_uDROPTARGET
Definition: namedStrings.h:101
gnash::DisplayObject::saveOriginalTarget
void saveOriginalTarget()
Definition: DisplayObject.h:991
gnash::key::n
@ n
Definition: GnashKey.h:160
gnash::QUALITY_MEDIUM
@ QUALITY_MEDIUM
Definition: GnashEnums.h:37
Global_as.h
gnash::SWFMatrix::get_rotation
double get_rotation() const
return rotation component in radians.
Definition: SWFMatrix.cpp:330
gnash::SWFCxForm
Color transformation record.
Definition: SWFCxForm.h:35
gnash::NSV::PROP_uGLOBAL
@ PROP_uGLOBAL
Definition: namedStrings.h:104
gnash::NSV::PROP_uVISIBLE
@ PROP_uVISIBLE
Definition: namedStrings.h:121
gnash::DisplayObject::transform
const Transform & transform() const
Definition: DisplayObject.h:292
gnash::DisplayObject::getTarget
std::string DSOEXPORT getTarget() const
Return full path to this object, in dot notation.
Definition: DisplayObject.cpp:621
gnash::DisplayObject::_parent
DisplayObject * _parent
Definition: DisplayObject.h:1006
SWFRect.h
gnash::getGlobal
Global_as & getGlobal(const as_environment &env)
Definition: as_environment.cpp:651
gnash::DisplayObject::isDynamic
bool isDynamic() const
Was this DisplayObject dynamically created ?
Definition: DisplayObject.h:592
gnash::DisplayObject::BLENDMODE_MULTIPLY
@ BLENDMODE_MULTIPLY
Definition: DisplayObject.h:876
gnash::twipsToPixels
double twipsToPixels(int i)
Definition: GnashNumeric.h:97
gnash::MovieClip
A MovieClip is a container for DisplayObjects.
Definition: MovieClip.h:84
gnash::getVM
VM & getVM(const as_environment &env)
Definition: as_environment.h:222
gnash::geometry::SnappingRanges2d::isNull
bool isNull() const
Returns true, when there is no range.
Definition: snappingrange.h:315
gnash::DisplayObject::set_event_handlers
void set_event_handlers(const Events &copyfrom)
Definition: DisplayObject.cpp:413
UNUSED
#define UNUSED(x)
Definition: utility.h:113
GnashEnums.h
gnash::DisplayObject::MaskRenderer::~MaskRenderer
~MaskRenderer()
Definition: DisplayObject.cpp:984
gnash::DisplayObject::noClipDepthValue
static const int noClipDepthValue
Definition: DisplayObject.h:230
SWFCxForm.h
gnash::DisplayObject::construct
virtual void construct(as_object *=nullptr)
Callback invoked whenever a DisplayObject is placed on stage.
Definition: DisplayObject.h:763
event_id.h
gnash::infinite_to_zero
double infinite_to_zero(double x)
Definition: GnashNumeric.h:70
gnash::NSV::PROP_uY
@ PROP_uY
Definition: namedStrings.h:126
gnash::InteractiveObject
The base class for interactive objects.
Definition: InteractiveObject.h:45
gnash::DisplayObject::BLENDMODE_LAYER
@ BLENDMODE_LAYER
Definition: DisplayObject.h:875
volume
@ volume
Definition: klash_part.cpp:331
gnash::NSV::PROP_uROOT
@ PROP_uROOT
Definition: namedStrings.h:112
gnash::DisplayObject::allowHandCursor
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
gnash::SWFRect
Rectangle class, see swf defined rectangle record.
Definition: SWFRect.h:45
gnash::SWFCxForm::concatenate
void concatenate(const SWFCxForm &c)
Concatenate SWFCxForm c onto ours.
Definition: SWFCxForm.cpp:33
gnash::setIndexedProperty
void setIndexedProperty(size_t index, DisplayObject &o, const as_value &val)
Set a property by its numeric index.
Definition: DisplayObject.cpp:853
gnash::fn_call
Parameters/environment for builtin or user-defined functions callable from ActionScript.
Definition: fn_call.h:118
gnash::KeyVisitor
An abstract key visitor.
Definition: PropertyList.h:58
gnash::DisplayObject::omit_display
virtual void omit_display()
Definition: DisplayObject.h:750
gnash::NSV::PROP_uNAME
@ PROP_uNAME
Definition: namedStrings.h:108
gnash::key::r
@ r
Definition: GnashKey.h:164
gnash::getWorldCxForm
SWFCxForm getWorldCxForm(const DisplayObject &d)
Get concatenated color transform of a DisplayObject.
Definition: DisplayObject.h:1141
gnash::getIndexedProperty
void getIndexedProperty(size_t index, DisplayObject &o, as_value &val)
Get a property by its numeric index.
Definition: DisplayObject.cpp:870
gnash::DisplayObject::visitNonProperties
virtual void visitNonProperties(KeyVisitor &) const
Enumerate any non-proper properties.
Definition: DisplayObject.h:247
gnash::DisplayObject::get_accept_anim_moves
bool get_accept_anim_moves() const
Return true if PlaceObjects tag are allowed to move this DisplayObject.
Definition: DisplayObject.h:573
gnash::setDisplayObjectProperty
bool setDisplayObjectProperty(DisplayObject &obj, const ObjectURI &uri, const as_value &val)
Set special properties.
Definition: DisplayObject.cpp:961
gnash::DisplayObject::handleFocus
virtual bool handleFocus()
Set the current focus to this DisplayObject.
Definition: DisplayObject.h:910
gnash::key::a
@ a
Definition: GnashKey.h:147
gnash::DisplayObject::get_depth
int get_depth() const
Definition: DisplayObject.h:268
gnash::DisplayObject::isSelectableTextField
virtual bool isSelectableTextField() const
Return true if this DisplayObject is a selectable TextField.
Definition: DisplayObject.h:845
gnash::DisplayObject::focusRect
void focusRect(boost::tribool focus)
Definition: DisplayObject.h:954
gnash::MovieClip::getDisplayListObject
DisplayObject * getDisplayListObject(const ObjectURI &uri)
Search for a named object on the DisplayList.
Definition: MovieClip.cpp:1617
gnash::as_value::to_string
DSOTEXPORT std::string to_string(int version=7) const
Get a std::string representation for this value.
Definition: as_value.cpp:205
GnashAlgorithm.h
gnash::DisplayObject::to_movie
virtual MovieClip * to_movie()
Definition: DisplayObject.h:266
gnash::DisplayObject::getPathElementSeparator
as_object * getPathElementSeparator(string_table::key key)
look for '.', 'this', '..', '_parent', '_level0' and '_root'
gnash::DisplayObject::BLENDMODE_ADD
@ BLENDMODE_ADD
Definition: DisplayObject.h:881
IF_VERBOSE_ASCODING_ERRORS
#define IF_VERBOSE_ASCODING_ERRORS(x)
Definition: log.h:397
gnash::key::code
code
Definition: GnashKey.h:44
gnash::SWFMatrix::transform
void transform(geometry::Point2d &p) const
Transform a given point by our SWFMatrix.
Definition: SWFMatrix.cpp:99
gnash::NSV::PROP_uWIDTH
@ PROP_uWIDTH
Definition: namedStrings.h:122
gnash::DisplayObject::get_clip_depth
int get_clip_depth() const
Definition: DisplayObject.h:375
gnash::DisplayObject::BLENDMODE_DIFFERENCE
@ BLENDMODE_DIFFERENCE
Definition: DisplayObject.h:880
gnash::Path
A subset of a shape, a series of edges sharing a single set of styles.
Definition: Geometry.h:167
gnash::DisplayObject::unloadChildren
virtual bool unloadChildren()
Definition: DisplayObject.h:978
gnash::DisplayObject::getWorldVolume
int getWorldVolume() const
Get concatenated sound volume for this DisplayObject.
Definition: DisplayObject.cpp:148
gnash::copyMatrix
void copyMatrix(const DisplayObject &from, DisplayObject &to)
Copy SWFMatrix and caches from given DisplayObjecta.
gnash::as_value::is_number
bool is_number() const
Return true if this value is strictly a number.
Definition: as_value.h:212
gnash::Property
An abstract property.
Definition: Property.h:277
gnash::movie_root::getVM
VM & getVM()
Return the VM used by this movie_root.
Definition: movie_root.h:356
gnash::as_value::set_undefined
void set_undefined()
Set to undefined.
Definition: as_value.cpp:519
gnash::movie_root::setFocus
bool setFocus(DisplayObject *to)
Set the DisplayObject having focus.
Definition: movie_root.cpp:1090
gnash::DisplayObject::setCxForm
void setCxForm(const SWFCxForm &cx)
Definition: DisplayObject.h:352
gnash::as_object::get_member
virtual bool get_member(const ObjectURI &uri, as_value *val)
Get a property by name if it exists.
Definition: as_object.cpp:378
gnash::DisplayObject::_name
ObjectURI _name
Name of this DisplayObject (if any)
Definition: DisplayObject.h:1004
MovieClip.h
gnash::SWFRect::height
std::int32_t height() const
Return height of this rectangle in TWIPS.
Definition: SWFRect.h:109
gnash::key::p
@ p
Definition: GnashKey.h:162
gnash::DisplayObject::setDynamic
void setDynamic()
Mark this DisplayObject as dynamically created.
Definition: DisplayObject.h:597
gnash::fn_call::nargs
Args::size_type nargs
Number of arguments to this ActionScript function call.
Definition: fn_call.h:178
gnash::key::q
@ q
Definition: GnashKey.h:163
gnash::point
geometry::Point2d point
Definition: Point2d.h:143
gnash::DisplayObject::set_child_invalidated
void set_child_invalidated()
Definition: DisplayObject.cpp:238
gnash::key::_1
@ _1
Definition: GnashKey.h:95
gnash::DisplayObject::update
virtual void update()
Notify a change in the DisplayObject's appearance.
Definition: DisplayObject.h:667
gnash::StaticText
Static text fields, SWF-defined with read-only text.
Definition: StaticText.h:44
gnash::DisplayObject::BLENDMODE_UNDEFINED
@ BLENDMODE_UNDEFINED
Definition: DisplayObject.h:873
GnashNumeric.h
gnash::NSV::PROP_uFOCUSRECT
@ PROP_uFOCUSRECT
Definition: namedStrings.h:102
gnash::DisplayObject::set_invalidated
void set_invalidated()
This function marks the DisplayObject as being modified in aspect and keeps track of current invalida...
Definition: DisplayObject.cpp:183
gnash::DisplayObject::childInvalidated
bool childInvalidated() const
Return whether this DisplayObject has and invalidated child or not.
Definition: DisplayObject.h:662
gnash::DisplayObject::markOwnResources
virtual void markOwnResources() const
Called by markReachableResources()
Definition: DisplayObject.h:948
gnash::SWFMatrix
Definition: SWFMatrix.h:54
gnash::as_value
ActionScript value type.
Definition: as_value.h:95
Object.h
gnash::Movie
A top-level, standalone Movie that can be loaded and played.
Definition: Movie.h:47
gnash::SWFMatrix::get_x_scale
double get_x_scale() const
return the magnitude scale of our x coord output
Definition: SWFMatrix.cpp:314
gnash::DisplayObject::unloaded
bool unloaded() const
Return true if this DisplayObject was unloaded from the stage.
Definition: DisplayObject.h:785
gnash::movie_root::nextUnnamedInstance
size_t nextUnnamedInstance()
Get a unique number for unnamed instances.
Definition: movie_root.h:390
VM.h
gnash::DisplayObject::getMask
DisplayObject * getMask() const
Return the DisplayObject masking this instance (if any)
Definition: DisplayObject.h:410
gnash::as_object::findProperty
Property * findProperty(const ObjectURI &uri, as_object **owner=nullptr)
Find a property, scanning the inheritance chain.
Definition: as_object.cpp:477
gnash::getDisplayObjectProperty
bool getDisplayObjectProperty(DisplayObject &obj, const ObjectURI &uri, as_value &val)
DisplayObject property lookup.
Definition: DisplayObject.cpp:897
gnash::DisplayObject::set_clip_depth
void set_clip_depth(int d)
See get_clip_depth()
Definition: DisplayObject.h:378
gnash::DisplayObject::killFocus
virtual void killFocus()
Some DisplayObjects require actions on losing focus.
Definition: DisplayObject.h:917
gnash::DisplayObject::BLENDMODE_SCREEN
@ BLENDMODE_SCREEN
Definition: DisplayObject.h:877
gnash::DisplayObject::Events
std::map< event_id, BufferList > Events
Definition: DisplayObject.h:900
gnash::fn_call::arg
const Args::value_type & arg(unsigned int n) const
Access a particular argument.
Definition: fn_call.h:194
gnash::DisplayObject::getTargetPath
std::string getTargetPath() const
Return full path to this object, in slash notation.
Definition: DisplayObject.cpp:567
gnash::as_value::is_undefined
bool is_undefined() const
Definition: as_value.h:336
gnash::string_table::find
key find(const std::string &to_find, bool insert_unfound=true)
Find a key for a string.
Definition: string_table.cpp:40
gnash::DisplayObject::setHeight
virtual void setHeight(double height)
Set the height of this DisplayObject, modifying its SWFMatrix.
Definition: DisplayObject.cpp:378
gnash::log_aserror
void log_aserror(StringType msg, Args... args)
Definition: log.h:331
DisplayObject.h
gnash::QUALITY_HIGH
@ QUALITY_HIGH
Definition: GnashEnums.h:38
gnash::DisplayObject::hasEventHandler
bool hasEventHandler(const event_id &id) const
Return true if an handler for the given event is defined.
Definition: DisplayObject.cpp:462
gnash::DisplayObject::pointInVisibleShape
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
gnash::DisplayObject::clear_invalidated
void clear_invalidated()
Definition: DisplayObject.h:720
gnash::DisplayObject::parent
DisplayObject * parent() const
Return the parent of this DisplayObject, or NULL if the DisplayObject has no parent.
Definition: DisplayObject.h:252
gnash::geometry::SnappingRanges2d::add
void add(const RangeType &range)
Add a Range to the set, merging when possible and appropriate.
Definition: snappingrange.h:250
gnash::getRoot
movie_root & getRoot(const as_environment &env)
Definition: as_environment.cpp:645
gnash::geometry::SnappingRanges2d::setNull
void setNull()
Resets to NULL range.
Definition: snappingrange.h:298
gnash::DisplayObject::lowerAccessibleBound
static const int lowerAccessibleBound
See also http://www.kirupa.com/developer/actionscript/depths2.htm.
Definition: DisplayObject.h:195
fn_call.h
gnash::ObjectURI::CaseEquals
Definition: ObjectURI.h:147
gnash::DisplayObject::isMaskLayer
bool isMaskLayer() const
Definition: DisplayObject.h:390
gnash::DisplayObject::~DisplayObject
virtual ~DisplayObject()
Definition: DisplayObject.h:184
gnash::DisplayObject::BLENDMODE_INVERT
@ BLENDMODE_INVERT
Definition: DisplayObject.h:883
gnash::Renderer::end_submit_mask
virtual void end_submit_mask()=0
gnash::NSV::PROP_uYSCALE
@ PROP_uYSCALE
Definition: namedStrings.h:128
gnash::DisplayObject::get_name
const ObjectURI & get_name() const
Definition: DisplayObject.h:432
gnash::getObject
as_object * getObject(const DisplayObject *d)
Return the as_object associated with a DisplayObject if it exists.
Definition: DisplayObject.h:1160
gnashconfig.h
gnash::DisplayObject::getBlendMode
BlendMode getBlendMode() const
Definition: DisplayObject.h:890
gnash::movie_root
This class represents the 'Stage' and top-level movie.
Definition: movie_root.h:151
DSOTEXPORT
#define DSOTEXPORT
Definition: dsodefs.h:63
namedStrings.h
gnash::getSWFVersion
int getSWFVersion(const as_environment &env)
Definition: as_environment.cpp:657
gnash::NSV::PROP_uURL
@ PROP_uURL
Definition: namedStrings.h:120
gnash::DisplayObject::add_invalidated_bounds
virtual void add_invalidated_bounds(InvalidatedRanges &ranges, bool force)
Add the DisplayObject's invalidated bounds to the given ranges list.
Definition: DisplayObject.cpp:226
test.uri
uri
Definition: test.py:12
gnash::DisplayObject::blendMode
static as_value blendMode(const fn_call &fn)
Getter-setter for blendMode.
Definition: DisplayObject.cpp:254
gnash::SWFRect::point_test
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
gnash::getStringTable
string_table & getStringTable(const as_environment &env)
Definition: as_environment.cpp:639
gnash::DisplayObject::boundsInClippingArea
bool boundsInClippingArea(Renderer &renderer) const
Definition: DisplayObject.cpp:784
gnash::Renderer::begin_submit_mask
virtual void begin_submit_mask()=0
gnash::DisplayObject::BLENDMODE_OVERLAY
@ BLENDMODE_OVERLAY
Definition: DisplayObject.h:886
gnash::DisplayObject::BLENDMODE_DARKEN
@ BLENDMODE_DARKEN
Definition: DisplayObject.h:879
gnash::DisplayObject::removedDepthOffset
static const int removedDepthOffset
Definition: DisplayObject.h:222
gnash::DisplayObject::findDropTarget
virtual const DisplayObject * findDropTarget(std::int32_t x, std::int32_t y, DisplayObject *dragging) const
Point coordinates in global twips.
Definition: DisplayObject.h:646
gnash::QUALITY_LOW
@ QUALITY_LOW
Definition: GnashEnums.h:36
gnash::SWFRect::width
std::int32_t width() const
Return width of this rectangle in TWIPS.
Definition: SWFRect.h:103
gnash::NSV::PROP_uROTATION
@ PROP_uROTATION
Definition: namedStrings.h:113
DSOEXPORT
#define DSOEXPORT
Definition: dsodefs.h:55
gnash::DisplayObject::getBounds
virtual SWFRect getBounds() const =0
gnash::DisplayObject::pointInShape
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.
gnash::DisplayObject::display
virtual void display(Renderer &renderer, const Transform &xform)=0
Render the DisplayObject.
gnash::NSV::PROP_uFRAMESLOADED
@ PROP_uFRAMESLOADED
Definition: namedStrings.h:103
gnash::getURI
ObjectURI getURI(const VM &vm, const std::string &str, bool lowerCaseHint=false)
Definition: VM.h:290
gnash::DisplayObject::set_name
void set_name(const ObjectURI &uri)
Set DisplayObject name, initializing the original target member.
Definition: DisplayObject.h:428
GC.h
gnash::DisplayObject
DisplayObject is the base class for all DisplayList objects.
Definition: DisplayObject.h:169
gnash::action_buffer
A code segment.
Definition: action_buffer.h:50
gnash::SWFMatrix::get_y_scale
double get_y_scale() const
return the magnitude scale of our y coord output
Definition: SWFMatrix.cpp:322
gnash::DisplayObject::destroy
virtual void destroy()
Mark this DisplayObject as destroyed.
Definition: DisplayObject.cpp:677
gnash::DisplayObject::MaskRenderer::MaskRenderer
MaskRenderer(Renderer &r, const DisplayObject &o)
Definition: DisplayObject.cpp:968
gnash::DisplayObject::unload
bool unload()
Unload this instance from the stage.
Definition: DisplayObject.cpp:448
gnash::movie_root::getQuality
Quality getQuality() const
Get the current display quality.
Definition: movie_root.h:490
gnash::DisplayObject::add_event_handler
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
gnash::DisplayObject::getDefinitionVersion
virtual int getDefinitionVersion() const
DisplayObjects can return the version of the SWF they were parsed from.
Definition: DisplayObject.h:288
gnash::DisplayObject::getVolume
int getVolume() const
Get sound volume for this DisplayObject.
Definition: DisplayObject.h:273
gnash::as_object::setDisplayObject
void setDisplayObject(DisplayObject *d)
Set the DisplayObject associated with this as_object.
Definition: as_object.h:643
gnash::NSV::PROP_uX
@ PROP_uX
Definition: namedStrings.h:123
gnash::NSV::PROP_uXSCALE
@ PROP_uXSCALE
Definition: namedStrings.h:125
gnash::DisplayObject::scaleX
double scaleX() const
Definition: DisplayObject.h:923
gnash::string_table::key
std::size_t key
Definition: string_table.h:83
gnash::DisplayObject::setWidth
virtual void setWidth(double width)
Set the width of this DisplayObject, modifying its SWFMatrix.
Definition: DisplayObject.cpp:340
gnash::MovieClip::getTextFieldVariables
bool getTextFieldVariables(const ObjectURI &uri, as_value &val)
Get TextField variables.
Definition: MovieClip.cpp:558
gnash::DisplayObject::get_ratio
std::uint16_t get_ratio() const
Definition: DisplayObject.h:360
gnash::DisplayObject::get_root
virtual Movie * get_root() const
Return the relative root of this DisplayObject.
Definition: DisplayObject.h:531
gnash::NSV::PROP_USEHANDCURSOR
@ PROP_USEHANDCURSOR
Definition: namedStrings.h:193
gnash::caseless
bool caseless(const as_object &o)
Return whether property matching is caseless.
Definition: as_object.h:924
gnash::Transform
The Transform class expresses a stage in a cumulative transformation.
Definition: Transform.h:34
gnash::NSV::PROP_uHEIGHT
@ PROP_uHEIGHT
Definition: namedStrings.h:105
gnash::DisplayObject::topmostMouseEntity
virtual InteractiveObject * topmostMouseEntity(std::int32_t, std::int32_t)
DisplayObjects are not a mouse entity by default.
Definition: DisplayObject.h:637
gnash::DisplayObject::pathElement
virtual as_object * pathElement(const ObjectURI &uri)
Definition: DisplayObject.cpp:160
gnash::key::o
@ o
Definition: GnashKey.h:161
gnash::DisplayObject::set_x_scale
void set_x_scale(double factor)
Set the xscale value of current SWFMatrix.
Definition: DisplayObject.cpp:483
gnash::NSV::PROP_uALPHA
@ PROP_uALPHA
Definition: namedStrings.h:99
width
@ width
Definition: klash_part.cpp:329
gnash::getMatrix
const SWFMatrix & getMatrix(const DisplayObject &o)
Get local transform SWFMatrix for this DisplayObject.
Definition: DisplayObject.h:1119
gnash::NSV::PROP_uYMOUSE
@ PROP_uYMOUSE
Definition: namedStrings.h:127
gnash::key::SWF
@ SWF
Definition: GnashKey.h:331
gnash::log_unimpl
void log_unimpl(StringType msg, Args... args)
Definition: log.h:289
gnash::DisplayObject::extend_invalidated_bounds
void extend_invalidated_bounds(const InvalidatedRanges &ranges)
Definition: DisplayObject.cpp:247
gnash::ObjectURI
A URI for describing as_objects.
Definition: ObjectURI.h:45
gnash::DisplayObject::invalidated
bool invalidated() const
Return whether this DisplayObject has been invalidated or not.
Definition: DisplayObject.h:657
gnash::movie_root::getLevel
MovieClip * getLevel(unsigned int num) const
Return the movie at the given level (0 if unloaded level).
Definition: movie_root.cpp:508
GnashException.h
x
std::int32_t x
Definition: BitmapData_as.cpp:434
gnash::isReferenceable
bool isReferenceable(const DisplayObject &d)
Returns true if the DisplayObject is referenceable in ActionScript.
Definition: DisplayObject.h:1149
gnash::DisplayObject::set_y_scale
void set_y_scale(double factor)
Set the yscale value of current SWFMatrix.
Definition: DisplayObject.cpp:546
snappingrange.h
gnash::SWFRect::expand_to_transformed_rect
DSOEXPORT void expand_to_transformed_rect(const SWFMatrix &m, const SWFRect &r)
Definition: SWFRect.cpp:74
gnash::NSV::PROP_THIS
@ PROP_THIS
Definition: namedStrings.h:96
gnash::DisplayObject::stage
movie_root & stage() const
Get the movie_root to which this DisplayObject belongs.
Definition: DisplayObject.h:981
gnash::DisplayObject::set_rotation
void set_rotation(double rot)
Set the rotation value of current SWFMatrix.
Definition: DisplayObject.cpp:515
gnash::setHeight
void setHeight(DisplayObject &o, const as_value &val)
Definition: DisplayObject.cpp:365
gnash::DisplayObject::visible
bool visible() const
Definition: DisplayObject.h:623
SWFMatrix.h
gnash::Renderer::bounds_in_clipping_area
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
gnash::operator<<
std::ostream & operator<<(std::ostream &o, const URL &u)
Definition: URL.cpp:447
gnash::GcResource::setReachable
void setReachable() const
Mark this resource as being reachable.
Definition: GC.h:92
gnash::DisplayObject::BLENDMODE_ALPHA
@ BLENDMODE_ALPHA
Definition: DisplayObject.h:884
gnash::DisplayObject::BLENDMODE_ERASE
@ BLENDMODE_ERASE
Definition: DisplayObject.h:885