c12e1231d1d91ef8015cdc8f979a24ad11804dbd
[moonshot-ui.git] / src / moonshot-custom-vbox.c
1 /* moonshot-custom-vbox.c generated by valac 0.10.4, the Vala compiler
2  * generated from moonshot-custom-vbox.vala, do not modify */
3
4
5 #include <glib.h>
6 #include <glib-object.h>
7 #include <gtk/gtk.h>
8
9
10 #define TYPE_CUSTOM_VBOX (custom_vbox_get_type ())
11 #define CUSTOM_VBOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CUSTOM_VBOX, CustomVBox))
12 #define CUSTOM_VBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CUSTOM_VBOX, CustomVBoxClass))
13 #define IS_CUSTOM_VBOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CUSTOM_VBOX))
14 #define IS_CUSTOM_VBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CUSTOM_VBOX))
15 #define CUSTOM_VBOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CUSTOM_VBOX, CustomVBoxClass))
16
17 typedef struct _CustomVBox CustomVBox;
18 typedef struct _CustomVBoxClass CustomVBoxClass;
19 typedef struct _CustomVBoxPrivate CustomVBoxPrivate;
20
21 #define TYPE_ID_CARD_WIDGET (id_card_widget_get_type ())
22 #define ID_CARD_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD_WIDGET, IdCardWidget))
23 #define ID_CARD_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD_WIDGET, IdCardWidgetClass))
24 #define IS_ID_CARD_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD_WIDGET))
25 #define IS_ID_CARD_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD_WIDGET))
26 #define ID_CARD_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD_WIDGET, IdCardWidgetClass))
27
28 typedef struct _IdCardWidget IdCardWidget;
29 typedef struct _IdCardWidgetClass IdCardWidgetClass;
30
31 #define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ())
32 #define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView))
33 #define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
34 #define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW))
35 #define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW))
36 #define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
37
38 typedef struct _IdentityManagerView IdentityManagerView;
39 typedef struct _IdentityManagerViewClass IdentityManagerViewClass;
40 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
41 typedef struct _IdentityManagerViewPrivate IdentityManagerViewPrivate;
42
43 #define TYPE_IDENTITY_MANAGER_APP (identity_manager_app_get_type ())
44 #define IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp))
45 #define IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
46 #define IS_IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_APP))
47 #define IS_IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_APP))
48 #define IDENTITY_MANAGER_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
49
50 typedef struct _IdentityManagerApp IdentityManagerApp;
51 typedef struct _IdentityManagerAppClass IdentityManagerAppClass;
52
53 #define TYPE_IDENTITY_MANAGER_MODEL (identity_manager_model_get_type ())
54 #define IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModel))
55 #define IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
56 #define IS_IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_MODEL))
57 #define IS_IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_MODEL))
58 #define IDENTITY_MANAGER_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
59
60 typedef struct _IdentityManagerModel IdentityManagerModel;
61 typedef struct _IdentityManagerModelClass IdentityManagerModelClass;
62
63 #define TYPE_IDENTITY_REQUEST (identity_request_get_type ())
64 #define IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_REQUEST, IdentityRequest))
65 #define IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
66 #define IS_IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_REQUEST))
67 #define IS_IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_REQUEST))
68 #define IDENTITY_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
69
70 typedef struct _IdentityRequest IdentityRequest;
71 typedef struct _IdentityRequestClass IdentityRequestClass;
72 #define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL)))
73
74 struct _CustomVBox {
75         GtkVBox parent_instance;
76         CustomVBoxPrivate * priv;
77 };
78
79 struct _CustomVBoxClass {
80         GtkVBoxClass parent_class;
81 };
82
83 struct _CustomVBoxPrivate {
84         IdCardWidget* _current_idcard;
85         IdentityManagerView* main_window;
86 };
87
88 struct _IdentityManagerView {
89         GtkWindow parent_instance;
90         IdentityManagerViewPrivate * priv;
91         IdentityManagerApp* parent_app;
92         IdentityManagerModel* identities_manager;
93         GQueue* request_queue;
94 };
95
96 struct _IdentityManagerViewClass {
97         GtkWindowClass parent_class;
98 };
99
100
101 static gpointer custom_vbox_parent_class = NULL;
102
103 GType custom_vbox_get_type (void) G_GNUC_CONST;
104 GType id_card_widget_get_type (void) G_GNUC_CONST;
105 GType identity_manager_view_get_type (void) G_GNUC_CONST;
106 #define CUSTOM_VBOX_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_CUSTOM_VBOX, CustomVBoxPrivate))
107 enum  {
108         CUSTOM_VBOX_DUMMY_PROPERTY,
109         CUSTOM_VBOX_CURRENT_IDCARD
110 };
111 CustomVBox* custom_vbox_new (IdentityManagerView* window, gboolean homogeneous, gint spacing);
112 CustomVBox* custom_vbox_construct (GType object_type, IdentityManagerView* window, gboolean homogeneous, gint spacing);
113 void custom_vbox_receive_expanded_event (CustomVBox* self, IdCardWidget* id_card_widget);
114 void id_card_widget_collapse (IdCardWidget* self);
115 void custom_vbox_set_current_idcard (CustomVBox* self, IdCardWidget* value);
116 IdCardWidget* custom_vbox_get_current_idcard (CustomVBox* self);
117 gpointer identity_manager_app_ref (gpointer instance);
118 void identity_manager_app_unref (gpointer instance);
119 GParamSpec* param_spec_identity_manager_app (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
120 void value_set_identity_manager_app (GValue* value, gpointer v_object);
121 void value_take_identity_manager_app (GValue* value, gpointer v_object);
122 gpointer value_get_identity_manager_app (const GValue* value);
123 GType identity_manager_app_get_type (void) G_GNUC_CONST;
124 GType identity_manager_model_get_type (void) G_GNUC_CONST;
125 GType identity_request_get_type (void) G_GNUC_CONST;
126 GtkButton* id_card_widget_get_send_button (IdCardWidget* self);
127 void custom_vbox_add_id_card_widget (CustomVBox* self, IdCardWidget* id_card_widget);
128 void custom_vbox_remove_id_card_widget (CustomVBox* self, IdCardWidget* id_card_widget);
129 static void custom_vbox_finalize (GObject* obj);
130 static void custom_vbox_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
131 static void custom_vbox_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);
132
133
134
135 static gpointer _g_object_ref0 (gpointer self) {
136         return self ? g_object_ref (self) : NULL;
137 }
138
139
140 CustomVBox* custom_vbox_construct (GType object_type, IdentityManagerView* window, gboolean homogeneous, gint spacing) {
141         CustomVBox * self;
142         IdentityManagerView* _tmp0_;
143         g_return_val_if_fail (window != NULL, NULL);
144         self = g_object_newv (object_type, 0, NULL);
145         self->priv->main_window = (_tmp0_ = _g_object_ref0 (window), _g_object_unref0 (self->priv->main_window), _tmp0_);
146         gtk_box_set_homogeneous ((GtkBox*) self, homogeneous);
147         gtk_box_set_spacing ((GtkBox*) self, spacing);
148         return self;
149 }
150
151
152 CustomVBox* custom_vbox_new (IdentityManagerView* window, gboolean homogeneous, gint spacing) {
153         return custom_vbox_construct (TYPE_CUSTOM_VBOX, window, homogeneous, spacing);
154 }
155
156
157 void custom_vbox_receive_expanded_event (CustomVBox* self, IdCardWidget* id_card_widget) {
158         GList* list;
159         gboolean _tmp0_ = FALSE;
160         g_return_if_fail (self != NULL);
161         g_return_if_fail (id_card_widget != NULL);
162         list = gtk_container_get_children ((GtkContainer*) self);
163         {
164                 GList* id_card_collection;
165                 GList* id_card_it;
166                 id_card_collection = list;
167                 for (id_card_it = id_card_collection; id_card_it != NULL; id_card_it = id_card_it->next) {
168                         GtkWidget* id_card;
169                         id_card = _g_object_ref0 ((GtkWidget*) id_card_it->data);
170                         {
171                                 if (id_card != GTK_WIDGET (id_card_widget)) {
172                                         id_card_widget_collapse (ID_CARD_WIDGET (id_card));
173                                 }
174                                 _g_object_unref0 (id_card);
175                         }
176                 }
177         }
178         custom_vbox_set_current_idcard (self, id_card_widget);
179         if (self->priv->_current_idcard != NULL) {
180                 _tmp0_ = self->priv->main_window->request_queue->length > 0;
181         } else {
182                 _tmp0_ = FALSE;
183         }
184         if (_tmp0_) {
185                 gtk_widget_set_sensitive ((GtkWidget*) id_card_widget_get_send_button (self->priv->_current_idcard), TRUE);
186         }
187         _g_list_free0 (list);
188 }
189
190
191 void custom_vbox_add_id_card_widget (CustomVBox* self, IdCardWidget* id_card_widget) {
192         g_return_if_fail (self != NULL);
193         g_return_if_fail (id_card_widget != NULL);
194         gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) id_card_widget, FALSE, FALSE, 0);
195 }
196
197
198 void custom_vbox_remove_id_card_widget (CustomVBox* self, IdCardWidget* id_card_widget) {
199         g_return_if_fail (self != NULL);
200         g_return_if_fail (id_card_widget != NULL);
201         gtk_container_remove ((GtkContainer*) self, (GtkWidget*) id_card_widget);
202 }
203
204
205 IdCardWidget* custom_vbox_get_current_idcard (CustomVBox* self) {
206         IdCardWidget* result;
207         g_return_val_if_fail (self != NULL, NULL);
208         result = self->priv->_current_idcard;
209         return result;
210 }
211
212
213 void custom_vbox_set_current_idcard (CustomVBox* self, IdCardWidget* value) {
214         IdCardWidget* _tmp0_;
215         g_return_if_fail (self != NULL);
216         self->priv->_current_idcard = (_tmp0_ = _g_object_ref0 (value), _g_object_unref0 (self->priv->_current_idcard), _tmp0_);
217         g_object_notify ((GObject *) self, "current-idcard");
218 }
219
220
221 static void custom_vbox_class_init (CustomVBoxClass * klass) {
222         custom_vbox_parent_class = g_type_class_peek_parent (klass);
223         g_type_class_add_private (klass, sizeof (CustomVBoxPrivate));
224         G_OBJECT_CLASS (klass)->get_property = custom_vbox_get_property;
225         G_OBJECT_CLASS (klass)->set_property = custom_vbox_set_property;
226         G_OBJECT_CLASS (klass)->finalize = custom_vbox_finalize;
227         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));
228 }
229
230
231 static void custom_vbox_instance_init (CustomVBox * self) {
232         self->priv = CUSTOM_VBOX_GET_PRIVATE (self);
233         self->priv->_current_idcard = NULL;
234 }
235
236
237 static void custom_vbox_finalize (GObject* obj) {
238         CustomVBox * self;
239         self = CUSTOM_VBOX (obj);
240         _g_object_unref0 (self->priv->_current_idcard);
241         _g_object_unref0 (self->priv->main_window);
242         G_OBJECT_CLASS (custom_vbox_parent_class)->finalize (obj);
243 }
244
245
246 GType custom_vbox_get_type (void) {
247         static volatile gsize custom_vbox_type_id__volatile = 0;
248         if (g_once_init_enter (&custom_vbox_type_id__volatile)) {
249                 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 };
250                 GType custom_vbox_type_id;
251                 custom_vbox_type_id = g_type_register_static (GTK_TYPE_VBOX, "CustomVBox", &g_define_type_info, 0);
252                 g_once_init_leave (&custom_vbox_type_id__volatile, custom_vbox_type_id);
253         }
254         return custom_vbox_type_id__volatile;
255 }
256
257
258 static void custom_vbox_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
259         CustomVBox * self;
260         self = CUSTOM_VBOX (object);
261         switch (property_id) {
262                 case CUSTOM_VBOX_CURRENT_IDCARD:
263                 g_value_set_object (value, custom_vbox_get_current_idcard (self));
264                 break;
265                 default:
266                 G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
267                 break;
268         }
269 }
270
271
272 static void custom_vbox_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
273         CustomVBox * self;
274         self = CUSTOM_VBOX (object);
275         switch (property_id) {
276                 case CUSTOM_VBOX_CURRENT_IDCARD:
277                 custom_vbox_set_current_idcard (self, g_value_get_object (value));
278                 break;
279                 default:
280                 G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
281                 break;
282         }
283 }
284
285
286
287