ULRE/inc/hgl/gui/ThemeForm.h

39 lines
950 B
C
Raw Normal View History

2020-10-21 11:44:33 +08:00
#ifndef HGL_GUI_THEME_FORM_INCLUDE
#define HGL_GUI_THEME_FORM_INCLUDE
#include<hgl/graph/VKRenderTarget.h>
#include<hgl/gui/Form.h>
namespace hgl
{
namespace gui
{
2020-10-26 21:51:51 +08:00
using namespace hgl::graph;
2020-10-21 11:44:33 +08:00
class ThemeForm
{
protected:
Form *form;
2020-10-29 22:15:59 +08:00
2020-10-26 21:51:51 +08:00
RenderTarget *render_target;
RenderCmdBuffer *cmd_buf;
2020-10-21 11:44:33 +08:00
public:
ThemeForm(Form *,RenderTarget *,RenderCmdBuffer *);
2020-10-26 21:51:51 +08:00
virtual ~ThemeForm();
2020-10-30 19:02:50 +08:00
RenderTarget * GetRenderTarget(){return render_target;}
bool SetRenderTarget(RenderTarget *);
2020-10-26 21:51:51 +08:00
2020-10-30 19:02:50 +08:00
void Resize(uint w,uint h);
2020-10-26 21:51:51 +08:00
2020-10-30 19:02:50 +08:00
bool BeginRender();
virtual bool Render()=0;
bool EndRender();
2020-10-21 11:44:33 +08:00
};//class ThemeForm
}//namespace gui
}//namespace hgl
#endif//HGL_GUI_THEME_FORM_INCLUDE