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:
|