| René Nyffenegger's collection of things on the web | |
|
René Nyffenegger on Oracle - Most wanted - Feedback
- Follow @renenyffenegger
|
DisplayClip [Ming wrapper class] | ||
The sourceDisplayClip.h
#ifndef DISPLAY_CLIP_H #define DISPLAY_CLIP_H #include "DisplayItem.h" #include "Action.h" /* A Character_ can be Add'ed to a MovieClip_ which returns a DisplayItem. A MovieClip is a Character_, therefor, it can be Added to a MovieClip_ as well. However, an added MovieClip has some functionality, notably adding Actions for mouse and key events, which give raise to a derived class from DisplayItem. */ class DisplayClip : public DisplayItem { friend class Movie; friend class MovieClip; protected: DisplayClip(SWFDisplayItem d); public: void OnLoad (std::string const&); void OnEnterFrame(std::string const&); void OnUnLoad (std::string const&); void OnMouseMove (std::string const&); void OnMouseDown (std::string const&); void OnMouseUp (std::string const&); void OnKeyDown (std::string const&); void OnKeyUp (std::string const&); void OnData (std::string const&); void OnLoad (Action const&); void OnEnterFrame(Action const&); void OnUnLoad (Action const&); void OnMouseMove (Action const&); void OnMouseDown (Action const&); void OnMouseUp (Action const&); void OnKeyDown (Action const&); void OnKeyUp (Action const&); void OnData (Action const&); /* Todo: flags one of the following??? SWFACTION_ONLOAD SWFACTION_ENTERFRAME SWFACTION_UNLOAD SWFACTION_MOUSEMOVE SWFACTION_MOUSEDOWN SWFACTION_MOUSEUP SWFACTION_KEYDOWN SWFACTION_KEYUP SWFACTION_DATA Does only work (???) if DisplayItem is an instance of a MovieClip. Generates a onClipEvent() action => For this reason, it is perheps advisable to sub class DisplayItem for classes instances that represent MovieClips. */ private: void On( Action const&, int flags); void On(std::string const&, int flags); }; #endif DisplayClip.cpp
#include "DisplayClip.h"
#include "ming.h"
DisplayClip::DisplayClip(SWFDisplayItem d) : DisplayItem(d) {
}
void DisplayClip::OnLoad(std::string const& a) {
On(a, SWFACTION_ONLOAD);
}
void DisplayClip::OnEnterFrame(std::string const& a) {
On(a, SWFACTION_ENTERFRAME);
}
void DisplayClip::OnUnLoad(std::string const& a) {
On(a, SWFACTION_UNLOAD);
}
void DisplayClip::OnMouseMove(std::string const& a) {
On(a, SWFACTION_MOUSEMOVE);
}
void DisplayClip::OnMouseDown(std::string const& a) {
On(a, SWFACTION_MOUSEDOWN);
}
void DisplayClip::OnMouseUp(std::string const& a) {
On(a, SWFACTION_MOUSEUP);
}
void DisplayClip::OnKeyDown(std::string const& a) {
On(a, SWFACTION_KEYDOWN);
}
void DisplayClip::OnKeyUp(std::string const& a) {
On(a, SWFACTION_KEYUP);
}
void DisplayClip::OnData(std::string const& a) {
On(a, SWFACTION_DATA);
}
void DisplayClip::OnLoad(Action const& a) {
On(a, SWFACTION_ONLOAD);
}
void DisplayClip::OnEnterFrame(Action const& a) {
On(a, SWFACTION_ENTERFRAME);
}
void DisplayClip::OnUnLoad(Action const& a) {
On(a, SWFACTION_UNLOAD);
}
void DisplayClip::OnMouseMove(Action const& a) {
On(a, SWFACTION_MOUSEMOVE);
}
void DisplayClip::OnMouseDown(Action const& a) {
On(a, SWFACTION_MOUSEDOWN);
}
void DisplayClip::OnMouseUp(Action const& a) {
On(a, SWFACTION_MOUSEUP);
}
void DisplayClip::OnKeyDown(Action const& a) {
On(a, SWFACTION_KEYDOWN);
}
void DisplayClip::OnKeyUp(Action const& a) {
On(a, SWFACTION_KEYUP);
}
void DisplayClip::OnData(Action const& a) {
On(a, SWFACTION_DATA);
}
void DisplayClip::On(std::string const& a, int flags) {
On(Action(a), flags);
}
void DisplayClip::On(Action const& a, int flags) {
SWFDisplayItem_addAction(item_, a.action_, flags);
}
Examples
The following clsses demonstrate this class:
|