/*******************************************************************************
 * Copyright (c) 2000, 2023 IBM Corporation and others.
 *
 * This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License 2.0
 * which accompanies this distribution, and is available at
 * https://www.eclipse.org/legal/epl-2.0/
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 * Contributors:
 *    IBM Corporation - initial API and implementation
 *******************************************************************************/

/* Note: This file was auto-generated by org.eclipse.swt.tools.internal.JNIGenerator */
/* DO NOT EDIT - your changes will be lost. */

#include "swt.h"
#include "gtk4_structs.h"
#include "gtk4_stats.h"
#include "os_structs.h"

#ifndef GTK4_NATIVE
#define GTK4_NATIVE(func) Java_org_eclipse_swt_internal_gtk4_GTK4_##func
#endif

#ifdef _WIN32
  /* Many methods don't use their 'env' and 'that' arguments */
  #pragma warning (disable: 4100)
#endif

#ifndef NO_gdk_1clipboard_1get_1content
JNIEXPORT jlong JNICALL GTK4_NATIVE(gdk_1clipboard_1get_1content)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1clipboard_1get_1content_FUNC);
	rc = (jlong)gdk_clipboard_get_content((GdkClipboard*)arg0);
	GTK4_NATIVE_EXIT(env, that, gdk_1clipboard_1get_1content_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1clipboard_1get_1formats
JNIEXPORT jlong JNICALL GTK4_NATIVE(gdk_1clipboard_1get_1formats)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1clipboard_1get_1formats_FUNC);
	rc = (jlong)gdk_clipboard_get_formats((GdkClipboard*)arg0);
	GTK4_NATIVE_EXIT(env, that, gdk_1clipboard_1get_1formats_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1clipboard_1set
JNIEXPORT void JNICALL GTK4_NATIVE(gdk_1clipboard_1set)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1, jlong arg2)
{
	GTK4_NATIVE_ENTER(env, that, gdk_1clipboard_1set_FUNC);
	gdk_clipboard_set((GdkClipboard*)arg0, (GType)arg1, arg2);
	GTK4_NATIVE_EXIT(env, that, gdk_1clipboard_1set_FUNC);
}
#endif

#ifndef NO_gdk_1clipboard_1set_1content
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gdk_1clipboard_1set_1content)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1clipboard_1set_1content_FUNC);
	rc = (jboolean)gdk_clipboard_set_content((GdkClipboard*)arg0, (GdkContentProvider*)arg1);
	GTK4_NATIVE_EXIT(env, that, gdk_1clipboard_1set_1content_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1clipboard_1set_1text
JNIEXPORT void JNICALL GTK4_NATIVE(gdk_1clipboard_1set_1text)
	(JNIEnv *env, jclass that, jlong arg0, jbyteArray arg1)
{
	jbyte *lparg1=NULL;
	GTK4_NATIVE_ENTER(env, that, gdk_1clipboard_1set_1text_FUNC);
	if (arg1) if ((lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL)) == NULL) goto fail;
	gdk_clipboard_set_text((GdkClipboard*)arg0, (const char *)lparg1);
fail:
	if (arg1 && lparg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
	GTK4_NATIVE_EXIT(env, that, gdk_1clipboard_1set_1text_FUNC);
}
#endif

#ifndef NO_gdk_1content_1formats_1builder_1add_1mime_1type
JNIEXPORT void JNICALL GTK4_NATIVE(gdk_1content_1formats_1builder_1add_1mime_1type)
	(JNIEnv *env, jclass that, jlong arg0, jbyteArray arg1)
{
	jbyte *lparg1=NULL;
	GTK4_NATIVE_ENTER(env, that, gdk_1content_1formats_1builder_1add_1mime_1type_FUNC);
	if (arg1) if ((lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL)) == NULL) goto fail;
	gdk_content_formats_builder_add_mime_type((GdkContentFormatsBuilder *)arg0, (const char *)lparg1);
fail:
	if (arg1 && lparg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
	GTK4_NATIVE_EXIT(env, that, gdk_1content_1formats_1builder_1add_1mime_1type_FUNC);
}
#endif

#ifndef NO_gdk_1content_1formats_1builder_1free_1to_1formats
JNIEXPORT jlong JNICALL GTK4_NATIVE(gdk_1content_1formats_1builder_1free_1to_1formats)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1content_1formats_1builder_1free_1to_1formats_FUNC);
	rc = (jlong)gdk_content_formats_builder_free_to_formats((GdkContentFormatsBuilder *)arg0);
	GTK4_NATIVE_EXIT(env, that, gdk_1content_1formats_1builder_1free_1to_1formats_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1content_1formats_1builder_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gdk_1content_1formats_1builder_1new)
	(JNIEnv *env, jclass that)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1content_1formats_1builder_1new_FUNC);
	rc = (jlong)gdk_content_formats_builder_new();
	GTK4_NATIVE_EXIT(env, that, gdk_1content_1formats_1builder_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1content_1formats_1to_1string
JNIEXPORT jlong JNICALL GTK4_NATIVE(gdk_1content_1formats_1to_1string)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1content_1formats_1to_1string_FUNC);
	rc = (jlong)gdk_content_formats_to_string((GdkContentFormats *)arg0);
	GTK4_NATIVE_EXIT(env, that, gdk_1content_1formats_1to_1string_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1content_1provider_1get_1value
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gdk_1content_1provider_1get_1value)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1, jlongArray arg2)
{
	jlong *lparg2=NULL;
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1content_1provider_1get_1value_FUNC);
	if (arg2) if ((lparg2 = (*env)->GetLongArrayElements(env, arg2, NULL)) == NULL) goto fail;
	rc = (jboolean)gdk_content_provider_get_value((GdkContentProvider *)arg0, (GValue *)arg1, (GError **)lparg2);
fail:
	if (arg2 && lparg2) (*env)->ReleaseLongArrayElements(env, arg2, lparg2, 0);
	GTK4_NATIVE_EXIT(env, that, gdk_1content_1provider_1get_1value_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1content_1provider_1new_1for_1value
JNIEXPORT jlong JNICALL GTK4_NATIVE(gdk_1content_1provider_1new_1for_1value)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1content_1provider_1new_1for_1value_FUNC);
	rc = (jlong)gdk_content_provider_new_for_value((const GValue*)arg0);
	GTK4_NATIVE_EXIT(env, that, gdk_1content_1provider_1new_1for_1value_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1content_1provider_1new_1typed
JNIEXPORT jlong JNICALL GTK4_NATIVE(gdk_1content_1provider_1new_1typed)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1content_1provider_1new_1typed_FUNC);
	rc = (jlong)gdk_content_provider_new_typed((GType)arg0, arg1);
	GTK4_NATIVE_EXIT(env, that, gdk_1content_1provider_1new_1typed_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1content_1provider_1new_1union
JNIEXPORT jlong JNICALL GTK4_NATIVE(gdk_1content_1provider_1new_1union)
	(JNIEnv *env, jclass that, jlongArray arg0, jint arg1)
{
	jlong *lparg0=NULL;
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1content_1provider_1new_1union_FUNC);
	if (arg0) if ((lparg0 = (*env)->GetLongArrayElements(env, arg0, NULL)) == NULL) goto fail;
	rc = (jlong)gdk_content_provider_new_union((GdkContentProvider **)lparg0, (gsize)arg1);
fail:
	if (arg0 && lparg0) (*env)->ReleaseLongArrayElements(env, arg0, lparg0, 0);
	GTK4_NATIVE_EXIT(env, that, gdk_1content_1provider_1new_1union_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1toplevel_1focus
JNIEXPORT void JNICALL GTK4_NATIVE(gdk_1toplevel_1focus)
	(JNIEnv *env, jclass that, jlong arg0, jint arg1)
{
	GTK4_NATIVE_ENTER(env, that, gdk_1toplevel_1focus_FUNC);
	gdk_toplevel_focus((GdkToplevel *)arg0, arg1);
	GTK4_NATIVE_EXIT(env, that, gdk_1toplevel_1focus_FUNC);
}
#endif

#ifndef NO_gdk_1toplevel_1get_1state
JNIEXPORT jint JNICALL GTK4_NATIVE(gdk_1toplevel_1get_1state)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jint rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1toplevel_1get_1state_FUNC);
	rc = (jint)gdk_toplevel_get_state((GdkToplevel *)arg0);
	GTK4_NATIVE_EXIT(env, that, gdk_1toplevel_1get_1state_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1toplevel_1lower
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gdk_1toplevel_1lower)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gdk_1toplevel_1lower_FUNC);
	rc = (jboolean)gdk_toplevel_lower((GdkToplevel *)arg0);
	GTK4_NATIVE_EXIT(env, that, gdk_1toplevel_1lower_FUNC);
	return rc;
}
#endif

#ifndef NO_gdk_1toplevel_1set_1icon_1list
JNIEXPORT void JNICALL GTK4_NATIVE(gdk_1toplevel_1set_1icon_1list)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gdk_1toplevel_1set_1icon_1list_FUNC);
	gdk_toplevel_set_icon_list((GdkToplevel *)arg0, (GList *)arg1);
	GTK4_NATIVE_EXIT(env, that, gdk_1toplevel_1set_1icon_1list_FUNC);
}
#endif

#ifndef NO_gdk_1toplevel_1size_1get_1bounds
JNIEXPORT void JNICALL GTK4_NATIVE(gdk_1toplevel_1size_1get_1bounds)
	(JNIEnv *env, jclass that, jlong arg0, jintArray arg1, jintArray arg2)
{
	jint *lparg1=NULL;
	jint *lparg2=NULL;
	GTK4_NATIVE_ENTER(env, that, gdk_1toplevel_1size_1get_1bounds_FUNC);
	if (arg1) if ((lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL)) == NULL) goto fail;
	if (arg2) if ((lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL)) == NULL) goto fail;
	gdk_toplevel_size_get_bounds((GdkToplevelSize*)arg0, (int *)lparg1, (int *)lparg2);
fail:
	if (arg2 && lparg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
	if (arg1 && lparg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
	GTK4_NATIVE_EXIT(env, that, gdk_1toplevel_1size_1get_1bounds_FUNC);
}
#endif

#ifndef NO_gdk_1toplevel_1size_1set_1min_1size
JNIEXPORT void JNICALL GTK4_NATIVE(gdk_1toplevel_1size_1set_1min_1size)
	(JNIEnv *env, jclass that, jlong arg0, jint arg1, jint arg2)
{
	GTK4_NATIVE_ENTER(env, that, gdk_1toplevel_1size_1set_1min_1size_FUNC);
	gdk_toplevel_size_set_min_size((GdkToplevelSize*)arg0, (int)arg1, (int)arg2);
	GTK4_NATIVE_EXIT(env, that, gdk_1toplevel_1size_1set_1min_1size_FUNC);
}
#endif

#ifndef NO_gdk_1toplevel_1size_1set_1size
JNIEXPORT void JNICALL GTK4_NATIVE(gdk_1toplevel_1size_1set_1size)
	(JNIEnv *env, jclass that, jlong arg0, jint arg1, jint arg2)
{
	GTK4_NATIVE_ENTER(env, that, gdk_1toplevel_1size_1set_1size_FUNC);
	gdk_toplevel_size_set_size((GdkToplevelSize*)arg0, (int)arg1, (int)arg2);
	GTK4_NATIVE_EXIT(env, that, gdk_1toplevel_1size_1set_1size_FUNC);
}
#endif

#ifndef NO_gtk_1box_1append
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1box_1append)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1box_1append_FUNC);
	gtk_box_append((GtkBox *)arg0, (GtkWidget *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1box_1append_FUNC);
}
#endif

#ifndef NO_gtk_1box_1insert_1child_1after
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1box_1insert_1child_1after)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1, jlong arg2)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1box_1insert_1child_1after_FUNC);
	gtk_box_insert_child_after((GtkBox *)arg0, (GtkWidget *)arg1, (GtkWidget *)arg2);
	GTK4_NATIVE_EXIT(env, that, gtk_1box_1insert_1child_1after_FUNC);
}
#endif

#ifndef NO_gtk_1box_1prepend
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1box_1prepend)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1box_1prepend_FUNC);
	gtk_box_prepend((GtkBox *)arg0, (GtkWidget *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1box_1prepend_FUNC);
}
#endif

#ifndef NO_gtk_1button_1new_1from_1icon_1name
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1button_1new_1from_1icon_1name)
	(JNIEnv *env, jclass that, jbyteArray arg0)
{
	jbyte *lparg0=NULL;
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1button_1new_1from_1icon_1name_FUNC);
	if (arg0) if ((lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL)) == NULL) goto fail;
	rc = (jlong)gtk_button_new_from_icon_name((const gchar *)lparg0);
fail:
	if (arg0 && lparg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1button_1new_1from_1icon_1name_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1button_1set_1child
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1button_1set_1child)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1button_1set_1child_FUNC);
	gtk_button_set_child((GtkButton *)arg0, (GtkWidget *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1button_1set_1child_FUNC);
}
#endif

#ifndef NO_gtk_1calendar_1get_1date
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1calendar_1get_1date)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1calendar_1get_1date_FUNC);
	rc = (jlong)gtk_calendar_get_date((GtkCalendar *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1calendar_1get_1date_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1calendar_1select_1day
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1calendar_1select_1day)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1calendar_1select_1day_FUNC);
	gtk_calendar_select_day((GtkCalendar *)arg0, (GDateTime *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1calendar_1select_1day_FUNC);
}
#endif

#ifndef NO_gtk_1calendar_1set_1show_1day_1names
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1calendar_1set_1show_1day_1names)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1calendar_1set_1show_1day_1names_FUNC);
	gtk_calendar_set_show_day_names((GtkCalendar *)arg0, (gboolean)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1calendar_1set_1show_1day_1names_FUNC);
}
#endif

#ifndef NO_gtk_1calendar_1set_1show_1heading
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1calendar_1set_1show_1heading)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1calendar_1set_1show_1heading_FUNC);
	gtk_calendar_set_show_heading((GtkCalendar *)arg0, (gboolean)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1calendar_1set_1show_1heading_FUNC);
}
#endif

#ifndef NO_gtk_1calendar_1set_1show_1week_1numbers
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1calendar_1set_1show_1week_1numbers)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1calendar_1set_1show_1week_1numbers_FUNC);
	gtk_calendar_set_show_week_numbers((GtkCalendar *)arg0, (gboolean)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1calendar_1set_1show_1week_1numbers_FUNC);
}
#endif

#ifndef NO_gtk_1check_1button_1get_1active
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gtk_1check_1button_1get_1active)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1check_1button_1get_1active_FUNC);
	rc = (jboolean)gtk_check_button_get_active((GtkCheckButton *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1check_1button_1get_1active_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1check_1button_1set_1active
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1check_1button_1set_1active)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1check_1button_1set_1active_FUNC);
	gtk_check_button_set_active((GtkCheckButton *)arg0, arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1check_1button_1set_1active_FUNC);
}
#endif

#ifndef NO_gtk_1check_1button_1set_1group
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1check_1button_1set_1group)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1check_1button_1set_1group_FUNC);
	gtk_check_button_set_group((GtkCheckButton *)arg0, (GtkCheckButton *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1check_1button_1set_1group_FUNC);
}
#endif

#ifndef NO_gtk_1check_1button_1set_1inconsistent
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1check_1button_1set_1inconsistent)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1check_1button_1set_1inconsistent_FUNC);
	gtk_check_button_set_inconsistent((GtkCheckButton *)arg0, arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1check_1button_1set_1inconsistent_FUNC);
}
#endif

#ifndef NO_gtk_1check_1button_1set_1use_1underline
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1check_1button_1set_1use_1underline)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1check_1button_1set_1use_1underline_FUNC);
	gtk_check_button_set_use_underline((GtkCheckButton *)arg0, arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1check_1button_1set_1use_1underline_FUNC);
}
#endif

#ifndef NO_gtk_1combo_1box_1get_1child
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1combo_1box_1get_1child)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1combo_1box_1get_1child_FUNC);
	rc = (jlong)gtk_combo_box_get_child((GtkComboBox *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1combo_1box_1get_1child_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1css_1provider_1load_1from_1data
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1css_1provider_1load_1from_1data)
	(JNIEnv *env, jclass that, jlong arg0, jbyteArray arg1, jlong arg2)
{
	jbyte *lparg1=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1css_1provider_1load_1from_1data_FUNC);
	if (arg1) if ((lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL)) == NULL) goto fail;
	gtk_css_provider_load_from_data((GtkCssProvider *)arg0, (const gchar *)lparg1, (gssize)arg2);
fail:
	if (arg1 && lparg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1css_1provider_1load_1from_1data_FUNC);
}
#endif

#ifndef NO_gtk_1drag_1source_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1drag_1source_1new)
	(JNIEnv *env, jclass that)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1drag_1source_1new_FUNC);
	rc = (jlong)gtk_drag_source_new();
	GTK4_NATIVE_EXIT(env, that, gtk_1drag_1source_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1drag_1source_1set_1actions
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1drag_1source_1set_1actions)
	(JNIEnv *env, jclass that, jlong arg0, jint arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1drag_1source_1set_1actions_FUNC);
	gtk_drag_source_set_actions((GtkDragSource *)arg0, (GdkDragAction)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1drag_1source_1set_1actions_FUNC);
}
#endif

#ifndef NO_gtk_1drag_1source_1set_1icon
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1drag_1source_1set_1icon)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1, jint arg2, jint arg3)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1drag_1source_1set_1icon_FUNC);
	gtk_drag_source_set_icon((GtkDragSource *)arg0, (GdkPaintable *)arg1, arg2, arg3);
	GTK4_NATIVE_EXIT(env, that, gtk_1drag_1source_1set_1icon_FUNC);
}
#endif

#ifndef NO_gtk_1drop_1target_1async_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1drop_1target_1async_1new)
	(JNIEnv *env, jclass that, jlong arg0, jint arg1)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1drop_1target_1async_1new_FUNC);
	rc = (jlong)gtk_drop_target_async_new((GdkContentFormats *)arg0, (GdkDragAction)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1drop_1target_1async_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1drop_1target_1async_1set_1formats
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1drop_1target_1async_1set_1formats)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1drop_1target_1async_1set_1formats_FUNC);
	gtk_drop_target_async_set_formats((GtkDropTargetAsync *)arg0, (GdkContentFormats *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1drop_1target_1async_1set_1formats_FUNC);
}
#endif

#ifndef NO_gtk_1editable_1get_1delegate
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1editable_1get_1delegate)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1editable_1get_1delegate_FUNC);
	rc = (jlong)gtk_editable_get_delegate((GtkEditable *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1editable_1get_1delegate_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1editable_1get_1text
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1editable_1get_1text)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1editable_1get_1text_FUNC);
	rc = (jlong)gtk_editable_get_text((GtkEditable *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1editable_1get_1text_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1entry_1get_1buffer
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1entry_1get_1buffer)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1entry_1get_1buffer_FUNC);
	rc = (jlong)gtk_entry_get_buffer((GtkEntry *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1entry_1get_1buffer_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1entry_1get_1text_1length
JNIEXPORT jint JNICALL GTK4_NATIVE(gtk_1entry_1get_1text_1length)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jint rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1entry_1get_1text_1length_FUNC);
	rc = (jint)gtk_entry_get_text_length((GtkEntry *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1entry_1get_1text_1length_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1entry_1set_1buffer
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1entry_1set_1buffer)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1entry_1set_1buffer_FUNC);
	gtk_entry_set_buffer((GtkEntry *)arg0, (GtkEntryBuffer *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1entry_1set_1buffer_FUNC);
}
#endif

#ifndef NO_gtk_1event_1controller_1focus_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1event_1controller_1focus_1new)
	(JNIEnv *env, jclass that)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1event_1controller_1focus_1new_FUNC);
	rc = (jlong)gtk_event_controller_focus_new();
	GTK4_NATIVE_EXIT(env, that, gtk_1event_1controller_1focus_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1event_1controller_1get_1current_1event
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1event_1controller_1get_1current_1event)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1event_1controller_1get_1current_1event_FUNC);
	rc = (jlong)gtk_event_controller_get_current_event((GtkEventController *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1event_1controller_1get_1current_1event_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1event_1controller_1get_1current_1event_1state
JNIEXPORT jint JNICALL GTK4_NATIVE(gtk_1event_1controller_1get_1current_1event_1state)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jint rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1event_1controller_1get_1current_1event_1state_FUNC);
	rc = (jint)gtk_event_controller_get_current_event_state((GtkEventController *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1event_1controller_1get_1current_1event_1state_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1event_1controller_1key_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1event_1controller_1key_1new)
	(JNIEnv *env, jclass that)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1event_1controller_1key_1new_FUNC);
	rc = (jlong)gtk_event_controller_key_new();
	GTK4_NATIVE_EXIT(env, that, gtk_1event_1controller_1key_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1event_1controller_1motion_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1event_1controller_1motion_1new)
	(JNIEnv *env, jclass that)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1event_1controller_1motion_1new_FUNC);
	rc = (jlong)gtk_event_controller_motion_new();
	GTK4_NATIVE_EXIT(env, that, gtk_1event_1controller_1motion_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1event_1controller_1scroll_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1event_1controller_1scroll_1new)
	(JNIEnv *env, jclass that, jint arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1event_1controller_1scroll_1new_FUNC);
	rc = (jlong)gtk_event_controller_scroll_new((GtkEventControllerScrollFlags)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1event_1controller_1scroll_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1expander_1set_1child
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1expander_1set_1child)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1expander_1set_1child_FUNC);
	gtk_expander_set_child((GtkExpander *)arg0, (GtkWidget *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1expander_1set_1child_FUNC);
}
#endif

#ifndef NO_gtk_1file_1chooser_1get_1file
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1file_1chooser_1get_1file)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1file_1chooser_1get_1file_FUNC);
	rc = (jlong)gtk_file_chooser_get_file((GtkFileChooser *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1file_1chooser_1get_1file_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1file_1chooser_1get_1files
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1file_1chooser_1get_1files)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1file_1chooser_1get_1files_FUNC);
	rc = (jlong)gtk_file_chooser_get_files((GtkFileChooser *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1file_1chooser_1get_1files_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1file_1chooser_1set_1current_1folder
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gtk_1file_1chooser_1set_1current_1folder)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1, jlong arg2)
{
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1file_1chooser_1set_1current_1folder_FUNC);
	rc = (jboolean)gtk_file_chooser_set_current_folder((GtkFileChooser *)arg0, (GFile *)arg1, (GError **)arg2);
	GTK4_NATIVE_EXIT(env, that, gtk_1file_1chooser_1set_1current_1folder_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1file_1chooser_1set_1file
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gtk_1file_1chooser_1set_1file)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1, jlong arg2)
{
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1file_1chooser_1set_1file_FUNC);
	rc = (jboolean)gtk_file_chooser_set_file((GtkFileChooser *)arg0, (GFile *)arg1, (GError **)arg2);
	GTK4_NATIVE_EXIT(env, that, gtk_1file_1chooser_1set_1file_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1frame_1set_1child
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1frame_1set_1child)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1frame_1set_1child_FUNC);
	gtk_frame_set_child((GtkFrame *)arg0, (GtkWidget *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1frame_1set_1child_FUNC);
}
#endif

#ifndef NO_gtk_1gesture_1click_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1gesture_1click_1new)
	(JNIEnv *env, jclass that)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1gesture_1click_1new_FUNC);
	rc = (jlong)gtk_gesture_click_new();
	GTK4_NATIVE_EXIT(env, that, gtk_1gesture_1click_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1hsv_1to_1rgb
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1hsv_1to_1rgb)
	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2, jfloatArray arg3, jfloatArray arg4, jfloatArray arg5)
{
	jfloat *lparg3=NULL;
	jfloat *lparg4=NULL;
	jfloat *lparg5=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1hsv_1to_1rgb_FUNC);
	if (arg3) if ((lparg3 = (*env)->GetFloatArrayElements(env, arg3, NULL)) == NULL) goto fail;
	if (arg4) if ((lparg4 = (*env)->GetFloatArrayElements(env, arg4, NULL)) == NULL) goto fail;
	if (arg5) if ((lparg5 = (*env)->GetFloatArrayElements(env, arg5, NULL)) == NULL) goto fail;
	gtk_hsv_to_rgb(arg0, arg1, arg2, (float *)lparg3, (float *)lparg4, (float *)lparg5);
fail:
	if (arg5 && lparg5) (*env)->ReleaseFloatArrayElements(env, arg5, lparg5, 0);
	if (arg4 && lparg4) (*env)->ReleaseFloatArrayElements(env, arg4, lparg4, 0);
	if (arg3 && lparg3) (*env)->ReleaseFloatArrayElements(env, arg3, lparg3, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1hsv_1to_1rgb_FUNC);
}
#endif

#ifndef NO_gtk_1icon_1paintable_1get_1file
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1icon_1paintable_1get_1file)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1icon_1paintable_1get_1file_FUNC);
	rc = (jlong)gtk_icon_paintable_get_file((GtkIconPaintable *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1icon_1paintable_1get_1file_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1icon_1theme_1get_1for_1display
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1icon_1theme_1get_1for_1display)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1icon_1theme_1get_1for_1display_FUNC);
	rc = (jlong)gtk_icon_theme_get_for_display((GdkDisplay *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1icon_1theme_1get_1for_1display_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1icon_1theme_1lookup_1by_1gicon
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1icon_1theme_1lookup_1by_1gicon)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1, jint arg2, jint arg3, jint arg4, jint arg5)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1icon_1theme_1lookup_1by_1gicon_FUNC);
	rc = (jlong)gtk_icon_theme_lookup_by_gicon((GtkIconTheme *)arg0, (GIcon *)arg1, arg2, arg3, (GtkTextDirection)arg4, (GtkIconLookupFlags)arg5);
	GTK4_NATIVE_EXIT(env, that, gtk_1icon_1theme_1lookup_1by_1gicon_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1icon_1theme_1lookup_1icon
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1icon_1theme_1lookup_1icon)
	(JNIEnv *env, jclass that, jlong arg0, jbyteArray arg1, jlong arg2, jint arg3, jint arg4, jint arg5, jint arg6)
{
	jbyte *lparg1=NULL;
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1icon_1theme_1lookup_1icon_FUNC);
	if (arg1) if ((lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL)) == NULL) goto fail;
	rc = (jlong)gtk_icon_theme_lookup_icon((GtkIconTheme *)arg0, (const char *)lparg1, (const char **)arg2, arg3, arg4, (GtkTextDirection)arg5, (GtkIconLookupFlags)arg6);
fail:
	if (arg1 && lparg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1icon_1theme_1lookup_1icon_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1im_1context_1filter_1keypress
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gtk_1im_1context_1filter_1keypress)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1im_1context_1filter_1keypress_FUNC);
	rc = (jboolean)gtk_im_context_filter_keypress((GtkIMContext *)arg0, (GdkEvent *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1im_1context_1filter_1keypress_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1image_1clear
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1image_1clear)
	(JNIEnv *env, jclass that, jlong arg0)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1image_1clear_FUNC);
	gtk_image_clear((GtkImage *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1image_1clear_FUNC);
}
#endif

#ifndef NO_gtk_1image_1new_1from_1icon_1name
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1image_1new_1from_1icon_1name)
	(JNIEnv *env, jclass that, jbyteArray arg0)
{
	jbyte *lparg0=NULL;
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1image_1new_1from_1icon_1name_FUNC);
	if (arg0) if ((lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL)) == NULL) goto fail;
	rc = (jlong)gtk_image_new_from_icon_name((const char *)lparg0);
fail:
	if (arg0 && lparg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1image_1new_1from_1icon_1name_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1image_1set_1from_1icon_1name
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1image_1set_1from_1icon_1name)
	(JNIEnv *env, jclass that, jlong arg0, jbyteArray arg1)
{
	jbyte *lparg1=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1image_1set_1from_1icon_1name_FUNC);
	if (arg1) if ((lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL)) == NULL) goto fail;
	gtk_image_set_from_icon_name((GtkImage *)arg0, (const gchar *)lparg1);
fail:
	if (arg1 && lparg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1image_1set_1from_1icon_1name_FUNC);
}
#endif

#ifndef NO_gtk_1image_1set_1from_1paintable
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1image_1set_1from_1paintable)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1image_1set_1from_1paintable_FUNC);
	gtk_image_set_from_paintable((GtkImage *)arg0, (GdkPaintable *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1image_1set_1from_1paintable_FUNC);
}
#endif

#ifndef NO_gtk_1init_1check
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gtk_1init_1check)
	(JNIEnv *env, jclass that)
{
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1init_1check_FUNC);
	rc = (jboolean)gtk_init_check();
	GTK4_NATIVE_EXIT(env, that, gtk_1init_1check_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1keyval_1trigger_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1keyval_1trigger_1new)
	(JNIEnv *env, jclass that, jint arg0, jint arg1)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1keyval_1trigger_1new_FUNC);
	rc = (jlong)gtk_keyval_trigger_new((guint)arg0, (GdkModifierType)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1keyval_1trigger_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1label_1set_1wrap
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1label_1set_1wrap)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1label_1set_1wrap_FUNC);
	gtk_label_set_wrap((GtkLabel *)arg0, (gboolean)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1label_1set_1wrap_FUNC);
}
#endif

#ifndef NO_gtk_1label_1set_1wrap_1mode
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1label_1set_1wrap_1mode)
	(JNIEnv *env, jclass that, jlong arg0, jint arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1label_1set_1wrap_1mode_FUNC);
	gtk_label_set_wrap_mode((GtkLabel *)arg0, (PangoWrapMode)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1label_1set_1wrap_1mode_FUNC);
}
#endif

#ifndef NO_gtk_1menu_1button_1set_1use_1underline
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1menu_1button_1set_1use_1underline)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1menu_1button_1set_1use_1underline_FUNC);
	gtk_menu_button_set_use_underline((GtkMenuButton *)arg0, arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1menu_1button_1set_1use_1underline_FUNC);
}
#endif

#ifndef NO_gtk_1named_1action_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1named_1action_1new)
	(JNIEnv *env, jclass that, jbyteArray arg0)
{
	jbyte *lparg0=NULL;
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1named_1action_1new_FUNC);
	if (arg0) if ((lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL)) == NULL) goto fail;
	rc = (jlong)gtk_named_action_new((const char *)lparg0);
fail:
	if (arg0 && lparg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1named_1action_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1native_1get_1surface
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1native_1get_1surface)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1native_1get_1surface_FUNC);
	rc = (jlong)gtk_native_get_surface((GtkNative *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1native_1get_1surface_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1picture_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1picture_1new)
	(JNIEnv *env, jclass that)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1picture_1new_FUNC);
	rc = (jlong)gtk_picture_new();
	GTK4_NATIVE_EXIT(env, that, gtk_1picture_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1picture_1set_1can_1shrink
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1picture_1set_1can_1shrink)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1picture_1set_1can_1shrink_FUNC);
	gtk_picture_set_can_shrink((GtkPicture *)arg0, arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1picture_1set_1can_1shrink_FUNC);
}
#endif

#ifndef NO_gtk_1picture_1set_1paintable
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1picture_1set_1paintable)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1picture_1set_1paintable_FUNC);
	gtk_picture_set_paintable((GtkPicture *)arg0, (GdkPaintable *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1picture_1set_1paintable_FUNC);
}
#endif

#ifndef NO_gtk_1popover_1menu_1bar_1new_1from_1model
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1popover_1menu_1bar_1new_1from_1model)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1popover_1menu_1bar_1new_1from_1model_FUNC);
	rc = (jlong)gtk_popover_menu_bar_new_from_model((GMenuModel *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1popover_1menu_1bar_1new_1from_1model_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1popover_1menu_1new_1from_1model_1full
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1popover_1menu_1new_1from_1model_1full)
	(JNIEnv *env, jclass that, jlong arg0, jint arg1)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1popover_1menu_1new_1from_1model_1full_FUNC);
	rc = (jlong)gtk_popover_menu_new_from_model_full((GMenuModel *)arg0, (GtkPopoverMenuFlags)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1popover_1menu_1new_1from_1model_1full_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1popover_1menu_1set_1menu_1model
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1popover_1menu_1set_1menu_1model)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1popover_1menu_1set_1menu_1model_FUNC);
	gtk_popover_menu_set_menu_model((GtkPopoverMenu *)arg0, (GMenuModel *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1popover_1menu_1set_1menu_1model_FUNC);
}
#endif

#ifndef NO_gtk_1popover_1set_1has_1arrow
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1popover_1set_1has_1arrow)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1popover_1set_1has_1arrow_FUNC);
	gtk_popover_set_has_arrow((GtkPopover *)arg0, arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1popover_1set_1has_1arrow_FUNC);
}
#endif

#ifndef NO_gtk_1rgb_1to_1hsv
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1rgb_1to_1hsv)
	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2, jfloatArray arg3, jfloatArray arg4, jfloatArray arg5)
{
	jfloat *lparg3=NULL;
	jfloat *lparg4=NULL;
	jfloat *lparg5=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1rgb_1to_1hsv_FUNC);
	if (arg3) if ((lparg3 = (*env)->GetFloatArrayElements(env, arg3, NULL)) == NULL) goto fail;
	if (arg4) if ((lparg4 = (*env)->GetFloatArrayElements(env, arg4, NULL)) == NULL) goto fail;
	if (arg5) if ((lparg5 = (*env)->GetFloatArrayElements(env, arg5, NULL)) == NULL) goto fail;
	gtk_rgb_to_hsv(arg0, arg1, arg2, (float *)lparg3, (float *)lparg4, (float *)lparg5);
fail:
	if (arg5 && lparg5) (*env)->ReleaseFloatArrayElements(env, arg5, lparg5, 0);
	if (arg4 && lparg4) (*env)->ReleaseFloatArrayElements(env, arg4, lparg4, 0);
	if (arg3 && lparg3) (*env)->ReleaseFloatArrayElements(env, arg3, lparg3, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1rgb_1to_1hsv_FUNC);
}
#endif

#ifndef NO_gtk_1scrollbar_1get_1adjustment
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1scrollbar_1get_1adjustment)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1scrollbar_1get_1adjustment_FUNC);
	rc = (jlong)gtk_scrollbar_get_adjustment((GtkScrollbar *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1scrollbar_1get_1adjustment_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1scrolled_1window_1get_1has_1frame
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gtk_1scrolled_1window_1get_1has_1frame)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1scrolled_1window_1get_1has_1frame_FUNC);
	rc = (jboolean)gtk_scrolled_window_get_has_frame((GtkScrolledWindow *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1scrolled_1window_1get_1has_1frame_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1scrolled_1window_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1scrolled_1window_1new)
	(JNIEnv *env, jclass that)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1scrolled_1window_1new_FUNC);
	rc = (jlong)gtk_scrolled_window_new();
	GTK4_NATIVE_EXIT(env, that, gtk_1scrolled_1window_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1scrolled_1window_1set_1child
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1scrolled_1window_1set_1child)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1scrolled_1window_1set_1child_FUNC);
	gtk_scrolled_window_set_child((GtkScrolledWindow *)arg0, (GtkWidget *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1scrolled_1window_1set_1child_FUNC);
}
#endif

#ifndef NO_gtk_1scrolled_1window_1set_1has_1frame
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1scrolled_1window_1set_1has_1frame)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1scrolled_1window_1set_1has_1frame_FUNC);
	gtk_scrolled_window_set_has_frame((GtkScrolledWindow *)arg0, arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1scrolled_1window_1set_1has_1frame_FUNC);
}
#endif

#ifndef NO_gtk_1shortcut_1controller_1add_1shortcut
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1shortcut_1controller_1add_1shortcut)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1shortcut_1controller_1add_1shortcut_FUNC);
	gtk_shortcut_controller_add_shortcut((GtkShortcutController *)arg0, (GtkShortcut *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1shortcut_1controller_1add_1shortcut_FUNC);
}
#endif

#ifndef NO_gtk_1shortcut_1controller_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1shortcut_1controller_1new)
	(JNIEnv *env, jclass that)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1shortcut_1controller_1new_FUNC);
	rc = (jlong)gtk_shortcut_controller_new();
	GTK4_NATIVE_EXIT(env, that, gtk_1shortcut_1controller_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1shortcut_1controller_1remove_1shortcut
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1shortcut_1controller_1remove_1shortcut)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1shortcut_1controller_1remove_1shortcut_FUNC);
	gtk_shortcut_controller_remove_shortcut((GtkShortcutController *)arg0, (GtkShortcut *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1shortcut_1controller_1remove_1shortcut_FUNC);
}
#endif

#ifndef NO_gtk_1shortcut_1controller_1set_1scope
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1shortcut_1controller_1set_1scope)
	(JNIEnv *env, jclass that, jlong arg0, jint arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1shortcut_1controller_1set_1scope_FUNC);
	gtk_shortcut_controller_set_scope((GtkShortcutController *)arg0, (GtkShortcutScope)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1shortcut_1controller_1set_1scope_FUNC);
}
#endif

#ifndef NO_gtk_1shortcut_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1shortcut_1new)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1shortcut_1new_FUNC);
	rc = (jlong)gtk_shortcut_new((GtkShortcutTrigger *)arg0, (GtkShortcutAction *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1shortcut_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1snapshot_1append_1cairo
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1snapshot_1append_1cairo)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1snapshot_1append_1cairo_FUNC);
	rc = (jlong)gtk_snapshot_append_cairo((GtkSnapshot *)arg0, (const graphene_rect_t *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1snapshot_1append_1cairo_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1style_1context_1add_1provider_1for_1display
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1style_1context_1add_1provider_1for_1display)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1, jint arg2)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1style_1context_1add_1provider_1for_1display_FUNC);
	gtk_style_context_add_provider_for_display((GdkDisplay *)arg0, (GtkStyleProvider *)arg1, (guint)arg2);
	GTK4_NATIVE_EXIT(env, that, gtk_1style_1context_1add_1provider_1for_1display_FUNC);
}
#endif

#ifndef NO_gtk_1style_1context_1get_1border
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1style_1context_1get_1border)
	(JNIEnv *env, jclass that, jlong arg0, jobject arg1)
{
	GtkBorder _arg1, *lparg1=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1style_1context_1get_1border_FUNC);
	if (arg1) if ((lparg1 = &_arg1) == NULL) goto fail;
	gtk_style_context_get_border((GtkStyleContext *)arg0, (GtkBorder *)lparg1);
fail:
	if (arg1 && lparg1) setGtkBorderFields(env, arg1, lparg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1style_1context_1get_1border_FUNC);
}
#endif

#ifndef NO_gtk_1style_1context_1get_1color
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1style_1context_1get_1color)
	(JNIEnv *env, jclass that, jlong arg0, jobject arg1)
{
	GdkRGBA _arg1, *lparg1=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1style_1context_1get_1color_FUNC);
	if (arg1) if ((lparg1 = getGdkRGBAFields(env, arg1, &_arg1)) == NULL) goto fail;
	gtk_style_context_get_color((GtkStyleContext *)arg0, (GdkRGBA *)lparg1);
fail:
	if (arg1 && lparg1) setGdkRGBAFields(env, arg1, lparg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1style_1context_1get_1color_FUNC);
}
#endif

#ifndef NO_gtk_1style_1context_1get_1margin
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1style_1context_1get_1margin)
	(JNIEnv *env, jclass that, jlong arg0, jobject arg1)
{
	GtkBorder _arg1, *lparg1=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1style_1context_1get_1margin_FUNC);
	if (arg1) if ((lparg1 = &_arg1) == NULL) goto fail;
	gtk_style_context_get_margin((GtkStyleContext *)arg0, (GtkBorder *)lparg1);
fail:
	if (arg1 && lparg1) setGtkBorderFields(env, arg1, lparg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1style_1context_1get_1margin_FUNC);
}
#endif

#ifndef NO_gtk_1style_1context_1get_1padding
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1style_1context_1get_1padding)
	(JNIEnv *env, jclass that, jlong arg0, jobject arg1)
{
	GtkBorder _arg1, *lparg1=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1style_1context_1get_1padding_FUNC);
	if (arg1) if ((lparg1 = &_arg1) == NULL) goto fail;
	gtk_style_context_get_padding((GtkStyleContext *)arg0, (GtkBorder *)lparg1);
fail:
	if (arg1 && lparg1) setGtkBorderFields(env, arg1, lparg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1style_1context_1get_1padding_FUNC);
}
#endif

#ifndef NO_gtk_1text_1get_1buffer
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1text_1get_1buffer)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1text_1get_1buffer_FUNC);
	rc = (jlong)gtk_text_get_buffer((GtkText *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1text_1get_1buffer_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1text_1set_1placeholder_1text
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1text_1set_1placeholder_1text)
	(JNIEnv *env, jclass that, jlong arg0, jbyteArray arg1)
{
	jbyte *lparg1=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1text_1set_1placeholder_1text_FUNC);
	if (arg1) if ((lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL)) == NULL) goto fail;
	gtk_text_set_placeholder_text((GtkText *)arg0, (const gchar *)lparg1);
fail:
	if (arg1 && lparg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1text_1set_1placeholder_1text_FUNC);
}
#endif

#ifndef NO_gtk_1text_1set_1tabs
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1text_1set_1tabs)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1text_1set_1tabs_FUNC);
	gtk_text_set_tabs((GtkText *)arg0, (PangoTabArray *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1text_1set_1tabs_FUNC);
}
#endif

#ifndef NO_gtk_1text_1set_1visibility
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1text_1set_1visibility)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1text_1set_1visibility_FUNC);
	gtk_text_set_visibility((GtkText *)arg0, arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1text_1set_1visibility_FUNC);
}
#endif

#ifndef NO_gtk_1tree_1view_1column_1cell_1get_1size
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1tree_1view_1column_1cell_1get_1size)
	(JNIEnv *env, jclass that, jlong arg0, jintArray arg1, jintArray arg2, jintArray arg3, jintArray arg4)
{
	jint *lparg1=NULL;
	jint *lparg2=NULL;
	jint *lparg3=NULL;
	jint *lparg4=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1tree_1view_1column_1cell_1get_1size_FUNC);
	if (arg1) if ((lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL)) == NULL) goto fail;
	if (arg2) if ((lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL)) == NULL) goto fail;
	if (arg3) if ((lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL)) == NULL) goto fail;
	if (arg4) if ((lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL)) == NULL) goto fail;
	gtk_tree_view_column_cell_get_size((GtkTreeViewColumn *)arg0, (int *)lparg1, (int *)lparg2, (int *)lparg3, (int *)lparg4);
fail:
	if (arg4 && lparg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
	if (arg3 && lparg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
	if (arg2 && lparg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
	if (arg1 && lparg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1tree_1view_1column_1cell_1get_1size_FUNC);
}
#endif

#ifndef NO_gtk_1widget_1action_1set_1enabled
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1widget_1action_1set_1enabled)
	(JNIEnv *env, jclass that, jlong arg0, jbyteArray arg1, jboolean arg2)
{
	jbyte *lparg1=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1action_1set_1enabled_FUNC);
	if (arg1) if ((lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL)) == NULL) goto fail;
	gtk_widget_action_set_enabled((GtkWidget *)arg0, (const char *)lparg1, arg2);
fail:
	if (arg1 && lparg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1action_1set_1enabled_FUNC);
}
#endif

#ifndef NO_gtk_1widget_1activate_1action
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gtk_1widget_1activate_1action)
	(JNIEnv *env, jclass that, jlong arg0, jbyteArray arg1, jbyteArray arg2)
{
	jbyte *lparg1=NULL;
	jbyte *lparg2=NULL;
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1activate_1action_FUNC);
	if (arg1) if ((lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL)) == NULL) goto fail;
	if (arg2) if ((lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL)) == NULL) goto fail;
	rc = (jboolean)gtk_widget_activate_action((GtkWidget *)arg0, (const char *)lparg1, (const char *)lparg2);
fail:
	if (arg2 && lparg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
	if (arg1 && lparg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1activate_1action_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1widget_1add_1controller
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1widget_1add_1controller)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1add_1controller_FUNC);
	gtk_widget_add_controller((GtkWidget *)arg0, (GtkEventController *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1add_1controller_FUNC);
}
#endif

#ifndef NO_gtk_1widget_1class_1add_1binding_1signal
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1widget_1class_1add_1binding_1signal)
	(JNIEnv *env, jclass that, jlong arg0, jint arg1, jint arg2, jbyteArray arg3, jbyteArray arg4, jboolean arg5, jboolean arg6, jboolean arg7)
{
	jbyte *lparg3=NULL;
	jbyte *lparg4=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1class_1add_1binding_1signal_FUNC);
	if (arg3) if ((lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL)) == NULL) goto fail;
	if (arg4) if ((lparg4 = (*env)->GetByteArrayElements(env, arg4, NULL)) == NULL) goto fail;
	gtk_widget_class_add_binding_signal((GtkWidgetClass *)arg0, arg1, (GdkModifierType)arg2, (const char *)lparg3, (const char *)lparg4, arg5, arg6, arg7);
fail:
	if (arg4 && lparg4) (*env)->ReleaseByteArrayElements(env, arg4, lparg4, 0);
	if (arg3 && lparg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1class_1add_1binding_1signal_FUNC);
}
#endif

#ifndef NO_gtk_1widget_1get_1clipboard
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1widget_1get_1clipboard)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1get_1clipboard_FUNC);
	rc = (jlong)gtk_widget_get_clipboard((GtkWidget *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1get_1clipboard_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1widget_1get_1first_1child
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1widget_1get_1first_1child)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1get_1first_1child_FUNC);
	rc = (jlong)gtk_widget_get_first_child((GtkWidget *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1get_1first_1child_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1widget_1get_1last_1child
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1widget_1get_1last_1child)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1get_1last_1child_FUNC);
	rc = (jlong)gtk_widget_get_last_child((GtkWidget *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1get_1last_1child_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1widget_1get_1native
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1widget_1get_1native)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1get_1native_FUNC);
	rc = (jlong)gtk_widget_get_native((GtkWidget *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1get_1native_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1widget_1get_1next_1sibling
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1widget_1get_1next_1sibling)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1get_1next_1sibling_FUNC);
	rc = (jlong)gtk_widget_get_next_sibling((GtkWidget *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1get_1next_1sibling_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1widget_1get_1prev_1sibling
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1widget_1get_1prev_1sibling)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1get_1prev_1sibling_FUNC);
	rc = (jlong)gtk_widget_get_prev_sibling((GtkWidget *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1get_1prev_1sibling_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1widget_1get_1receives_1default
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gtk_1widget_1get_1receives_1default)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1get_1receives_1default_FUNC);
	rc = (jboolean)gtk_widget_get_receives_default((GtkWidget *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1get_1receives_1default_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1widget_1get_1root
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1widget_1get_1root)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1get_1root_FUNC);
	rc = (jlong)gtk_widget_get_root((GtkWidget *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1get_1root_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1widget_1measure
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1widget_1measure)
	(JNIEnv *env, jclass that, jlong arg0, jint arg1, jint arg2, jintArray arg3, jintArray arg4, jintArray arg5, jintArray arg6)
{
	jint *lparg3=NULL;
	jint *lparg4=NULL;
	jint *lparg5=NULL;
	jint *lparg6=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1measure_FUNC);
	if (arg3) if ((lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL)) == NULL) goto fail;
	if (arg4) if ((lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL)) == NULL) goto fail;
	if (arg5) if ((lparg5 = (*env)->GetIntArrayElements(env, arg5, NULL)) == NULL) goto fail;
	if (arg6) if ((lparg6 = (*env)->GetIntArrayElements(env, arg6, NULL)) == NULL) goto fail;
	gtk_widget_measure((GtkWidget *)arg0, (GtkOrientation)arg1, (int)arg2, (int *)lparg3, (int *)lparg4, (int *)lparg5, (int *)lparg6);
fail:
	if (arg6 && lparg6) (*env)->ReleaseIntArrayElements(env, arg6, lparg6, 0);
	if (arg5 && lparg5) (*env)->ReleaseIntArrayElements(env, arg5, lparg5, 0);
	if (arg4 && lparg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
	if (arg3 && lparg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1measure_FUNC);
}
#endif

#ifndef NO_gtk_1widget_1set_1cursor
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1widget_1set_1cursor)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1set_1cursor_FUNC);
	gtk_widget_set_cursor((GtkWidget *)arg0, (GdkCursor *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1set_1cursor_FUNC);
}
#endif

#ifndef NO_gtk_1widget_1set_1focusable
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1widget_1set_1focusable)
	(JNIEnv *env, jclass that, jlong arg0, jboolean arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1set_1focusable_FUNC);
	gtk_widget_set_focusable((GtkWidget *)arg0, (gboolean)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1set_1focusable_FUNC);
}
#endif

#ifndef NO_gtk_1widget_1size_1allocate
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1widget_1size_1allocate)
	(JNIEnv *env, jclass that, jlong arg0, jobject arg1, jint arg2)
{
	GtkAllocation _arg1, *lparg1=NULL;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1size_1allocate_FUNC);
	if (arg1) if ((lparg1 = getGtkAllocationFields(env, arg1, &_arg1)) == NULL) goto fail;
	gtk_widget_size_allocate((GtkWidget *)arg0, (GtkAllocation *)lparg1, arg2);
fail:
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1size_1allocate_FUNC);
}
#endif

#ifndef NO_gtk_1widget_1snapshot_1child
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1widget_1snapshot_1child)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1, jlong arg2)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1snapshot_1child_FUNC);
	gtk_widget_snapshot_child((GtkWidget *)arg0, (GtkWidget *)arg1, (GtkSnapshot *)arg2);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1snapshot_1child_FUNC);
}
#endif

#ifndef NO_gtk_1widget_1translate_1coordinates
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gtk_1widget_1translate_1coordinates)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1, jdouble arg2, jdouble arg3, jdoubleArray arg4, jdoubleArray arg5)
{
	jdouble *lparg4=NULL;
	jdouble *lparg5=NULL;
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1widget_1translate_1coordinates_FUNC);
	if (arg4) if ((lparg4 = (*env)->GetDoubleArrayElements(env, arg4, NULL)) == NULL) goto fail;
	if (arg5) if ((lparg5 = (*env)->GetDoubleArrayElements(env, arg5, NULL)) == NULL) goto fail;
	rc = (jboolean)gtk_widget_translate_coordinates((GtkWidget *)arg0, (GtkWidget *)arg1, arg2, arg3, (double *)lparg4, (double *)lparg5);
fail:
	if (arg5 && lparg5) (*env)->ReleaseDoubleArrayElements(env, arg5, lparg5, 0);
	if (arg4 && lparg4) (*env)->ReleaseDoubleArrayElements(env, arg4, lparg4, 0);
	GTK4_NATIVE_EXIT(env, that, gtk_1widget_1translate_1coordinates_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1window_1destroy
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1window_1destroy)
	(JNIEnv *env, jclass that, jlong arg0)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1window_1destroy_FUNC);
	gtk_window_destroy((GtkWindow *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1window_1destroy_FUNC);
}
#endif

#ifndef NO_gtk_1window_1get_1icon_1name
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1window_1get_1icon_1name)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1window_1get_1icon_1name_FUNC);
	rc = (jlong)gtk_window_get_icon_name((GtkWindow *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1window_1get_1icon_1name_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1window_1is_1maximized
JNIEXPORT jboolean JNICALL GTK4_NATIVE(gtk_1window_1is_1maximized)
	(JNIEnv *env, jclass that, jlong arg0)
{
	jboolean rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1window_1is_1maximized_FUNC);
	rc = (jboolean)gtk_window_is_maximized((GtkWindow *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1window_1is_1maximized_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1window_1maximize
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1window_1maximize)
	(JNIEnv *env, jclass that, jlong arg0)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1window_1maximize_FUNC);
	gtk_window_maximize((GtkWindow *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1window_1maximize_FUNC);
}
#endif

#ifndef NO_gtk_1window_1minimize
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1window_1minimize)
	(JNIEnv *env, jclass that, jlong arg0)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1window_1minimize_FUNC);
	gtk_window_minimize((GtkWindow *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1window_1minimize_FUNC);
}
#endif

#ifndef NO_gtk_1window_1new
JNIEXPORT jlong JNICALL GTK4_NATIVE(gtk_1window_1new)
	(JNIEnv *env, jclass that)
{
	jlong rc = 0;
	GTK4_NATIVE_ENTER(env, that, gtk_1window_1new_FUNC);
	rc = (jlong)gtk_window_new();
	GTK4_NATIVE_EXIT(env, that, gtk_1window_1new_FUNC);
	return rc;
}
#endif

#ifndef NO_gtk_1window_1set_1child
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1window_1set_1child)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1window_1set_1child_FUNC);
	gtk_window_set_child((GtkWindow *)arg0, (GtkWidget *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1window_1set_1child_FUNC);
}
#endif

#ifndef NO_gtk_1window_1set_1default_1widget
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1window_1set_1default_1widget)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1window_1set_1default_1widget_FUNC);
	gtk_window_set_default_widget((GtkWindow *)arg0, (GtkWidget *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1window_1set_1default_1widget_FUNC);
}
#endif

#ifndef NO_gtk_1window_1set_1icon_1name
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1window_1set_1icon_1name)
	(JNIEnv *env, jclass that, jlong arg0, jlong arg1)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1window_1set_1icon_1name_FUNC);
	gtk_window_set_icon_name((GtkWindow *)arg0, (const char *)arg1);
	GTK4_NATIVE_EXIT(env, that, gtk_1window_1set_1icon_1name_FUNC);
}
#endif

#ifndef NO_gtk_1window_1unminimize
JNIEXPORT void JNICALL GTK4_NATIVE(gtk_1window_1unminimize)
	(JNIEnv *env, jclass that, jlong arg0)
{
	GTK4_NATIVE_ENTER(env, that, gtk_1window_1unminimize_FUNC);
	gtk_window_unminimize((GtkWindow *)arg0);
	GTK4_NATIVE_EXIT(env, that, gtk_1window_1unminimize_FUNC);
}
#endif

