Files
Webcam/include/engine/ui/widget_staticcontainer.h
2026-06-22 11:49:35 +02:00

55 lines
1.0 KiB
C++

/* -----------------------------------------------------------------------------
GSFramework
Copyright 2001-2013 Emmanuel Julien. All Rights Reserved.
----------------------------------------------------------------------------- */
#ifndef __NUI_WIDGET_CONTAINER__
#define __NUI_WIDGET_CONTAINER__
#include "ui/widget.h"
namespace GS {
namespace S2D {
//
struct ContainerCell
{
iRect cell_rect; ///< Cell rect in parent coordinate frame.
sWidget widget; ///< Cell widget.
};
/*!
@short Container widget.
@author Emmanuel Julien (ejulien@nworks.fr)
*/
class ContainerWidget : public Widget
{
protected:
List <ContainerCell *> cell_list;
public:
void Invalidate();
virtual void Refresh();
virtual void Compose(Picture &, const iRect &out_rect);
ContainerCell *GetCell(const Widget *) const;
Widget *Add(Widget *, const iRect &cell_rect);
bool Remove(Widget *);
ContainerWidget(int id = -1) : Widget(id) { type = WidgetTypeContainer; }
~ContainerWidget();
};
} // S2D
} // GS
#endif // __NWIDGETCONTAINER__