about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2023-12-26 16:23:11 +0100
committerptitSeb <sebastien.chev@gmail.com>2023-12-26 16:23:11 +0100
commitae84f02bd02a5ff715d6388e8d231cda23dc0f34 (patch)
tree8e4f3f518d799e44a40d7cc75d1f1fcb4b7b1097 /src
parenta6c73e2840286dac05e6e93f5b301326895ae182 (diff)
downloadbox64-ae84f02bd02a5ff715d6388e8d231cda23dc0f34.tar.gz
box64-ae84f02bd02a5ff715d6388e8d231cda23dc0f34.zip
Added 2 more wrapped gtk3 functions
Diffstat (limited to 'src')
-rw-r--r--src/main.c4
-rw-r--r--src/wrapped/generated/functions_list.txt2
-rw-r--r--src/wrapped/generated/wrappedgtk3types.h2
-rw-r--r--src/wrapped/wrappedgtk3.c15
-rw-r--r--src/wrapped/wrappedgtk3_private.h3
5 files changed, 21 insertions, 5 deletions
diff --git a/src/main.c b/src/main.c
index 3df686d9..67080567 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1606,10 +1606,6 @@ int main(int argc, const char **argv, char **env) {
     if(!strcmp(prog, "wineserver") || !strcmp(prog, "wineserver64") || (strlen(prog)>9 && !strcmp(prog+strlen(prog)-strlen("/wineserver"), "/wineserver"))) {
         box64_wine = 1;
     }
-    if(box64_wine) {
-        // disabling the use of futex_waitv for now
-        setenv("WINEFSYNC", "0", 1);
-    }
     // Create a new context
     my_context = NewBox64Context(argc - nextarg);
 
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt
index a61a7b12..44fc6569 100644
--- a/src/wrapped/generated/functions_list.txt
+++ b/src/wrapped/generated/functions_list.txt
@@ -3808,6 +3808,8 @@ wrappedgtk3:
   - gtk_widget_style_get
 - uFupp:
   - gtk_timeout_add
+- vFppiV:
+  - gtk_list_store_insert_with_values
 - vFpppi:
   - gtk_enumerate_printers
 - vFpppp:
diff --git a/src/wrapped/generated/wrappedgtk3types.h b/src/wrapped/generated/wrappedgtk3types.h
index 9255f05d..367af23d 100644
--- a/src/wrapped/generated/wrappedgtk3types.h
+++ b/src/wrapped/generated/wrappedgtk3types.h
@@ -21,6 +21,7 @@ typedef void (*vFpiA_t)(void*, int32_t, va_list);
 typedef void (*vFppp_t)(void*, void*, void*);
 typedef void (*vFppV_t)(void*, void*, ...);
 typedef uint32_t (*uFupp_t)(uint32_t, void*, void*);
+typedef void (*vFppiV_t)(void*, void*, int32_t, ...);
 typedef void (*vFpppi_t)(void*, void*, void*, int32_t);
 typedef void (*vFpppp_t)(void*, void*, void*, void*);
 typedef int32_t (*iFpppp_t)(void*, void*, void*, void*);
@@ -56,6 +57,7 @@ typedef void* (*pFpipppppppi_t)(void*, int32_t, void*, void*, void*, void*, void
 	GO(gtk_style_context_get, vFppV_t) \
 	GO(gtk_widget_style_get, vFppV_t) \
 	GO(gtk_timeout_add, uFupp_t) \
+	GO(gtk_list_store_insert_with_values, vFppiV_t) \
 	GO(gtk_enumerate_printers, vFpppi_t) \
 	GO(gtk_object_set_data_full, vFpppp_t) \
 	GO(gtk_print_job_send, vFpppp_t) \
diff --git a/src/wrapped/wrappedgtk3.c b/src/wrapped/wrappedgtk3.c
index 2f812afb..698fa440 100644
--- a/src/wrapped/wrappedgtk3.c
+++ b/src/wrapped/wrappedgtk3.c
@@ -41,6 +41,7 @@ typedef int           (*iFppp_t)(void*, void*, void*);
 typedef void          (*vFppp_t)(void*, void*, void*);
 typedef void          (*vFppA_t)(void*, void*, va_list);
 typedef void          (*vFpipV_t)(void*, int, void*, ...);
+typedef void          (*vFppippi_t)(void*, void*, int, void*, void*, int);
 
 #define ADDED_FUNCTIONS()                   \
 GO(g_type_class_ref, pFL_t)                 \
@@ -88,6 +89,7 @@ GO(g_module_close, vFp_t)                   \
 GO(gtk_tree_store_newv, pFup_t)             \
 GO(gtk_widget_style_get_valist, vFppA_t)    \
 GO(gtk_widget_style_get_property, vFppp_t)  \
+GO(gtk_list_store_insert_with_valuesv, vFppippi_t)
 
 #include "generated/wrappedgtk3types.h"
 
@@ -785,6 +787,19 @@ EXPORT void my3_gtk_widget_style_get(x64emu_t* emu, void* widget, void* first, u
     #endif
 }
 
+EXPORT void my3_gtk_list_store_insert_with_values(x64emu_t* emu, void* list_store, void* iter, int position, uintptr_t* b)
+{
+    int n = 0;
+    while((((int)getVArgs(emu, 3, b, n*2)))!=-1) n+=1;
+    int columns[n];
+    my_GValue_t values[n];
+    for(int i=0; i<n; ++i) {
+      columns[i] = (int)getVArgs(emu, 3, b, i*2+0);
+      values[i] = *(my_GValue_t*)getVArgs(emu, 3, b, i*2+1);
+    }
+    my->gtk_list_store_insert_with_valuesv(list_store, iter, position, columns, values, n);
+}
+
 #define PRE_INIT    \
     if(box64_nogtk) \
         return -1;
diff --git a/src/wrapped/wrappedgtk3_private.h b/src/wrapped/wrappedgtk3_private.h
index c3ad3e68..d27f88d7 100644
--- a/src/wrapped/wrappedgtk3_private.h
+++ b/src/wrapped/wrappedgtk3_private.h
@@ -1655,7 +1655,7 @@ GO(gtk_list_store_get_type, LFv)
 GO(gtk_list_store_insert, vFppi)
 GO(gtk_list_store_insert_after, vFppp)
 GO(gtk_list_store_insert_before, vFppp)
-//GOM(gtk_list_store_insert_with_values, vFppiV)    // wrap with gtk_list_store_insert_with_valuesv
+GOM(gtk_list_store_insert_with_values, vFEppiV)
 GO(gtk_list_store_insert_with_valuesv, vFppippi)
 GO(gtk_list_store_iter_is_valid, iFpp)
 GO(gtk_list_store_move_after, vFppp)
@@ -3932,6 +3932,7 @@ GO(gtk_widget_get_settings, pFp)
 GO(gtk_widget_get_size_request, vFppp)
 GO(gtk_widget_get_snapshot, pFpp)
 GO(gtk_widget_get_state, uFp)
+GO(gtk_widget_get_state_flags, uFp)
 GO(gtk_widget_get_style, pFp)
 GO(gtk_widget_get_style_context, pFp)
 GO(gtk_widget_get_template_child, pFpLp)