callback system for ui widgets

This commit is contained in:
2025-12-05 16:16:51 +02:00
parent eee2bc0ccb
commit 568876a7ef
9 changed files with 125 additions and 48 deletions
+8 -1
View File
@@ -12,6 +12,11 @@ enum w_type {
w_group,
};
typedef struct {
WINDOW *win;
void *app;
} callback_args_t;
typedef struct widget_t {
uint32_t id;
char title[DIALOGUE_TITLE];
@@ -21,9 +26,11 @@ typedef struct widget_t {
uint32_t m_y;
WINDOW *const* parent_win;
struct widget_t *w_parent;
void (*callback) (WINDOW *win, void *widget, void *data);
void (*callback) (callback_args_t *args, void *widget, void *data, void *resp_data);
} widget_t;
typedef void (*callback_t) (callback_args_t *args, void *widget, void *data, void *resp_data);
enum pmt_attrs {
PMT_POS_CENTER = 01,
PMT_ALIGN_CENTER = 03,