I've got a business class, Spam and the corresponding view class, SpamView.
How can I augment MouseEvents coming out of SpamView so the MouseEvents which come out of it contain a reference to the instance of Spam which the SpamView is displaying?
Here's how I'd like to use it:
class ViewContainer {
...
for each (spam in spams) {
addChild(new SpamView(spam));
...
function handleMouseMove(event:MouseEvent) {
if (event is SpamViewMouseEvent)
trace("The mouse is being moved over spam:", spam)
}
}
Thanks!
Things I've considered which don't work:
Adding event listeners to each
SpamView: the book keeping (making sure that they are added/removed properly) is a pain.Using
event.target: the event's target may be a child of theSpamView(which isn't very useful)Listening for a
MouseEvent, creating a newSpamViewMouseEvent, copying all the fields over, then dispatching that: copying all the fields manually is also a pain.