# HG changeset patch # User Olaf Wintermann # Date 1761654234 -3600 # Node ID d3acaa5fc3d8f5b0c52d35f34b96da9d284f4a00 # Parent 862a57990eb88826f42ff5d48a2c8e2fb8a4e927 implement the textfield get/set functions (win32) diff -r 862a57990eb8 -r d3acaa5fc3d8 ui/win32/text.c --- a/ui/win32/text.c Mon Oct 27 16:48:39 2025 +0100 +++ b/ui/win32/text.c Tue Oct 28 13:23:54 2025 +0100 @@ -88,9 +88,24 @@ } char* ui_textfield_get(UiString *s) { - return NULL; // TODO + UiTextField *textfield = s->obj; + + if (s->value.free) { + s->value.free(s->value.ptr); + } + + int len = GetWindowTextLength(textfield->widget.widget.hwnd); + s->value.ptr = calloc(len+1, 1); + GetWindowText(textfield->widget.widget.hwnd, s->value.ptr, len+1); + + return s->value.ptr; } void ui_textfield_set(UiString *s, const char *value) { - // TODO + UiTextField *textfield = s->obj; + if (s->value.free) { + s->value.free(s->value.ptr); + } + s->value.ptr = NULL; + SetWindowText(textfield->widget.widget.hwnd, value); }