![]() |
CMGDK r49-rc2
|
流程对象基类 更多...
#include <FlowObject.H>
公有成员 | |
DefEvent (void, OnResize,(int, int)) | |
屏幕尺寸调整 | |
DefEvent (void, OnDestroy,(FlowObject *)) | |
销毁事件 | |
DefEvent (void, OnFlowReturn,(FlowObject *)) | |
流程返回事件 | |
FlowObject () | |
本类构造函数 | |
virtual | ~FlowObject () |
本类析构函数 | |
virtual FlowObject * | GetNextObject () |
取得下一个对象 | |
virtual void | ObjectReturn (FlowObject *) |
对象返回函数 | |
virtual void | Update () |
virtual void | UpdateObject () |
刷新函数 | |
virtual void | Draw () |
对象绘制函数 | |
virtual void | LastlyDraw () |
画面绘制 | |
virtual void | DrawObject () |
最终画面绘制(当对象都绘制完成后会被调用) | |
公有属性 | |
bool | KeyPreview |
键盘事件预览 | |
ObjectControl | Control |
对象控制器 | |
Property< FlowObjectState > | ObjectState |
当前对象状态虚拟变量 | |
保护成员 | |
FlowObjectState | GetState () |
void | Proc_Resize (int, int) |
处事重设尺寸事件 | |
保护属性 | |
FlowObject * | NextObject |
下一个对象 | |
FlowObjectState | fos |
当前对象状态 | |
友元 | |
class | FlowControl |
流程对象基类
流程对象是指可以放在流程控制器里的一种特殊对象,它类似于HGLv17和HGLv16加强版中的GameProgram。
需要注意的是在HGLv18中,画面绘制和刷新是分离的,刷新是在不停的运行的,而画面绘制只在时间到达时才会被调用。
另:KeyPreview默认为false,其为true时键盘事件先传给FlowObject的事件处理函数,为false时先传给Control内的控件
hgl::FlowObject::FlowObject | ( | ) |
本类构造函数
hgl::FlowObject::~FlowObject | ( | ) | [virtual] |
本类析构函数
流程对像基类析构函数
NextObject如果没有被清除,在这里会被清除
hgl::FlowObject::DefEvent | ( | void | , |
OnDestroy | , | ||
(FlowObject *) | |||
) |
销毁事件
hgl::FlowObject::DefEvent | ( | void | , |
OnFlowReturn | , | ||
(FlowObject *) | |||
) |
流程返回事件
virtual void hgl::FlowObject::Draw | ( | ) | [inline, virtual] |
对象绘制函数
对象绘制函数。如果对象没有重载这个函数,即被视为放弃绘制属性,将不会存在于对象控制器的绘制列表里
被hgl::TheoraMovie、hgl::FlowControl、hgl::IAOFlowControl及hgl::MultiFlowControl重载。
virtual void hgl::FlowObject::DrawObject | ( | ) | [inline, virtual] |
最终画面绘制(当对象都绘制完成后会被调用)
FlowObject * hgl::FlowObject::GetNextObject | ( | ) | [virtual] |
取得下一个对象
取得下一个对象。如果不重载此函数,它将返回当前对象中的NextObject变量
注意:下一个对象可以不是流程对象(FlowObject),但非流程对象不能进行流程操作,即不能流程控制器清除自己进入下一流程
FlowObjectState hgl::FlowObject::GetState | ( | ) | [inline, protected] |
virtual void hgl::FlowObject::LastlyDraw | ( | ) | [inline, virtual] |
画面绘制
void hgl::FlowObject::ObjectReturn | ( | FlowObject * | fo | ) | [virtual] |
对象返回函数
virtual void hgl::FlowObject::Update | ( | ) | [inline, virtual] |
对象刷新函数。如果对象没有重载这个函数,即被视为放弃刷新属性,将不会存在于对象控制器的刷新列表里
被hgl::TheoraMovie、hgl::IAOFlowControl、hgl::FlowControl、hgl::IAOFlowControl及hgl::MultiFlowControl重载。
virtual void hgl::FlowObject::UpdateObject | ( | ) | [inline, virtual] |
刷新函数
friend class FlowControl [friend] |
FlowObjectState hgl::FlowObject::fos [protected] |
当前对象状态
键盘事件预览
FlowObject* hgl::FlowObject::NextObject [protected] |
下一个对象
当前对象状态虚拟变量