ULRE/inc/hgl/gui/Layout.h

59 lines
1.2 KiB
C++

#ifndef HGL_GUI_LAYOUT_INCLUDE
#define HGL_GUI_LAYOUT_INCLUDE
#include<hgl/gui/Widget.h>
#include<hgl/type/SortedSets.h>
namespace hgl
{
namespace gui
{
/**
* 布局器基础
*/
class LayoutBase
{
protected:
SortedSets<Widget *> widgets_set;
public:
virtual bool AddWidget(Widget *);
virtual bool RemoveWidget(Widget *);
};//class LayoutBase
/**
* 布局器
*/
class Layout:public LayoutBase
{
public:
};//class Layout:public LayoutBase
/**
* 垂直分布布局器
*/
class VBoxLayout:public LayoutBase
{
public:
};//class VBoxLayout:public LayoutBase
/**
* 水平分布布局器
*/
class HBoxLayout:public LayoutBase
{
public:
};//class HBoxLayout:public LayoutBase
/**
* 网格分布布局器
*/
class GridLayout:public LayoutBase
{
public:
};//class GridLayout:public LayoutBase
}//namespace gui
}//namespace hgl
#endif//HGL_GUI_LAYOUT_INCLUDE