/* main.c generated by valac 0.56.19, the Vala compiler
 * generated from main.vala, do not modify */

#include <gtk/gtk.h>
#include <glib-object.h>
#include <gio/gio.h>
#include <locale.h>
#include <glib/gi18n-lib.h>
#include <stdlib.h>
#include <string.h>
#include <glib.h>

#if !defined(VALA_STRICT_C)
#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ >= 14)
#pragma GCC diagnostic warning "-Wincompatible-pointer-types"
#elif defined(__clang__) && (__clang_major__ >= 16)
#pragma clang diagnostic ignored "-Wincompatible-function-pointer-types"
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
#endif
#endif
#if !defined(VALA_EXTERN)
#if defined(_MSC_VER)
#define VALA_EXTERN __declspec(dllexport) extern
#elif __GNUC__ >= 4
#define VALA_EXTERN __attribute__((visibility("default"))) extern
#else
#define VALA_EXTERN extern
#endif
#endif

#define TYPE_WL_KBD_CONFIG_APP (wl_kbd_config_app_get_type ())
#define WL_KBD_CONFIG_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_WL_KBD_CONFIG_APP, WlKbdConfigApp))
#define WL_KBD_CONFIG_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_WL_KBD_CONFIG_APP, WlKbdConfigAppClass))
#define IS_WL_KBD_CONFIG_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_WL_KBD_CONFIG_APP))
#define IS_WL_KBD_CONFIG_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_WL_KBD_CONFIG_APP))
#define WL_KBD_CONFIG_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_WL_KBD_CONFIG_APP, WlKbdConfigAppClass))

typedef struct _WlKbdConfigApp WlKbdConfigApp;
typedef struct _WlKbdConfigAppClass WlKbdConfigAppClass;
typedef struct _WlKbdConfigAppPrivate WlKbdConfigAppPrivate;
enum  {
	WL_KBD_CONFIG_APP_0_PROPERTY,
	WL_KBD_CONFIG_APP_NUM_PROPERTIES
};
static GParamSpec* wl_kbd_config_app_properties[WL_KBD_CONFIG_APP_NUM_PROPERTIES];

#define TYPE_SETTINGS_WINDOW (settings_window_get_type ())
#define SETTINGS_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SETTINGS_WINDOW, SettingsWindow))
#define SETTINGS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SETTINGS_WINDOW, SettingsWindowClass))
#define IS_SETTINGS_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SETTINGS_WINDOW))
#define IS_SETTINGS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SETTINGS_WINDOW))
#define SETTINGS_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SETTINGS_WINDOW, SettingsWindowClass))

typedef struct _SettingsWindow SettingsWindow;
typedef struct _SettingsWindowClass SettingsWindowClass;
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

struct _WlKbdConfigApp {
	GtkApplication parent_instance;
	WlKbdConfigAppPrivate * priv;
};

struct _WlKbdConfigAppClass {
	GtkApplicationClass parent_class;
};

static gpointer wl_kbd_config_app_parent_class = NULL;

VALA_EXTERN GType wl_kbd_config_app_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WlKbdConfigApp, g_object_unref)
VALA_EXTERN WlKbdConfigApp* wl_kbd_config_app_new (void);
VALA_EXTERN WlKbdConfigApp* wl_kbd_config_app_construct (GType object_type);
static void wl_kbd_config_app_real_activate (GApplication* base);
VALA_EXTERN GType settings_window_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SettingsWindow, g_object_unref)
VALA_EXTERN SettingsWindow* settings_window_new (GtkApplication* app);
VALA_EXTERN SettingsWindow* settings_window_construct (GType object_type,
                                           GtkApplication* app);
static GType wl_kbd_config_app_get_type_once (void);
static gint _vala_main (gchar** args,
                 gint args_length1);

WlKbdConfigApp*
wl_kbd_config_app_construct (GType object_type)
{
	WlKbdConfigApp * self = NULL;
	self = (WlKbdConfigApp*) g_object_new (object_type, "application-id", "org.example.wlkbdconfig", "flags", G_APPLICATION_FLAGS_NONE, NULL);
	return self;
}

WlKbdConfigApp*
wl_kbd_config_app_new (void)
{
	return wl_kbd_config_app_construct (TYPE_WL_KBD_CONFIG_APP);
}

static void
wl_kbd_config_app_real_activate (GApplication* base)
{
	WlKbdConfigApp * self;
	SettingsWindow* win = NULL;
	SettingsWindow* _tmp0_;
	self = (WlKbdConfigApp*) base;
	setlocale (LC_ALL, "");
	bindtextdomain ("wl-kbd-config", "/usr/share/locale");
	bind_textdomain_codeset ("wl-kbd-config", "UTF-8");
	textdomain ("wl-kbd-config");
	_tmp0_ = settings_window_new ((GtkApplication*) self);
	g_object_ref_sink (_tmp0_);
	win = _tmp0_;
	gtk_window_set_icon_name ((GtkWindow*) win, "input-keyboard");
	gtk_window_present ((GtkWindow*) win);
	_g_object_unref0 (win);
}

static void
wl_kbd_config_app_class_init (WlKbdConfigAppClass * klass,
                              gpointer klass_data)
{
	wl_kbd_config_app_parent_class = g_type_class_peek_parent (klass);
	((GApplicationClass *) klass)->activate = (void (*) (GApplication*)) wl_kbd_config_app_real_activate;
}

static void
wl_kbd_config_app_instance_init (WlKbdConfigApp * self,
                                 gpointer klass)
{
}

static GType
wl_kbd_config_app_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (WlKbdConfigAppClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) wl_kbd_config_app_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (WlKbdConfigApp), 0, (GInstanceInitFunc) wl_kbd_config_app_instance_init, NULL };
	GType wl_kbd_config_app_type_id;
	wl_kbd_config_app_type_id = g_type_register_static (gtk_application_get_type (), "WlKbdConfigApp", &g_define_type_info, 0);
	return wl_kbd_config_app_type_id;
}

GType
wl_kbd_config_app_get_type (void)
{
	static volatile gsize wl_kbd_config_app_type_id__once = 0;
	if (g_once_init_enter (&wl_kbd_config_app_type_id__once)) {
		GType wl_kbd_config_app_type_id;
		wl_kbd_config_app_type_id = wl_kbd_config_app_get_type_once ();
		g_once_init_leave (&wl_kbd_config_app_type_id__once, wl_kbd_config_app_type_id);
	}
	return wl_kbd_config_app_type_id__once;
}

static gint
_vala_main (gchar** args,
            gint args_length1)
{
	WlKbdConfigApp* app = NULL;
	WlKbdConfigApp* _tmp0_;
	gint result;
	_tmp0_ = wl_kbd_config_app_new ();
	app = _tmp0_;
	result = g_application_run ((GApplication*) app, (gint) args_length1, args);
	_g_object_unref0 (app);
	return result;
}

int
main (int argc,
      char ** argv)
{
	return _vala_main (argv, argc);
}

