guiappwindow.h

来自「老外为HGE写的扩展GUI」· C头文件 代码 · 共 52 行

H
52
字号
#ifndef __GUIAPPWINDOW_H__
#define __GUIAPPWINDOW_H__

#include "guiappobj.h"
#include "m_list.h"

class GUIApp;

class GUIAppWindow : public GUIAppObject {
protected:

	TList <GUIAppObject> objects;
	hgeQuad windowBg;
	float wWidth, wHeight;
	float ox, oy;
	GUIApp *parentapp;
	int curSelection;
	DWORD bgColor;
	DWORD frameColor;

	void SetupSize(float x, float y, float w, float h );
	void MoveObjects(float dx, float dy );
	void CheckObjectFocus ();
	void SelectObject ( int id );
	void SelectNext();
	void OnTop();
public:

	GUIAppWindow( GUIApp *parent, int _id, float x, float y, float w, float h );

	void AddCtrl ( GUIAppObject *obj );
	virtual void SetBGColor ( DWORD clr );
	virtual void SetFrameColor ( DWORD clr );
	virtual void Render();
	virtual void Move ( float dx, float dy );

	// overloads
	virtual void Focus(bool bFocused);
	virtual void MouseOver(bool bOver);
	virtual bool MouseMove(float x, float y);
	virtual bool MouseLButton(bool bDown);
	virtual bool MouseRButton(bool bDown);
	virtual bool MouseWheel(int nNotches);
	virtual bool KeyClick(int key, int chr);
	virtual void Update(float dt);

	// implementation
	virtual void OnEvent ( int obj_id ) = 0;
};

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?