24#include <widgets/gp_common.h>
99 unsigned int no_resize:1;
112 unsigned int redraw_child:1;
116 unsigned int redraw_children:1;
162 char payload_data[] GP_ALIGNED;
170#define GP_WIDGET_PAYLOAD(self) (void*)((self)->payload_data)
370 GP_HCENTER_WEAK = 0x00,
371 GP_VCENTER_WEAK = 0x00,
385 size_t payload_size);
395#define GP_WIDGET_ASSERT(self, ret) do { \
397 GP_BUG("NULL widget!"); \
412#define GP_WIDGET_CLASS_ASSERT(self, wclass, ret) do { \
413 GP_WIDGET_ASSERT(self, ret); \
414 if (self->widget_class != wclass) { \
415 GP_BUG("Invalid widget (%p) class %u != %u", \
416 self, self->widget_class, wclass); \
431#define GP_WIDGET_TYPE_ASSERT(self, wtype, ret) do { \
432 GP_WIDGET_ASSERT(self, ret); \
433 if (self->type != wtype) {\
434 GP_BUG("Invalid widget type %s != %s", \
435 gp_widget_type_id(self), gp_widget_type_name(wtype)); \
A compiler dependent macros.