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)
368 GP_HCENTER_WEAK = 0x00,
369 GP_VCENTER_WEAK = 0x00,
383 size_t payload_size);
393#define GP_WIDGET_ASSERT(self, ret) do { \
395 GP_BUG("NULL widget!"); \
410#define GP_WIDGET_CLASS_ASSERT(self, wclass, ret) do { \
411 GP_WIDGET_ASSERT(self, ret); \
412 if (self->widget_class != wclass) { \
413 GP_BUG("Invalid widget (%p) class %u != %u", \
414 self, self->widget_class, wclass); \
429#define GP_WIDGET_TYPE_ASSERT(self, wtype, ret) do { \
430 GP_WIDGET_ASSERT(self, ret); \
431 if (self->type != wtype) {\
432 GP_BUG("Invalid widget type %s != %s", \
433 gp_widget_type_id(self), gp_widget_type_name(wtype)); \
A compiler dependent macros.