/* moonshot-custom-vbox.c generated by valac 0.24.0, the Vala compiler
 * generated from moonshot-custom-vbox.vala, do not modify */

/*
 * Copyright (c) 2011-2014, JANET(UK)
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *
 * 3. Neither the name of JANET(UK) nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
*/

#include <glib.h>
#include <glib-object.h>
#include <gtk/gtk.h>


#define TYPE_CUSTOM_VBOX (custom_vbox_get_type ())
#define CUSTOM_VBOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CUSTOM_VBOX, CustomVBox))
#define CUSTOM_VBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CUSTOM_VBOX, CustomVBoxClass))
#define IS_CUSTOM_VBOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CUSTOM_VBOX))
#define IS_CUSTOM_VBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CUSTOM_VBOX))
#define CUSTOM_VBOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CUSTOM_VBOX, CustomVBoxClass))

typedef struct _CustomVBox CustomVBox;
typedef struct _CustomVBoxClass CustomVBoxClass;
typedef struct _CustomVBoxPrivate CustomVBoxPrivate;

#define TYPE_ID_CARD_WIDGET (id_card_widget_get_type ())
#define ID_CARD_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD_WIDGET, IdCardWidget))
#define ID_CARD_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD_WIDGET, IdCardWidgetClass))
#define IS_ID_CARD_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD_WIDGET))
#define IS_ID_CARD_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD_WIDGET))
#define ID_CARD_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD_WIDGET, IdCardWidgetClass))

typedef struct _IdCardWidget IdCardWidget;
typedef struct _IdCardWidgetClass IdCardWidgetClass;

#define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ())
#define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView))
#define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
#define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW))
#define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW))
#define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))

typedef struct _IdentityManagerView IdentityManagerView;
typedef struct _IdentityManagerViewClass IdentityManagerViewClass;
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
typedef struct _IdentityManagerViewPrivate IdentityManagerViewPrivate;

#define TYPE_IDENTITY_MANAGER_APP (identity_manager_app_get_type ())
#define IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp))
#define IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
#define IS_IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_APP))
#define IS_IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_APP))
#define IDENTITY_MANAGER_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))

typedef struct _IdentityManagerApp IdentityManagerApp;
typedef struct _IdentityManagerAppClass IdentityManagerAppClass;

#define TYPE_IDENTITY_MANAGER_MODEL (identity_manager_model_get_type ())
#define IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModel))
#define IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
#define IS_IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_MODEL))
#define IS_IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_MODEL))
#define IDENTITY_MANAGER_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))

typedef struct _IdentityManagerModel IdentityManagerModel;
typedef struct _IdentityManagerModelClass IdentityManagerModelClass;

#define TYPE_IDENTITY_REQUEST (identity_request_get_type ())
#define IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_REQUEST, IdentityRequest))
#define IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
#define IS_IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_REQUEST))
#define IS_IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_REQUEST))
#define IDENTITY_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_REQUEST, IdentityRequestClass))

typedef struct _IdentityRequest IdentityRequest;
typedef struct _IdentityRequestClass IdentityRequestClass;
#define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL)))

struct _CustomVBox {
	GtkVBox parent_instance;
	CustomVBoxPrivate * priv;
};

struct _CustomVBoxClass {
	GtkVBoxClass parent_class;
};

struct _CustomVBoxPrivate {
	IdCardWidget* _current_idcard;
	IdentityManagerView* main_window;
};

struct _IdentityManagerView {
	GtkWindow parent_instance;
	IdentityManagerViewPrivate * priv;
	IdentityManagerApp* parent_app;
	IdentityManagerModel* identities_manager;
	GQueue* request_queue;
};

struct _IdentityManagerViewClass {
	GtkWindowClass parent_class;
};


static gpointer custom_vbox_parent_class = NULL;

GType custom_vbox_get_type (void) G_GNUC_CONST;
GType id_card_widget_get_type (void) G_GNUC_CONST;
GType identity_manager_view_get_type (void) G_GNUC_CONST;
#define CUSTOM_VBOX_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_CUSTOM_VBOX, CustomVBoxPrivate))
enum  {
	CUSTOM_VBOX_DUMMY_PROPERTY,
	CUSTOM_VBOX_CURRENT_IDCARD
};
CustomVBox* custom_vbox_new (IdentityManagerView* window, gboolean homogeneous, gint spacing);
CustomVBox* custom_vbox_construct (GType object_type, IdentityManagerView* window, gboolean homogeneous, gint spacing);
void custom_vbox_receive_expanded_event (CustomVBox* self, IdCardWidget* id_card_widget);
void id_card_widget_collapse (IdCardWidget* self);
void custom_vbox_set_current_idcard (CustomVBox* self, IdCardWidget* value);
IdCardWidget* custom_vbox_get_current_idcard (CustomVBox* self);
gpointer identity_manager_app_ref (gpointer instance);
void identity_manager_app_unref (gpointer instance);
GParamSpec* param_spec_identity_manager_app (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_identity_manager_app (GValue* value, gpointer v_object);
void value_take_identity_manager_app (GValue* value, gpointer v_object);
gpointer value_get_identity_manager_app (const GValue* value);
GType identity_manager_app_get_type (void) G_GNUC_CONST;
GType identity_manager_model_get_type (void) G_GNUC_CONST;
GType identity_request_get_type (void) G_GNUC_CONST;
GtkButton* id_card_widget_get_send_button (IdCardWidget* self);
void custom_vbox_add_id_card_widget (CustomVBox* self, IdCardWidget* id_card_widget);
void custom_vbox_remove_id_card_widget (CustomVBox* self, IdCardWidget* id_card_widget);
static void custom_vbox_finalize (GObject* obj);
static void _vala_custom_vbox_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
static void _vala_custom_vbox_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);


static gpointer _g_object_ref0 (gpointer self) {
#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	return self ? g_object_ref (self) : NULL;
#line 169 "moonshot-custom-vbox.c"
}


CustomVBox* custom_vbox_construct (GType object_type, IdentityManagerView* window, gboolean homogeneous, gint spacing) {
	CustomVBox * self = NULL;
	IdentityManagerView* _tmp0_ = NULL;
	IdentityManagerView* _tmp1_ = NULL;
	gboolean _tmp2_ = FALSE;
	gint _tmp3_ = 0;
#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_return_val_if_fail (window != NULL, NULL);
#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	self = (CustomVBox*) g_object_new (object_type, NULL);
#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp0_ = window;
#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_g_object_unref0 (self->priv->main_window);
#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	self->priv->main_window = _tmp1_;
#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp2_ = homogeneous;
#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	gtk_box_set_homogeneous ((GtkBox*) self, _tmp2_);
#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp3_ = spacing;
#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	gtk_box_set_spacing ((GtkBox*) self, _tmp3_);
#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	return self;
#line 201 "moonshot-custom-vbox.c"
}


CustomVBox* custom_vbox_new (IdentityManagerView* window, gboolean homogeneous, gint spacing) {
#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	return custom_vbox_construct (TYPE_CUSTOM_VBOX, window, homogeneous, spacing);
#line 208 "moonshot-custom-vbox.c"
}


void custom_vbox_receive_expanded_event (CustomVBox* self, IdCardWidget* id_card_widget) {
	GList* list = NULL;
	GList* _tmp0_ = NULL;
	GList* _tmp1_ = NULL;
	IdCardWidget* _tmp6_ = NULL;
	gboolean _tmp7_ = FALSE;
	IdCardWidget* _tmp8_ = NULL;
#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_return_if_fail (self != NULL);
#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_return_if_fail (id_card_widget != NULL);
#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp0_ = gtk_container_get_children ((GtkContainer*) self);
#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	list = _tmp0_;
#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp1_ = list;
#line 229 "moonshot-custom-vbox.c"
	{
		GList* id_card_collection = NULL;
		GList* id_card_it = NULL;
#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		id_card_collection = _tmp1_;
#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		for (id_card_it = id_card_collection; id_card_it != NULL; id_card_it = id_card_it->next) {
#line 237 "moonshot-custom-vbox.c"
			GtkWidget* _tmp2_ = NULL;
			GtkWidget* id_card = NULL;
#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
			_tmp2_ = _g_object_ref0 ((GtkWidget*) id_card_it->data);
#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
			id_card = _tmp2_;
#line 244 "moonshot-custom-vbox.c"
			{
				GtkWidget* _tmp3_ = NULL;
				IdCardWidget* _tmp4_ = NULL;
#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
				_tmp3_ = id_card;
#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
				_tmp4_ = id_card_widget;
#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
				if (_tmp3_ != G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, GTK_TYPE_WIDGET, GtkWidget)) {
#line 254 "moonshot-custom-vbox.c"
					GtkWidget* _tmp5_ = NULL;
#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
					_tmp5_ = id_card;
#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
					id_card_widget_collapse (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_ID_CARD_WIDGET, IdCardWidget));
#line 260 "moonshot-custom-vbox.c"
				}
#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
				_g_object_unref0 (id_card);
#line 264 "moonshot-custom-vbox.c"
			}
		}
	}
#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp6_ = id_card_widget;
#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	custom_vbox_set_current_idcard (self, _tmp6_);
#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp8_ = self->priv->_current_idcard;
#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	if (_tmp8_ != NULL) {
#line 276 "moonshot-custom-vbox.c"
		IdentityManagerView* _tmp9_ = NULL;
		GQueue* _tmp10_ = NULL;
		guint _tmp11_ = 0U;
#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		_tmp9_ = self->priv->main_window;
#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		_tmp10_ = _tmp9_->request_queue;
#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		_tmp11_ = _tmp10_->length;
#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		_tmp7_ = _tmp11_ > ((guint) 0);
#line 288 "moonshot-custom-vbox.c"
	} else {
#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		_tmp7_ = FALSE;
#line 292 "moonshot-custom-vbox.c"
	}
#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	if (_tmp7_) {
#line 296 "moonshot-custom-vbox.c"
		IdCardWidget* _tmp12_ = NULL;
		GtkButton* _tmp13_ = NULL;
		GtkButton* _tmp14_ = NULL;
#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		_tmp12_ = self->priv->_current_idcard;
#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		_tmp13_ = id_card_widget_get_send_button (_tmp12_);
#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		_tmp14_ = _tmp13_;
#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		gtk_widget_set_sensitive ((GtkWidget*) _tmp14_, TRUE);
#line 308 "moonshot-custom-vbox.c"
	}
#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	gtk_container_check_resize ((GtkContainer*) self);
#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_g_list_free0 (list);
#line 314 "moonshot-custom-vbox.c"
}


void custom_vbox_add_id_card_widget (CustomVBox* self, IdCardWidget* id_card_widget) {
	IdCardWidget* _tmp0_ = NULL;
#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_return_if_fail (self != NULL);
#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_return_if_fail (id_card_widget != NULL);
#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp0_ = id_card_widget;
#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) _tmp0_, FALSE, FALSE, (guint) 0);
#line 328 "moonshot-custom-vbox.c"
}


void custom_vbox_remove_id_card_widget (CustomVBox* self, IdCardWidget* id_card_widget) {
	IdCardWidget* _tmp0_ = NULL;
#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_return_if_fail (self != NULL);
#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_return_if_fail (id_card_widget != NULL);
#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp0_ = id_card_widget;
#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	gtk_container_remove ((GtkContainer*) self, (GtkWidget*) _tmp0_);
#line 342 "moonshot-custom-vbox.c"
}


IdCardWidget* custom_vbox_get_current_idcard (CustomVBox* self) {
	IdCardWidget* result;
	IdCardWidget* _tmp0_ = NULL;
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp0_ = self->priv->_current_idcard;
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	result = _tmp0_;
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	return result;
#line 357 "moonshot-custom-vbox.c"
}


void custom_vbox_set_current_idcard (CustomVBox* self, IdCardWidget* value) {
	IdCardWidget* _tmp0_ = NULL;
	IdCardWidget* _tmp1_ = NULL;
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_return_if_fail (self != NULL);
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp0_ = value;
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_g_object_unref0 (self->priv->_current_idcard);
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	self->priv->_current_idcard = _tmp1_;
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_object_notify ((GObject *) self, "current-idcard");
#line 376 "moonshot-custom-vbox.c"
}


static void custom_vbox_class_init (CustomVBoxClass * klass) {
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	custom_vbox_parent_class = g_type_class_peek_parent (klass);
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_type_class_add_private (klass, sizeof (CustomVBoxPrivate));
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_custom_vbox_get_property;
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_custom_vbox_set_property;
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	G_OBJECT_CLASS (klass)->finalize = custom_vbox_finalize;
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), CUSTOM_VBOX_CURRENT_IDCARD, g_param_spec_object ("current-idcard", "current-idcard", "current-idcard", TYPE_ID_CARD_WIDGET, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 393 "moonshot-custom-vbox.c"
}


static void custom_vbox_instance_init (CustomVBox * self) {
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	self->priv = CUSTOM_VBOX_GET_PRIVATE (self);
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	self->priv->_current_idcard = NULL;
#line 402 "moonshot-custom-vbox.c"
}


static void custom_vbox_finalize (GObject* obj) {
	CustomVBox * self;
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_CUSTOM_VBOX, CustomVBox);
#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_g_object_unref0 (self->priv->_current_idcard);
#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	_g_object_unref0 (self->priv->main_window);
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	G_OBJECT_CLASS (custom_vbox_parent_class)->finalize (obj);
#line 416 "moonshot-custom-vbox.c"
}


GType custom_vbox_get_type (void) {
	static volatile gsize custom_vbox_type_id__volatile = 0;
	if (g_once_init_enter (&custom_vbox_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (CustomVBoxClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) custom_vbox_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (CustomVBox), 0, (GInstanceInitFunc) custom_vbox_instance_init, NULL };
		GType custom_vbox_type_id;
		custom_vbox_type_id = g_type_register_static (GTK_TYPE_VBOX, "CustomVBox", &g_define_type_info, 0);
		g_once_init_leave (&custom_vbox_type_id__volatile, custom_vbox_type_id);
	}
	return custom_vbox_type_id__volatile;
}


static void _vala_custom_vbox_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	CustomVBox * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_CUSTOM_VBOX, CustomVBox);
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	switch (property_id) {
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		case CUSTOM_VBOX_CURRENT_IDCARD:
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		g_value_set_object (value, custom_vbox_get_current_idcard (self));
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		break;
#line 443 "moonshot-custom-vbox.c"
		default:
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		break;
#line 449 "moonshot-custom-vbox.c"
	}
}


static void _vala_custom_vbox_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
	CustomVBox * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_CUSTOM_VBOX, CustomVBox);
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
	switch (property_id) {
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		case CUSTOM_VBOX_CURRENT_IDCARD:
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		custom_vbox_set_current_idcard (self, g_value_get_object (value));
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		break;
#line 465 "moonshot-custom-vbox.c"
		default:
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
		break;
#line 471 "moonshot-custom-vbox.c"
	}
}



