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: Mon, 12 Mar 2007 20:25:48 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  07/03/12 20:25:48

Modified files:
        .              : ChangeLog 
        server         : button_character_instance.cpp 
                         button_character_instance.h 

Log message:
                * server/button_character_instance.{cpp,h}: implement
                  ::construct() to postpone characters instance name assignmnet
                  at stage placement time.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.2615&r2=1.2616
http://cvs.savannah.gnu.org/viewcvs/gnash/server/button_character_instance.cpp?cvsroot=gnash&r1=1.33&r2=1.34
http://cvs.savannah.gnu.org/viewcvs/gnash/server/button_character_instance.h?cvsroot=gnash&r1=1.16&r2=1.17

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.2615
retrieving revision 1.2616
diff -u -b -r1.2615 -r1.2616
--- ChangeLog   12 Mar 2007 19:45:51 -0000      1.2615
+++ ChangeLog   12 Mar 2007 20:25:48 -0000      1.2616
@@ -1,3 +1,9 @@
+2007-03-12 Sandro Santilli <address@hidden>
+
+       * server/button_character_instance.{cpp,h}: implement
+         ::construct() to postpone characters instance name assignmnet
+         at stage placement time.
+
 2007-03-12 Udo Giacomozzi <address@hidden>
 
        * server/character.h: introduce wantsInstanceName() to provide

Index: server/button_character_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/button_character_instance.cpp,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -b -r1.33 -r1.34
--- server/button_character_instance.cpp        12 Mar 2007 19:45:51 -0000      
1.33
+++ server/button_character_instance.cpp        12 Mar 2007 20:25:48 -0000      
1.34
@@ -239,31 +239,6 @@
 
        attachButtonInterface(*this);
 
-       int r, r_num =  m_def->m_button_records.size();
-       m_record_character.resize(r_num);
-
-       for (r = 0; r < r_num; r++)
-       {
-               button_record& bdef = m_def->m_button_records[r];
-
-               const matrix&   mat = 
m_def->m_button_records[r].m_button_matrix;
-               const cxform&   cx = m_def->m_button_records[r].m_button_cxform;
-
-               boost::intrusive_ptr<character> ch = 
bdef.m_character_def->create_character_instance(this, id);
-               m_record_character[r] = ch;
-               ch->set_matrix(mat);
-               ch->set_cxform(cx);
-               ch->set_parent(this);
-               
-               if (ch->get_name().empty() && ch->wantsInstanceName()) {
-                       std::string instance_name = 
getNextUnnamedInstanceName();
-                       ch->set_name(instance_name.c_str());
-               }
-
-               ch->restart();
-               
-       }
-
        // check up presence KeyPress events
        for (unsigned int i = 0; i < m_def->m_button_actions.size(); i++)
        {
@@ -852,6 +827,39 @@
        return ch; // possibly NULL
 }
 
+void
+button_character_instance::construct()
+{
+       int r, r_num =  m_def->m_button_records.size();
+       m_record_character.resize(r_num);
+
+       for (r = 0; r < r_num; r++)
+       {
+               button_record& bdef = m_def->m_button_records[r];
+
+               const matrix&   mat = 
m_def->m_button_records[r].m_button_matrix;
+               const cxform&   cx = m_def->m_button_records[r].m_button_cxform;
+
+               // we don't need an id here, do we ?
+               boost::intrusive_ptr<character> ch = 
bdef.m_character_def->create_character_instance(this, 0);
+               m_record_character[r] = ch;
+               ch->set_matrix(mat);
+               ch->set_cxform(cx);
+               ch->set_parent(this);
+               
+               if (ch->get_name().empty() && ch->wantsInstanceName()) {
+                       std::string instance_name = 
getNextUnnamedInstanceName();
+                       ch->set_name(instance_name.c_str());
+               }
+
+               ch->restart();
+               
+       }
+
+       // does a CONSTRUCT event even exist ?
+       // We'll not call it here..
+}
+
 } // end of namespace gnash
 
 

Index: server/button_character_instance.h
===================================================================
RCS file: /sources/gnash/gnash/server/button_character_instance.h,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -b -r1.16 -r1.17
--- server/button_character_instance.h  12 Mar 2007 19:45:52 -0000      1.16
+++ server/button_character_instance.h  12 Mar 2007 20:25:48 -0000      1.17
@@ -5,7 +5,7 @@
 
 // SWF buttons.  Mouse-sensitive update/display, actions, etc.
 
-/* $Id: button_character_instance.h,v 1.16 2007/03/12 19:45:52 udog Exp $ */
+/* $Id: button_character_instance.h,v 1.17 2007/03/12 20:25:48 strk Exp $ */
 
 #ifndef GNASH_BUTTON_CHARACTER_INSTANCE_H
 #define GNASH_BUTTON_CHARACTER_INSTANCE_H
@@ -132,6 +132,9 @@
        bool get_enabled();
        void set_enabled(bool value);
        
+       /// Properly initialize instance names for contained sprites
+       virtual void construct();
+
 private:
        bool m_enabled;
 




reply via email to

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