use UiEventType* instead of int* in get_eventdata_func (Cocoa)

Sat, 06 Jun 2026 16:53:39 +0200

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Sat, 06 Jun 2026 16:53:39 +0200
changeset 1173
ce0e443174d7
parent 1172
e1c1559f2522
child 1174
8b8da1adef7d

use UiEventType* instead of int* in get_eventdata_func (Cocoa)

make/xcode/toolkit/toolkit/main.m file | annotate | diff | comparison | revisions
ui/cocoa/EventData.h file | annotate | diff | comparison | revisions
ui/cocoa/button.m file | annotate | diff | comparison | revisions
ui/cocoa/text.m file | annotate | diff | comparison | revisions
--- a/make/xcode/toolkit/toolkit/main.m	Sat Jun 06 08:41:57 2026 +0200
+++ b/make/xcode/toolkit/toolkit/main.m	Sat Jun 06 16:53:39 2026 +0200
@@ -162,6 +162,10 @@
     ui_list_update(doc->srclist);
 }
 
+static void next_tab(UiEvent *event, void *data) {
+    ui_var_set_int(event->obj->ctx, "tabview", 1);
+}
+
 void application_startup(UiEvent *event, void *data) {
     UiObject *obj = ui_splitview_window("My Window", TRUE);
     //WindowData *wdata = ui_malloc(obj->ctx, sizeof(WindowData));
@@ -209,9 +213,9 @@
     }
     
     ui_right_panel0(obj) {
-        ui_tabview(obj, .padding = 20, .spacing = 10, .margin_left = 10, .margin_right = 10, .margin_bottom = 10, .fill = TRUE) {
+        ui_tabview(obj, .padding = 20, .spacing = 10, .margin_left = 10, .margin_right = 10, .margin_bottom = 10, .fill = TRUE, .varname = "tabview") {
             ui_tab(obj, "Tab 1") {
-                ui_button(obj, .label = "Test");
+                ui_button(obj, .label = "Next Tab", .onclick = next_tab);
                 ui_textarea(obj, .fill = TRUE);
             }
             ui_tab(obj, "Tab 2") {
--- a/ui/cocoa/EventData.h	Sat Jun 06 08:41:57 2026 +0200
+++ b/ui/cocoa/EventData.h	Sat Jun 06 16:53:39 2026 +0200
@@ -29,7 +29,7 @@
 #import "../ui/toolkit.h"
 #import "../common/context.h"
 
-typedef void(*get_eventdata_func)(id sender, UiVar *var, void **eventdata, int *eventdatatype, int *value);
+typedef void(*get_eventdata_func)(id sender, UiVar *var, void **eventdata, UiEventType *eventdatatype, int *value);
 
 @interface EventData : NSObject
 @property UiObject           *obj;
--- a/ui/cocoa/button.m	Sat Jun 06 08:41:57 2026 +0200
+++ b/ui/cocoa/button.m	Sat Jun 06 16:53:39 2026 +0200
@@ -64,7 +64,7 @@
 }
 
 
-static void togglebutton_eventdata(id button, UiVar *var, void **eventdata, int *eventdatatype, int *value) {
+static void togglebutton_eventdata(id button, UiVar *var, void **eventdata, UiEventType *eventdatatype, int *value) {
     NSButton *btn = (NSButton*)button;
     NSControlStateValue state = btn.state;
     *value = (int)state;
@@ -137,7 +137,7 @@
     return togglebutton_create(obj, args, NSButtonTypeSwitch);
 }
 
-static void switch_eventdata(id button, UiVar *var, void **eventdata, int *eventdatatype, int *value) {
+static void switch_eventdata(id button, UiVar *var, void **eventdata, UiEventType *eventdatatype, int *value) {
     NSSwitch *btn = (NSSwitch*)button;
     NSControlStateValue state = btn.state;
     *value = (int)state;
@@ -207,7 +207,7 @@
 
 @end
 
-static void radiobutton_eventdata(id button, UiVar *var, void **eventdata, int *eventdatatype, int *value) {
+static void radiobutton_eventdata(id button, UiVar *var, void **eventdata, UiEventType *eventdatatype, int *value) {
     if(var) {
         UiInteger *i = var->value;
         NSMutableArray *buttons = (__bridge NSMutableArray*)i->obj;
--- a/ui/cocoa/text.m	Sat Jun 06 08:41:57 2026 +0200
+++ b/ui/cocoa/text.m	Sat Jun 06 16:53:39 2026 +0200
@@ -379,7 +379,7 @@
 
 /* -------------------------- TextField -------------------------- */
 
-static void textfield_geteventdata(id sender, UiVar *var, void **eventdata, int *eventdatatype, int *value) {
+static void textfield_geteventdata(id sender, UiVar *var, void **eventdata, UiEventType *eventdatatype, int *value) {
     
 }
 

mercurial