54 lines
1.1 KiB
C++
54 lines
1.1 KiB
C++
/* -----------------------------------------------------------------------------
|
|
GSFramework
|
|
Copyright 2001-2013 Emmanuel Julien. All Rights Reserved.
|
|
----------------------------------------------------------------------------- */
|
|
|
|
|
|
#ifndef __NWIDGETSIZER__
|
|
#define __NWIDGETSIZER__
|
|
|
|
|
|
#include "ui/widget.h"
|
|
|
|
|
|
namespace GS {
|
|
namespace S2D {
|
|
|
|
/*!
|
|
@short Sizer widget.
|
|
@author Emmanuel Julien (ejulien@nworks.fr)
|
|
*/
|
|
struct SizerWidget : public Widget
|
|
{
|
|
virtual void Invalidate();
|
|
|
|
Widget *Add(Widget *widget);
|
|
bool Remove(Widget *widget) { return children.Remove(widget); }
|
|
|
|
SizerWidget(int id = -1) : Widget(id) { type = WidgetTypeSizer; }
|
|
};
|
|
|
|
struct HSizerWidget : public SizerWidget
|
|
{
|
|
virtual void Refresh();
|
|
virtual void Compose(Picture &output, const iRect &out_rect);
|
|
|
|
void SetColumnSize(int size);
|
|
|
|
HSizerWidget(int id = -1) : SizerWidget(id) { type = WidgetTypeHSizer; }
|
|
};
|
|
|
|
struct VSizerWidget : public SizerWidget
|
|
{
|
|
virtual void Refresh();
|
|
virtual void Compose(Picture &output, const iRect &out_rect);
|
|
|
|
VSizerWidget(int id = -1) : SizerWidget(id) { type = WidgetTypeVSizer; }
|
|
};
|
|
|
|
} // S2D
|
|
} // GS
|
|
|
|
|
|
#endif // __NWIDGETSIZER__
|