commit ab785159a83ddb3ca6309027f7e63139a707e5cf from: Onana Onana Xavier Manuel date: Mon Jul 6 22:38:22 2026 UTC Text bug fix in button and command added commit - c3628d8176854d6bdc1cb7e104626478162bb09f commit + ab785159a83ddb3ca6309027f7e63139a707e5cf blob - 9a3054785d21ab5b0521066d79388bcd36360df7 blob + 5fc883410e7985f9df5ed098ac4eccf2d393f75e --- aui.h +++ aui.h @@ -65,6 +65,8 @@ struct aui_window_config { struct aui_button_config { const char *text; /* Not allocated by libaui */ + void (*command) (struct aui_button *, void *args); + void *args; }; struct aui_frame_config { blob - f5a9d06acc51ebbf6ca18aa7afc93f34839645b3 blob + 4897ca17c19fc08a18081dbf3320614ca265d819 --- button.c +++ button.c @@ -55,6 +55,7 @@ aui_button_new(struct aui_widget *parent, struct aui_b driver->ops->set_rectangle_color(widget->window, widget->primitives.list[0], &color[0]); driver->ops->set_rectangle_color(widget->window, widget->primitives.list[1], &color[1]); + driver->ops->set_text(widget->primitives.list[2], button->config.text, 0, 0); return button; } @@ -106,6 +107,9 @@ button_mouse_release(struct aui_widget *widget, uint16 btn->pressed = 0; driver->ops->set_rectangle_color(widget->window, widget->primitives.list[1], &color[1]); + + if (btn->config.command && widget_collides_with_point(widget, x, y)) + btn->config.command(btn, btn->config.args); } static void