[Top][All Lists]
[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: |
Sun, 29 Apr 2007 14:08:44 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Sandro Santilli <strk> 07/04/29 14:08:44
Modified files:
. : ChangeLog
server : button_character_instance.cpp
button_character_instance.h
Log message:
* server/button_character_instance.{cpp,h}: implement
pointInShape().
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.3032&r2=1.3033
http://cvs.savannah.gnu.org/viewcvs/gnash/server/button_character_instance.cpp?cvsroot=gnash&r1=1.45&r2=1.46
http://cvs.savannah.gnu.org/viewcvs/gnash/server/button_character_instance.h?cvsroot=gnash&r1=1.19&r2=1.20
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.3032
retrieving revision 1.3033
diff -u -b -r1.3032 -r1.3033
--- ChangeLog 28 Apr 2007 17:05:53 -0000 1.3032
+++ ChangeLog 29 Apr 2007 14:08:44 -0000 1.3033
@@ -1,3 +1,7 @@
+2007-04-29 Sandro Santilli <address@hidden>
+
+ * server/button_character_instance.{cpp,h}: implement pointInShape().
+
2007-04-28 Sandro Santilli <address@hidden>
* server/vm/ASHandlers.cpp (ActionWith): skip with() blocks
Index: server/button_character_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/button_character_instance.cpp,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -b -r1.45 -r1.46
--- server/button_character_instance.cpp 26 Apr 2007 10:56:50 -0000
1.45
+++ server/button_character_instance.cpp 29 Apr 2007 14:08:44 -0000
1.46
@@ -804,12 +804,36 @@
|| (m_mouse_state == DOWN && rec.m_down)
|| (m_mouse_state == OVER && rec.m_over))
{
+ // TODO: should we consider having multiple characters
+ // for a single state ?
return m_record_character[i]->getBounds();
}
}
return geometry::Range2d<float>(geometry::nullRange);
}
+bool
+button_character_instance::pointInShape(float x, float y) const
+{
+ for (unsigned 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))
+ {
+ // TODO: should we consider having multiple characters
+ // for a single state ?
+ return m_record_character[i]->pointInShape(x, y);
+ }
+ }
+ return false; // no shape
+}
+
character*
button_character_instance::get_relative_target(const std::string& name)
{
Index: server/button_character_instance.h
===================================================================
RCS file: /sources/gnash/gnash/server/button_character_instance.h,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- server/button_character_instance.h 12 Apr 2007 11:35:30 -0000 1.19
+++ server/button_character_instance.h 29 Apr 2007 14:08:44 -0000 1.20
@@ -20,7 +20,7 @@
// SWF buttons. Mouse-sensitive update/display, actions, etc.
-/* $Id: button_character_instance.h,v 1.19 2007/04/12 11:35:30 strk Exp $ */
+/* $Id: button_character_instance.h,v 1.20 2007/04/29 14:08:44 strk Exp $ */
#ifndef GNASH_BUTTON_CHARACTER_INSTANCE_H
#define GNASH_BUTTON_CHARACTER_INSTANCE_H
@@ -136,6 +136,9 @@
geometry::Range2d<float> getBounds() const;
+ // See dox in character.h
+ bool pointInShape(float x, float y) const;
+
static as_value enabled_getset(const fn_call& fn);
bool get_enabled();
[Gnash-commit] gnash ChangeLog server/button_character_instanc...,
Sandro Santilli <=