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: Wed, 31 Jan 2007 15:11:58 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  07/01/31 15:11:58

Modified files:
        .              : ChangeLog 
        server         : button_character_instance.cpp 
                         button_character_instance.h character.cpp 
                         character.h sprite_instance.cpp 
        testsuite/misc-ming.all: ButtonEventsTest-Runner.cpp 

Log message:
                * server/button_character_instance.{h,cpp}:
                  Use getter-setter properties, and avoid override
                  of get_member/set_member methods.
                * server/character.{cpp,h}: define more generic
                  getter-setters.
                * server/sprite_instance.cpp: use character class
                  statics for onload and onrollout events
                * testsuite/misc-ming.all/ButtonEventsTest-Runner.cpp:
                  expect less failures :)

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.2205&r2=1.2206
http://cvs.savannah.gnu.org/viewcvs/gnash/server/button_character_instance.cpp?cvsroot=gnash&r1=1.25&r2=1.26
http://cvs.savannah.gnu.org/viewcvs/gnash/server/button_character_instance.h?cvsroot=gnash&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/gnash/server/character.cpp?cvsroot=gnash&r1=1.16&r2=1.17
http://cvs.savannah.gnu.org/viewcvs/gnash/server/character.h?cvsroot=gnash&r1=1.42&r2=1.43
http://cvs.savannah.gnu.org/viewcvs/gnash/server/sprite_instance.cpp?cvsroot=gnash&r1=1.143&r2=1.144
http://cvs.savannah.gnu.org/viewcvs/gnash/testsuite/misc-ming.all/ButtonEventsTest-Runner.cpp?cvsroot=gnash&r1=1.9&r2=1.10

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.2205
retrieving revision 1.2206
diff -u -b -r1.2205 -r1.2206
--- ChangeLog   31 Jan 2007 11:06:09 -0000      1.2205
+++ ChangeLog   31 Jan 2007 15:11:57 -0000      1.2206
@@ -1,5 +1,17 @@
 2007-01-31 Sandro Santilli <address@hidden>
 
+       * server/button_character_instance.{h,cpp}:
+         Use getter-setter properties, and avoid override
+         of get_member/set_member methods.
+       * server/character.{cpp,h}: define more generic
+         getter-setters.
+       * server/sprite_instance.cpp: use character class
+         statics for onload and onrollout events
+       * testsuite/misc-ming.all/ButtonEventsTest-Runner.cpp:
+         expect less failures :)
+
+2007-01-31 Sandro Santilli <address@hidden>
+
        * server/sprite_instance.cpp (goto_frame): fix
          check for target frame being already loaded.
        * server/button_character_instance.cpp (on_event):

Index: server/button_character_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/button_character_instance.cpp,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -b -r1.25 -r1.26
--- server/button_character_instance.cpp        31 Jan 2007 09:28:44 -0000      
1.25
+++ server/button_character_instance.cpp        31 Jan 2007 15:11:58 -0000      
1.26
@@ -18,6 +18,7 @@
 #include "sprite_instance.h"
 #include "movie_root.h"
 #include "VM.h"
+#include "builtin_function.h"
 
 /** \page buttons Buttons and mouse behaviour
 
@@ -149,6 +150,73 @@
 
 namespace gnash {
 
+static void
+attachButtonInterface(as_object& o)
+{
+       //int target_version = o.getVM().getSWFVersion();
+
+       boost::intrusive_ptr<builtin_function> gettersetter;
+
+       //
+       // Properties (TODO: move to appropriate SWF version section)
+       //
+
+       gettersetter = new builtin_function(&character::x_getset, NULL);
+       o.init_property("_x", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::y_getset, NULL);
+       o.init_property("_y", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::xscale_getset, NULL);
+       o.init_property("_xscale", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::yscale_getset, NULL);
+       o.init_property("_yscale", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::xmouse_getset, NULL);
+       o.init_property("_xmouse", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::ymouse_getset, NULL);
+       o.init_property("_ymouse", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::alpha_getset, NULL);
+       o.init_property("_alpha", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::visible_getset, NULL);
+       o.init_property("_visible", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::width_getset, NULL);
+       o.init_property("_width", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::height_getset, NULL);
+       o.init_property("_height", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::rotation_getset, NULL);
+       o.init_property("_rotation", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::parent_getset, NULL);
+       o.init_property("_parent", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::onrollover_getset, 
NULL);
+       o.init_property("onRollOver", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::onrollout_getset, NULL);
+       o.init_property("onRollOut", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::onpress_getset, NULL);
+       o.init_property("onPress", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::onrelease_getset, NULL);
+       o.init_property("onRelease", *gettersetter, *gettersetter);
+
+       gettersetter = new 
builtin_function(&character::onreleaseoutside_getset, NULL);
+       o.init_property("onReleaseOutside", *gettersetter, *gettersetter);
+
+       gettersetter = new builtin_function(&character::onload_getset, NULL);
+       o.init_property("onLoad", *gettersetter, *gettersetter);
+
+}
+
 button_character_instance::button_character_instance(
                button_character_definition* def,
                character* parent, int id)
@@ -161,6 +229,8 @@
 {
        assert(m_def);
 
+       attachButtonInterface(*this);
+
        int r, r_num =  m_def->m_button_records.size();
        m_record_character.resize(r_num);
 
@@ -201,13 +271,13 @@
 button_character_instance::on_event(const event_id& id)
 {
 
+#if 0
        if (id.m_id != event_id::KEY_PRESS)
        {
                log_warning("Unsupported event for button instance: %s", 
id.get_function_name().c_str());
                return false;
        }
-
-       bool called = false;
+#endif
 
        static const event_id s_key[32] =
        {
@@ -233,8 +303,13 @@
                // 32-126 folows ASCII
        };
 
+       bool called = false;
+
+       sprite_instance* parent = get_parent()->to_movie();
+       assert ( parent );
 
        // Add appropriate actions to the movie's execute list...
+       // TODO: should we execute immediately instead ?
        for (size_t i = 0, ie=m_def->m_button_actions.size(); i<ie; ++i)
        {
                button_action& ba = m_def->m_button_actions[i];
@@ -246,9 +321,7 @@
                        // Matching action.
                        for (size_t j=0, je=ba.m_actions.size(); j<je; ++j)
                        {
-                               sprite_instance* si = get_parent()->to_movie();
-                               assert ( si );
-                               si->add_action_buffer(ba.m_actions[j]);
+                               parent->add_action_buffer(ba.m_actions[j]);
                        }
                        called = true;
                }
@@ -500,11 +573,22 @@
                                ActionExec exec(*ab, get_environment());
                                exec();
                                
-                               //get_parent()->add_action_buffer(ab);
                        }
                }
        }}
 
+       // check for built-in event handler.
+       as_value method;
+       if ( get_event_handler(event, &method) && ! method.is_undefined() )
+       {
+               call_method0(method, &(get_environment()), this);
+       }
+       else
+       {
+               log_warning("No handler for event: %s", 
event.get_function_name().c_str());
+       }
+
+
        // Call conventional attached method.
        // @@ TODO
 }
@@ -547,157 +631,6 @@
 // ActionScript overrides
 //
 
-void
-button_character_instance::set_member(const std::string& name,
-               const as_value& val)
-{
-
-       // TODO: pull these up into a base class, to
-       // share as much as possible with sprite_instance.
-       as_standard_member      std_member = get_standard_member(name);
-       switch (std_member)
-       {
-       default:
-       case M_INVALID_MEMBER:
-               break;
-       case M_VISIBLE:  // _visible
-       {
-               m_visible = val.to_bool();
-               return;
-       }
-       case M_ALPHA:  // _alpha
-       {
-               // Set alpha modulate, in percent.
-               cxform  cx = get_cxform();
-               cx.m_[3][0] = infinite_to_fzero(val.to_number()) / 100.f;
-               set_cxform(cx);
-               //m_accept_anim_moves = false;
-               return;
-       }
-       case M_X:  // _x
-       {
-               matrix  m = get_matrix();       // @@ get_world_matrix()???
-               m.m_[0][2] = 
infinite_to_fzero(PIXELS_TO_TWIPS(val.to_number()));
-               this->set_matrix(m);
-               return;
-       }
-       case M_Y:  // _y
-       {
-               matrix  m = get_matrix();       // @@ get_world_matrix()???
-               m.m_[1][2] = 
infinite_to_fzero(PIXELS_TO_TWIPS(val.to_number()));
-               this->set_matrix(m);
-               return;
-       }
-// evan : need set_width and set_height function for struct character
-#if 0
-       case M_WIDTH:  // _width
-       {
-               for (int i = 0; i < m_def->m_button_records.size(); i++)
-               {
-                       button_record&  rec = m_def->m_button_records[i];
-                       if (m_record_character[i] == NULL)
-                       {
-                               continue;
-                       }
-                       if ((m_mouse_state == UP && rec.m_up)
-                           || (m_mouse_state == DOWN && rec.m_down)
-                           || (m_mouse_state == OVER && rec.m_over))
-                       {
-                               m_record_character[i]->set_width(val.to_number);
-                               // @@ evan: should we return here?
-                               return;
-                       }
-               }
-
-               return;
-       }
-       //What is this from???
-       /*else if (name == "enabled")
-       {
-               m_enabled = val.to_bool();
-       }*/
-       case M_HEIGHT:  // _height
-       {
-               for (int i = 0; i < m_def->m_button_records.size(); i++)
-               {
-                       button_record&  rec = m_def->m_button_records[i];
-                       if (m_record_character[i] == NULL)
-                       {
-                               continue;
-                       }
-                       if ((m_mouse_state == UP && rec.m_up)
-                           || (m_mouse_state == DOWN && rec.m_down)
-                           || (m_mouse_state == OVER && rec.m_over))
-                       {
-                               
m_record_character[i]->set_height(val.to_number);
-                               // @@ evan: should we return here?
-                               return;
-                       }
-               }
-
-               return;
-       }
-#endif
-       }
-
-       log_error("button_character_instance::set_member('%s', '%s') not 
implemented yet",
-                         name.c_str(),
-                         val.to_string());
-}
-
-bool
-button_character_instance::get_member(const std::string& name, as_value* val)
-{
-       // TODO: pull these up into a base class, to
-       // share as much as possible with sprite_instance.
-       as_standard_member      std_member = get_standard_member(name);
-       switch (std_member)
-       {
-       default:
-       case M_INVALID_MEMBER:
-               break;
-       case M_VISIBLE:  // _visible
-       {
-               val->set_bool(this->get_visible());
-               return true;
-       }
-       case M_ALPHA:  // _alpha
-       {
-               // @@ TODO this should be generic to struct character!
-               // Alpha units are in percent.
-               val->set_double(get_cxform().m_[3][0] * 100.f);
-               return true;
-       }
-       case M_X:  // _x
-       {
-               matrix  m = get_matrix();       // @@ get_world_matrix()???
-               val->set_double(TWIPS_TO_PIXELS(m.m_[0][2]));
-               return true;
-       }
-       case M_Y:  // _y
-       {
-               matrix  m = get_matrix();       // @@ get_world_matrix()???
-               val->set_double(TWIPS_TO_PIXELS(m.m_[1][2]));
-               return true;
-       }
-       case M_WIDTH:  // _width
-       {
-               float width = get_width();
-               if ( width ) width = TWIPS_TO_PIXELS(width);
-               val->set_double(width);
-               return true;
-       }
-       case M_HEIGHT:  // _height
-       {
-               float width = get_height();
-               if ( width ) width = TWIPS_TO_PIXELS(width);
-               val->set_double(width);
-               return true;
-       }
-       } // end of switch
-
-       return false;
-}
 
 void 
 button_character_instance::get_invalidated_bounds(rect* bounds, bool force) 

Index: server/button_character_instance.h
===================================================================
RCS file: /sources/gnash/gnash/server/button_character_instance.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- server/button_character_instance.h  18 Jan 2007 22:53:21 -0000      1.10
+++ server/button_character_instance.h  31 Jan 2007 15:11:58 -0000      1.11
@@ -5,7 +5,7 @@
 
 // SWF buttons.  Mouse-sensitive update/display, actions, etc.
 
-/* $Id: button_character_instance.h,v 1.10 2007/01/18 22:53:21 strk Exp $ */
+/* $Id: button_character_instance.h,v 1.11 2007/01/31 15:11:58 strk Exp $ */
 
 #ifndef GNASH_BUTTON_CHARACTER_INSTANCE_H
 #define GNASH_BUTTON_CHARACTER_INSTANCE_H
@@ -103,10 +103,6 @@
        // ActionScript overrides
        //
 
-       virtual void set_member(const std::string& name, const as_value& val);
-
-       virtual bool get_member(const std::string& name, as_value* val);
-       
        void get_invalidated_bounds(rect* bounds, bool force);
        
 

Index: server/character.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/character.cpp,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -b -r1.16 -r1.17
--- server/character.cpp        30 Jan 2007 18:29:40 -0000      1.16
+++ server/character.cpp        31 Jan 2007 15:11:58 -0000      1.17
@@ -18,7 +18,7 @@
 //
 //
 
-/* $Id: character.cpp,v 1.16 2007/01/30 18:29:40 strk Exp $ */
+/* $Id: character.cpp,v 1.17 2007/01/31 15:11:58 strk Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -225,6 +225,81 @@
 }
 
 void
+character::onrollout_getset(const fn_call& fn)
+{
+       character* ptr = ensure_character(fn.this_ptr);
+
+       if ( fn.nargs == 0 ) // getter
+       {
+               ptr->get_event_handler(event_id::ROLL_OUT, fn.result);
+       }
+       else // setter
+       {
+               ptr->set_event_handler(event_id::ROLL_OUT, fn.arg(0));
+       }
+}
+
+void
+character::onpress_getset(const fn_call& fn)
+{
+       character* ptr = ensure_character(fn.this_ptr);
+
+       if ( fn.nargs == 0 ) // getter
+       {
+               ptr->get_event_handler(event_id::PRESS, fn.result);
+       }
+       else // setter
+       {
+               ptr->set_event_handler(event_id::PRESS, fn.arg(0));
+       }
+}
+
+void
+character::onrelease_getset(const fn_call& fn)
+{
+       character* ptr = ensure_character(fn.this_ptr);
+
+       if ( fn.nargs == 0 ) // getter
+       {
+               ptr->get_event_handler(event_id::RELEASE, fn.result);
+       }
+       else // setter
+       {
+               ptr->set_event_handler(event_id::RELEASE, fn.arg(0));
+       }
+}
+
+void
+character::onreleaseoutside_getset(const fn_call& fn)
+{
+       character* ptr = ensure_character(fn.this_ptr);
+
+       if ( fn.nargs == 0 ) // getter
+       {
+               ptr->get_event_handler(event_id::RELEASE_OUTSIDE, fn.result);
+       }
+       else // setter
+       {
+               ptr->set_event_handler(event_id::RELEASE_OUTSIDE, fn.arg(0));
+       }
+}
+
+void
+character::onload_getset(const fn_call& fn)
+{
+       character* ptr = ensure_character(fn.this_ptr);
+
+       if ( fn.nargs == 0 ) // getter
+       {
+               ptr->get_event_handler(event_id::LOAD, fn.result);
+       }
+       else // setter
+       {
+               ptr->set_event_handler(event_id::LOAD, fn.arg(0));
+       }
+}
+
+void
 character::x_getset(const fn_call& fn)
 {
        character* ptr = ensure_character(fn.this_ptr);

Index: server/character.h
===================================================================
RCS file: /sources/gnash/gnash/server/character.h,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -b -r1.42 -r1.43
--- server/character.h  30 Jan 2007 18:29:40 -0000      1.42
+++ server/character.h  31 Jan 2007 15:11:58 -0000      1.43
@@ -18,7 +18,7 @@
 //
 //
 
-/* $Id: character.h,v 1.42 2007/01/30 18:29:40 strk Exp $ */
+/* $Id: character.h,v 1.43 2007/01/31 15:11:58 strk Exp $ */
 
 #ifndef GNASH_CHARACTER_H
 #define GNASH_CHARACTER_H
@@ -134,6 +134,16 @@
 
        static void onrollover_getset(const fn_call& fn);
 
+       static void onrollout_getset(const fn_call& fn);
+
+       static void onload_getset(const fn_call& fn);
+
+       static void onpress_getset(const fn_call& fn);
+
+       static void onrelease_getset(const fn_call& fn);
+
+       static void onreleaseoutside_getset(const fn_call& fn);
+
        static void x_getset(const fn_call& fn);
 
        static void y_getset(const fn_call& fn);

Index: server/sprite_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/sprite_instance.cpp,v
retrieving revision 1.143
retrieving revision 1.144
diff -u -b -r1.143 -r1.144
--- server/sprite_instance.cpp  31 Jan 2007 11:10:11 -0000      1.143
+++ server/sprite_instance.cpp  31 Jan 2007 15:11:58 -0000      1.144
@@ -1014,36 +1014,6 @@
 }
 
 static void
-sprite_onrollout_getset(const fn_call& fn)
-{
-       sprite_instance* ptr = ensure_sprite(fn.this_ptr);
-
-       if ( fn.nargs == 0 ) // getter
-       {
-               ptr->get_event_handler(event_id::ROLL_OUT, fn.result);
-       }
-       else // setter
-       {
-               ptr->set_event_handler(event_id::ROLL_OUT, fn.arg(0));
-       }
-}
-
-static void
-sprite_onload_getset(const fn_call& fn)
-{
-       sprite_instance* ptr = ensure_sprite(fn.this_ptr);
-
-       if ( fn.nargs == 0 ) // getter
-       {
-               ptr->get_event_handler(event_id::LOAD, fn.result);
-       }
-       else // setter
-       {
-               ptr->set_event_handler(event_id::LOAD, fn.arg(0));
-       }
-}
-
-static void
 sprite_highquality_getset(const fn_call& fn)
 {
        sprite_instance* ptr = ensure_sprite(fn.this_ptr);
@@ -1064,6 +1034,7 @@
        }
 }
 
+// TODO: move this to character class, _focusrect seems a generic property
 static void
 sprite_focusrect_getset(const fn_call& fn)
 {
@@ -1191,10 +1162,10 @@
        gettersetter = new builtin_function(&character::onrollover_getset, 
NULL);
        o.init_property("onRollOver", *gettersetter, *gettersetter);
 
-       gettersetter = new builtin_function(&sprite_onrollout_getset, NULL);
+       gettersetter = new builtin_function(&character::onrollout_getset, NULL);
        o.init_property("onRollOut", *gettersetter, *gettersetter);
 
-       gettersetter = new builtin_function(&sprite_onload_getset, NULL);
+       gettersetter = new builtin_function(&character::onload_getset, NULL);
        o.init_property("onLoad", *gettersetter, *gettersetter);
 
 #endif // ndef OLD_GET_MEMBER

Index: testsuite/misc-ming.all/ButtonEventsTest-Runner.cpp
===================================================================
RCS file: 
/sources/gnash/gnash/testsuite/misc-ming.all/ButtonEventsTest-Runner.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- testsuite/misc-ming.all/ButtonEventsTest-Runner.cpp 31 Jan 2007 09:17:32 
-0000      1.9
+++ testsuite/misc-ming.all/ButtonEventsTest-Runner.cpp 31 Jan 2007 15:11:58 
-0000      1.10
@@ -40,7 +40,7 @@
        // the textfield value.
        tester.movePointerTo(60, 60);
        check_equals(string(text->get_text_value()), string("MouseOver"));
-       xcheck_equals(string(text2->get_text_value()), string("RollOver"));
+       check_equals(string(text2->get_text_value()), string("RollOver"));
        check(tester.isMouseOverMouseEntity());
        // TODO: check that pixel @ 60,60 is yellow !
 
@@ -48,7 +48,7 @@
        // the textfield value.
        tester.pressMouseButton();
        check_equals(string(text->get_text_value()), string("MouseDown"));
-       xcheck_equals(string(text2->get_text_value()), string("Press"));
+       check_equals(string(text2->get_text_value()), string("Press"));
        check(tester.isMouseOverMouseEntity());
        // TODO: check that pixel @ 60,60 is green !
 
@@ -56,7 +56,7 @@
        // the textfield value.
        tester.depressMouseButton();
        check_equals(string(text->get_text_value()), string("MouseUp"));
-       xcheck_equals(string(text2->get_text_value()), string("Release"));
+       check_equals(string(text2->get_text_value()), string("Release"));
        check(tester.isMouseOverMouseEntity());
        // TODO: check that pixel @ 60,60 is yellow !
 
@@ -64,7 +64,7 @@
        // the textfield value.
        tester.movePointerTo(39, 60);
        check_equals(string(text->get_text_value()), string("MouseOut"));
-       xcheck_equals(string(text2->get_text_value()), string("RollOut"));
+       check_equals(string(text2->get_text_value()), string("RollOut"));
        check(!tester.isMouseOverMouseEntity());
        // TODO: check that pixel @ 60,60 is red !
 
@@ -72,7 +72,7 @@
        // as we're outside of the button.
        tester.pressMouseButton();
        check_equals(string(text->get_text_value()), string("MouseOut"));
-       xcheck_equals(string(text2->get_text_value()), string("RollOut"));
+       check_equals(string(text2->get_text_value()), string("RollOut"));
        check(!tester.isMouseOverMouseEntity());
        // TODO: check that pixel @ 60,60 is red !
 
@@ -80,19 +80,19 @@
        // as we're outside of the button.
        tester.depressMouseButton();
        check_equals(string(text->get_text_value()), string("MouseOut"));
-       xcheck_equals(string(text2->get_text_value()), string("RollOut"));
+       check_equals(string(text2->get_text_value()), string("RollOut"));
        check(!tester.isMouseOverMouseEntity());
        // TODO: check that pixel @ 60,60 is red !
 
        // Now press the mouse inside and release outside
        tester.movePointerTo(60, 60);
        check_equals(string(text->get_text_value()), string("MouseOver"));
-       xcheck_equals(string(text2->get_text_value()), string("RollOver"));
+       check_equals(string(text2->get_text_value()), string("RollOver"));
        check(tester.isMouseOverMouseEntity());
        // TODO: check that pixel @ 60,60 is yellow !
        tester.pressMouseButton();
        check_equals(string(text->get_text_value()), string("MouseDown"));
-       xcheck_equals(string(text2->get_text_value()), string("Press"));
+       check_equals(string(text2->get_text_value()), string("Press"));
        check(tester.isMouseOverMouseEntity());
        // TODO: check that pixel @ 60,60 is green !
        tester.movePointerTo(39, 60);




reply via email to

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