|
|
@ -76,6 +76,35 @@ typedef struct GListObject { |
|
|
|
*/ |
|
|
|
typedef enum scroll_t { scrollAlways, scrollAuto, scrollSmooth } scroll_t; |
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief The internal list object flags |
|
|
|
* @note Used only for writing a custom draw routine. |
|
|
|
* @{ |
|
|
|
*/ |
|
|
|
#define GLIST_FLG_MULTISELECT (GWIN_FIRST_CONTROL_FLAG << 0) |
|
|
|
#define GLIST_FLG_HASIMAGES (GWIN_FIRST_CONTROL_FLAG << 1) |
|
|
|
#define GLIST_FLG_SCROLLALWAYS (GWIN_FIRST_CONTROL_FLAG << 2) |
|
|
|
#define GLIST_FLG_SCROLLSMOOTH (GWIN_FIRST_CONTROL_FLAG << 3) |
|
|
|
#define GLIST_FLG_ENABLERENDER (GWIN_FIRST_CONTROL_FLAG << 4) |
|
|
|
/** @} */ |
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief The internal list item structure |
|
|
|
* @note Used only for writing a custom draw routine. |
|
|
|
*/ |
|
|
|
typedef struct ListItem { |
|
|
|
gfxQueueASyncItem q_item; // This must be the first member in the struct
|
|
|
|
|
|
|
|
uint16_t flags; |
|
|
|
#define GLIST_FLG_SELECTED 0x0001 |
|
|
|
uint16_t param; // A parameter the user can specify himself
|
|
|
|
const char* text; |
|
|
|
#if GWIN_NEED_LIST_IMAGES |
|
|
|
gdispImage* pimg; |
|
|
|
#endif |
|
|
|
} ListItem; |
|
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus |
|
|
|
extern "C" { |
|
|
|
#endif |
|
|
|