ui block widget

The ui block is not really a widget but is a container for button widgets.

This is the definition of a ui block from the file interface.h:

typedef struct uiBlock {
struct uiBlock *next, *prev;

ListBase buttons;

char name[UI_MAX_NAME_STR];

float winmat[4][4];

float minx, miny, maxx, maxy;
float aspect;
void (*func)();

short col, font; /* indices */
void *curfont;

short autofill, flag, win, winq, direction, dt;
uint paper;

} uiBlock;

The block can be part of a linked list of ui blocks and owns a linked list of buttons itself. The function pointer func is used for ???????????

The ui blocks are created with the uiNewBlock routine declared in the file interface.h and defined in the file interface.c:

uiBlock *uiNewBlock(ListBase *lb, char *name, short dt, short font, uint paper, short win);