| maug
    Quick and dirty C mini-augmentation library. | 

| Data Structures | |
| struct | RETROGUI_CTL_BASE | 
| Fields common to ALL RETROGUI_CTL types.  More... | |
| union | RETROGUI_CTL | 
| Macros | |
| #define | RETROGUI_CTL_TABLE_BASE(f) | 
| Table defining all control types and their specific fields in RETROGUI_CTL.  More... | |
| #define | RETROGUI_CTL_TABLE(f) | 
| #define | retrogui_can_focus_ctl(ctl) | 
| Determine if a RETROGUI_CTL can hold RETROGUI::focus.  More... | |
| #define | RETROGUI_CTL_TABLE_FIELDS(idx, c_name, c_fields) | 
| Creates the corresponding RETROGUI_* structs from ::RETROGUI_CTL_TABLE that populate union RETROGUI_CTL.  More... | |
| #define | RETROGUI_CTL_TABLE_TYPES(idx, c_name, c_fields) struct RETROGUI_CTL_ ## c_name c_name; | 
| Adds the structs created by RETROGUI_CTL_TABLE_FIELDS to union RETROGUI_CTL. | |
| #define retrogui_can_focus_ctl | ( | ctl | ) | 
Determine if a RETROGUI_CTL can hold RETROGUI::focus.
| #define RETROGUI_CTL_TABLE | ( | f | ) | 
| #define RETROGUI_CTL_TABLE_BASE | ( | f | ) | 
Table defining all control types and their specific fields in RETROGUI_CTL.
This table takes a macro as an argument, itself with the argumentS:
| type_idx | Index passed to RETROGUI_CTL_BASE::type. | 
| struct | Name of the struct under the RETROGUI_CTL union. | 
| fields | Semicolon-separated list of fields for the type struct. | 
Each such macro defines a new control type.
All entries in this table have corresponding retrogui_redraw_*, retrogui_poll_*, retrogui_init_*, and retrogui_push_* functions which are called internally from retrogui_redraw_ctls(), retrogui_poll_ctls(), retrogui_init_ctl(), and retrogui_push_ctl(), respectively.
| #define RETROGUI_CTL_TABLE_FIELDS | ( | idx, | |
| c_name, | |||
| c_fields | |||
| ) | 
Creates the corresponding RETROGUI_* structs from ::RETROGUI_CTL_TABLE that populate union RETROGUI_CTL.