/* launch-options-editor-resolution-choice.c generated by valac 0.56.19, the Vala compiler
 * generated from launch-options-editor-resolution-choice.vala, do not modify */

#include <glib-object.h>
#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include "protonplus_core.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

#define PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_TYPE_LAUNCH_OPTION_RESOLUTION_CHOICE (proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_type ())
#define PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_TYPE_LAUNCH_OPTION_RESOLUTION_CHOICE, ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice))
#define PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_TYPE_LAUNCH_OPTION_RESOLUTION_CHOICE, ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoiceClass))
#define PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_IS_LAUNCH_OPTION_RESOLUTION_CHOICE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_TYPE_LAUNCH_OPTION_RESOLUTION_CHOICE))
#define PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_IS_LAUNCH_OPTION_RESOLUTION_CHOICE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_TYPE_LAUNCH_OPTION_RESOLUTION_CHOICE))
#define PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_TYPE_LAUNCH_OPTION_RESOLUTION_CHOICE, ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoiceClass))

typedef struct _ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice;
typedef struct _ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoiceClass ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoiceClass;
typedef struct _ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoicePrivate ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoicePrivate;
enum  {
	PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_0_PROPERTY,
	PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_LABEL_PROPERTY,
	PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_WIDTH_PROPERTY,
	PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_HEIGHT_PROPERTY,
	PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_AUTO_PROPERTY,
	PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_CUSTOM_PROPERTY,
	PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_NUM_PROPERTIES
};
static GParamSpec* proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_properties[PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_NUM_PROPERTIES];
#define _g_free0(var) (var = (g_free (var), NULL))

struct _ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice {
	GObject parent_instance;
	ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoicePrivate * priv;
};

struct _ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoiceClass {
	GObjectClass parent_class;
};

struct _ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoicePrivate {
	gchar* _label;
	gint _width;
	gint _height;
	gboolean _is_auto;
	gboolean _is_custom;
};

static gint ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice_private_offset;
static gpointer proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_parent_class = NULL;

VALA_EXTERN GType proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_type (void) G_GNUC_CONST ;
VALA_EXTERN ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_new (const gchar* label,
                                                                                                                                                            gint width,
                                                                                                                                                            gint height,
                                                                                                                                                            gboolean is_auto,
                                                                                                                                                            gboolean is_custom);
VALA_EXTERN ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_construct (GType object_type,
                                                                                                                                                                  const gchar* label,
                                                                                                                                                                  gint width,
                                                                                                                                                                  gint height,
                                                                                                                                                                  gboolean is_auto,
                                                                                                                                                                  gboolean is_custom);
VALA_EXTERN void proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_label (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self,
                                                                                                const gchar* value);
VALA_EXTERN void proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_width (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self,
                                                                                                gint value);
VALA_EXTERN void proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_height (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self,
                                                                                                 gint value);
VALA_EXTERN void proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_is_auto (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self,
                                                                                                  gboolean value);
VALA_EXTERN void proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_is_custom (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self,
                                                                                                    gboolean value);
VALA_EXTERN const gchar* proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_label (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self);
VALA_EXTERN gint proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_width (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self);
VALA_EXTERN gint proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_height (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self);
VALA_EXTERN gboolean proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_is_auto (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self);
VALA_EXTERN gboolean proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_is_custom (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self);
static void proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_finalize (GObject * obj);
static GType proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_type_once (void);
static void _vala_proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_property (GObject * object,
                                                                                                         guint property_id,
                                                                                                         GValue * value,
                                                                                                         GParamSpec * pspec);
static void _vala_proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_property (GObject * object,
                                                                                                         guint property_id,
                                                                                                         const GValue * value,
                                                                                                         GParamSpec * pspec);
static inline gpointer _vala_memdup2 (gconstpointer mem,
                        gsize byte_size);

static inline gpointer
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_instance_private (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self)
{
	return G_STRUCT_MEMBER_P (self, ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice_private_offset);
}

ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice*
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_construct (GType object_type,
                                                                                           const gchar* label,
                                                                                           gint width,
                                                                                           gint height,
                                                                                           gboolean is_auto,
                                                                                           gboolean is_custom)
{
	ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice * self = NULL;
	g_return_val_if_fail (label != NULL, NULL);
	self = (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice*) g_object_new (object_type, NULL);
	proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_label (self, label);
	proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_width (self, width);
	proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_height (self, height);
	proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_is_auto (self, is_auto);
	proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_is_custom (self, is_custom);
	return self;
}

ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice*
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_new (const gchar* label,
                                                                                     gint width,
                                                                                     gint height,
                                                                                     gboolean is_auto,
                                                                                     gboolean is_custom)
{
	return proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_construct (PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_TYPE_LAUNCH_OPTION_RESOLUTION_CHOICE, label, width, height, is_auto, is_custom);
}

const gchar*
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_label (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_label;
	result = _tmp0_;
	return result;
}

void
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_label (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self,
                                                                                           const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_label (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_label);
		self->priv->_label = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_properties[PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_LABEL_PROPERTY]);
	}
}

gint
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_width (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self)
{
	gint result;
	g_return_val_if_fail (self != NULL, -1);
	result = self->priv->_width;
	return result;
}

void
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_width (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self,
                                                                                           gint value)
{
	gint old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_width (self);
	if (old_value != value) {
		self->priv->_width = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_properties[PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_WIDTH_PROPERTY]);
	}
}

gint
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_height (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self)
{
	gint result;
	g_return_val_if_fail (self != NULL, -1);
	result = self->priv->_height;
	return result;
}

void
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_height (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self,
                                                                                            gint value)
{
	gint old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_height (self);
	if (old_value != value) {
		self->priv->_height = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_properties[PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_HEIGHT_PROPERTY]);
	}
}

gboolean
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_is_auto (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_is_auto;
	return result;
}

void
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_is_auto (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self,
                                                                                             gboolean value)
{
	gboolean old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_is_auto (self);
	if (old_value != value) {
		self->priv->_is_auto = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_properties[PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_AUTO_PROPERTY]);
	}
}

gboolean
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_is_custom (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_is_custom;
	return result;
}

void
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_is_custom (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice* self,
                                                                                               gboolean value)
{
	gboolean old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_is_custom (self);
	if (old_value != value) {
		self->priv->_is_custom = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_properties[PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_CUSTOM_PROPERTY]);
	}
}

static void
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_class_init (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoiceClass * klass,
                                                                                            gpointer klass_data)
{
	proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice_private_offset);
	G_OBJECT_CLASS (klass)->get_property = _vala_proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_property;
	G_OBJECT_CLASS (klass)->set_property = _vala_proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_property;
	G_OBJECT_CLASS (klass)->finalize = proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_finalize;
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_LABEL_PROPERTY, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_properties[PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_LABEL_PROPERTY] = g_param_spec_string ("label", "label", "label", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_WIDTH_PROPERTY, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_properties[PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_WIDTH_PROPERTY] = g_param_spec_int ("width", "width", "width", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_HEIGHT_PROPERTY, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_properties[PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_HEIGHT_PROPERTY] = g_param_spec_int ("height", "height", "height", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_AUTO_PROPERTY, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_properties[PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_AUTO_PROPERTY] = g_param_spec_boolean ("is-auto", "is-auto", "is-auto", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_CUSTOM_PROPERTY, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_properties[PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_CUSTOM_PROPERTY] = g_param_spec_boolean ("is-custom", "is-custom", "is-custom", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
}

static void
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_instance_init (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice * self,
                                                                                               gpointer klass)
{
	self->priv = proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_instance_private (self);
}

static void
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_finalize (GObject * obj)
{
	ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_TYPE_LAUNCH_OPTION_RESOLUTION_CHOICE, ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice);
	_g_free0 (self->priv->_label);
	G_OBJECT_CLASS (proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_parent_class)->finalize (obj);
}

static GType
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoiceClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice), 0, (GInstanceInitFunc) proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_instance_init, NULL };
	GType proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_type_id;
	proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_type_id = g_type_register_static (G_TYPE_OBJECT, "ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice", &g_define_type_info, 0);
	ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice_private_offset = g_type_add_instance_private (proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_type_id, sizeof (ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoicePrivate));
	return proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_type_id;
}

GType
proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_type (void)
{
	static volatile gsize proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_type_id__once = 0;
	if (g_once_init_enter (&proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_type_id__once)) {
		GType proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_type_id;
		proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_type_id = proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_type_once ();
		g_once_init_leave (&proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_type_id__once, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_type_id);
	}
	return proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_type_id__once;
}

static void
_vala_proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_property (GObject * object,
                                                                                                    guint property_id,
                                                                                                    GValue * value,
                                                                                                    GParamSpec * pspec)
{
	ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_TYPE_LAUNCH_OPTION_RESOLUTION_CHOICE, ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice);
	switch (property_id) {
		case PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_LABEL_PROPERTY:
		g_value_set_string (value, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_label (self));
		break;
		case PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_WIDTH_PROPERTY:
		g_value_set_int (value, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_width (self));
		break;
		case PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_HEIGHT_PROPERTY:
		g_value_set_int (value, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_height (self));
		break;
		case PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_AUTO_PROPERTY:
		g_value_set_boolean (value, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_is_auto (self));
		break;
		case PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_CUSTOM_PROPERTY:
		g_value_set_boolean (value, proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_get_is_custom (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static void
_vala_proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_property (GObject * object,
                                                                                                    guint property_id,
                                                                                                    const GValue * value,
                                                                                                    GParamSpec * pspec)
{
	ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_TYPE_LAUNCH_OPTION_RESOLUTION_CHOICE, ProtonPlusWidgetsGamesLaunchOptionsEditorLaunchOptionResolutionChoice);
	switch (property_id) {
		case PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_LABEL_PROPERTY:
		proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_label (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_WIDTH_PROPERTY:
		proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_width (self, g_value_get_int (value));
		break;
		case PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_HEIGHT_PROPERTY:
		proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_height (self, g_value_get_int (value));
		break;
		case PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_AUTO_PROPERTY:
		proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_is_auto (self, g_value_get_boolean (value));
		break;
		case PROTON_PLUS_WIDGETS_GAMES_LAUNCH_OPTIONS_EDITOR_LAUNCH_OPTION_RESOLUTION_CHOICE_IS_CUSTOM_PROPERTY:
		proton_plus_widgets_games_launch_options_editor_launch_option_resolution_choice_set_is_custom (self, g_value_get_boolean (value));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static inline gpointer
_vala_memdup2 (gconstpointer mem,
               gsize byte_size)
{
	gpointer new_mem;
	if (mem && byte_size != 0) {
		new_mem = g_malloc (byte_size);
		memcpy (new_mem, mem, byte_size);
	} else {
		new_mem = NULL;
	}
	return new_mem;
}

