about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2022-11-22 13:14:43 +0100
committerptitSeb <sebastien.chev@gmail.com>2022-11-22 13:14:43 +0100
commit2b7e7fe6f65588c7c693e9ae53854893c8b1ca65 (patch)
tree10d2dcc849cd74da36f27796667efd80f2369fdc /src
parentbb8983b48ab1e2507506f8b18d466d1c13060e2a (diff)
downloadbox64-2b7e7fe6f65588c7c693e9ae53854893c8b1ca65.tar.gz
box64-2b7e7fe6f65588c7c693e9ae53854893c8b1ca65.zip
Added wrapped libcairoobject-2 and a bunch of other gtk related wrapped functions
Diffstat (limited to 'src')
-rwxr-xr-xsrc/library_list.h1
-rw-r--r--src/wrapped/generated/functions_list.txt4
-rw-r--r--src/wrapped/generated/wrappedcairogobjectdefs.h8
-rw-r--r--src/wrapped/generated/wrappedcairogobjecttypes.h17
-rw-r--r--src/wrapped/generated/wrappedcairogobjectundefs.h8
-rw-r--r--src/wrapped/generated/wrappedgobject2types.h3
-rw-r--r--src/wrapped/wrappedcairogobject.c18
-rw-r--r--src/wrapped/wrappedcairogobject_private.h37
-rwxr-xr-xsrc/wrapped/wrappedgdk3_private.h10
-rwxr-xr-xsrc/wrapped/wrappedgdkpixbuf2_private.h2
-rwxr-xr-xsrc/wrapped/wrappedgobject2.c33
-rwxr-xr-xsrc/wrapped/wrappedgobject2_private.h8
-rwxr-xr-xsrc/wrapped/wrappedgtk3.c15
-rwxr-xr-xsrc/wrapped/wrappedgtk3_private.h35
-rwxr-xr-xsrc/wrapped/wrappedpango_private.h2
15 files changed, 183 insertions, 18 deletions
diff --git a/src/library_list.h b/src/library_list.h
index 66c6d178..7f41c896 100755
--- a/src/library_list.h
+++ b/src/library_list.h
@@ -130,6 +130,7 @@ GO("libpangoft2-1.0.so.0", pangoft2)
 GO("libpangocairo-1.0.so.0", pangocairo)
 GO("libcairo.so.2", cairo)
 GO("libcairo.so", cairo)
+GO("libcairo-gobject.so.2", cairogobject)
 GO("libpango-1.0.so.0", pango)
 GO("libpango-1.0.so", pango)
 //GO("libnm.so.0", libnm)
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt
index 1dfaa744..4ca5da07 100644
--- a/src/wrapped/generated/functions_list.txt
+++ b/src/wrapped/generated/functions_list.txt
@@ -2268,6 +2268,7 @@ wrappedbz2:
 - iFpiii:
   - BZ2_bzCompressInit
 wrappedcairo:
+wrappedcairogobject:
 wrappedcrashhandler:
 wrappedcrypto:
 - vFp:
@@ -2642,6 +2643,8 @@ wrappedgnutls:
 wrappedgobject2:
 - pFp:
   - g_type_class_peek_parent
+- vFpp:
+  - g_closure_set_marshal
 - iFpp:
   - g_param_type_register_static
 - pFpp:
@@ -2653,6 +2656,7 @@ wrappedgobject2:
 - vFpup:
   - g_object_class_install_properties
 - vFppp:
+  - g_closure_add_finalize_notifier
   - g_object_weak_ref
   - g_signal_override_class_handler
 - vFppV:
diff --git a/src/wrapped/generated/wrappedcairogobjectdefs.h b/src/wrapped/generated/wrappedcairogobjectdefs.h
new file mode 100644
index 00000000..9f6da88d
--- /dev/null
+++ b/src/wrapped/generated/wrappedcairogobjectdefs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.1.0.16) *
+ *******************************************************************/
+#ifndef __wrappedcairogobjectDEFS_H_
+#define __wrappedcairogobjectDEFS_H_
+
+
+#endif // __wrappedcairogobjectDEFS_H_
diff --git a/src/wrapped/generated/wrappedcairogobjecttypes.h b/src/wrapped/generated/wrappedcairogobjecttypes.h
new file mode 100644
index 00000000..435fb8a5
--- /dev/null
+++ b/src/wrapped/generated/wrappedcairogobjecttypes.h
@@ -0,0 +1,17 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.1.0.16) *
+ *******************************************************************/
+#ifndef __wrappedcairogobjectTYPES_H_
+#define __wrappedcairogobjectTYPES_H_
+
+#ifndef LIBNAME
+#error You should only #include this file inside a wrapped*.c file
+#endif
+#ifndef ADDED_FUNCTIONS
+#define ADDED_FUNCTIONS() 
+#endif
+
+
+#define SUPER() ADDED_FUNCTIONS()
+
+#endif // __wrappedcairogobjectTYPES_H_
diff --git a/src/wrapped/generated/wrappedcairogobjectundefs.h b/src/wrapped/generated/wrappedcairogobjectundefs.h
new file mode 100644
index 00000000..84318141
--- /dev/null
+++ b/src/wrapped/generated/wrappedcairogobjectundefs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.1.0.16) *
+ *******************************************************************/
+#ifndef __wrappedcairogobjectUNDEFS_H_
+#define __wrappedcairogobjectUNDEFS_H_
+
+
+#endif // __wrappedcairogobjectUNDEFS_H_
diff --git a/src/wrapped/generated/wrappedgobject2types.h b/src/wrapped/generated/wrappedgobject2types.h
index 588d97b7..3e16b41a 100644
--- a/src/wrapped/generated/wrappedgobject2types.h
+++ b/src/wrapped/generated/wrappedgobject2types.h
@@ -12,6 +12,7 @@
 #endif
 
 typedef void* (*pFp_t)(void*);
+typedef void (*vFpp_t)(void*, void*);
 typedef int64_t (*iFpp_t)(void*, void*);
 typedef void* (*pFpp_t)(void*, void*);
 typedef void (*vFiip_t)(int64_t, int64_t, void*);
@@ -43,11 +44,13 @@ typedef uint64_t (*uFpLippppLuA_t)(void*, uintptr_t, int64_t, void*, void*, void
 
 #define SUPER() ADDED_FUNCTIONS() \
 	GO(g_type_class_peek_parent, pFp_t) \
+	GO(g_closure_set_marshal, vFpp_t) \
 	GO(g_param_type_register_static, iFpp_t) \
 	GO(g_value_array_sort, pFpp_t) \
 	GO(g_value_register_transform_func, vFiip_t) \
 	GO(g_type_add_interface_static, vFLLp_t) \
 	GO(g_object_class_install_properties, vFpup_t) \
+	GO(g_closure_add_finalize_notifier, vFppp_t) \
 	GO(g_object_weak_ref, vFppp_t) \
 	GO(g_signal_override_class_handler, vFppp_t) \
 	GO(g_object_get, vFppV_t) \
diff --git a/src/wrapped/wrappedcairogobject.c b/src/wrapped/wrappedcairogobject.c
new file mode 100644
index 00000000..5a47eacb
--- /dev/null
+++ b/src/wrapped/wrappedcairogobject.c
@@ -0,0 +1,18 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#define _GNU_SOURCE         /* See feature_test_macros(7) */
+#include <dlfcn.h>
+
+#include "wrappedlibs.h"
+
+#include "debug.h"
+#include "wrapper.h"
+#include "bridge.h"
+#include "librarian/library_private.h"
+#include "x64emu.h"
+
+const char* cairogobjectName = "libcairo-gobject.so.2";
+#define LIBNAME cairogobject
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedcairogobject_private.h b/src/wrapped/wrappedcairogobject_private.h
new file mode 100644
index 00000000..57894ae9
--- /dev/null
+++ b/src/wrapped/wrappedcairogobject_private.h
@@ -0,0 +1,37 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error meh!
+#endif
+
+GO(cairo_gobject_antialias_get_type, lFv)
+GO(cairo_gobject_content_get_type, lFv)
+GO(cairo_gobject_context_get_type, lFv)
+GO(cairo_gobject_device_get_type, lFv)
+GO(cairo_gobject_device_type_get_type, lFv)
+GO(cairo_gobject_extend_get_type, lFv)
+GO(cairo_gobject_fill_rule_get_type, lFv)
+GO(cairo_gobject_filter_get_type, lFv)
+GO(cairo_gobject_font_face_get_type, lFv)
+GO(cairo_gobject_font_options_get_type, lFv)
+GO(cairo_gobject_font_slant_get_type, lFv)
+GO(cairo_gobject_font_type_get_type, lFv)
+GO(cairo_gobject_font_weight_get_type, lFv)
+GO(cairo_gobject_format_get_type, lFv)
+GO(cairo_gobject_hint_metrics_get_type, lFv)
+GO(cairo_gobject_hint_style_get_type, lFv)
+GO(cairo_gobject_line_cap_get_type, lFv)
+GO(cairo_gobject_line_join_get_type, lFv)
+GO(cairo_gobject_matrix_get_type, lFv)
+GO(cairo_gobject_operator_get_type, lFv)
+GO(cairo_gobject_path_data_type_get_type, lFv)
+GO(cairo_gobject_pattern_get_type, lFv)
+GO(cairo_gobject_pattern_type_get_type, lFv)
+GO(cairo_gobject_rectangle_get_type, lFv)
+GO(cairo_gobject_rectangle_int_get_type, lFv)
+GO(cairo_gobject_region_get_type, lFv)
+GO(cairo_gobject_region_overlap_get_type, lFv)
+GO(cairo_gobject_scaled_font_get_type, lFv)
+GO(cairo_gobject_status_get_type, lFv)
+GO(cairo_gobject_subpixel_order_get_type, lFv)
+GO(cairo_gobject_surface_get_type, lFv)
+GO(cairo_gobject_surface_type_get_type, lFv)
+GO(cairo_gobject_text_cluster_flags_get_type, lFv)
diff --git a/src/wrapped/wrappedgdk3_private.h b/src/wrapped/wrappedgdk3_private.h
index d0b939f8..3e2abb55 100755
--- a/src/wrapped/wrappedgdk3_private.h
+++ b/src/wrapped/wrappedgdk3_private.h
@@ -93,6 +93,7 @@ GO(gdk_device_get_source, iFp)
 GO(gdk_device_get_state, vFpppp)
 GO(gdk_device_get_type, iFv)
 GO(gdk_device_set_axis_use, vFpui)
+GO(gdk_device_manager_get_type, lFv)
 GO(gdk_device_set_key, vFpuui)
 GO(gdk_device_set_mode, iFpi)
 GO(gdk_device_set_source, vFpi)
@@ -230,7 +231,7 @@ GO(gdk_event_get_surface, pFp)
 GO(gdk_event_get_time, uFp)
 GO(gdk_event_get_type, iFv)
 GOM(gdk_event_handler_set, vFEppp)
-GO(gdk_event_mask_get_type, iFv)
+GO(gdk_event_mask_get_type, lFv)
 GO(gdk_event_new, pFi)
 GO(gdk_event_peek, pFv)
 GO(gdk_event_put, vFp)
@@ -240,7 +241,7 @@ GO(gdk_event_send_client_message_for_display, iFppp)
 GO(gdk_event_send_clientmessage_toall, vFp)
 GO(gdk_event_set_screen, vFpp)
 GO(gdk_events_pending, iFv)
-//GO(gdk_event_type_get_type, 
+GO(gdk_event_type_get_type, lFv)
 GO(gdk_exit, vFi)
 //GO(gdk_extension_mode_get_type, 
 //GO(gdk_fill_get_type, 
@@ -260,6 +261,9 @@ GO(gdk_font_get_type, iFv)
 //GO(gdk_fontset_load_for_display, 
 //GO(gdk_font_type_get_type, 
 //GO(gdk_font_unref, 
+GO(gdk_frame_clock_phase_get_type, lFv)
+GO(gdk_frame_clock_get_type, lFv)
+GO(gdk_frame_timings_get_type, lFv)
 GO(gdk_free_compound_text, vFp)
 GO(gdk_free_text_list, vFp)
 GO(gdk_function_get_type, iFv)
@@ -449,6 +453,7 @@ GO(gdk_region_subtract, vFpp)
 GO(gdk_region_union, vFpp)
 GO(gdk_region_union_with_rect, vFpp)
 GO(gdk_region_xor, vFpp)
+GO(gdk_rgba_get_type, lFv)
 GO(gdk_rgb_cmap_free, vFp)
 GO(gdk_rgb_cmap_new, pFpi)
 GO(gdk_rgb_colormap_ditherable, iFp)
@@ -651,6 +656,7 @@ GO(gdk_window_get_screen, pFp)
 GO(gdk_window_get_state, iFp)
 GO(gdk_window_get_toplevel, pFp)
 GO(gdk_window_get_toplevels, pFp)
+GO(gdk_window_get_type, lFv)
 GO(gdk_window_get_type_hint, iFp)
 GO(gdk_window_get_update_area, pFp)
 GO(gdk_window_get_user_data, vFpp)
diff --git a/src/wrapped/wrappedgdkpixbuf2_private.h b/src/wrapped/wrappedgdkpixbuf2_private.h
index 6a498595..adc0f9ff 100755
--- a/src/wrapped/wrappedgdkpixbuf2_private.h
+++ b/src/wrapped/wrappedgdkpixbuf2_private.h
@@ -9,7 +9,7 @@ GO(gdk_pixbuf_alpha_mode_get_type, iFv)
 GO(gdk_pixbuf_animation_get_height, iFp)
 GO(gdk_pixbuf_animation_get_iter, pFpp)
 GO(gdk_pixbuf_animation_get_static_image, pFp)
-//GO(gdk_pixbuf_animation_get_type, 
+GO(gdk_pixbuf_animation_get_type, lFv)
 GO(gdk_pixbuf_animation_get_width, iFp)
 GO(gdk_pixbuf_animation_is_static_image, iFp)
 GO(gdk_pixbuf_animation_iter_advance, iFpp)
diff --git a/src/wrapped/wrappedgobject2.c b/src/wrapped/wrappedgobject2.c
index b70c6db0..18eee5a2 100755
--- a/src/wrapped/wrappedgobject2.c
+++ b/src/wrapped/wrappedgobject2.c
@@ -352,6 +352,29 @@ static void* findMarshalFct(void* fct)
     return NULL;
 }
 
+// GClosureNotify
+#define GO(A)   \
+static uintptr_t my_GClosureNotify_fct_##A = 0;   \
+static int my_GClosureNotify_func_##A(void* a, void* b)     \
+{                                       \
+    return RunFunction(my_context, my_GClosureNotify_fct_##A, 2, a, b);\
+}
+SUPER()
+#undef GO
+static void* findGClosureNotify_Fct(void* fct)
+{
+    if(!fct) return fct;
+    if(GetNativeFnc((uintptr_t)fct))  return GetNativeFnc((uintptr_t)fct);
+    #define GO(A) if(my_GClosureNotify_fct_##A == (uintptr_t)fct) return my_GClosureNotify_func_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_GClosureNotify_fct_##A == 0) {my_GClosureNotify_fct_##A = (uintptr_t)fct; return my_GClosureNotify_func_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for gobject GClosureNotify callback\n");
+    return NULL;
+}
+
 // GValueTransform
 #define GO(A)   \
 static uintptr_t my_valuetransform_fct_##A = 0;                     \
@@ -856,6 +879,16 @@ EXPORT void my_g_signal_override_class_handler(x64emu_t* emu, char* name, void*
     my->g_signal_override_class_handler(name, gtype, findGCallbackFct(callback));
 }
 
+EXPORT void my_g_closure_set_marshal(x64emu_t* emu, void* closure, void* marshal)
+{
+    my->g_closure_set_marshal(closure, findMarshalFct(marshal));
+}
+
+EXPORT void my_g_closure_add_finalize_notifier(x64emu_t* emu, void* closure, void* data, void* f)
+{
+    my->g_closure_add_finalize_notifier(closure, data, findGClosureNotify_Fct(f));
+}
+
 #define PRE_INIT    \
     if(box64_nogtk) \
         return -1;
diff --git a/src/wrapped/wrappedgobject2_private.h b/src/wrapped/wrappedgobject2_private.h
index e2ed99c8..720bb111 100755
--- a/src/wrapped/wrappedgobject2_private.h
+++ b/src/wrapped/wrappedgobject2_private.h
@@ -72,18 +72,18 @@ DATA(g_cclosure_marshal_VOID__VOIDv, sizeof(void*))
 //GO(g_cclosure_new_swap, 
 //GO(g_checksum_get_type, 
 GO(g_clear_object, vFp)
-//GO(g_closure_add_finalize_notifier, 
+GOM(g_closure_add_finalize_notifier, vFEppp)
 //GO(g_closure_add_invalidate_notifier, 
 //GO(g_closure_add_marshal_guards, 
 //GO(g_closure_get_type, 
 //GO(g_closure_invalidate, 
 //GO(g_closure_invoke, 
 //GO(g_closure_new_object, 
-//GO(g_closure_new_simple, 
+GO(g_closure_new_simple, pFup)
 //GO(g_closure_ref, 
 //GO(g_closure_remove_finalize_notifier, 
 //GO(g_closure_remove_invalidate_notifier, 
-//GO(g_closure_set_marshal, 
+GOM(g_closure_set_marshal, vFEpp)
 //GO(g_closure_set_meta_marshal, 
 //GO(g_closure_sink, 
 //GO(g_closure_unref, 
@@ -260,7 +260,7 @@ GO(g_signal_stop_emission, vFpup)
 GO(g_signal_stop_emission_by_name, vFpp)
 GO(g_signal_type_cclosure_new, pFLu)    //should wrap?
 GO(g_source_get_type, LFv)
-//GO(g_source_set_closure, 
+GO(g_source_set_closure, vFpp)
 //GO(g_source_set_dummy_callback, 
 GO(g_strdup_value_contents, pFp)
 GO(g_strv_get_type, LFv)
diff --git a/src/wrapped/wrappedgtk3.c b/src/wrapped/wrappedgtk3.c
index b3842e13..3855dcda 100755
--- a/src/wrapped/wrappedgtk3.c
+++ b/src/wrapped/wrappedgtk3.c
@@ -456,24 +456,19 @@ EXPORT void my3_gtk_message_dialog_format_secondary_text(x64emu_t* emu, void* di
     my->gtk_message_dialog_format_secondary_text(dialog, buf);
     free(buf);
 }
-/*
+
 EXPORT void my3_gtk_message_dialog_format_secondary_markup(x64emu_t* emu, void* dialog, void* fmt, void* b)
 {
     char* buf = NULL;
-    #ifndef NOALIGN
-    myStackAlign((const char*)fmt, b, emu->scratch);
+    myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 2);
     PREPARE_VALIST;
-    iFppp_t f = (iFppp_t)vasprintf;
-    f(&buf, fmt, VARARGS);
-    #else
-    iFppp_t f = (iFppp_t)vasprintf;
-    f(&buf, fmt, b);
-    #endif
+    int ret = vasprintf(&buf, fmt, VARARGS);
+    (void)ret;
     // pre-bake the fmt/vaarg, because there is no "va_list" version of this function
     my->gtk_message_dialog_format_secondary_markup(dialog, buf);
     free(buf);
 }
-*/
+
 EXPORT void* my3_gtk_type_class(x64emu_t* emu, size_t type)
 {
     void* class = my->gtk_type_class(type);
diff --git a/src/wrapped/wrappedgtk3_private.h b/src/wrapped/wrappedgtk3_private.h
index f62274e5..c35f6d6a 100755
--- a/src/wrapped/wrappedgtk3_private.h
+++ b/src/wrapped/wrappedgtk3_private.h
@@ -85,7 +85,9 @@ GO(gtk_accel_map_get_type, pFv)
 GO(gtk_accessible_get_type, pFv)
 //GO(gtk_accessible_get_widget, 
 //GO(gtk_accessible_set_widget, 
+GO(gtk_actionable_get_type, pFv)
 //GO(gtk_action_activate, 
+GO(gtk_action_bar_get_type, pFv)
 //GO(gtk_action_block_activate, 
 //GO(gtk_action_block_activate_from, 
 //GO(gtk_action_connect_accelerator, 
@@ -183,8 +185,15 @@ GO(gtk_alignment_get_type, pFv)
 GO(gtk_alignment_new, pFffff)
 GO(gtk_alignment_set, vFpffff)
 GO(gtk_alignment_set_padding, vFpuuuu)
+GO(gtk_align_get_type, pFv)
 GO(gtk_alternative_dialog_button_order, iFp)
 GO(gtk_anchor_type_get_type, pFv)
+GO(gtk_application_get_type, pFv)
+GO(gtk_application_window_get_type, pFv)
+GO(gtk_app_chooser_button_get_type, pFv)
+GO(gtk_app_chooser_dialog_get_type, pFv)
+GO(gtk_app_chooser_get_type, pFv)
+GO(gtk_app_chooser_widget_get_type, pFv)
 GO(gtk_arg_flags_get_type, pFv)
 GO(gtk_arrow_get_type, pFv)
 GO(gtk_arrow_new, pFii)
@@ -542,6 +551,8 @@ GO(gtk_color_button_set_alpha, vFpW)
 GO(gtk_color_button_set_color, vFpp)
 GO(gtk_color_button_set_title, vFpp)
 GO(gtk_color_button_set_use_alpha, vFpi)
+GO(gtk_color_chooser_dialog_get_type, pFv)
+GO(gtk_color_chooser_get_type, pFv)
 GO(gtk_color_selection_dialog_get_color_selection, pFp)
 GO(gtk_color_selection_dialog_get_type, pFv)
 GO(gtk_color_selection_dialog_new, pFp)
@@ -1115,6 +1126,8 @@ GO(gtk_fixed_move, vFppii)
 GO(gtk_fixed_new, pFv)
 GO(gtk_fixed_put, vFppii)
 GO(gtk_fixed_set_has_window, vFpi)
+GO(gtk_flow_box_child_get_type, pFv)
+GO(gtk_flow_box_get_type, pFv)
 GO(gtk_font_button_get_font_name, pFp)
 GO(gtk_font_button_get_show_size, iFp)
 GO(gtk_font_button_get_show_style, iFp)
@@ -1130,6 +1143,7 @@ GO(gtk_font_button_set_show_style, vFpi)
 GO(gtk_font_button_set_title, vFpp)
 GO(gtk_font_button_set_use_font, vFpi)
 GO(gtk_font_button_set_use_size, vFpi)
+GO(gtk_font_chooser_get_type, pFv)
 GO(gtk_font_selection_dialog_get_apply_button, pFp)
 GO(gtk_font_selection_dialog_get_cancel_button, pFp)
 GO(gtk_font_selection_dialog_get_font, pFp)
@@ -1184,6 +1198,7 @@ GO(gtk_get_option_group, pFi)
 GO(gtk_grab_add, vFp)
 GO(gtk_grab_get_current, pFv)
 GO(gtk_grab_remove, vFp)
+GO(gtk_grid_get_type, pFv)
 GO(gtk_handle_box_get_child_detached, iFp)
 GO(gtk_handle_box_get_handle_position, iFp)
 GO(gtk_handle_box_get_shadow_type, iFp)
@@ -1467,6 +1482,8 @@ GOM(gtk_init_with_args, iFEpppppp)
 //GOM(gtk_input_add_full, uFEiBBppB)
 GO(gtk_input_dialog_get_type, pFv)
 GO(gtk_input_dialog_new, pFv)
+GO(gtk_input_hints_get_type, pFv)
+GO(gtk_input_purpose_get_type, pFv)
 GO(gtk_input_remove, vFu)
 //GO(gtk_invisible_get_screen, 
 GO(gtk_invisible_get_type, pFv)
@@ -1564,6 +1581,9 @@ GO(gtk_layout_new, pFpp)
 //GO(gtk_layout_set_size, 
 //GO(gtk_layout_set_vadjustment, 
 //GO(gtk_layout_thaw, 
+GO(gtk_level_bar_mode_get_type, pFv)
+GO(gtk_level_bar_get_type, pFv)
+GO(gtk_license_get_type, pFv)
 GO(gtk_link_button_get_type, pFv)
 //GO(gtk_link_button_get_uri, 
 //GO(gtk_link_button_get_visited, 
@@ -1573,6 +1593,8 @@ GO(gtk_link_button_get_type, pFv)
 //GO(gtk_link_button_set_uri_hook, 
 //GO(gtk_link_button_set_visited, 
 GO(gtk_list_append_items, vFpp)
+GO(gtk_list_box_get_type, pFv)
+GO(gtk_list_box_row_get_type, pFv)
 GO(gtk_list_child_position, iFpp)
 GO(gtk_list_clear_items, vFpii)
 GO(gtk_list_end_drag_selection, vFp)
@@ -1666,6 +1688,7 @@ GO(gtk_menu_bar_get_type, pFv)
 GO(gtk_menu_bar_new, pFv)
 GO(gtk_menu_bar_set_child_pack_direction, vFpi)
 GO(gtk_menu_bar_set_pack_direction, vFpi)
+GO(gtk_menu_button_get_type, pFv)
 GO(gtk_menu_detach, vFp)
 GO(gtk_menu_direction_type_get_type, pFv)
 GO(gtk_menu_get_accel_group, pFp)
@@ -1856,6 +1879,7 @@ GO(gtk_orientable_get_orientation, iFp)
 GO(gtk_orientable_get_type, pFv)
 GO(gtk_orientable_set_orientation, vFpi)
 GO(gtk_orientation_get_type, pFv)
+GO(gtk_overlay_get_type, pFv)
 GO(gtk_pack_direction_get_type, pFv)
 GO(gtk_pack_type_get_type, pFv)
 GO(gtk_page_orientation_get_type, pFv)
@@ -1965,6 +1989,7 @@ GO(gtk_plug_get_type, pFv)
 GO(gtk_plug_new, pFp)
 GO(gtk_plug_new_for_display, pFpp)
 GO(gtk_policy_type_get_type, pFv)
+GO(gtk_popover_get_type, pFv)
 GO(gtk_position_type_get_type, pFv)
 //GO(gtk_preview_draw_row, 
 //GO(gtk_preview_get_cmap, 
@@ -2362,6 +2387,8 @@ GO(gtk_rc_style_new, pFv)
 GO(gtk_rc_style_ref, vFp)
 GO(gtk_rc_style_unref, vFp)
 GO(gtk_rc_token_type_get_type, pFv)
+GO(gtk_revealer_get_type, pFv)
+GO(gtk_revealer_transition_type_get_type, pFv)
 //GO(gtk_recent_action_get_show_numbers, 
 GO(gtk_recent_action_get_type, pFv)
 //GO(gtk_recent_action_new, 
@@ -2545,6 +2572,8 @@ GO(gtk_scrolled_window_set_vadjustment, vFpp)
 GO(gtk_scrolled_window_unset_placement, vFp)
 GO(gtk_scroll_step_get_type, pFv)
 GO(gtk_scroll_type_get_type, pFv)
+GO(gtk_search_bar_get_type, pFv)
+GO(gtk_search_entry_get_type, pFv)
 GO(gtk_selection_add_target, vFpppu)
 GO(gtk_selection_add_targets, vFpppu)
 GO(gtk_selection_clear, iFpp)
@@ -2662,6 +2691,10 @@ GO(gtk_spinner_new, pFv)
 GO(gtk_spinner_start, vFp)
 GO(gtk_spinner_stop, vFp)
 GO(gtk_spin_type_get_type, pFv)
+GO(gtk_stack_get_type, pFv)
+GO(gtk_stack_switcher_get_type, pFv)
+GO(gtk_stack_transition_type_get_type, pFv)
+GO(gtk_state_flags_get_type, pFv)
 GO(gtk_state_type_get_type, pFv)
 GO(gtk_statusbar_get_context_id, uFpp)
 GO(gtk_statusbar_get_has_resize_grip, iFp)
@@ -2797,6 +2830,7 @@ GO(gtk_style_provider_get_type, pFv)
 GO(gtk_style_unref, vFp)
 GO(gtk_submenu_direction_get_type, pFv)
 GO(gtk_submenu_placement_get_type, pFv)
+GO(gtk_switch_get_type, pFv)
 GO(gtk_table_attach, vFppuuuuiiuu)
 GO(gtk_table_attach_defaults, vFppuuuu)
 GO(gtk_table_get_col_spacing, uFpu)
@@ -2813,6 +2847,7 @@ GO(gtk_table_set_col_spacings, vFpu)
 GO(gtk_table_set_homogeneous, vFpi)
 GO(gtk_table_set_row_spacing, vFpuu)
 GO(gtk_table_set_row_spacings, vFpu)
+GO(gtk_target_entry_get_type, pFv)
 GO(gtk_target_flags_get_type, pFv)
 GO(gtk_target_list_add, vFppuu)
 GO(gtk_target_list_add_image_targets, vFpui)
diff --git a/src/wrapped/wrappedpango_private.h b/src/wrapped/wrappedpango_private.h
index b8e5415f..b472a4a2 100755
--- a/src/wrapped/wrappedpango_private.h
+++ b/src/wrapped/wrappedpango_private.h
@@ -97,7 +97,7 @@ GO(pango_context_set_matrix, vFpp)
 //GO(pango_coverage_unref, 
 //GO(pango_default_break, 
 //GO(pango_direction_get_type, 
-//GO(pango_ellipsize_mode_get_type, 
+GO(pango_ellipsize_mode_get_type, lFv)
 //GO(pango_engine_get_type, 
 //GO(pango_engine_lang_get_type, 
 //GO(pango_engine_shape_get_type,