--- a/ui/win32/text.h Thu Nov 27 19:48:30 2025 +0100 +++ b/ui/win32/text.h Fri Nov 28 17:41:51 2025 +0100 @@ -33,11 +33,34 @@ #include "container.h" #include "toolkit.h" +typedef struct UiTextArea { + UiWidget widget; + int width; + int height; +} UiTextArea; + typedef struct UiTextField { UiWidget widget; int width; } UiTextField; +W32Size ui_textarea_get_preferred_size(W32Widget *widget); +int ui_textarea_eventproc(W32Widget *widget, HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); + +void ui_textarea_save(UiText *text); +void ui_textarea_destroy(UiText *text); +void ui_textarea_restore(UiText *text); +void ui_textarea_set(UiText *text, const char *str); +char* ui_textarea_get(UiText *text); +char* ui_textarea_getsubstr(UiText *text, int begin, int end); +void ui_textarea_insert(UiText *text, int pos, char *str); +void ui_textarea_setposition(UiText *text, int pos); +int ui_textarea_position(UiText *text); +void ui_textarea_setselection(UiText *text, int begin, int end); +void ui_textarea_selection(UiText *text, int *begin, int *end); +int ui_textarea_length(UiText *text); +void ui_textarea_remove(UiText *text, int begin, int end); + W32Size ui_textfield_get_preferred_size(W32Widget *widget); int ui_textfield_eventproc(W32Widget *widget, HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);