1 /* menu.c generated by valac 0.24.0, the Vala compiler
2 * generated from menu.vala, do not modify */
5 valac --pkg gio-2.0 --pkg posix --pkg gtk+-3.0 \
6 menu.vala -o /tmp/menutest
9 static int main (string[] args) {
11 new Xcls_WindowLeftTree();
12 WindowLeftTree.show_all();
19 #include <glib-object.h>
24 #include <gobject/gvaluecollector.h>
27 #define TYPE_XCLS_WINDOW (xcls_window_get_type ())
28 #define XCLS_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_XCLS_WINDOW, Xcls_Window))
29 #define XCLS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_XCLS_WINDOW, Xcls_WindowClass))
30 #define IS_XCLS_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_XCLS_WINDOW))
31 #define IS_XCLS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_XCLS_WINDOW))
32 #define XCLS_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_XCLS_WINDOW, Xcls_WindowClass))
34 typedef struct _Xcls_Window Xcls_Window;
35 typedef struct _Xcls_WindowClass Xcls_WindowClass;
36 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
37 typedef struct _Xcls_WindowPrivate Xcls_WindowPrivate;
38 typedef struct _Block1Data Block1Data;
40 #define XCLS_WINDOW_TYPE_XCLS_MENUITEM7 (xcls_window_xcls_menuitem7_get_type ())
41 #define XCLS_WINDOW_XCLS_MENUITEM7(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), XCLS_WINDOW_TYPE_XCLS_MENUITEM7, Xcls_WindowXcls_MenuItem7))
42 #define XCLS_WINDOW_XCLS_MENUITEM7_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), XCLS_WINDOW_TYPE_XCLS_MENUITEM7, Xcls_WindowXcls_MenuItem7Class))
43 #define XCLS_WINDOW_IS_XCLS_MENUITEM7(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XCLS_WINDOW_TYPE_XCLS_MENUITEM7))
44 #define XCLS_WINDOW_IS_XCLS_MENUITEM7_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), XCLS_WINDOW_TYPE_XCLS_MENUITEM7))
45 #define XCLS_WINDOW_XCLS_MENUITEM7_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), XCLS_WINDOW_TYPE_XCLS_MENUITEM7, Xcls_WindowXcls_MenuItem7Class))
47 typedef struct _Xcls_WindowXcls_MenuItem7 Xcls_WindowXcls_MenuItem7;
48 typedef struct _Xcls_WindowXcls_MenuItem7Class Xcls_WindowXcls_MenuItem7Class;
49 typedef struct _Xcls_WindowXcls_MenuItem7Private Xcls_WindowXcls_MenuItem7Private;
50 #define _xcls_window_xcls_menuitem7_unref0(var) ((var == NULL) ? NULL : (var = (xcls_window_xcls_menuitem7_unref (var), NULL)))
51 typedef struct _Xcls_WindowParamSpecXcls_MenuItem7 Xcls_WindowParamSpecXcls_MenuItem7;
54 GObject parent_instance;
55 Xcls_WindowPrivate * priv;
58 struct _Xcls_WindowClass {
59 GObjectClass parent_class;
68 struct _Xcls_WindowXcls_MenuItem7 {
69 GTypeInstance parent_instance;
70 volatile int ref_count;
71 Xcls_WindowXcls_MenuItem7Private * priv;
76 struct _Xcls_WindowXcls_MenuItem7Class {
77 GTypeClass parent_class;
78 void (*finalize) (Xcls_WindowXcls_MenuItem7 *self);
81 struct _Xcls_WindowParamSpecXcls_MenuItem7 {
82 GParamSpec parent_instance;
86 static gpointer xcls_window_parent_class = NULL;
87 static gpointer xcls_window_xcls_menuitem7_parent_class = NULL;
89 gint _vala_main (gchar** args, int args_length1);
90 Xcls_Window* xcls_window_new (void);
91 Xcls_Window* xcls_window_construct (GType object_type);
92 GType xcls_window_get_type (void) G_GNUC_CONST;
94 XCLS_WINDOW_DUMMY_PROPERTY
96 static Block1Data* block1_data_ref (Block1Data* _data1_);
97 static void block1_data_unref (void * _userdata_);
98 static gboolean __lambda3_ (Block1Data* _data1_, GdkEventButton* ev);
99 static gboolean ___lambda3__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self);
100 gpointer xcls_window_xcls_menuitem7_ref (gpointer instance);
101 void xcls_window_xcls_menuitem7_unref (gpointer instance);
102 GParamSpec* xcls_window_param_spec_xcls_menuitem7 (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
103 void xcls_window_value_set_xcls_menuitem7 (GValue* value, gpointer v_object);
104 void xcls_window_value_take_xcls_menuitem7 (GValue* value, gpointer v_object);
105 gpointer xcls_window_value_get_xcls_menuitem7 (const GValue* value);
106 GType xcls_window_xcls_menuitem7_get_type (void) G_GNUC_CONST;
107 Xcls_WindowXcls_MenuItem7* xcls_window_xcls_menuitem7_new (void);
108 Xcls_WindowXcls_MenuItem7* xcls_window_xcls_menuitem7_construct (GType object_type);
109 void xcls_window_xcls_menuitem7_init (Xcls_WindowXcls_MenuItem7* self, Xcls_Window* _owner);
111 XCLS_WINDOW_XCLS_MENUITEM7_DUMMY_PROPERTY
113 static void __lambda4_ (Xcls_WindowXcls_MenuItem7* self);
114 static void ___lambda4__gtk_menu_item_activate (GtkMenuItem* _sender, gpointer self);
115 static void xcls_window_xcls_menuitem7_finalize (Xcls_WindowXcls_MenuItem7* obj);
118 gint _vala_main (gchar** args, int args_length1) {
120 Xcls_Window* _tmp0_ = NULL;
121 Xcls_Window* _tmp1_ = NULL;
122 gtk_init (&args_length1, &args);
123 g_log_set_always_fatal (G_LOG_LEVEL_ERROR | G_LOG_LEVEL_CRITICAL);
124 _tmp0_ = xcls_window_new ();
126 _g_object_unref0 (_tmp1_);
133 int main (int argc, char ** argv) {
134 #if !GLIB_CHECK_VERSION (2,35,0)
137 return _vala_main (argv, argc);
141 static Block1Data* block1_data_ref (Block1Data* _data1_) {
142 g_atomic_int_inc (&_data1_->_ref_count_);
147 static void block1_data_unref (void * _userdata_) {
149 _data1_ = (Block1Data*) _userdata_;
150 if (g_atomic_int_dec_and_test (&_data1_->_ref_count_)) {
152 self = _data1_->self;
153 _g_object_unref0 (_data1_->leftmenu);
154 _g_object_unref0 (self);
155 g_slice_free (Block1Data, _data1_);
160 static gboolean __lambda3_ (Block1Data* _data1_, GdkEventButton* ev) {
162 gboolean result = FALSE;
163 gboolean _tmp0_ = FALSE;
164 GdkEventButton* _tmp1_ = NULL;
165 GdkEventType _tmp2_ = 0;
166 GdkEventButton* _tmp5_ = NULL;
168 GdkEventButton* _tmp7_ = NULL;
170 self = _data1_->self;
171 g_return_val_if_fail (ev != NULL, FALSE);
173 _tmp2_ = _tmp1_->type;
174 if (_tmp2_ != GDK_BUTTON_PRESS) {
177 GdkEventButton* _tmp3_ = NULL;
180 _tmp4_ = _tmp3_->button;
181 _tmp0_ = _tmp4_ != ((guint) 3);
188 _tmp6_ = _tmp5_->button;
190 _tmp8_ = _tmp7_->time;
191 gtk_menu_popup (_data1_->leftmenu, NULL, NULL, NULL, NULL, _tmp6_, _tmp8_);
197 static gboolean ___lambda3__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) {
199 result = __lambda3_ (self, event);
204 Xcls_Window* xcls_window_construct (GType object_type) {
205 Xcls_Window * self = NULL;
208 GtkWindow* _tmp0_ = NULL;
210 GtkButton* _tmp1_ = NULL;
211 GtkMenu* _tmp2_ = NULL;
212 Xcls_WindowXcls_MenuItem7* child_0 = NULL;
213 Xcls_WindowXcls_MenuItem7* _tmp3_ = NULL;
214 GtkMenuItem* _tmp4_ = NULL;
215 _data1_ = g_slice_new0 (Block1Data);
216 _data1_->_ref_count_ = 1;
217 self = (Xcls_Window*) g_object_new (object_type, NULL);
218 _data1_->self = g_object_ref (self);
219 _tmp0_ = (GtkWindow*) gtk_window_new (GTK_WINDOW_TOPLEVEL);
220 g_object_ref_sink (_tmp0_);
222 _tmp1_ = (GtkButton*) gtk_button_new_with_label ("Click me (0)");
223 g_object_ref_sink (_tmp1_);
225 gtk_container_add ((GtkContainer*) w, (GtkWidget*) b);
226 _tmp2_ = (GtkMenu*) gtk_menu_new ();
227 g_object_ref_sink (_tmp2_);
228 _data1_->leftmenu = _tmp2_;
229 g_signal_connect_data ((GtkWidget*) b, "button-press-event", (GCallback) ___lambda3__gtk_widget_button_press_event, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0);
230 _tmp3_ = xcls_window_xcls_menuitem7_new ();
232 xcls_window_xcls_menuitem7_init (child_0, self);
233 _tmp4_ = child_0->el;
234 gtk_menu_shell_append ((GtkMenuShell*) _data1_->leftmenu, (GtkWidget*) _tmp4_);
235 gtk_widget_show_all ((GtkWidget*) _data1_->leftmenu);
236 gtk_widget_show_all ((GtkWidget*) w);
237 _xcls_window_xcls_menuitem7_unref0 (child_0);
238 _g_object_unref0 (b);
239 _g_object_unref0 (w);
240 block1_data_unref (_data1_);
246 Xcls_Window* xcls_window_new (void) {
247 return xcls_window_construct (TYPE_XCLS_WINDOW);
251 static gpointer _g_object_ref0 (gpointer self) {
252 return self ? g_object_ref (self) : NULL;
256 static void __lambda4_ (Xcls_WindowXcls_MenuItem7* self) {
262 static void ___lambda4__gtk_menu_item_activate (GtkMenuItem* _sender, gpointer self) {
263 __lambda4_ ((Xcls_WindowXcls_MenuItem7*) self);
267 void xcls_window_xcls_menuitem7_init (Xcls_WindowXcls_MenuItem7* self, Xcls_Window* _owner) {
268 Xcls_Window* _tmp0_ = NULL;
269 Xcls_Window* _tmp1_ = NULL;
270 GtkMenuItem* el = NULL;
271 GtkMenuItem* _tmp2_ = NULL;
272 GtkMenuItem* _tmp3_ = NULL;
273 GtkMenuItem* _tmp4_ = NULL;
274 g_return_if_fail (self != NULL);
275 g_return_if_fail (_owner != NULL);
277 _tmp1_ = _g_object_ref0 (_tmp0_);
278 _g_object_unref0 (self->_this);
279 self->_this = _tmp1_;
280 _tmp2_ = (GtkMenuItem*) gtk_menu_item_new_with_label ("Delete Element");
281 g_object_ref_sink (_tmp2_);
283 _tmp3_ = _g_object_ref0 (el);
284 _g_object_unref0 (self->el);
286 g_print ("add activate\n");
288 g_signal_connect (_tmp4_, "activate", (GCallback) ___lambda4__gtk_menu_item_activate, self);
289 _g_object_unref0 (el);
293 Xcls_WindowXcls_MenuItem7* xcls_window_xcls_menuitem7_construct (GType object_type) {
294 Xcls_WindowXcls_MenuItem7* self = NULL;
295 self = (Xcls_WindowXcls_MenuItem7*) g_type_create_instance (object_type);
300 Xcls_WindowXcls_MenuItem7* xcls_window_xcls_menuitem7_new (void) {
301 return xcls_window_xcls_menuitem7_construct (XCLS_WINDOW_TYPE_XCLS_MENUITEM7);
305 static void xcls_window_value_xcls_menuitem7_init (GValue* value) {
306 value->data[0].v_pointer = NULL;
310 static void xcls_window_value_xcls_menuitem7_free_value (GValue* value) {
311 if (value->data[0].v_pointer) {
312 xcls_window_xcls_menuitem7_unref (value->data[0].v_pointer);
317 static void xcls_window_value_xcls_menuitem7_copy_value (const GValue* src_value, GValue* dest_value) {
318 if (src_value->data[0].v_pointer) {
319 dest_value->data[0].v_pointer = xcls_window_xcls_menuitem7_ref (src_value->data[0].v_pointer);
321 dest_value->data[0].v_pointer = NULL;
326 static gpointer xcls_window_value_xcls_menuitem7_peek_pointer (const GValue* value) {
327 return value->data[0].v_pointer;
331 static gchar* xcls_window_value_xcls_menuitem7_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
332 if (collect_values[0].v_pointer) {
333 Xcls_WindowXcls_MenuItem7* object;
334 object = collect_values[0].v_pointer;
335 if (object->parent_instance.g_class == NULL) {
336 return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
337 } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
338 return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
340 value->data[0].v_pointer = xcls_window_xcls_menuitem7_ref (object);
342 value->data[0].v_pointer = NULL;
348 static gchar* xcls_window_value_xcls_menuitem7_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
349 Xcls_WindowXcls_MenuItem7** object_p;
350 object_p = collect_values[0].v_pointer;
352 return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
354 if (!value->data[0].v_pointer) {
356 } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
357 *object_p = value->data[0].v_pointer;
359 *object_p = xcls_window_xcls_menuitem7_ref (value->data[0].v_pointer);
365 GParamSpec* xcls_window_param_spec_xcls_menuitem7 (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) {
366 Xcls_WindowParamSpecXcls_MenuItem7* spec;
367 g_return_val_if_fail (g_type_is_a (object_type, XCLS_WINDOW_TYPE_XCLS_MENUITEM7), NULL);
368 spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
369 G_PARAM_SPEC (spec)->value_type = object_type;
370 return G_PARAM_SPEC (spec);
374 gpointer xcls_window_value_get_xcls_menuitem7 (const GValue* value) {
375 g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, XCLS_WINDOW_TYPE_XCLS_MENUITEM7), NULL);
376 return value->data[0].v_pointer;
380 void xcls_window_value_set_xcls_menuitem7 (GValue* value, gpointer v_object) {
381 Xcls_WindowXcls_MenuItem7* old;
382 g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, XCLS_WINDOW_TYPE_XCLS_MENUITEM7));
383 old = value->data[0].v_pointer;
385 g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, XCLS_WINDOW_TYPE_XCLS_MENUITEM7));
386 g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
387 value->data[0].v_pointer = v_object;
388 xcls_window_xcls_menuitem7_ref (value->data[0].v_pointer);
390 value->data[0].v_pointer = NULL;
393 xcls_window_xcls_menuitem7_unref (old);
398 void xcls_window_value_take_xcls_menuitem7 (GValue* value, gpointer v_object) {
399 Xcls_WindowXcls_MenuItem7* old;
400 g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, XCLS_WINDOW_TYPE_XCLS_MENUITEM7));
401 old = value->data[0].v_pointer;
403 g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, XCLS_WINDOW_TYPE_XCLS_MENUITEM7));
404 g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
405 value->data[0].v_pointer = v_object;
407 value->data[0].v_pointer = NULL;
410 xcls_window_xcls_menuitem7_unref (old);
415 static void xcls_window_xcls_menuitem7_class_init (Xcls_WindowXcls_MenuItem7Class * klass) {
416 xcls_window_xcls_menuitem7_parent_class = g_type_class_peek_parent (klass);
417 XCLS_WINDOW_XCLS_MENUITEM7_CLASS (klass)->finalize = xcls_window_xcls_menuitem7_finalize;
421 static void xcls_window_xcls_menuitem7_instance_init (Xcls_WindowXcls_MenuItem7 * self) {
426 static void xcls_window_xcls_menuitem7_finalize (Xcls_WindowXcls_MenuItem7* obj) {
427 Xcls_WindowXcls_MenuItem7 * self;
428 self = G_TYPE_CHECK_INSTANCE_CAST (obj, XCLS_WINDOW_TYPE_XCLS_MENUITEM7, Xcls_WindowXcls_MenuItem7);
429 _g_object_unref0 (self->el);
430 _g_object_unref0 (self->_this);
434 GType xcls_window_xcls_menuitem7_get_type (void) {
435 static volatile gsize xcls_window_xcls_menuitem7_type_id__volatile = 0;
436 if (g_once_init_enter (&xcls_window_xcls_menuitem7_type_id__volatile)) {
437 static const GTypeValueTable g_define_type_value_table = { xcls_window_value_xcls_menuitem7_init, xcls_window_value_xcls_menuitem7_free_value, xcls_window_value_xcls_menuitem7_copy_value, xcls_window_value_xcls_menuitem7_peek_pointer, "p", xcls_window_value_xcls_menuitem7_collect_value, "p", xcls_window_value_xcls_menuitem7_lcopy_value };
438 static const GTypeInfo g_define_type_info = { sizeof (Xcls_WindowXcls_MenuItem7Class), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) xcls_window_xcls_menuitem7_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Xcls_WindowXcls_MenuItem7), 0, (GInstanceInitFunc) xcls_window_xcls_menuitem7_instance_init, &g_define_type_value_table };
439 static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
440 GType xcls_window_xcls_menuitem7_type_id;
441 xcls_window_xcls_menuitem7_type_id = g_type_register_fundamental (g_type_fundamental_next (), "Xcls_WindowXcls_MenuItem7", &g_define_type_info, &g_define_type_fundamental_info, 0);
442 g_once_init_leave (&xcls_window_xcls_menuitem7_type_id__volatile, xcls_window_xcls_menuitem7_type_id);
444 return xcls_window_xcls_menuitem7_type_id__volatile;
448 gpointer xcls_window_xcls_menuitem7_ref (gpointer instance) {
449 Xcls_WindowXcls_MenuItem7* self;
451 g_atomic_int_inc (&self->ref_count);
456 void xcls_window_xcls_menuitem7_unref (gpointer instance) {
457 Xcls_WindowXcls_MenuItem7* self;
459 if (g_atomic_int_dec_and_test (&self->ref_count)) {
460 XCLS_WINDOW_XCLS_MENUITEM7_GET_CLASS (self)->finalize (self);
461 g_type_free_instance ((GTypeInstance *) self);
466 static void xcls_window_class_init (Xcls_WindowClass * klass) {
467 xcls_window_parent_class = g_type_class_peek_parent (klass);
471 static void xcls_window_instance_init (Xcls_Window * self) {
475 GType xcls_window_get_type (void) {
476 static volatile gsize xcls_window_type_id__volatile = 0;
477 if (g_once_init_enter (&xcls_window_type_id__volatile)) {
478 static const GTypeInfo g_define_type_info = { sizeof (Xcls_WindowClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) xcls_window_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Xcls_Window), 0, (GInstanceInitFunc) xcls_window_instance_init, NULL };
479 GType xcls_window_type_id;
480 xcls_window_type_id = g_type_register_static (G_TYPE_OBJECT, "Xcls_Window", &g_define_type_info, 0);
481 g_once_init_leave (&xcls_window_type_id__volatile, xcls_window_type_id);
483 return xcls_window_type_id__volatile;