X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;ds=sidebyside;f=Usermode%2FApplications%2Faxwin3_src%2Flibaxwin3.so_src%2Fr_widget.c;h=450e4b4f41079f196e3c3b526767e811a7e10735;hb=8dcc3e209d0d728565a18c8dca2b0ba220b74a6f;hp=43eef70dacdc1585dea37b01a81486a2b95c3af5;hpb=d2e9501431148e85345cefe6315f0eace0dfd777;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin3_src/libaxwin3.so_src/r_widget.c b/Usermode/Applications/axwin3_src/libaxwin3.so_src/r_widget.c index 43eef70d..450e4b4f 100644 --- a/Usermode/Applications/axwin3_src/libaxwin3.so_src/r_widget.c +++ b/Usermode/Applications/axwin3_src/libaxwin3.so_src/r_widget.c @@ -2,8 +2,8 @@ * AxWin3 Interface Library * - By John Hodge (thePowersGang) * - * main.c - * - Entrypoint and setup + * r_widget.c + * - Widget window type interface */ #include #include @@ -227,6 +227,27 @@ void AxWin3_Widget_SetText(tAxWin3_Widget *Widget, const char *Text) AxWin3_SendMessage(Widget->Window, Widget->Window, MSG_WIDGET_SETTEXT, sizeof(buf), buf); } +char *AxWin3_Widget_GetText(tAxWin3_Widget *Widget) +{ + char buf[sizeof(tWidgetMsg_SetText)]; + tWidgetMsg_SetText *msg = (void*)buf; + size_t retmsg_size; + + msg->WidgetID = Widget->ID; + + AxWin3_SendMessage(Widget->Window, Widget->Window, MSG_WIDGET_GETTEXT, sizeof(buf), buf); + + msg = AxWin3_WaitMessage(Widget->Window, MSG_WIDGET_GETTEXT, &retmsg_size); + if( retmsg_size < sizeof(*msg) ) { + free(msg); + return NULL; + } + + char *ret = strndup(msg->Text, retmsg_size - sizeof(*msg)); + free(msg); + return ret; +} + void AxWin3_Widget_SetColour(tAxWin3_Widget *Widget, int Index, tAxWin3_Colour Colour) { tWidgetMsg_SetColour msg;