gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] gnash ChangeLog server/button_character_instanc...


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/button_character_instanc...
Date: Fri, 21 Sep 2007 08:29:03 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  07/09/21 08:29:03

Modified files:
        .              : ChangeLog 
        server         : button_character_instance.cpp 
                         button_character_instance.h character.h 
                         dlist.cpp movie_instance.cpp movie_instance.h 
                         movie_root.cpp sprite_instance.cpp 
                         sprite_instance.h video_stream_instance.cpp 
                         video_stream_instance.h 

Log message:
                * server/character.h, server/dlist.cpp,
                  server/button_character_instance.{cpp,h},
                  server/movie_instance.{cpp,h}, server/movie_root.cpp,
                  server/sprite_instance.{cpp,h},
                  server/video_stream_instance.{cpp,h}:
                  Rename character::construct to 
character::stagePlacementCallback
                  and update documentation to help clarity.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4366&r2=1.4367
http://cvs.savannah.gnu.org/viewcvs/gnash/server/button_character_instance.cpp?cvsroot=gnash&r1=1.58&r2=1.59
http://cvs.savannah.gnu.org/viewcvs/gnash/server/button_character_instance.h?cvsroot=gnash&r1=1.25&r2=1.26
http://cvs.savannah.gnu.org/viewcvs/gnash/server/character.h?cvsroot=gnash&r1=1.95&r2=1.96
http://cvs.savannah.gnu.org/viewcvs/gnash/server/dlist.cpp?cvsroot=gnash&r1=1.93&r2=1.94
http://cvs.savannah.gnu.org/viewcvs/gnash/server/movie_instance.cpp?cvsroot=gnash&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/gnash/server/movie_instance.h?cvsroot=gnash&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/gnash/server/movie_root.cpp?cvsroot=gnash&r1=1.94&r2=1.95
http://cvs.savannah.gnu.org/viewcvs/gnash/server/sprite_instance.cpp?cvsroot=gnash&r1=1.352&r2=1.353
http://cvs.savannah.gnu.org/viewcvs/gnash/server/sprite_instance.h?cvsroot=gnash&r1=1.140&r2=1.141
http://cvs.savannah.gnu.org/viewcvs/gnash/server/video_stream_instance.cpp?cvsroot=gnash&r1=1.38&r2=1.39
http://cvs.savannah.gnu.org/viewcvs/gnash/server/video_stream_instance.h?cvsroot=gnash&r1=1.20&r2=1.21

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.4366
retrieving revision 1.4367
diff -u -b -r1.4366 -r1.4367
--- ChangeLog   21 Sep 2007 07:35:27 -0000      1.4366
+++ ChangeLog   21 Sep 2007 08:29:01 -0000      1.4367
@@ -1,5 +1,15 @@
 2007-09-21 Sandro Santilli <address@hidden>
 
+       * server/character.h, server/dlist.cpp,
+         server/button_character_instance.{cpp,h},
+         server/movie_instance.{cpp,h}, server/movie_root.cpp,
+         server/sprite_instance.{cpp,h},
+         server/video_stream_instance.{cpp,h}:
+         Rename character::construct to character::stagePlacementCallback
+         and update documentation to help clarity.
+
+2007-09-21 Sandro Santilli <address@hidden>
+
        * server/sprite_instance.cpp (goto_frame): make
          sure m_current_frame always reflect the frame number
          in which the control tags being executed were defined.

Index: server/button_character_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/button_character_instance.cpp,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -b -r1.58 -r1.59
--- server/button_character_instance.cpp        20 Sep 2007 06:57:02 -0000      
1.58
+++ server/button_character_instance.cpp        21 Sep 2007 08:29:01 -0000      
1.59
@@ -796,7 +796,7 @@
 }
 
 void
-button_character_instance::construct()
+button_character_instance::stagePlacementCallback()
 {
     // Register this button instance as a live character
     _vm.getRoot().addLiveChar(this);
@@ -813,7 +813,7 @@
 
                // we don't need an id here, do we ?
                boost::intrusive_ptr<character> ch = 
bdef.m_character_def->create_character_instance(this, 0);
-               ch->construct(); // give this character life
+               ch->stagePlacementCallback(); // give this character life 
(TODO: they aren't on stage, are them ?)
                m_record_character[r] = ch;
                ch->set_matrix(mat);
                ch->set_cxform(cx);

Index: server/button_character_instance.h
===================================================================
RCS file: /sources/gnash/gnash/server/button_character_instance.h,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -b -r1.25 -r1.26
--- server/button_character_instance.h  13 Sep 2007 16:26:13 -0000      1.25
+++ server/button_character_instance.h  21 Sep 2007 08:29:02 -0000      1.26
@@ -21,7 +21,7 @@
 
 // SWF buttons.  Mouse-sensitive update/display, actions, etc.
 
-/* $Id: button_character_instance.h,v 1.25 2007/09/13 16:26:13 strk Exp $ */
+/* $Id: button_character_instance.h,v 1.26 2007/09/21 08:29:02 strk Exp $ */
 
 #ifndef GNASH_BUTTON_CHARACTER_INSTANCE_H
 #define GNASH_BUTTON_CHARACTER_INSTANCE_H
@@ -146,8 +146,14 @@
        bool get_enabled();
        void set_enabled(bool value);
        
-       /// Properly initialize instance names for contained sprites
-       virtual void construct();
+       /// Receive a stage placement notification
+       //
+       /// This callback will:
+       ///
+       /// (1) Register this button instance as a live character
+       /// (2) Setup the state characters calling stagePlacementCallback on 
all [WRONG]
+       ///
+       virtual void stagePlacementCallback();
 
        /// Properly unload contained characters
        bool unload();

Index: server/character.h
===================================================================
RCS file: /sources/gnash/gnash/server/character.h,v
retrieving revision 1.95
retrieving revision 1.96
diff -u -b -r1.95 -r1.96
--- server/character.h  19 Sep 2007 10:17:03 -0000      1.95
+++ server/character.h  21 Sep 2007 08:29:02 -0000      1.96
@@ -19,7 +19,7 @@
 //
 //
 
-/* $Id: character.h,v 1.95 2007/09/19 10:17:03 strk Exp $ */
+/* $Id: character.h,v 1.96 2007/09/21 08:29:02 strk Exp $ */
 
 #ifndef GNASH_CHARACTER_H
 #define GNASH_CHARACTER_H
@@ -1004,20 +1004,13 @@
        ///
        virtual void add_invalidated_bounds(InvalidatedRanges& ranges, bool 
force) = 0;
        
-       /// Construct this instance as an ActionScript object.
+       /// Callback invoked whenever a character is placed on stage
        //
        /// This function must be called when the character is placed on
-       /// stage for the first time. It will take care of invoking
-       /// the constructor of its associated class and calling the
-       /// 'onConstruct' event handler.
+       /// stage for the first time.
        ///
-       /// Make sure this instance got an instance name before calling
-       /// this method (it's needed for properly setting the "this" pointer
-       /// when calling user-defined constructors).
-       ///
-       virtual void construct()
+       virtual void stagePlacementCallback()
        {
-               on_event(event_id::CONSTRUCT);
        }
 
        /// Unload this instance from the stage.

Index: server/dlist.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/dlist.cpp,v
retrieving revision 1.93
retrieving revision 1.94
diff -u -b -r1.93 -r1.94
--- server/dlist.cpp    18 Sep 2007 14:25:58 -0000      1.93
+++ server/dlist.cpp    21 Sep 2007 08:29:02 -0000      1.94
@@ -235,7 +235,7 @@
        }
 
        // Give life to this instance
-       ch->construct();
+       ch->stagePlacementCallback();
 
        testInvariant();
 }
@@ -360,7 +360,7 @@
                // WARNING: when a new Button character is added,
                //          the invalidated bounds computation will likely
                //          be bogus, as the actual character shown is not 
instantiated
-               //          until ::construct for buttons (I'd say this is a 
bug in button_character_instance)
+               //          until ::stagePlacementCallback for buttons (I'd say 
this is a bug in button_character_instance)
                //          UdoG, following ? 
                //
                ch->extend_invalidated_bounds(old_ranges);                      
        
@@ -368,7 +368,7 @@
        }
 
        // Give life to this instance
-       ch->construct();
+       ch->stagePlacementCallback();
 
        testInvariant();
 }

Index: server/movie_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/movie_instance.cpp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- server/movie_instance.cpp   7 Sep 2007 11:56:06 -0000       1.17
+++ server/movie_instance.cpp   21 Sep 2007 08:29:02 -0000      1.18
@@ -45,7 +45,7 @@
 }
 
 void
-movie_instance::construct()
+movie_instance::stagePlacementCallback()
 {
        //GNASH_REPORT_FUNCTION;
 
@@ -79,8 +79,8 @@
                return;
        }
 
-       // Invoke proper constructor
-       sprite_instance::construct();  
+       // Invoke parent placement event handler
+       sprite_instance::stagePlacementCallback();  
 }
 
 // Advance of an SWF-defined movie instance

Index: server/movie_instance.h
===================================================================
RCS file: /sources/gnash/gnash/server/movie_instance.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- server/movie_instance.h     7 Sep 2007 07:10:20 -0000       1.8
+++ server/movie_instance.h     21 Sep 2007 08:29:02 -0000      1.9
@@ -65,14 +65,14 @@
                return const_cast<movie_instance*>(this);
        }
 
-       /// Construct a top-level movie
+       /// Handle a top-level movie on stage placement.
        //
        /// This method will just ensure first frame is loaded
-       /// and then call sprite_instance::construct.
+       /// and then call sprite_instance::stagePlacementCallback.
        ///
        /// It's intended to be called by movie_root::setLevel().
        ///
-       void construct();
+       void stagePlacementCallback();
 
 private:
 

Index: server/movie_root.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/movie_root.cpp,v
retrieving revision 1.94
retrieving revision 1.95
diff -u -b -r1.94 -r1.95
--- server/movie_root.cpp       20 Sep 2007 06:57:02 -0000      1.94
+++ server/movie_root.cpp       21 Sep 2007 08:29:02 -0000      1.95
@@ -130,8 +130,8 @@
                (int) movie->get_movie_definition()->get_width_pixels(),
                (int) movie->get_movie_definition()->get_height_pixels());
 
-       /// Give life to this instance
-       movie->construct();
+       /// Notify placement 
+       movie->stagePlacementCallback();
 
        assert(testInvariant());
 }
@@ -200,13 +200,13 @@
        // TODO: instead, take it's definition and re-instantiate
        // a new movie here ! The only problem would be re-setting
        // externally set variables
-       level0->restart(); // NOTE: restart() will call construct
+       level0->restart(); 
 
        // Add level0 back in place
-       // NOTE: we don't call setLevel to avoid calling ::construct again
+       // NOTE: we don't call setLevel to avoid calling 
::stagePlacementCallback again
        _movies[0] = level0; 
 
-       // Process actions queued by restart/construct
+       // Process actions queued by restart/stagePlacementCallback
        processActionQueue();
 
        // Delete characters removed from the stage

Index: server/sprite_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/sprite_instance.cpp,v
retrieving revision 1.352
retrieving revision 1.353
diff -u -b -r1.352 -r1.353
--- server/sprite_instance.cpp  21 Sep 2007 07:35:28 -0000      1.352
+++ server/sprite_instance.cpp  21 Sep 2007 08:29:02 -0000      1.353
@@ -3216,8 +3216,9 @@
 // WARNING: THIS SNIPPET NEEDS THE CHARACTER TO BE "INSTANTIATED", which is
 //          it's target path needs to exist, or any as_value for it will be
 //          a dangling reference to an unexistent sprite !
+//          NOTE: this is just due to the wrong steps, see comment in header
 void
-sprite_instance::construct()
+sprite_instance::stagePlacementCallback()
 {
        assert(!isUnloaded());
 

Index: server/sprite_instance.h
===================================================================
RCS file: /sources/gnash/gnash/server/sprite_instance.h,v
retrieving revision 1.140
retrieving revision 1.141
diff -u -b -r1.140 -r1.141
--- server/sprite_instance.h    18 Sep 2007 14:57:23 -0000      1.140
+++ server/sprite_instance.h    21 Sep 2007 08:29:03 -0000      1.141
@@ -377,21 +377,24 @@
        ///
        bool attachCharacter(character& newch, int depth);
 
-       /// Construct this instance as an ActionScript object.
+       /// Handle placement event
        //
-       /// This function must be called when the sprite is placed on
-       /// stage for the first time. It will take care of invoking
-       /// the constructor of its associated class, either MovieClip
-       /// or any user-specified one (see sprite_definition::registerClass).
+       /// This callback will (not known to be a problem):
        ///
-       /// Make sure this sprite got an instance name before calling
-       /// this method (it's needed for properly setting the "this" pointer
-       /// when calling user-defined constructors).
+       /// (1) Register ourselves with the global instance list
+       /// (2) Take note of our original target path
+       /// (3) Register as listener of core broadcasters
+       /// (4) Execute tags of frame 0
        ///
-       /// TODO: check if we only need to construct "named" instances
-       /// TODO: possibly have this function call the onConstruct() event 
handler
+       /// The callback will also (known to be bogus):
+       //
+       /// (1) Invoke the onClipConstruct and onConstruct handlers
+       ///     [ too early for handlers to refer to childs, should be queued 
eventually ]
+       /// (2) Invoke constructor of its associated class, either MovieClip
+       ///     or any user-specified one (see 
sprite_definition::registerClass).
+       ///     [ too early, init actions might not have had a chance to call 
registerClass ]
        ///
-       virtual void construct();
+       virtual void stagePlacementCallback();
 
        /// Unload all contents in the displaylist and this instance
        /// See character::unload for more info

Index: server/video_stream_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/video_stream_instance.cpp,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -b -r1.38 -r1.39
--- server/video_stream_instance.cpp    13 Sep 2007 13:57:49 -0000      1.38
+++ server/video_stream_instance.cpp    21 Sep 2007 08:29:03 -0000      1.39
@@ -17,7 +17,7 @@
 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 // 
 
-// $Id: video_stream_instance.cpp,v 1.38 2007/09/13 13:57:49 strk Exp $
+// $Id: video_stream_instance.cpp,v 1.39 2007/09/21 08:29:03 strk Exp $
 
 #include "sprite_instance.h"
 #include "video_stream_instance.h"
@@ -230,7 +230,7 @@
 }
 
 void
-video_stream_instance::construct()
+video_stream_instance::stagePlacementCallback()
 {
     // Register this video instance as a live character
     _vm.getRoot().addLiveChar(this);

Index: server/video_stream_instance.h
===================================================================
RCS file: /sources/gnash/gnash/server/video_stream_instance.h,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -b -r1.20 -r1.21
--- server/video_stream_instance.h      13 Sep 2007 13:57:49 -0000      1.20
+++ server/video_stream_instance.h      21 Sep 2007 08:29:03 -0000      1.21
@@ -16,7 +16,7 @@
 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
 // 
-// $Id: video_stream_instance.h,v 1.20 2007/09/13 13:57:49 strk Exp $
+// $Id: video_stream_instance.h,v 1.21 2007/09/21 08:29:03 strk Exp $
 
 #ifndef GNASH_VIDEO_STREAM_INSTANCE_H
 #define GNASH_VIDEO_STREAM_INSTANCE_H
@@ -61,9 +61,8 @@
        /// We use the call to ::advance to properly set invalidated status
        virtual void    advance(float delta_time);
 
-       /// construct is needed to register this instance as an "advanceable" 
character
-       /// with movie_root
-       virtual void construct();
+       /// Register this video instance as a live character
+       virtual void stagePlacementCallback();
 
        void    display();
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]