/* i-properties-provider.c generated by valac 0.20.0.2-fd7ed, the Vala compiler
 * generated from i-properties-provider.vala, do not modify */

/* This file is part of GNOME Boxes. License: LGPLv2+*/

#include <glib.h>
#include <glib-object.h>
#include <stdlib.h>
#include <string.h>
#include <gtk/gtk.h>
#include <float.h>
#include <math.h>
#include <osinfo/osinfo.h>


#define BOXES_TYPE_PROPERTY (boxes_property_get_type ())
#define BOXES_PROPERTY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_PROPERTY, BoxesProperty))
#define BOXES_PROPERTY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_PROPERTY, BoxesPropertyClass))
#define BOXES_IS_PROPERTY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_PROPERTY))
#define BOXES_IS_PROPERTY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_PROPERTY))
#define BOXES_PROPERTY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_PROPERTY, BoxesPropertyClass))

typedef struct _BoxesProperty BoxesProperty;
typedef struct _BoxesPropertyClass BoxesPropertyClass;
typedef struct _BoxesPropertyPrivate BoxesPropertyPrivate;
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

#define BOXES_TYPE_SIZE_PROPERTY (boxes_size_property_get_type ())
#define BOXES_SIZE_PROPERTY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_SIZE_PROPERTY, BoxesSizeProperty))
#define BOXES_SIZE_PROPERTY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_SIZE_PROPERTY, BoxesSizePropertyClass))
#define BOXES_IS_SIZE_PROPERTY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_SIZE_PROPERTY))
#define BOXES_IS_SIZE_PROPERTY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_SIZE_PROPERTY))
#define BOXES_SIZE_PROPERTY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_SIZE_PROPERTY, BoxesSizePropertyClass))

typedef struct _BoxesSizeProperty BoxesSizeProperty;
typedef struct _BoxesSizePropertyClass BoxesSizePropertyClass;
typedef struct _BoxesSizePropertyPrivate BoxesSizePropertyPrivate;
typedef struct _Block18Data Block18Data;

#define BOXES_TYPE_STRING_PROPERTY (boxes_string_property_get_type ())
#define BOXES_STRING_PROPERTY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_STRING_PROPERTY, BoxesStringProperty))
#define BOXES_STRING_PROPERTY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_STRING_PROPERTY, BoxesStringPropertyClass))
#define BOXES_IS_STRING_PROPERTY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_STRING_PROPERTY))
#define BOXES_IS_STRING_PROPERTY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_STRING_PROPERTY))
#define BOXES_STRING_PROPERTY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_STRING_PROPERTY, BoxesStringPropertyClass))

typedef struct _BoxesStringProperty BoxesStringProperty;
typedef struct _BoxesStringPropertyClass BoxesStringPropertyClass;
typedef struct _BoxesStringPropertyPrivate BoxesStringPropertyPrivate;

#define BOXES_TYPE_EDITABLE_ENTRY (boxes_editable_entry_get_type ())
#define BOXES_EDITABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_EDITABLE_ENTRY, BoxesEditableEntry))
#define BOXES_EDITABLE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_EDITABLE_ENTRY, BoxesEditableEntryClass))
#define BOXES_IS_EDITABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_EDITABLE_ENTRY))
#define BOXES_IS_EDITABLE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_EDITABLE_ENTRY))
#define BOXES_EDITABLE_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_EDITABLE_ENTRY, BoxesEditableEntryClass))

typedef struct _BoxesEditableEntry BoxesEditableEntry;
typedef struct _BoxesEditableEntryClass BoxesEditableEntryClass;
typedef struct _Block19Data Block19Data;

#define TYPE_PROPERTY_CREATION_FLAG (property_creation_flag_get_type ())

#define BOXES_TYPE_IPROPERTIES_PROVIDER (boxes_iproperties_provider_get_type ())
#define BOXES_IPROPERTIES_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_IPROPERTIES_PROVIDER, BoxesIPropertiesProvider))
#define BOXES_IS_IPROPERTIES_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_IPROPERTIES_PROVIDER))
#define BOXES_IPROPERTIES_PROVIDER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), BOXES_TYPE_IPROPERTIES_PROVIDER, BoxesIPropertiesProviderIface))

typedef struct _BoxesIPropertiesProvider BoxesIPropertiesProvider;
typedef struct _BoxesIPropertiesProviderIface BoxesIPropertiesProviderIface;

#define BOXES_TYPE_PROPERTIES_PAGE (boxes_properties_page_get_type ())

struct _BoxesProperty {
	GObject parent_instance;
	BoxesPropertyPrivate * priv;
};

struct _BoxesPropertyClass {
	GObjectClass parent_class;
};

struct _BoxesPropertyPrivate {
	gchar* _description;
	GtkWidget* _widget;
	GtkWidget* _extra_widget;
	gboolean _reboot_required;
	guint _defer_interval;
	guint deferred_change_id;
	GSourceFunc _deferred_change;
	gpointer _deferred_change_target;
	GDestroyNotify _deferred_change_target_destroy_notify;
};

struct _BoxesSizeProperty {
	BoxesProperty parent_instance;
	BoxesSizePropertyPrivate * priv;
};

struct _BoxesSizePropertyClass {
	BoxesPropertyClass parent_class;
};

struct _BoxesSizePropertyPrivate {
	GtkScale* scale;
	GFormatSizeFlags format_flags;
};

struct _Block18Data {
	int _ref_count_;
	BoxesSizeProperty * self;
	GtkLabel* label;
	GtkScale* scale;
	GFormatSizeFlags format_flags;
};

struct _BoxesStringProperty {
	BoxesProperty parent_instance;
	BoxesStringPropertyPrivate * priv;
};

struct _BoxesStringPropertyClass {
	BoxesPropertyClass parent_class;
};

struct _BoxesStringPropertyPrivate {
	BoxesEditableEntry* entry;
};

struct _Block19Data {
	int _ref_count_;
	BoxesStringProperty * self;
	BoxesEditableEntry* entry;
};

typedef enum  {
	PROPERTY_CREATION_FLAG_NONE = 0,
	PROPERTY_CREATION_FLAG_NO_USB = 1 << 0
} PropertyCreationFlag;

typedef enum  {
	BOXES_PROPERTIES_PAGE_LOGIN,
	BOXES_PROPERTIES_PAGE_SYSTEM,
	BOXES_PROPERTIES_PAGE_DISPLAY,
	BOXES_PROPERTIES_PAGE_DEVICES,
	BOXES_PROPERTIES_PAGE_LAST
} BoxesPropertiesPage;

struct _BoxesIPropertiesProviderIface {
	GTypeInterface parent_iface;
	GList* (*get_properties) (BoxesIPropertiesProvider* self, BoxesPropertiesPage page, PropertyCreationFlag* flags);
};


static gpointer boxes_property_parent_class = NULL;
static gpointer boxes_size_property_parent_class = NULL;
static gpointer boxes_string_property_parent_class = NULL;

GType boxes_property_get_type (void) G_GNUC_CONST;
#define BOXES_PROPERTY_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), BOXES_TYPE_PROPERTY, BoxesPropertyPrivate))
enum  {
	BOXES_PROPERTY_DUMMY_PROPERTY,
	BOXES_PROPERTY_DESCRIPTION,
	BOXES_PROPERTY_WIDGET,
	BOXES_PROPERTY_EXTRA_WIDGET,
	BOXES_PROPERTY_REBOOT_REQUIRED,
	BOXES_PROPERTY_DEFER_INTERVAL,
	BOXES_PROPERTY_SENSITIVE
};
BoxesProperty* boxes_property_new (const gchar* description, GtkWidget* widget, GtkWidget* extra_widget);
BoxesProperty* boxes_property_construct (GType object_type, const gchar* description, GtkWidget* widget, GtkWidget* extra_widget);
void boxes_property_flush (BoxesProperty* self);
GSourceFunc boxes_property_get_deferred_change (BoxesProperty* self, gpointer* result_target);
void boxes_property_set_deferred_change (BoxesProperty* self, GSourceFunc value, gpointer value_target, GDestroyNotify value_target_destroy_notify);
const gchar* boxes_property_get_description (BoxesProperty* self);
void boxes_property_set_description (BoxesProperty* self, const gchar* value);
GtkWidget* boxes_property_get_widget (BoxesProperty* self);
void boxes_property_set_widget (BoxesProperty* self, GtkWidget* value);
GtkWidget* boxes_property_get_extra_widget (BoxesProperty* self);
void boxes_property_set_extra_widget (BoxesProperty* self, GtkWidget* value);
gboolean boxes_property_get_reboot_required (BoxesProperty* self);
void boxes_property_set_reboot_required (BoxesProperty* self, gboolean value);
guint boxes_property_get_defer_interval (BoxesProperty* self);
void boxes_property_set_defer_interval (BoxesProperty* self, guint value);
void boxes_property_set_sensitive (BoxesProperty* self, gboolean value);
static gboolean _boxes_property_deferred_change___lambda2_ (BoxesProperty* self);
static gboolean __boxes_property_deferred_change___lambda2__gsource_func (gpointer self);
static void boxes_property_finalize (GObject* obj);
static void _vala_boxes_property_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
static void _vala_boxes_property_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);
GType boxes_size_property_get_type (void) G_GNUC_CONST;
#define BOXES_SIZE_PROPERTY_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), BOXES_TYPE_SIZE_PROPERTY, BoxesSizePropertyPrivate))
enum  {
	BOXES_SIZE_PROPERTY_DUMMY_PROPERTY,
	BOXES_SIZE_PROPERTY_RECOMMENDED
};
BoxesSizeProperty* boxes_size_property_new (const gchar* name, guint64 size, guint64 min, guint64 max, guint64 step, GFormatSizeFlags format_flags);
BoxesSizeProperty* boxes_size_property_construct (GType object_type, const gchar* name, guint64 size, guint64 min, guint64 max, guint64 step, GFormatSizeFlags format_flags);
static Block18Data* block18_data_ref (Block18Data* _data18_);
static void block18_data_unref (void * _userdata_);
static void __lambda10_ (Block18Data* _data18_);
static void ___lambda10__gtk_range_value_changed (GtkRange* _sender, gpointer self);
void boxes_size_property_set_recommended (BoxesSizeProperty* self, guint64 value);
static void g_cclosure_user_marshal_VOID__UINT64 (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data);
static void boxes_size_property_finalize (GObject* obj);
static void _vala_boxes_size_property_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);
GType boxes_string_property_get_type (void) G_GNUC_CONST;
GType boxes_editable_entry_get_type (void) G_GNUC_CONST;
#define BOXES_STRING_PROPERTY_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), BOXES_TYPE_STRING_PROPERTY, BoxesStringPropertyPrivate))
enum  {
	BOXES_STRING_PROPERTY_DUMMY_PROPERTY,
	BOXES_STRING_PROPERTY_EDITABLE
};
BoxesStringProperty* boxes_string_property_new (const gchar* name, const gchar* value);
BoxesStringProperty* boxes_string_property_construct (GType object_type, const gchar* name, const gchar* value);
static Block19Data* block19_data_ref (Block19Data* _data19_);
static void block19_data_unref (void * _userdata_);
BoxesEditableEntry* boxes_editable_entry_new (void);
BoxesEditableEntry* boxes_editable_entry_construct (GType object_type);
void boxes_editable_entry_set_text (BoxesEditableEntry* self, const gchar* value);
void boxes_editable_entry_set_selectable (BoxesEditableEntry* self, gboolean value);
static void __lambda9_ (Block19Data* _data19_);
const gchar* boxes_editable_entry_get_text (BoxesEditableEntry* self);
void boxes_editable_entry_start_editing (BoxesEditableEntry* self);
static void ___lambda9__boxes_editable_entry_editing_done (BoxesEditableEntry* _sender, gpointer self);
gboolean boxes_string_property_get_editable (BoxesStringProperty* self);
gboolean boxes_editable_entry_get_editable (BoxesEditableEntry* self);
void boxes_string_property_set_editable (BoxesStringProperty* self, gboolean value);
void boxes_editable_entry_set_editable (BoxesEditableEntry* self, gboolean value);
static void g_cclosure_user_marshal_BOOLEAN__STRING (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data);
static void boxes_string_property_finalize (GObject* obj);
static void _vala_boxes_string_property_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
static void _vala_boxes_string_property_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);
GType property_creation_flag_get_type (void) G_GNUC_CONST;
GType boxes_properties_page_get_type (void) G_GNUC_CONST;
GType boxes_iproperties_provider_get_type (void) G_GNUC_CONST;
GList* boxes_iproperties_provider_get_properties (BoxesIPropertiesProvider* self, BoxesPropertiesPage page, PropertyCreationFlag* flags);
BoxesProperty* boxes_iproperties_provider_add_property (BoxesIPropertiesProvider* self, GList** list, const gchar* name, GtkWidget* widget, GtkWidget* extra_widget);
BoxesStringProperty* boxes_iproperties_provider_add_string_property (BoxesIPropertiesProvider* self, GList** list, const gchar* name, const gchar* value);
BoxesSizeProperty* boxes_iproperties_provider_add_size_property (BoxesIPropertiesProvider* self, GList** list, const gchar* name, guint64 size, guint64 min, guint64 max, guint64 step, GFormatSizeFlags format_flags);


BoxesProperty* boxes_property_construct (GType object_type, const gchar* description, GtkWidget* widget, GtkWidget* extra_widget) {
	BoxesProperty * self = NULL;
	const gchar* _tmp0_;
	GtkWidget* _tmp1_;
	GtkWidget* _tmp2_;
#line 46 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (widget != NULL, NULL);
#line 47 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = description;
#line 47 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = widget;
#line 47 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = extra_widget;
#line 47 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self = (BoxesProperty*) g_object_new (object_type, "description", _tmp0_, "widget", _tmp1_, "extra-widget", _tmp2_, NULL);
#line 46 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return self;
#line 262 "i-properties-provider.c"
}


BoxesProperty* boxes_property_new (const gchar* description, GtkWidget* widget, GtkWidget* extra_widget) {
#line 46 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return boxes_property_construct (BOXES_TYPE_PROPERTY, description, widget, extra_widget);
#line 269 "i-properties-provider.c"
}


void boxes_property_flush (BoxesProperty* self) {
	GSourceFunc _tmp0_;
	void* _tmp0__target;
	GSourceFunc _tmp1_;
	void* _tmp1__target;
	GSourceFunc _tmp2_;
	void* _tmp2__target;
	GSourceFunc _tmp3_;
	void* _tmp3__target;
#line 50 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (self != NULL);
#line 51 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = boxes_property_get_deferred_change (self, &_tmp0__target);
#line 51 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = _tmp0_;
#line 51 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1__target = _tmp0__target;
#line 51 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	if (_tmp1_ == NULL) {
#line 52 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		return;
#line 294 "i-properties-provider.c"
	}
#line 54 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = boxes_property_get_deferred_change (self, &_tmp2__target);
#line 54 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3_ = _tmp2_;
#line 54 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3__target = _tmp2__target;
#line 54 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3_ (_tmp3__target);
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	boxes_property_set_deferred_change (self, NULL, NULL, NULL);
#line 306 "i-properties-provider.c"
}


const gchar* boxes_property_get_description (BoxesProperty* self) {
	const gchar* result;
	const gchar* _tmp0_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = self->priv->_description;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	result = _tmp0_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 321 "i-properties-provider.c"
}


void boxes_property_set_description (BoxesProperty* self, const gchar* value) {
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (self != NULL);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = value;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_free0 (self->priv->_description);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_description = _tmp1_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_notify ((GObject *) self, "description");
#line 340 "i-properties-provider.c"
}


GtkWidget* boxes_property_get_widget (BoxesProperty* self) {
	GtkWidget* result;
	GtkWidget* _tmp0_;
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = self->priv->_widget;
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	result = _tmp0_;
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 355 "i-properties-provider.c"
}


static gpointer _g_object_ref0 (gpointer self) {
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return self ? g_object_ref (self) : NULL;
#line 362 "i-properties-provider.c"
}


void boxes_property_set_widget (BoxesProperty* self, GtkWidget* value) {
	GtkWidget* _tmp0_;
	GtkWidget* _tmp1_;
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (self != NULL);
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = value;
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_object_unref0 (self->priv->_widget);
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_widget = _tmp1_;
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_notify ((GObject *) self, "widget");
#line 381 "i-properties-provider.c"
}


GtkWidget* boxes_property_get_extra_widget (BoxesProperty* self) {
	GtkWidget* result;
	GtkWidget* _tmp0_;
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = self->priv->_extra_widget;
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	result = _tmp0_;
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 396 "i-properties-provider.c"
}


void boxes_property_set_extra_widget (BoxesProperty* self, GtkWidget* value) {
	GtkWidget* _tmp0_;
	GtkWidget* _tmp1_;
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (self != NULL);
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = value;
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_object_unref0 (self->priv->_extra_widget);
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_extra_widget = _tmp1_;
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_notify ((GObject *) self, "extra-widget");
#line 415 "i-properties-provider.c"
}


gboolean boxes_property_get_reboot_required (BoxesProperty* self) {
	gboolean result;
	gboolean _tmp0_;
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = self->priv->_reboot_required;
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	result = _tmp0_;
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 430 "i-properties-provider.c"
}


void boxes_property_set_reboot_required (BoxesProperty* self, gboolean value) {
	gboolean _tmp0_;
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (self != NULL);
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = value;
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_reboot_required = _tmp0_;
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_notify ((GObject *) self, "reboot-required");
#line 444 "i-properties-provider.c"
}


guint boxes_property_get_defer_interval (BoxesProperty* self) {
	guint result;
	guint _tmp0_;
#line 12 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (self != NULL, 0U);
#line 12 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = self->priv->_defer_interval;
#line 12 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	result = _tmp0_;
#line 12 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 459 "i-properties-provider.c"
}


void boxes_property_set_defer_interval (BoxesProperty* self, guint value) {
	guint _tmp0_;
#line 12 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (self != NULL);
#line 12 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = value;
#line 12 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_defer_interval = _tmp0_;
#line 12 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_notify ((GObject *) self, "defer-interval");
#line 473 "i-properties-provider.c"
}


void boxes_property_set_sensitive (BoxesProperty* self, gboolean value) {
	GtkWidget* _tmp0_;
	gboolean _tmp1_;
	GtkWidget* _tmp2_;
	gboolean _tmp3_;
#line 15 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (self != NULL);
#line 16 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = self->priv->_widget;
#line 16 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = value;
#line 16 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_widget_set_sensitive (_tmp0_, _tmp1_);
#line 17 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = self->priv->_extra_widget;
#line 17 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3_ = value;
#line 17 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_widget_set_sensitive (_tmp2_, _tmp3_);
#line 15 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_notify ((GObject *) self, "sensitive");
#line 498 "i-properties-provider.c"
}


GSourceFunc boxes_property_get_deferred_change (BoxesProperty* self, gpointer* result_target) {
	GSourceFunc result;
	GSourceFunc _tmp0_;
	void* _tmp0__target;
	GSourceFunc _tmp1_;
	void* _tmp1__target;
#line 24 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = self->priv->_deferred_change;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0__target = self->priv->_deferred_change_target;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = _tmp0_;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1__target = _tmp0__target;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	*result_target = _tmp1__target;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	result = _tmp1_;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 524 "i-properties-provider.c"
}


static gboolean _boxes_property_deferred_change___lambda2_ (BoxesProperty* self) {
	gboolean result = FALSE;
#line 39 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	boxes_property_flush (self);
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	result = FALSE;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 536 "i-properties-provider.c"
}


static gboolean __boxes_property_deferred_change___lambda2__gsource_func (gpointer self) {
	gboolean result;
	result = _boxes_property_deferred_change___lambda2_ (self);
#line 38 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 545 "i-properties-provider.c"
}


void boxes_property_set_deferred_change (BoxesProperty* self, GSourceFunc value, gpointer value_target, GDestroyNotify value_target_destroy_notify) {
	guint _tmp0_;
	GSourceFunc _tmp2_;
	void* _tmp2__target;
	GDestroyNotify _tmp2__target_destroy_notify;
	GSourceFunc _tmp3_;
	void* _tmp3__target;
	guint _tmp4_;
	guint _tmp5_ = 0U;
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (self != NULL);
#line 29 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = self->priv->deferred_change_id;
#line 29 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	if (_tmp0_ != ((guint) 0)) {
#line 564 "i-properties-provider.c"
		guint _tmp1_;
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_tmp1_ = self->priv->deferred_change_id;
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		g_source_remove (_tmp1_);
#line 31 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		self->priv->deferred_change_id = (guint) 0;
#line 572 "i-properties-provider.c"
	}
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = value;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2__target = value_target;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2__target_destroy_notify = value_target_destroy_notify;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	value_target_destroy_notify = NULL;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	(self->priv->_deferred_change_target_destroy_notify == NULL) ? NULL : (self->priv->_deferred_change_target_destroy_notify (self->priv->_deferred_change_target), NULL);
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_deferred_change = NULL;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_deferred_change_target = NULL;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_deferred_change_target_destroy_notify = NULL;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_deferred_change = _tmp2_;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_deferred_change_target = _tmp2__target;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_deferred_change_target_destroy_notify = _tmp2__target_destroy_notify;
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3_ = self->priv->_deferred_change;
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3__target = self->priv->_deferred_change_target;
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	if (_tmp3_ == NULL) {
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		(value_target_destroy_notify == NULL) ? NULL : (value_target_destroy_notify (value_target), NULL);
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		value = NULL;
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		value_target = NULL;
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		value_target_destroy_notify = NULL;
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		return;
#line 612 "i-properties-provider.c"
	}
#line 38 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp4_ = self->priv->_defer_interval;
#line 38 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp5_ = g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, _tmp4_, __boxes_property_deferred_change___lambda2__gsource_func, g_object_ref (self), g_object_unref);
#line 38 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->deferred_change_id = _tmp5_;
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	(value_target_destroy_notify == NULL) ? NULL : (value_target_destroy_notify (value_target), NULL);
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	value = NULL;
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	value_target = NULL;
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	value_target_destroy_notify = NULL;
#line 628 "i-properties-provider.c"
}


static void boxes_property_class_init (BoxesPropertyClass * klass) {
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	boxes_property_parent_class = g_type_class_peek_parent (klass);
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_type_class_add_private (klass, sizeof (BoxesPropertyPrivate));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_boxes_property_get_property;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_boxes_property_set_property;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_property_finalize;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_PROPERTY_DESCRIPTION, g_param_spec_string ("description", "description", "description", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_PROPERTY_WIDGET, g_param_spec_object ("widget", "widget", "widget", GTK_TYPE_WIDGET, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_PROPERTY_EXTRA_WIDGET, g_param_spec_object ("extra-widget", "extra-widget", "extra-widget", GTK_TYPE_WIDGET, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_PROPERTY_REBOOT_REQUIRED, g_param_spec_boolean ("reboot-required", "reboot-required", "reboot-required", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_PROPERTY_DEFER_INTERVAL, g_param_spec_uint ("defer-interval", "defer-interval", "defer-interval", 0, G_MAXUINT, (guint) 1, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_PROPERTY_SENSITIVE, g_param_spec_boolean ("sensitive", "sensitive", "sensitive", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_WRITABLE));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_signal_new ("refresh_properties", BOXES_TYPE_PROPERTY, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
#line 657 "i-properties-provider.c"
}


static void boxes_property_instance_init (BoxesProperty * self) {
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv = BOXES_PROPERTY_GET_PRIVATE (self);
#line 12 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_defer_interval = (guint) 1;
#line 666 "i-properties-provider.c"
}


static void boxes_property_finalize (GObject* obj) {
	BoxesProperty * self;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_PROPERTY, BoxesProperty);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_free0 (self->priv->_description);
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_object_unref0 (self->priv->_widget);
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_object_unref0 (self->priv->_extra_widget);
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	(self->priv->_deferred_change_target_destroy_notify == NULL) ? NULL : (self->priv->_deferred_change_target_destroy_notify (self->priv->_deferred_change_target), NULL);
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_deferred_change = NULL;
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_deferred_change_target = NULL;
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->_deferred_change_target_destroy_notify = NULL;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	G_OBJECT_CLASS (boxes_property_parent_class)->finalize (obj);
#line 690 "i-properties-provider.c"
}


GType boxes_property_get_type (void) {
	static volatile gsize boxes_property_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_property_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesPropertyClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_property_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesProperty), 0, (GInstanceInitFunc) boxes_property_instance_init, NULL };
		GType boxes_property_type_id;
		boxes_property_type_id = g_type_register_static (G_TYPE_OBJECT, "BoxesProperty", &g_define_type_info, 0);
		g_once_init_leave (&boxes_property_type_id__volatile, boxes_property_type_id);
	}
	return boxes_property_type_id__volatile;
}


static void _vala_boxes_property_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	BoxesProperty * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_PROPERTY, BoxesProperty);
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	switch (property_id) {
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_PROPERTY_DESCRIPTION:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		g_value_set_string (value, boxes_property_get_description (self));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_PROPERTY_WIDGET:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		g_value_set_object (value, boxes_property_get_widget (self));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_PROPERTY_EXTRA_WIDGET:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		g_value_set_object (value, boxes_property_get_extra_widget (self));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_PROPERTY_REBOOT_REQUIRED:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		g_value_set_boolean (value, boxes_property_get_reboot_required (self));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_PROPERTY_DEFER_INTERVAL:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		g_value_set_uint (value, boxes_property_get_defer_interval (self));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 741 "i-properties-provider.c"
		default:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 747 "i-properties-provider.c"
	}
}


static void _vala_boxes_property_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
	BoxesProperty * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_PROPERTY, BoxesProperty);
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	switch (property_id) {
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_PROPERTY_DESCRIPTION:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		boxes_property_set_description (self, g_value_get_string (value));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_PROPERTY_WIDGET:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		boxes_property_set_widget (self, g_value_get_object (value));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_PROPERTY_EXTRA_WIDGET:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		boxes_property_set_extra_widget (self, g_value_get_object (value));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_PROPERTY_REBOOT_REQUIRED:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		boxes_property_set_reboot_required (self, g_value_get_boolean (value));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_PROPERTY_DEFER_INTERVAL:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		boxes_property_set_defer_interval (self, g_value_get_uint (value));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_PROPERTY_SENSITIVE:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		boxes_property_set_sensitive (self, g_value_get_boolean (value));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 793 "i-properties-provider.c"
		default:
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 799 "i-properties-provider.c"
	}
}


static Block18Data* block18_data_ref (Block18Data* _data18_) {
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_atomic_int_inc (&_data18_->_ref_count_);
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return _data18_;
#line 809 "i-properties-provider.c"
}


static void block18_data_unref (void * _userdata_) {
	Block18Data* _data18_;
	_data18_ = (Block18Data*) _userdata_;
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	if (g_atomic_int_dec_and_test (&_data18_->_ref_count_)) {
#line 818 "i-properties-provider.c"
		BoxesSizeProperty * self;
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		self = _data18_->self;
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_g_object_unref0 (_data18_->scale);
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_g_object_unref0 (_data18_->label);
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_g_object_unref0 (self);
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		g_slice_free (Block18Data, _data18_);
#line 830 "i-properties-provider.c"
	}
}


static void __lambda10_ (Block18Data* _data18_) {
	BoxesSizeProperty * self;
	gdouble _tmp0_ = 0.0;
	guint64 v;
	GFormatSizeFlags _tmp1_;
	gchar* _tmp2_ = NULL;
	gchar* _tmp3_;
	gdouble _tmp4_ = 0.0;
#line 106 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self = _data18_->self;
#line 107 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = gtk_range_get_value ((GtkRange*) _data18_->scale);
#line 107 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	v = (guint64) _tmp0_;
#line 108 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = _data18_->format_flags;
#line 108 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = g_format_size_full (v, _tmp1_);
#line 108 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3_ = _tmp2_;
#line 108 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_label_set_text (_data18_->label, _tmp3_);
#line 108 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_free0 (_tmp3_);
#line 109 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_range_set_fill_level ((GtkRange*) _data18_->scale, (gdouble) v);
#line 111 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp4_ = gtk_range_get_value ((GtkRange*) _data18_->scale);
#line 111 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_signal_emit_by_name (self, "changed", (guint64) _tmp4_);
#line 865 "i-properties-provider.c"
}


static void ___lambda10__gtk_range_value_changed (GtkRange* _sender, gpointer self) {
#line 106 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	__lambda10_ (self);
#line 872 "i-properties-provider.c"
}


BoxesSizeProperty* boxes_size_property_construct (GType object_type, const gchar* name, guint64 size, guint64 min, guint64 max, guint64 step, GFormatSizeFlags format_flags) {
	BoxesSizeProperty * self = NULL;
	Block18Data* _data18_;
	GFormatSizeFlags _tmp0_;
	guint64 _tmp1_;
	GFormatSizeFlags _tmp2_;
	gchar* _tmp3_ = NULL;
	gchar* _tmp4_;
	GtkLabel* _tmp5_;
	GtkLabel* _tmp6_;
	guint64 _tmp7_;
	guint64 _tmp8_;
	guint64 _tmp9_;
	GtkScale* _tmp10_;
	guint64 _tmp11_;
	guint64 _tmp12_;
	GFormatSizeFlags _tmp13_;
	gchar* _tmp14_ = NULL;
	gchar* _tmp15_;
	guint64 _tmp16_;
	guint64 _tmp17_;
	GFormatSizeFlags _tmp18_;
	gchar* _tmp19_ = NULL;
	gchar* _tmp20_;
	gchar* _tmp21_ = NULL;
	gchar* _tmp22_;
	guint64 _tmp23_;
	guint64 _tmp24_;
	const gchar* _tmp25_;
	GtkScale* _tmp26_;
	GFormatSizeFlags _tmp27_;
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (name != NULL, NULL);
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data18_ = g_slice_new0 (Block18Data);
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data18_->_ref_count_ = 1;
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = format_flags;
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data18_->format_flags = _tmp0_;
#line 84 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = size;
#line 84 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = _data18_->format_flags;
#line 84 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3_ = g_format_size_full ((guint64) _tmp1_, _tmp2_);
#line 84 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp4_ = _tmp3_;
#line 84 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp5_ = (GtkLabel*) gtk_label_new (_tmp4_);
#line 84 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_ref_sink (_tmp5_);
#line 84 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp6_ = _tmp5_;
#line 84 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_free0 (_tmp4_);
#line 84 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data18_->label = _tmp6_;
#line 85 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_widget_set_halign ((GtkWidget*) _data18_->label, GTK_ALIGN_CENTER);
#line 87 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp7_ = min;
#line 87 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp8_ = max;
#line 87 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp9_ = step;
#line 87 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp10_ = (GtkScale*) gtk_scale_new_with_range (GTK_ORIENTATION_HORIZONTAL, (gdouble) _tmp7_, (gdouble) _tmp8_, (gdouble) _tmp9_);
#line 87 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_ref_sink (_tmp10_);
#line 87 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data18_->scale = _tmp10_;
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp11_ = min;
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp12_ = min;
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp13_ = _data18_->format_flags;
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp14_ = g_format_size_full (_tmp12_, _tmp13_);
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp15_ = _tmp14_;
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_scale_add_mark (_data18_->scale, (gdouble) _tmp11_, GTK_POS_BOTTOM, _tmp15_);
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_free0 (_tmp15_);
#line 90 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp16_ = max;
#line 90 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp17_ = max;
#line 90 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp18_ = _data18_->format_flags;
#line 90 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp19_ = g_format_size_full (_tmp17_, _tmp18_);
#line 90 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp20_ = _tmp19_;
#line 90 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp21_ = g_strdup_printf ("%s (maximum)", _tmp20_);
#line 90 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp22_ = _tmp21_;
#line 90 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_scale_add_mark (_data18_->scale, (gdouble) _tmp16_, GTK_POS_BOTTOM, _tmp22_);
#line 90 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_free0 (_tmp22_);
#line 90 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_free0 (_tmp20_);
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_range_set_show_fill_level ((GtkRange*) _data18_->scale, TRUE);
#line 94 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_range_set_restrict_to_fill_level ((GtkRange*) _data18_->scale, FALSE);
#line 95 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp23_ = size;
#line 95 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_range_set_value ((GtkRange*) _data18_->scale, (gdouble) _tmp23_);
#line 96 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp24_ = size;
#line 96 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_range_set_fill_level ((GtkRange*) _data18_->scale, (gdouble) _tmp24_);
#line 97 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_scale_set_draw_value (_data18_->scale, FALSE);
#line 98 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_widget_set_hexpand ((GtkWidget*) _data18_->scale, TRUE);
#line 99 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_widget_set_margin_bottom ((GtkWidget*) _data18_->scale, 20);
#line 101 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp25_ = name;
#line 101 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self = (BoxesSizeProperty*) boxes_property_construct (object_type, _tmp25_, (GtkWidget*) _data18_->label, (GtkWidget*) _data18_->scale);
#line 101 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data18_->self = g_object_ref (self);
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp26_ = _g_object_ref0 (_data18_->scale);
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_object_unref0 (self->priv->scale);
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->scale = _tmp26_;
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp27_ = _data18_->format_flags;
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->format_flags = _tmp27_;
#line 106 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_signal_connect_data ((GtkRange*) _data18_->scale, "value-changed", (GCallback) ___lambda10__gtk_range_value_changed, block18_data_ref (_data18_), (GClosureNotify) block18_data_unref, 0);
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	block18_data_unref (_data18_);
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data18_ = NULL;
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return self;
#line 1025 "i-properties-provider.c"
}


BoxesSizeProperty* boxes_size_property_new (const gchar* name, guint64 size, guint64 min, guint64 max, guint64 step, GFormatSizeFlags format_flags) {
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return boxes_size_property_construct (BOXES_TYPE_SIZE_PROPERTY, name, size, min, max, step, format_flags);
#line 1032 "i-properties-provider.c"
}


void boxes_size_property_set_recommended (BoxesSizeProperty* self, guint64 value) {
	gboolean _tmp0_ = FALSE;
	guint64 _tmp1_;
	GtkScale* _tmp2_;
	GtkAdjustment* _tmp3_;
	GtkAdjustment* _tmp4_;
	gdouble _tmp5_;
	gdouble _tmp6_;
	gboolean _tmp13_;
	guint64 _tmp14_;
	GFormatSizeFlags _tmp15_;
	gchar* _tmp16_ = NULL;
	gchar* _tmp17_;
	gchar* _tmp18_ = NULL;
	gchar* _tmp19_;
	gchar* size;
	GtkScale* _tmp20_;
	guint64 _tmp21_;
	const gchar* _tmp22_;
#line 67 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (self != NULL);
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = value;
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = self->priv->scale;
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3_ = gtk_range_get_adjustment ((GtkRange*) _tmp2_);
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp4_ = _tmp3_;
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp5_ = gtk_adjustment_get_lower (_tmp4_);
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp6_ = _tmp5_;
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	if (((gdouble) _tmp1_) < (_tmp6_ + OSINFO_GIBIBYTES)) {
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_tmp0_ = TRUE;
#line 1073 "i-properties-provider.c"
	} else {
		guint64 _tmp7_;
		GtkScale* _tmp8_;
		GtkAdjustment* _tmp9_;
		GtkAdjustment* _tmp10_;
		gdouble _tmp11_;
		gdouble _tmp12_;
#line 70 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_tmp7_ = value;
#line 70 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_tmp8_ = self->priv->scale;
#line 70 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_tmp9_ = gtk_range_get_adjustment ((GtkRange*) _tmp8_);
#line 70 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_tmp10_ = _tmp9_;
#line 70 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_tmp11_ = gtk_adjustment_get_upper (_tmp10_);
#line 70 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_tmp12_ = _tmp11_;
#line 70 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_tmp0_ = ((gdouble) _tmp7_) > (_tmp12_ - OSINFO_GIBIBYTES);
#line 1095 "i-properties-provider.c"
	}
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp13_ = _tmp0_;
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	if (_tmp13_) {
#line 71 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		return;
#line 1103 "i-properties-provider.c"
	}
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp14_ = value;
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp15_ = self->priv->format_flags;
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp16_ = g_format_size_full (_tmp14_, _tmp15_);
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp17_ = _tmp16_;
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp18_ = g_strdup_printf ("%s (recommended)", _tmp17_);
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp19_ = _tmp18_;
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_free0 (_tmp17_);
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	size = _tmp19_;
#line 74 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp20_ = self->priv->scale;
#line 74 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp21_ = value;
#line 74 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp22_ = size;
#line 74 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	gtk_scale_add_mark (_tmp20_, (gdouble) _tmp21_, GTK_POS_BOTTOM, _tmp22_);
#line 67 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_free0 (size);
#line 67 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_notify ((GObject *) self, "recommended");
#line 1133 "i-properties-provider.c"
}


static void g_cclosure_user_marshal_VOID__UINT64 (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data) {
	typedef void (*GMarshalFunc_VOID__UINT64) (gpointer data1, guint64 arg_1, gpointer data2);
	register GMarshalFunc_VOID__UINT64 callback;
	register GCClosure * cc;
	register gpointer data1;
	register gpointer data2;
	cc = (GCClosure *) closure;
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (n_param_values == 2);
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	if (G_CCLOSURE_SWAP_DATA (closure)) {
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		data1 = closure->data;
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		data2 = param_values->data[0].v_pointer;
#line 1152 "i-properties-provider.c"
	} else {
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		data1 = param_values->data[0].v_pointer;
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		data2 = closure->data;
#line 1158 "i-properties-provider.c"
	}
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	callback = (GMarshalFunc_VOID__UINT64) (marshal_data ? marshal_data : cc->callback);
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	callback (data1, g_value_get_uint64 (param_values + 1), data2);
#line 1164 "i-properties-provider.c"
}


static void boxes_size_property_class_init (BoxesSizePropertyClass * klass) {
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	boxes_size_property_parent_class = g_type_class_peek_parent (klass);
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_type_class_add_private (klass, sizeof (BoxesSizePropertyPrivate));
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_boxes_size_property_set_property;
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_size_property_finalize;
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_SIZE_PROPERTY_RECOMMENDED, g_param_spec_uint64 ("recommended", "recommended", "recommended", 0, G_MAXUINT64, 0U, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_WRITABLE));
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_signal_new ("changed", BOXES_TYPE_SIZE_PROPERTY, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_VOID__UINT64, G_TYPE_NONE, 1, G_TYPE_UINT64);
#line 1181 "i-properties-provider.c"
}


static void boxes_size_property_instance_init (BoxesSizeProperty * self) {
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv = BOXES_SIZE_PROPERTY_GET_PRIVATE (self);
#line 1188 "i-properties-provider.c"
}


static void boxes_size_property_finalize (GObject* obj) {
	BoxesSizeProperty * self;
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_SIZE_PROPERTY, BoxesSizeProperty);
#line 63 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_object_unref0 (self->priv->scale);
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	G_OBJECT_CLASS (boxes_size_property_parent_class)->finalize (obj);
#line 1200 "i-properties-provider.c"
}


GType boxes_size_property_get_type (void) {
	static volatile gsize boxes_size_property_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_size_property_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesSizePropertyClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_size_property_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesSizeProperty), 0, (GInstanceInitFunc) boxes_size_property_instance_init, NULL };
		GType boxes_size_property_type_id;
		boxes_size_property_type_id = g_type_register_static (BOXES_TYPE_PROPERTY, "BoxesSizeProperty", &g_define_type_info, 0);
		g_once_init_leave (&boxes_size_property_type_id__volatile, boxes_size_property_type_id);
	}
	return boxes_size_property_type_id__volatile;
}


static void _vala_boxes_size_property_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
	BoxesSizeProperty * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_SIZE_PROPERTY, BoxesSizeProperty);
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	switch (property_id) {
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_SIZE_PROPERTY_RECOMMENDED:
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		boxes_size_property_set_recommended (self, g_value_get_uint64 (value));
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 1227 "i-properties-provider.c"
		default:
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 1233 "i-properties-provider.c"
	}
}


static Block19Data* block19_data_ref (Block19Data* _data19_) {
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_atomic_int_inc (&_data19_->_ref_count_);
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return _data19_;
#line 1243 "i-properties-provider.c"
}


static void block19_data_unref (void * _userdata_) {
	Block19Data* _data19_;
	_data19_ = (Block19Data*) _userdata_;
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	if (g_atomic_int_dec_and_test (&_data19_->_ref_count_)) {
#line 1252 "i-properties-provider.c"
		BoxesStringProperty * self;
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		self = _data19_->self;
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_g_object_unref0 (_data19_->entry);
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		_g_object_unref0 (self);
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		g_slice_free (Block19Data, _data19_);
#line 1262 "i-properties-provider.c"
	}
}


static void __lambda9_ (Block19Data* _data19_) {
	BoxesStringProperty * self;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	gboolean _tmp2_ = FALSE;
#line 135 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self = _data19_->self;
#line 136 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = boxes_editable_entry_get_text (_data19_->entry);
#line 136 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = _tmp0_;
#line 136 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_signal_emit_by_name (self, "changed", _tmp1_, &_tmp2_);
#line 136 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	if (!_tmp2_) {
#line 137 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		boxes_editable_entry_start_editing (_data19_->entry);
#line 1284 "i-properties-provider.c"
	}
}


static void ___lambda9__boxes_editable_entry_editing_done (BoxesEditableEntry* _sender, gpointer self) {
#line 135 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	__lambda9_ (self);
#line 1292 "i-properties-provider.c"
}


BoxesStringProperty* boxes_string_property_construct (GType object_type, const gchar* name, const gchar* value) {
	BoxesStringProperty * self = NULL;
	Block19Data* _data19_;
	BoxesEditableEntry* _tmp0_;
	const gchar* _tmp1_;
	BoxesEditableEntry* _tmp2_;
	const gchar* _tmp3_;
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (name != NULL, NULL);
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (value != NULL, NULL);
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data19_ = g_slice_new0 (Block19Data);
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data19_->_ref_count_ = 1;
#line 127 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = boxes_editable_entry_new ();
#line 127 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_ref_sink (_tmp0_);
#line 127 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data19_->entry = _tmp0_;
#line 129 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = name;
#line 129 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self = (BoxesStringProperty*) boxes_property_construct (object_type, _tmp1_, (GtkWidget*) _data19_->entry, NULL);
#line 129 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data19_->self = g_object_ref (self);
#line 130 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = _g_object_ref0 (_data19_->entry);
#line 130 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_object_unref0 (self->priv->entry);
#line 130 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv->entry = _tmp2_;
#line 132 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3_ = value;
#line 132 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	boxes_editable_entry_set_text (_data19_->entry, _tmp3_);
#line 133 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	boxes_editable_entry_set_selectable (_data19_->entry, TRUE);
#line 135 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_signal_connect_data (_data19_->entry, "editing-done", (GCallback) ___lambda9__boxes_editable_entry_editing_done, block19_data_ref (_data19_), (GClosureNotify) block19_data_unref, 0);
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	block19_data_unref (_data19_);
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_data19_ = NULL;
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return self;
#line 1343 "i-properties-provider.c"
}


BoxesStringProperty* boxes_string_property_new (const gchar* name, const gchar* value) {
#line 126 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return boxes_string_property_construct (BOXES_TYPE_STRING_PROPERTY, name, value);
#line 1350 "i-properties-provider.c"
}


gboolean boxes_string_property_get_editable (BoxesStringProperty* self) {
	gboolean result;
	BoxesEditableEntry* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
#line 120 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 120 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = self->priv->entry;
#line 120 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = boxes_editable_entry_get_editable (_tmp0_);
#line 120 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = _tmp1_;
#line 120 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	result = _tmp2_;
#line 120 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 1371 "i-properties-provider.c"
}


void boxes_string_property_set_editable (BoxesStringProperty* self, gboolean value) {
	BoxesEditableEntry* _tmp0_;
	gboolean _tmp1_;
#line 121 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (self != NULL);
#line 121 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = self->priv->entry;
#line 121 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = value;
#line 121 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	boxes_editable_entry_set_editable (_tmp0_, _tmp1_);
#line 121 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_notify ((GObject *) self, "editable");
#line 1388 "i-properties-provider.c"
}


static void g_cclosure_user_marshal_BOOLEAN__STRING (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data) {
	typedef gboolean (*GMarshalFunc_BOOLEAN__STRING) (gpointer data1, const char* arg_1, gpointer data2);
	register GMarshalFunc_BOOLEAN__STRING callback;
	register GCClosure * cc;
	register gpointer data1;
	register gpointer data2;
	gboolean v_return;
	cc = (GCClosure *) closure;
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (return_value != NULL);
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_if_fail (n_param_values == 2);
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	if (G_CCLOSURE_SWAP_DATA (closure)) {
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		data1 = closure->data;
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		data2 = param_values->data[0].v_pointer;
#line 1410 "i-properties-provider.c"
	} else {
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		data1 = param_values->data[0].v_pointer;
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		data2 = closure->data;
#line 1416 "i-properties-provider.c"
	}
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	callback = (GMarshalFunc_BOOLEAN__STRING) (marshal_data ? marshal_data : cc->callback);
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	v_return = callback (data1, g_value_get_string (param_values + 1), data2);
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_value_set_boolean (return_value, v_return);
#line 1424 "i-properties-provider.c"
}


static void boxes_string_property_class_init (BoxesStringPropertyClass * klass) {
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	boxes_string_property_parent_class = g_type_class_peek_parent (klass);
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_type_class_add_private (klass, sizeof (BoxesStringPropertyPrivate));
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_boxes_string_property_get_property;
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_boxes_string_property_set_property;
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_string_property_finalize;
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_STRING_PROPERTY_EDITABLE, g_param_spec_boolean ("editable", "editable", "editable", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_signal_new ("changed", BOXES_TYPE_STRING_PROPERTY, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_BOOLEAN__STRING, G_TYPE_BOOLEAN, 1, G_TYPE_STRING);
#line 1443 "i-properties-provider.c"
}


static void boxes_string_property_instance_init (BoxesStringProperty * self) {
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self->priv = BOXES_STRING_PROPERTY_GET_PRIVATE (self);
#line 1450 "i-properties-provider.c"
}


static void boxes_string_property_finalize (GObject* obj) {
	BoxesStringProperty * self;
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_STRING_PROPERTY, BoxesStringProperty);
#line 124 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_g_object_unref0 (self->priv->entry);
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	G_OBJECT_CLASS (boxes_string_property_parent_class)->finalize (obj);
#line 1462 "i-properties-provider.c"
}


GType boxes_string_property_get_type (void) {
	static volatile gsize boxes_string_property_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_string_property_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesStringPropertyClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_string_property_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesStringProperty), 0, (GInstanceInitFunc) boxes_string_property_instance_init, NULL };
		GType boxes_string_property_type_id;
		boxes_string_property_type_id = g_type_register_static (BOXES_TYPE_PROPERTY, "BoxesStringProperty", &g_define_type_info, 0);
		g_once_init_leave (&boxes_string_property_type_id__volatile, boxes_string_property_type_id);
	}
	return boxes_string_property_type_id__volatile;
}


static void _vala_boxes_string_property_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	BoxesStringProperty * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_STRING_PROPERTY, BoxesStringProperty);
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	switch (property_id) {
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_STRING_PROPERTY_EDITABLE:
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		g_value_set_boolean (value, boxes_string_property_get_editable (self));
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 1489 "i-properties-provider.c"
		default:
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 1495 "i-properties-provider.c"
	}
}


static void _vala_boxes_string_property_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
	BoxesStringProperty * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_STRING_PROPERTY, BoxesStringProperty);
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	switch (property_id) {
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		case BOXES_STRING_PROPERTY_EDITABLE:
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		boxes_string_property_set_editable (self, g_value_get_boolean (value));
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 1511 "i-properties-provider.c"
		default:
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		break;
#line 1517 "i-properties-provider.c"
	}
}


GType property_creation_flag_get_type (void) {
	static volatile gsize property_creation_flag_type_id__volatile = 0;
	if (g_once_init_enter (&property_creation_flag_type_id__volatile)) {
		static const GFlagsValue values[] = {{PROPERTY_CREATION_FLAG_NONE, "PROPERTY_CREATION_FLAG_NONE", "none"}, {PROPERTY_CREATION_FLAG_NO_USB, "PROPERTY_CREATION_FLAG_NO_USB", "no-usb"}, {0, NULL, NULL}};
		GType property_creation_flag_type_id;
		property_creation_flag_type_id = g_flags_register_static ("PropertyCreationFlag", values);
		g_once_init_leave (&property_creation_flag_type_id__volatile, property_creation_flag_type_id);
	}
	return property_creation_flag_type_id__volatile;
}


GList* boxes_iproperties_provider_get_properties (BoxesIPropertiesProvider* self, BoxesPropertiesPage page, PropertyCreationFlag* flags) {
#line 149 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 149 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return BOXES_IPROPERTIES_PROVIDER_GET_INTERFACE (self)->get_properties (self, page, flags);
#line 1539 "i-properties-provider.c"
}


BoxesProperty* boxes_iproperties_provider_add_property (BoxesIPropertiesProvider* self, GList** list, const gchar* name, GtkWidget* widget, GtkWidget* extra_widget) {
	BoxesProperty* result = NULL;
	const gchar* _tmp0_;
	GtkWidget* _tmp1_;
	GtkWidget* _tmp2_;
	BoxesProperty* _tmp3_;
	BoxesProperty* property;
	BoxesProperty* _tmp4_;
#line 151 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (widget != NULL, NULL);
#line 152 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = name;
#line 152 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = widget;
#line 152 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = extra_widget;
#line 152 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3_ = boxes_property_new (_tmp0_, _tmp1_, _tmp2_);
#line 152 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	property = _tmp3_;
#line 153 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp4_ = _g_object_ref0 (property);
#line 153 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	*list = g_list_append (*list, _tmp4_);
#line 154 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	result = property;
#line 154 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 1571 "i-properties-provider.c"
}


BoxesStringProperty* boxes_iproperties_provider_add_string_property (BoxesIPropertiesProvider* self, GList** list, const gchar* name, const gchar* value) {
	BoxesStringProperty* result = NULL;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	BoxesStringProperty* _tmp2_;
	BoxesStringProperty* property;
	BoxesProperty* _tmp3_;
#line 157 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (name != NULL, NULL);
#line 157 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (value != NULL, NULL);
#line 160 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = name;
#line 160 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = value;
#line 160 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = boxes_string_property_new (_tmp0_, _tmp1_);
#line 160 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	property = _tmp2_;
#line 161 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3_ = _g_object_ref0 ((BoxesProperty*) property);
#line 161 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	*list = g_list_append (*list, _tmp3_);
#line 163 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	result = property;
#line 163 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 1602 "i-properties-provider.c"
}


BoxesSizeProperty* boxes_iproperties_provider_add_size_property (BoxesIPropertiesProvider* self, GList** list, const gchar* name, guint64 size, guint64 min, guint64 max, guint64 step, GFormatSizeFlags format_flags) {
	BoxesSizeProperty* result = NULL;
	const gchar* _tmp0_;
	guint64 _tmp1_;
	guint64 _tmp2_;
	guint64 _tmp3_;
	guint64 _tmp4_;
	GFormatSizeFlags _tmp5_;
	BoxesSizeProperty* _tmp6_;
	BoxesSizeProperty* property;
	BoxesProperty* _tmp7_;
#line 166 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	g_return_val_if_fail (name != NULL, NULL);
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp0_ = name;
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp1_ = size;
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp2_ = min;
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp3_ = max;
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp4_ = step;
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp5_ = format_flags;
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp6_ = boxes_size_property_new (_tmp0_, _tmp1_, _tmp2_, _tmp3_, _tmp4_, _tmp5_);
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	property = _tmp6_;
#line 174 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	_tmp7_ = _g_object_ref0 ((BoxesProperty*) property);
#line 174 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	*list = g_list_append (*list, _tmp7_);
#line 176 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	result = property;
#line 176 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	return result;
#line 1643 "i-properties-provider.c"
}


static void boxes_iproperties_provider_base_init (BoxesIPropertiesProviderIface * iface) {
#line 148 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	static gboolean initialized = FALSE;
#line 148 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
	if (!initialized) {
#line 148 "/extra-data/checkout/gnome/gnome-boxes/src/i-properties-provider.vala"
		initialized = TRUE;
#line 1654 "i-properties-provider.c"
	}
}


GType boxes_iproperties_provider_get_type (void) {
	static volatile gsize boxes_iproperties_provider_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_iproperties_provider_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesIPropertiesProviderIface), (GBaseInitFunc) boxes_iproperties_provider_base_init, (GBaseFinalizeFunc) NULL, (GClassInitFunc) NULL, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
		GType boxes_iproperties_provider_type_id;
		boxes_iproperties_provider_type_id = g_type_register_static (G_TYPE_INTERFACE, "BoxesIPropertiesProvider", &g_define_type_info, 0);
		g_type_interface_add_prerequisite (boxes_iproperties_provider_type_id, G_TYPE_OBJECT);
		g_once_init_leave (&boxes_iproperties_provider_type_id__volatile, boxes_iproperties_provider_type_id);
	}
	return boxes_iproperties_provider_type_id__volatile;
}



