59 lines
1.2 KiB
C++
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
|