⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 guiroot.h

📁 HGE 2D游戏引擎制作的一个演示
💻 H
字号:
/**********************************************
			整个引擎的外界响应接口类
**********************************************/
#pragma once
#include "GUI.h"
#include "GUITitleBar.h"
#include "GUIWarnBox.h"
#include "Particle.h"


//#define SHOW_PARTICLES

class GUIRoot :
	public GUI
{
public:
	GUIRoot(void);
	~GUIRoot(void);

protected:

#ifdef SHOW_PARTICLES
	class RenderSprite*		m_pParticleSprite;
	class ParticleSystem*	m_pParticleSystem;
#endif
	char szBuf[1024];

	class GUI*			m_pClientFrame;
	class GUITitleBar*			m_pTitleBar;
	class GUIWarnBox*			m_pWarnBox;

public:
	bool CreateGUIRoot(char* lpszName,float x,float y,float w,float h);
	bool InitGUIRoot();
	bool DestroyGUIRoot();
	void OnSize(float w,float h);

	bool SetClientFrame(GUI* pClient);
	GUI* GetClientFrame();
	GUITitleBar* GetTitleBar();

	float GetClientFrameWidth();		//获得客户区可用大小
	float GetClientFrameHeight();		//获得客户区可用大小

	void ShowTitleBarButton(bool bShowMax,bool bShowMin);

	void Import_FrameDraw();
	void Import_Updata(float dt);

	void MessageBox(char* lpszMsg,GUI* pCaptureWarnObject,DWORD dwType = WBS_OK);
	bool AppendChildGUI(GUI *pGUI,float startX,float startY);		///增加子对象
	void InsertChildGUI(GUI *pGUI,float startX,float startY,char *lpszName,int inserttype = 0);
	void InsertChildGUI(GUI *pGUI,float startX,float startY,GUI *pTagGUI,int inserttype = 0);
	void InsertChildGUI(GUI *pGUI,float startX,float startY,int index,int inserttype = 0);

public:
	int OnMouseMessage(UINT Msg,WPARAM wParam,LPARAM lParam);					///缺省情况下处理的鼠标消息
	void DefMouseMoveOut();

	virtual void Render();
	virtual void Updata(float dt);
	virtual void TimeFrame();
};

⌨️ 快捷键说明

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