[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ...
From: |
Sandro Santilli |
Subject: |
[Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ... |
Date: |
Tue, 01 Apr 2008 18:51:31 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Sandro Santilli <strk> 08/04/01 18:51:31
Modified files:
. : ChangeLog
server : edit_text_character.cpp edit_text_character.h
sprite_instance.cpp
Log message:
* server/edit_text_character.{cpp,h}: always register
the variable name, just don't set a value for it
unless we have one defined.
* server/sprite_instance.cpp (get_member): don't use
a registered textfield variable if there's no text
defined for the corresponding textfield.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.6140&r2=1.6141
http://cvs.savannah.gnu.org/viewcvs/gnash/server/edit_text_character.cpp?cvsroot=gnash&r1=1.160&r2=1.161
http://cvs.savannah.gnu.org/viewcvs/gnash/server/edit_text_character.h?cvsroot=gnash&r1=1.71&r2=1.72
http://cvs.savannah.gnu.org/viewcvs/gnash/server/sprite_instance.cpp?cvsroot=gnash&r1=1.493&r2=1.494
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.6140
retrieving revision 1.6141
diff -u -b -r1.6140 -r1.6141
--- ChangeLog 1 Apr 2008 18:36:21 -0000 1.6140
+++ ChangeLog 1 Apr 2008 18:51:29 -0000 1.6141
@@ -1,5 +1,14 @@
2008-04-01 Sandro Santilli <address@hidden>
+ * server/edit_text_character.{cpp,h}: always register
+ the variable name, just don't set a value for it
+ unless we have one defined.
+ * server/sprite_instance.cpp (get_member): don't use
+ a registered textfield variable if there's no text
+ defined for the corresponding textfield.
+
+2008-04-01 Sandro Santilli <address@hidden>
+
* server/sprite_instance.{cpp,h}: streamline headers inclusion.
* server/edit_text_character.{cpp,h}: keep note about whether
text is defined, and don't register the text variable until
Index: server/edit_text_character.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/edit_text_character.cpp,v
retrieving revision 1.160
retrieving revision 1.161
diff -u -b -r1.160 -r1.161
--- server/edit_text_character.cpp 1 Apr 2008 18:36:21 -0000 1.160
+++ server/edit_text_character.cpp 1 Apr 2008 18:51:30 -0000 1.161
@@ -419,9 +419,10 @@
if ( _textDefined )
{
setTextValue(utf8::decodeCanonicalString(m_def->get_default_text(), version));
- registerTextVariable();
}
+ registerTextVariable();
+
m_dummy_style.push_back(fill_style());
reset_bounding_box(0, 0);
@@ -1583,20 +1584,12 @@
void
edit_text_character::registerTextVariable()
{
-//#define DEBUG_DYNTEXT_VARIABLES 1
+#define DEBUG_DYNTEXT_VARIABLES 1
#ifdef DEBUG_DYNTEXT_VARIABLES
log_debug(_("registerTextVariable() called"));
#endif
- if ( ! _textDefined )
- {
-#ifdef DEBUG_DYNTEXT_VARIABLES
- log_debug(_("registerTextVariable() no-op call (has no text)"));
-#endif
- return;
- }
-
if ( _text_variable_registered )
{
#ifdef DEBUG_DYNTEXT_VARIABLES
@@ -1642,16 +1635,23 @@
// as_environment& env = get_environment();
setTextValue(utf8::decodeCanonicalString(val.to_string(),
version));
}
- else
+ else if ( _textDefined )
{
as_value newVal = as_value(utf8::encodeCanonicalString(_text,
version));
#ifdef DEBUG_DYNTEXT_VARIABLES
log_debug(_("target sprite (%s @ %p) does NOT have a member
named %s (no problem, we'll add it with value %s)"),
- typeName(*target).c_str(), (void*)target,
_vm.getStringTable().value(key).c_str(),
- newVal.to_debug_string().c_str());
+ typeName(*target), (void*)target,
_vm.getStringTable().value(key),
+ newVal.to_debug_string());
#endif
target->set_member(key, newVal);
}
+ else
+ {
+#ifdef DEBUG_DYNTEXT_VARIABLES
+ log_debug(_("target sprite (%s @ %p) does NOT have a member
named %s, and we don't have text defined"),
+ typeName(*target), (void*)target,
_vm.getStringTable().value(key));
+#endif
+ }
sprite_instance* sprite = target->to_movie();
@@ -1660,7 +1660,7 @@
// add the textfield variable to the target sprite
// TODO: have set_textfield_variable take a string_table::key
instead ?
#ifdef DEBUG_DYNTEXT_VARIABLES
- log_debug("Calling set_textfield_variable(%s) against sprite
%s", _vm.getStringTable().value(key).c_str(), sprite->getTarget().c_str());
+ log_debug("Calling set_textfield_variable(%s) against sprite
%s", _vm.getStringTable().value(key), sprite->getTarget());
#endif
sprite->set_textfield_variable(_vm.getStringTable().value(key),
this);
Index: server/edit_text_character.h
===================================================================
RCS file: /sources/gnash/gnash/server/edit_text_character.h,v
retrieving revision 1.71
retrieving revision 1.72
diff -u -b -r1.71 -r1.72
--- server/edit_text_character.h 1 Apr 2008 18:36:21 -0000 1.71
+++ server/edit_text_character.h 1 Apr 2008 18:51:30 -0000 1.72
@@ -115,8 +115,8 @@
/// Return value of our text.
std::string get_text_value() const;
- /// Return true if this TextField has text defined
- bool getTextDefined();
+ /// Return true if text is defined
+ bool getTextDefined() const { return _textDefined; }
/// We have a "text" member.
void set_member(string_table::key name, const as_value& val,
Index: server/sprite_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/sprite_instance.cpp,v
retrieving revision 1.493
retrieving revision 1.494
diff -u -b -r1.493 -r1.494
--- server/sprite_instance.cpp 1 Apr 2008 18:36:22 -0000 1.493
+++ server/sprite_instance.cpp 1 Apr 2008 18:51:30 -0000 1.494
@@ -2375,11 +2375,13 @@
for (TextFieldPtrVect::const_iterator i=etc->begin(), e=etc->end(); i!=e;
++i)
{
TextFieldPtr tf = *i;
+ if ( tf->getTextDefined() )
+ {
val->set_string(tf->get_text_value());
- // break ?
- }
return true;
}
+ }
+ }
return false;
- [Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ..., Sandro Santilli, 2008/04/01
- [Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ...,
Sandro Santilli <=
- [Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ..., Sandro Santilli, 2008/04/08
- [Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ..., Sandro Santilli, 2008/04/10
- [Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ..., Sandro Santilli, 2008/04/10
- [Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ..., Sandro Santilli, 2008/04/10
- [Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ..., Sandro Santilli, 2008/04/10
- [Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ..., Sandro Santilli, 2008/04/11
- [Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ..., Sandro Santilli, 2008/04/19
- Re: [Gnash-commit] gnash ChangeLog server/edit_text_character.cpp ..., zou lunkai, 2008/04/28