1 // Generated by gmmproc 2.60.0 -- DO NOT MODIFY!
2 
3 
4 #include <glibmm.h>
5 
6 #include <gtkmm/widget.h>
7 #include <gtkmm/private/widget_p.h>
8 
9 #include <gtk/gtk.h>
10 
11 /* Copyright 1998-2002 The gtkmm Development Team
12  *
13  * This library is free software; you can redistribute it and/or
14  * modify it under the terms of the GNU Lesser General Public
15  * License as published by the Free Software Foundation; either
16  * version 2.1 of the License, or (at your option) any later version.
17  *
18  * This library is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
21  * Lesser General Public License for more details.
22  *
23  * You should have received a copy of the GNU Lesser General Public
24  * License along with this library; if not, write to the Free Software
25  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
26  */
27 
28 #include <glibmm/vectorutils.h>
29 
30 #include <gdkmm/frameclock.h>
31 #include <gtkmm/adjustment.h>
32 #include <gtkmm/window.h>
33 #include <gtkmm/accelgroup.h>
34 #include <gtkmm/settings.h>
35 #include <gtkmm/container.h>
36 #include <gtkmm/selectiondata_private.h>
37 #include <gtkmm/action.h>
38 #include <gtkmm/tooltip.h>
39 #include <gtk/gtk.h> //For gtk_widget_get_action().
40 
41 
42 namespace //anonymous
43 {
44 
45 // This signal callback is custom implemented, so that we can refrain from calling
46 // the signal handler if the C++ wrapper is being deleted.
47 // https://bugzilla.gnome.org/show_bug.cgi?id=605728#c5
Widget_signal_hide_callback(GObject * self,void * data)48 void Widget_signal_hide_callback(GObject* self, void* data)
49 {
50   const auto obj = Glib::ObjectBase::_get_current_wrapper(self);
51 
52   // Do not try to call a signal on a disassociated wrapper.
53   // This function might be invoked recursively if the signal_hide() handler
54   // deletes the object.
55   // Therefore we have to test for cpp_destruction_in_progress_ at this point.
56   if(obj && !obj->_cpp_destruction_is_in_progress())
57   {
58     try
59     {
60       if(sigc::slot_base *const slot = Glib::SignalProxyNormal::data_to_slot(data))
61         (*static_cast<sigc::slot<void>*>(slot))();
62     }
63     catch(...)
64     {
65       Glib::exception_handlers_invoke();
66     }
67   }
68 }
69 
70 //These signal callbacks are custom implemented, so that we can create a temporary SelectionData instance.
71 //To do this, we used the optional custom_c_callback paramater to _WRAP_SIGNAL() in the .hg file.
Widget_signal_drag_data_get_callback(GtkWidget * self,GdkDragContext * p0,GtkSelectionData * p1,guint p2,guint p3,void * data)72 static void Widget_signal_drag_data_get_callback(GtkWidget* self, GdkDragContext* p0,GtkSelectionData* p1,guint p2,guint p3,void* data)
73 {
74   using namespace Gtk;
75   typedef sigc::slot< void,const Glib::RefPtr<Gdk::DragContext>&,SelectionData&,guint,guint > SlotType;
76 
77   // Do not try to call a signal on a disassociated wrapper.
78   if(Glib::ObjectBase::_get_current_wrapper((GObject*) self))
79   {
80     try
81     {
82       if(sigc::slot_base *const slot = Glib::SignalProxyNormal::data_to_slot(data))
83       {
84         SelectionData_WithoutOwnership temp_instance(p1);
85         (*static_cast<SlotType*>(slot))( Glib::wrap(p0, true), temp_instance, p2, p3 );
86       }
87     }
88     catch(...)
89     {
90       Glib::exception_handlers_invoke();
91     }
92   }
93 }
94 
Widget_signal_selection_get_callback(GtkWidget * self,GtkSelectionData * p0,guint p1,guint p2,void * data)95 static void Widget_signal_selection_get_callback(GtkWidget* self, GtkSelectionData* p0,guint p1,guint p2,void* data)
96 {
97   using namespace Gtk;
98   typedef sigc::slot< void, SelectionData&, guint, guint > SlotType;
99 
100   // Do not try to call a signal on a disassociated wrapper.
101   if(Glib::ObjectBase::_get_current_wrapper((GObject*) self))
102   {
103     try
104     {
105       if(sigc::slot_base *const slot = Glib::SignalProxyNormal::data_to_slot(data))
106       {
107         SelectionData_WithoutOwnership temp_instance(p0);
108         (*static_cast<SlotType*>(slot))( temp_instance, p1, p2 );
109       }
110     }
111     catch(...)
112     {
113       Glib::exception_handlers_invoke();
114     }
115   }
116 }
117 
SlotTick_gtk_callback(GtkWidget * self,GdkFrameClock * frame_clock,void * data)118 gboolean SlotTick_gtk_callback(GtkWidget* self, GdkFrameClock* frame_clock, void* data)
119 {
120   // Do not try to call a signal on a disassociated wrapper.
121   if (Glib::ObjectBase::_get_current_wrapper((GObject*)self))
122   {
123     auto the_slot = static_cast<Gtk::Widget::SlotTick*>(data);
124     try
125     {
126       return (*the_slot)(Glib::wrap(frame_clock, true));
127     }
128     catch (...)
129     {
130       Glib::exception_handlers_invoke();
131     }
132   }
133   return false;
134 }
135 
136 } //anonymous
137 
138 namespace Gtk
139 {
140 
141 // This default handler callback is custom implemented, so that we can refrain
142 // from calling an on_hide() override, if the C++ wrapper is being deleted.
hide_callback(GtkWidget * self)143 void Widget_Class::hide_callback(GtkWidget* self)
144 {
145   const auto obj_base = static_cast<Glib::ObjectBase*>(
146       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
147 
148   // Non-gtkmmproc-generated custom classes implicitly call the default
149   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
150   // generated classes can use this optimisation, which avoids the unnecessary
151   // parameter conversions if there is no possibility of the virtual function
152   // being overridden:
153   // This function might be invoked recursively if an on_hide() override
154   // deletes the object.
155   // Therefore we test for cpp_destruction_in_progress_ at this point.
156   // (Not sure if it's necessary, but it feels safer. Perhaps the following
157   // dynamic_cast catches all dangerous cases. /Kjell Ahlstedt)
158   if(obj_base && obj_base->is_derived_() && !obj_base->_cpp_destruction_is_in_progress())
159   {
160     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
161     if(obj) // This can be NULL during destruction.
162     {
163       try // Trap C++ exceptions which would normally be lost because this is a C callback.
164       {
165         // Call the virtual member method, which derived classes might override.
166         obj->on_hide();
167         return;
168       }
169       catch(...)
170       {
171         Glib::exception_handlers_invoke();
172       }
173     }
174   }
175 
176   const auto base = static_cast<BaseClassType*>(
177         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
178     );
179 
180   // Call the original underlying C function:
181   if(base && base->hide)
182     (*base->hide)(self);
183 }
184 
185 //These default handler callbacks are custom implemented, so that we can create a temporary SelectionData instance.
186 //To do this, we used the optional custom_c_callback paramater to _WRAP_SIGNAL() in the .hg file.
selection_get_callback(GtkWidget * self,GtkSelectionData * p0,guint p1,guint p2)187 void Widget_Class::selection_get_callback(GtkWidget* self, GtkSelectionData* p0, guint p1, guint p2)
188 {
189   const auto obj = dynamic_cast<CppObjectType*>(
190       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
191 
192   // Non-gtkmmproc-generated custom classes implicitly call the default
193   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
194   // generated classes can use this optimisation, which avoids the unnecessary
195   // parameter conversions if there is no possibility of the virtual function
196   // being overridden:
197   if(obj && obj->is_derived_())
198   {
199     try // Trap C++ exceptions which would normally be lost because this is a C callback.
200     {
201       // Call the virtual member method, which derived classes might override.
202       SelectionData_WithoutOwnership temp_instance(p0);
203       obj->on_selection_get(temp_instance, p1, p2);
204     }
205     catch(...)
206     {
207       Glib::exception_handlers_invoke();
208     }
209   }
210   else
211   {
212     const auto base = static_cast<BaseClassType*>(
213         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
214     );
215 
216     // Call the original underlying C function:
217     if(base && base->selection_get)
218       (*base->selection_get)(self, p0, p1, p2);
219   }
220 }
221 
drag_data_get_callback(GtkWidget * self,GdkDragContext * p0,GtkSelectionData * p1,guint p2,guint p3)222 void Widget_Class::drag_data_get_callback(GtkWidget* self, GdkDragContext* p0, GtkSelectionData* p1, guint p2, guint p3)
223 {
224   const auto obj = dynamic_cast<CppObjectType*>(
225       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
226 
227   // Non-gtkmmproc-generated custom classes implicitly call the default
228   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
229   // generated classes can use this optimisation, which avoids the unnecessary
230   // parameter conversions if there is no possibility of the virtual function
231   // being overridden:
232   if(obj && obj->is_derived_())
233   {
234     try // Trap C++ exceptions which would normally be lost because this is a C callback.
235     {
236       // Call the virtual member method, which derived classes might override.
237       SelectionData_WithoutOwnership temp_instance(p1);
238       obj->on_drag_data_get(Glib::wrap(p0, true), temp_instance, p2, p3);
239     }
240     catch(...)
241     {
242       Glib::exception_handlers_invoke();
243     }
244   }
245   else
246   {
247     const auto base = static_cast<BaseClassType*>(
248         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
249     );
250 
251     // Call the original underlying C function:
252     if(base && base->drag_data_get)
253       (*base->drag_data_get)(self, p0, p1, p2, p3);
254   }
255 }
256 
257 //These vfunc callbacks are custom implemented because we want the output
258 //arguments of the C++ vfuncs to be int& (not int*), and the vfunc_callback
259 //functions may be called from gtk+ with a NULL pointer.
get_preferred_width_vfunc_callback(GtkWidget * self,gint * minimum_width,gint * natural_width)260 void Widget_Class::get_preferred_width_vfunc_callback(GtkWidget* self, gint* minimum_width, gint* natural_width)
261 {
262   const auto obj_base = static_cast<Glib::ObjectBase*>(
263       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
264 
265   // Non-gtkmmproc-generated custom classes implicitly call the default
266   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
267   // generated classes can use this optimisation, which avoids the unnecessary
268   // parameter conversions if there is no possibility of the virtual function
269   // being overridden:
270   if(obj_base && obj_base->is_derived_())
271   {
272     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
273     if(obj) // This can be NULL during destruction.
274     {
275       try // Trap C++ exceptions which would normally be lost because this is a C callback.
276       {
277         // Call the virtual member method, which derived classes might override.
278         int min_width = 0;
279         int nat_width = 0;
280         obj->get_preferred_width_vfunc(
281              (minimum_width ? *minimum_width : min_width),
282              (natural_width ? *natural_width : nat_width));
283         return;
284       }
285       catch(...)
286       {
287         Glib::exception_handlers_invoke();
288       }
289     }
290   }
291 
292   const auto base = static_cast<BaseClassType*>(
293       g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
294   );
295 
296   // Call the original underlying C function:
297   if(base && base->get_preferred_width)
298     (*base->get_preferred_width)(self, minimum_width, natural_width);
299 }
300 
get_preferred_height_for_width_vfunc_callback(GtkWidget * self,gint width,gint * minimum_height,gint * natural_height)301 void Widget_Class::get_preferred_height_for_width_vfunc_callback(GtkWidget* self, gint width, gint* minimum_height, gint* natural_height)
302 {
303   const auto obj_base = static_cast<Glib::ObjectBase*>(
304       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
305 
306   // Non-gtkmmproc-generated custom classes implicitly call the default
307   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
308   // generated classes can use this optimisation, which avoids the unnecessary
309   // parameter conversions if there is no possibility of the virtual function
310   // being overridden:
311   if(obj_base && obj_base->is_derived_())
312   {
313     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
314     if(obj) // This can be NULL during destruction.
315     {
316       try // Trap C++ exceptions which would normally be lost because this is a C callback.
317       {
318         // Call the virtual member method, which derived classes might override.
319         int min_height = 0;
320         int nat_height = 0;
321         obj->get_preferred_height_for_width_vfunc(width,
322              (minimum_height ? *minimum_height : min_height),
323              (natural_height ? *natural_height : nat_height));
324         return;
325       }
326       catch(...)
327       {
328         Glib::exception_handlers_invoke();
329       }
330     }
331   }
332 
333   const auto base = static_cast<BaseClassType*>(
334       g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
335   );
336 
337   // Call the original underlying C function:
338   if(base && base->get_preferred_height_for_width)
339     (*base->get_preferred_height_for_width)(self, width, minimum_height, natural_height);
340 }
341 
get_preferred_height_vfunc_callback(GtkWidget * self,gint * minimum_height,gint * natural_height)342 void Widget_Class::get_preferred_height_vfunc_callback(GtkWidget* self, gint* minimum_height, gint* natural_height)
343 {
344   const auto obj_base = static_cast<Glib::ObjectBase*>(
345       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
346 
347   // Non-gtkmmproc-generated custom classes implicitly call the default
348   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
349   // generated classes can use this optimisation, which avoids the unnecessary
350   // parameter conversions if there is no possibility of the virtual function
351   // being overridden:
352   if(obj_base && obj_base->is_derived_())
353   {
354     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
355     if(obj) // This can be NULL during destruction.
356     {
357       try // Trap C++ exceptions which would normally be lost because this is a C callback.
358       {
359         // Call the virtual member method, which derived classes might override.
360         int min_height = 0;
361         int nat_height = 0;
362         obj->get_preferred_height_vfunc(
363              (minimum_height ? *minimum_height : min_height),
364              (natural_height ? *natural_height : nat_height));
365         return;
366       }
367       catch(...)
368       {
369         Glib::exception_handlers_invoke();
370       }
371     }
372   }
373 
374   const auto base = static_cast<BaseClassType*>(
375       g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
376   );
377 
378   // Call the original underlying C function:
379   if(base && base->get_preferred_height)
380     (*base->get_preferred_height)(self, minimum_height, natural_height);
381 }
382 
get_preferred_width_for_height_vfunc_callback(GtkWidget * self,gint height,gint * minimum_width,gint * natural_width)383 void Widget_Class::get_preferred_width_for_height_vfunc_callback(GtkWidget* self, gint height, gint* minimum_width, gint* natural_width)
384 {
385   const auto obj_base = static_cast<Glib::ObjectBase*>(
386       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
387 
388   // Non-gtkmmproc-generated custom classes implicitly call the default
389   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
390   // generated classes can use this optimisation, which avoids the unnecessary
391   // parameter conversions if there is no possibility of the virtual function
392   // being overridden:
393   if(obj_base && obj_base->is_derived_())
394   {
395     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
396     if(obj) // This can be NULL during destruction.
397     {
398       try // Trap C++ exceptions which would normally be lost because this is a C callback.
399       {
400         // Call the virtual member method, which derived classes might override.
401         int min_width = 0;
402         int nat_width = 0;
403         obj->get_preferred_width_for_height_vfunc(height,
404              (minimum_width ? *minimum_width : min_width),
405              (natural_width ? *natural_width : nat_width));
406         return;
407       }
408       catch(...)
409       {
410         Glib::exception_handlers_invoke();
411       }
412     }
413   }
414 
415   const auto base = static_cast<BaseClassType*>(
416       g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
417   );
418 
419   // Call the original underlying C function:
420   if(base && base->get_preferred_width_for_height)
421     (*base->get_preferred_width_for_height)(self, height, minimum_width, natural_width);
422 }
423 
~Widget()424 Widget::~Widget() noexcept
425 {}
426 
reparent(Widget & new_parent)427 void Widget::reparent(Widget& new_parent)
428 {
429   //TODO: When 'Widget& new_parent' is changed to 'Container& new_parent',
430   // remove the next two statements.
431   auto new_container = dynamic_cast<Container*>(&new_parent);
432   g_return_if_fail(new_container != nullptr); // if new_parent is not a Container
433   auto old_container = get_parent();
434   g_return_if_fail(old_container != nullptr); // if the widget is not in a Container
435 
436   if (old_container != new_container)
437   {
438     reference();
439     old_container->remove(*this);
440     new_container->add(*this);
441     unreference();
442   }
443 }
444 
intersect(const Gdk::Rectangle & area) const445 bool Widget::intersect(const Gdk::Rectangle& area) const
446 {
447   return gtk_widget_intersect(
448       const_cast<GtkWidget*>(gobj()), const_cast<GdkRectangle*>(area.gobj()), nullptr);
449 }
450 
unset_name()451 void Widget::unset_name()
452 {
453   gtk_widget_set_name(gobj(), nullptr);
454 }
455 
456 #ifndef GTKMM_DISABLE_DEPRECATED
457 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
unset_composite_name()458 void Widget::unset_composite_name()
459 {
460   gtk_widget_set_composite_name(gobj(), nullptr);
461 }
462 G_GNUC_END_IGNORE_DEPRECATIONS
463 #endif // GTKMM_DISABLE_DEPRECATED
464 
realize_if_needed()465 void Widget::realize_if_needed()
466 {
467   if(!get_realized())
468     realize();
469 }
470 
add_modal_grab()471 void Widget::add_modal_grab()
472 {
473   gtk_grab_add(gobj());
474 }
475 
remove_modal_grab()476 void Widget::remove_modal_grab()
477 {
478   gtk_grab_remove(gobj());
479 }
480 
get_current_modal_grab()481 Widget* Widget::get_current_modal_grab()
482 {
483   return Glib::wrap(gtk_grab_get_current());
484 }
485 
set_window(const Glib::RefPtr<Gdk::Window> & window)486 void Widget::set_window(const Glib::RefPtr<Gdk::Window>& window)
487 {
488   gtk_widget_set_window(gobj(), Glib::unwrap(window));
489   if (window)
490     window->reference(); // gtk_widget_set_window does not add a ref.
491 }
492 
get_clip() const493 Allocation Widget::get_clip() const
494 {
495   Allocation allocation;
496   gtk_widget_get_clip(const_cast<GtkWidget*>(gobj()), allocation.gobj());
497   return allocation;
498 }
499 
500 
get_allocation() const501 Allocation Widget::get_allocation() const
502 {
503   Allocation allocation;
504   gtk_widget_get_allocation(const_cast<GtkWidget*>(gobj()), allocation.gobj());
505   return allocation;
506 }
507 
get_width() const508 int Widget::get_width() const
509   { return get_allocation().get_width(); }
510 
get_height() const511 int Widget::get_height() const
512   { return get_allocation().get_height(); }
513 
514 
drag_dest_set(DestDefaults flags,Gdk::DragAction actions)515 void Widget::drag_dest_set(DestDefaults flags, Gdk::DragAction actions)
516 {
517   gtk_drag_dest_set(gobj(), (GtkDestDefaults)flags, nullptr, 0, (GdkDragAction)actions);
518 }
519 
drag_dest_set(const std::vector<TargetEntry> & targets,DestDefaults flags,Gdk::DragAction actions)520 void Widget::drag_dest_set(const std::vector<TargetEntry>& targets,
521                            DestDefaults flags, Gdk::DragAction actions)
522 {
523   // I've used Gdk::ACTION_COPY as the default, because Gdk::ACTION_DEFAULT means that
524   // it's never a drag destination, so it would seem like this method didn't work. murrayc.
525   gtk_drag_dest_set(
526       gobj(), (GtkDestDefaults)flags,
527       Glib::ArrayHandler<TargetEntry, TargetEntryTraits>::vector_to_array(targets).data(),
528       targets.size(), (GdkDragAction)actions);
529 }
530 
drag_source_set(const std::vector<TargetEntry> & targets,Gdk::ModifierType start_button_mask,Gdk::DragAction actions)531 void Widget::drag_source_set(const std::vector<TargetEntry>& targets,
532                              Gdk::ModifierType start_button_mask, Gdk::DragAction actions)
533 {
534   // I've used Gdk::MODIFIER_MASK as the default, because it seems
535   // to mean 'whatever is possible in the context'. murrayc.
536   gtk_drag_source_set(
537       gobj(), (GdkModifierType)start_button_mask,
538       Glib::ArrayHandler<TargetEntry, TargetEntryTraits>::vector_to_array(targets).data(),
539       targets.size(), (GdkDragAction)actions);
540 }
541 
drag_get_source_widget(const Glib::RefPtr<Gdk::DragContext> & context)542 Widget* Widget::drag_get_source_widget(const Glib::RefPtr<Gdk::DragContext>& context) //static
543 {
544   return Glib::wrap( gtk_drag_get_source_widget(Glib::unwrap(context)) );
545 }
546 
drag_set_as_icon(const Glib::RefPtr<Gdk::DragContext> & context,int hot_x,int hot_y)547 void Widget::drag_set_as_icon(const Glib::RefPtr<Gdk::DragContext>& context, int hot_x, int hot_y)
548 {
549   gtk_drag_set_icon_widget(Glib::unwrap(context), gobj(), hot_x, hot_y);
550 }
551 
hierarchy_changed_callback_custom(GtkWidget * self,GtkWidget * p0)552 void Widget_Class::hierarchy_changed_callback_custom(GtkWidget* self, GtkWidget* p0)
553 {
554   //GTKMM_LIFECYCLE
555   //Don't call wrap() on a GTK+ instance whose gtkmm instance has been deleted - just call the original C callback.
556   bool gtkmm_child_already_deleted = Glib::_gobject_cppinstance_already_deleted((GObject*)p0);
557 
558   if(!gtkmm_child_already_deleted)
559   {
560     //Call the regular, generated callback:
561     Widget_Class::hierarchy_changed_callback(self, p0);
562   }
563   else
564   {
565     const auto base = static_cast<BaseClassType*>(
566         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
567     );
568 
569     //Call the original underlying C function:
570     if(base && base->hierarchy_changed)
571       (*base->hierarchy_changed)(self, p0);
572   }
573 }
574 
parent_set_callback_custom(GtkWidget * self,GtkWidget * p0)575 void Widget_Class::parent_set_callback_custom(GtkWidget* self, GtkWidget* p0)
576 {
577   //GTKMM_LIFECYCLE
578   //Don't call wrap() on a GTK+ instance whose gtkmm instance has been deleted - just call the original C callback.
579   bool gtkmm_p0_already_deleted = Glib::_gobject_cppinstance_already_deleted((GObject*)p0);
580 
581   if(!gtkmm_p0_already_deleted)
582   {
583     //Call the regular, generated callback:
584     Widget_Class::parent_set_callback(self, p0);
585   }
586   else
587   {
588     const auto base = static_cast<BaseClassType*>(
589         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
590     );
591 
592     //Call the original underlying C function:
593     if(base && base->parent_set)
594       (*base->parent_set)(self, p0);
595   }
596 }
597 
dispose_vfunc_callback(GObject * self)598 void Widget_Class::dispose_vfunc_callback(GObject* self)
599 {
600   //Avoid disposal. See also Window_Class::dispose_vfunc_callback().
601 
602   #ifdef GLIBMM_DEBUG_REFCOUNTING
603   g_warning("Widget_Class::dispose_vfunc_callback(): gobject_: %p\n", (void*)self);
604   //if(self)
605    //g_warning("  gtypename: %s\n", G_OBJECT_TYPE_NAME(self));
606   #endif
607 
608   const auto obj = dynamic_cast<Widget*>(
609       Glib::ObjectBase::_get_current_wrapper(self));
610 
611   // This function might be invoked recursively because we're triggering
612   // several signal emissions, particularly signal_hide().  Therefore we
613   // have to test for cpp_destruction_in_progress_ at this point.
614 
615   if(obj && !obj->_cpp_destruction_is_in_progress()) //When it should really be destroyed, we zero gobj_.
616   {
617     const auto pWidget = obj->gobj();
618     g_return_if_fail(pWidget == GTK_WIDGET(self));
619 
620     // Abort dispose if the widget isn't managed, in order to prevent
621     // the nasty self-destroying behaviour of GTK+.  This applies to
622     // any widget inside a GtkContainer on gtk_container_destroy()
623     // See also Window_Class::dispose_vfunc_callback().
624 
625     if(obj->referenced_) //Not managed
626     {
627       // GTKMM_LIFECYCLE
628       // Remove the widget from its parent container so that it
629       // won't be destroyed later by gtk_container_destroy().
630       GtkWidget* parent = gtk_widget_get_parent(pWidget);
631       if(parent)
632       {
633         // Normally, we would have to ref the child widget because
634         // gtk_container_remove() unrefs it.  But since we only remove
635         // non-managed objects here, the container just releases the
636         // reference it has acquired before in gtk_container_add().
637 
638         #ifdef GLIBMM_DEBUG_REFCOUNTING
639         g_warning("Widget_Class::dispose_vfunc_callback(): removing gobject_: %p from parent: %p", (void*)self, (void*)parent);
640         #endif
641 
642         gtk_container_remove(GTK_CONTAINER(parent), pWidget);
643 
644         #ifdef GLIBMM_DEBUG_REFCOUNTING
645         g_warning("Widget_Class::dispose_vfunc_callback(): after removing from parent.");
646         #endif
647       }
648       // Special case for GtkMenu because gtk_menu_attach_to_widget does
649       // not set widget->parent but gtk_menu_item_destroy() destroys the menu
650       // like gtk_container_destroy()
651       // Gtk::Menu does not use a parent widget because it must
652       // be contained in its Gtk::Window so that it can be displayed as a popup.
653       else if (GTK_IS_MENU(pWidget) && GTK_IS_MENU_ITEM(gtk_menu_get_attach_widget(GTK_MENU(pWidget))))
654       {
655          gtk_menu_detach(GTK_MENU(pWidget));
656       }
657 
658       #ifdef GLIBMM_DEBUG_REFCOUNTING
659       g_warning("Widget_Class::dispose_vfunc_callback(): before gtk_widget_hide().");
660       #endif
661 
662       // Now hide the widget.  The C++ object must _not_ be accessed anymore
663       // after this call, because a signal_hide() handler might delete it.
664       gtk_widget_hide(pWidget);
665 
666       #ifdef GLIBMM_DEBUG_REFCOUNTING
667       g_warning("Widget_Class::dispose_vfunc_callback(): after gtk_widget_hide().");
668       #endif
669 
670       // GTKMM_LIFECYCLE
671       return; // Prevent calling of normal C dispose vfunc (see below)
672     }
673 
674     #ifdef GLIBMM_DEBUG_REFCOUNTING
675     g_warning("Widget_Class::dispose_vfunc_callback(): unreferenced: before gtk_widget_hide().");
676     #endif
677 
678     // Always hide widgets on object destruction, regardless of whether
679     // the widget is managed or not.  This is done for consistency so that
680     // connecting to signal_hide() is guaranteed to work.
681     gtk_widget_hide(pWidget);
682 
683     #ifdef GLIBMM_DEBUG_REFCOUNTING
684     g_warning("Widget_Class::dispose_vfunc_callback(): unreferenced:  after gtk_widget_hide().");
685     #endif
686   }
687 
688   const auto base = static_cast<GObjectClass*>(
689       g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)));
690 
691   #ifdef GLIBMM_DEBUG_REFCOUNTING
692   g_warning("Widget_Class::dispose_vfunc_callback(): before calling base->dispose.");
693   #endif
694 
695   if(base->dispose)
696     (*base->dispose)(self);
697 
698   #ifdef GLIBMM_DEBUG_REFCOUNTING
699   g_warning("Widget_Class::dispose_vfunc_callback(): after calling base->dispose.");
700   #endif
701 }
702 
drag_dest_find_target(const Glib::RefPtr<Gdk::DragContext> & context) const703 Glib::ustring Widget::drag_dest_find_target(const Glib::RefPtr<Gdk::DragContext>& context) const
704 {
705   return Gdk::AtomString::to_cpp_type(gtk_drag_dest_find_target(const_cast<GtkWidget*>(gobj()), Glib::unwrap(context), nullptr /* See GTK+ docs */));
706 }
707 
708 #ifndef GTKMM_DISABLE_DEPRECATED
709 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
draw_insertion_cursor(const Cairo::RefPtr<Cairo::Context> & cr,const Gdk::Rectangle & location,bool is_primary,TextDirection direction,bool draw_arrow)710 void Widget::draw_insertion_cursor(const Cairo::RefPtr<Cairo::Context>& cr, const Gdk::Rectangle& location, bool is_primary, TextDirection direction, bool draw_arrow)
711 {
712   gtk_draw_insertion_cursor(gobj(), cr->cobj(), const_cast<GdkRectangle*>(location.gobj()), is_primary, (GtkTextDirection)direction, draw_arrow);
713 }
714 G_GNUC_END_IGNORE_DEPRECATIONS
715 #endif // GTKMM_DISABLE_DEPRECATED
716 
717 #ifndef GTKMM_DISABLE_DEPRECATED
718 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
get_requisition() const719 Requisition Widget::get_requisition() const
720 {
721   Requisition result = {0, 0};
722   gtk_widget_get_requisition(const_cast<GtkWidget*>(gobj()), &result);
723   return result;
724 }
725 G_GNUC_END_IGNORE_DEPRECATIONS
726 #endif // GTKMM_DISABLE_DEPRECATED
727 
728 #ifndef GTKMM_DISABLE_DEPRECATED
729 
730 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
unset_color(StateFlags state)731 void Widget::unset_color(StateFlags state)
732 {
733    gtk_widget_override_color(gobj(), ((GtkStateFlags)(state)), nullptr);
734 }
735 
unset_background_color(StateFlags state)736 void Widget::unset_background_color(StateFlags state)
737 {
738   gtk_widget_override_background_color(gobj(), ((GtkStateFlags)(state)), nullptr);
739 }
740 
unset_font()741 void Widget::unset_font()
742 {
743   gtk_widget_override_font(gobj(), nullptr);
744 }
745 
unset_symbolic_color(const Glib::ustring & name)746 void Widget::unset_symbolic_color(const Glib::ustring& name)
747 {
748   gtk_widget_override_symbolic_color(gobj(), name.c_str(), nullptr);
749 }
750 
unset_cursor()751 void Widget::unset_cursor()
752 {
753   gtk_widget_override_cursor(gobj(), nullptr, nullptr);
754 }
755 G_GNUC_END_IGNORE_DEPRECATIONS
756 #endif // GTKMM_DISABLE_DEPRECATED
757 
758 
unset_font_options()759 void Widget::unset_font_options()
760 {
761   gtk_widget_set_font_options(gobj(), nullptr);
762 }
763 
transform_cairo_context_to_window(const Cairo::RefPtr<Cairo::Context> & cr,const Glib::RefPtr<const Gdk::Window> & window)764 void Widget::transform_cairo_context_to_window(const Cairo::RefPtr<Cairo::Context>& cr, const Glib::RefPtr<const Gdk::Window>& window)
765 {
766   gtk_cairo_transform_to_window((cr)->cobj(), gobj(), const_cast<GdkWindow*>(Glib::unwrap<Gdk::Window>(window)));
767 }
768 
remove_action_group(const Glib::ustring & name)769 void Widget::remove_action_group(const Glib::ustring& name)
770 {
771   gtk_widget_insert_action_group(gobj(), name.c_str(), nullptr /* see C docs */);
772 }
773 
add_tick_callback(const SlotTick & slot)774 guint Widget::add_tick_callback(const SlotTick& slot)
775 {
776   // Create a copy of the slot object. A pointer to this will be passed
777   // through the callback's data parameter. It will be deleted
778   // when Glib::destroy_notify_delete<SlotTick>() is called.
779   auto slot_copy = new SlotTick(slot);
780 
781   return gtk_widget_add_tick_callback(gobj(), &SlotTick_gtk_callback, slot_copy,
782     &Glib::destroy_notify_delete<SlotTick>);
783 }
784 
785 } // namespace Gtk
786 
787 namespace
788 {
789 
790 
791 static const Glib::SignalProxyInfo Widget_signal_show_info =
792 {
793   "show",
794   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback,
795   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback
796 };
797 
798 
799 static const Glib::SignalProxyInfo Widget_signal_hide_info =
800 {
801   "hide",
802   (GCallback) &Widget_signal_hide_callback,
803   (GCallback) &Widget_signal_hide_callback
804 };
805 
806 
807 static const Glib::SignalProxyInfo Widget_signal_map_info =
808 {
809   "map",
810   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback,
811   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback
812 };
813 
814 
815 static const Glib::SignalProxyInfo Widget_signal_unmap_info =
816 {
817   "unmap",
818   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback,
819   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback
820 };
821 
822 
823 static const Glib::SignalProxyInfo Widget_signal_realize_info =
824 {
825   "realize",
826   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback,
827   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback
828 };
829 
830 
831 static const Glib::SignalProxyInfo Widget_signal_unrealize_info =
832 {
833   "unrealize",
834   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback,
835   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback
836 };
837 
838 
Widget_signal_size_allocate_callback(GtkWidget * self,GdkRectangle * p0,void * data)839 static void Widget_signal_size_allocate_callback(GtkWidget* self, GdkRectangle* p0,void* data)
840 {
841   using namespace Gtk;
842   using SlotType = sigc::slot< void,Allocation& >;
843 
844   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
845   // Do not try to call a signal on a disassociated wrapper.
846   if(obj)
847   {
848     try
849     {
850       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
851         (*static_cast<SlotType*>(slot))((Allocation&)(Glib::wrap(p0))
852 );
853     }
854     catch(...)
855     {
856        Glib::exception_handlers_invoke();
857     }
858   }
859 }
860 
861 static const Glib::SignalProxyInfo Widget_signal_size_allocate_info =
862 {
863   "size_allocate",
864   (GCallback) &Widget_signal_size_allocate_callback,
865   (GCallback) &Widget_signal_size_allocate_callback
866 };
867 
868 
869 #ifndef GTKMM_DISABLE_DEPRECATED
870 
871 
Widget_signal_state_changed_callback(GtkWidget * self,GtkStateType p0,void * data)872 static void Widget_signal_state_changed_callback(GtkWidget* self, GtkStateType p0,void* data)
873 {
874   using namespace Gtk;
875   using SlotType = sigc::slot< void,Gtk::StateType >;
876 
877   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
878   // Do not try to call a signal on a disassociated wrapper.
879   if(obj)
880   {
881     try
882     {
883       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
884         (*static_cast<SlotType*>(slot))(((Gtk::StateType)(p0))
885 );
886     }
887     catch(...)
888     {
889        Glib::exception_handlers_invoke();
890     }
891   }
892 }
893 
894 static const Glib::SignalProxyInfo Widget_signal_state_changed_info =
895 {
896   "state_changed",
897   (GCallback) &Widget_signal_state_changed_callback,
898   (GCallback) &Widget_signal_state_changed_callback
899 };
900 
901 #endif // GTKMM_DISABLE_DEPRECATED
902 
903 
Widget_signal_state_flags_changed_callback(GtkWidget * self,GtkStateFlags p0,void * data)904 static void Widget_signal_state_flags_changed_callback(GtkWidget* self, GtkStateFlags p0,void* data)
905 {
906   using namespace Gtk;
907   using SlotType = sigc::slot< void,Gtk::StateFlags >;
908 
909   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
910   // Do not try to call a signal on a disassociated wrapper.
911   if(obj)
912   {
913     try
914     {
915       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
916         (*static_cast<SlotType*>(slot))(((Gtk::StateFlags)(p0))
917 );
918     }
919     catch(...)
920     {
921        Glib::exception_handlers_invoke();
922     }
923   }
924 }
925 
926 static const Glib::SignalProxyInfo Widget_signal_state_flags_changed_info =
927 {
928   "state-flags-changed",
929   (GCallback) &Widget_signal_state_flags_changed_callback,
930   (GCallback) &Widget_signal_state_flags_changed_callback
931 };
932 
933 
Widget_signal_parent_changed_callback(GtkWidget * self,GtkWidget * p0,void * data)934 static void Widget_signal_parent_changed_callback(GtkWidget* self, GtkWidget* p0,void* data)
935 {
936   using namespace Gtk;
937   using SlotType = sigc::slot< void,Widget* >;
938 
939   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
940   // Do not try to call a signal on a disassociated wrapper.
941   if(obj)
942   {
943     try
944     {
945       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
946         (*static_cast<SlotType*>(slot))(Glib::wrap(p0)
947 );
948     }
949     catch(...)
950     {
951        Glib::exception_handlers_invoke();
952     }
953   }
954 }
955 
956 static const Glib::SignalProxyInfo Widget_signal_parent_changed_info =
957 {
958   "parent_set",
959   (GCallback) &Widget_signal_parent_changed_callback,
960   (GCallback) &Widget_signal_parent_changed_callback
961 };
962 
963 
Widget_signal_hierarchy_changed_callback(GtkWidget * self,GtkWidget * p0,void * data)964 static void Widget_signal_hierarchy_changed_callback(GtkWidget* self, GtkWidget* p0,void* data)
965 {
966   using namespace Gtk;
967   using SlotType = sigc::slot< void,Widget* >;
968 
969   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
970   // Do not try to call a signal on a disassociated wrapper.
971   if(obj)
972   {
973     try
974     {
975       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
976         (*static_cast<SlotType*>(slot))(Glib::wrap(p0)
977 );
978     }
979     catch(...)
980     {
981        Glib::exception_handlers_invoke();
982     }
983   }
984 }
985 
986 static const Glib::SignalProxyInfo Widget_signal_hierarchy_changed_info =
987 {
988   "hierarchy_changed",
989   (GCallback) &Widget_signal_hierarchy_changed_callback,
990   (GCallback) &Widget_signal_hierarchy_changed_callback
991 };
992 
993 
994 static const Glib::SignalProxyInfo Widget_signal_style_updated_info =
995 {
996   "style_updated",
997   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback,
998   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback
999 };
1000 
1001 
Widget_signal_direction_changed_callback(GtkWidget * self,GtkTextDirection p0,void * data)1002 static void Widget_signal_direction_changed_callback(GtkWidget* self, GtkTextDirection p0,void* data)
1003 {
1004   using namespace Gtk;
1005   using SlotType = sigc::slot< void,TextDirection >;
1006 
1007   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1008   // Do not try to call a signal on a disassociated wrapper.
1009   if(obj)
1010   {
1011     try
1012     {
1013       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1014         (*static_cast<SlotType*>(slot))(((TextDirection)(p0))
1015 );
1016     }
1017     catch(...)
1018     {
1019        Glib::exception_handlers_invoke();
1020     }
1021   }
1022 }
1023 
1024 static const Glib::SignalProxyInfo Widget_signal_direction_changed_info =
1025 {
1026   "direction_changed",
1027   (GCallback) &Widget_signal_direction_changed_callback,
1028   (GCallback) &Widget_signal_direction_changed_callback
1029 };
1030 
1031 
Widget_signal_grab_notify_callback(GtkWidget * self,gboolean p0,void * data)1032 static void Widget_signal_grab_notify_callback(GtkWidget* self, gboolean p0,void* data)
1033 {
1034   using namespace Gtk;
1035   using SlotType = sigc::slot< void,bool >;
1036 
1037   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1038   // Do not try to call a signal on a disassociated wrapper.
1039   if(obj)
1040   {
1041     try
1042     {
1043       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1044         (*static_cast<SlotType*>(slot))(p0
1045 );
1046     }
1047     catch(...)
1048     {
1049        Glib::exception_handlers_invoke();
1050     }
1051   }
1052 }
1053 
1054 static const Glib::SignalProxyInfo Widget_signal_grab_notify_info =
1055 {
1056   "grab_notify",
1057   (GCallback) &Widget_signal_grab_notify_callback,
1058   (GCallback) &Widget_signal_grab_notify_callback
1059 };
1060 
1061 
Widget_signal_child_notify_callback(GtkWidget * self,GParamSpec * p0,void * data)1062 static void Widget_signal_child_notify_callback(GtkWidget* self, GParamSpec* p0,void* data)
1063 {
1064   using namespace Gtk;
1065   using SlotType = sigc::slot< void,GParamSpec* >;
1066 
1067   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1068   // Do not try to call a signal on a disassociated wrapper.
1069   if(obj)
1070   {
1071     try
1072     {
1073       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1074         (*static_cast<SlotType*>(slot))(p0);
1075     }
1076     catch(...)
1077     {
1078        Glib::exception_handlers_invoke();
1079     }
1080   }
1081 }
1082 
1083 static const Glib::SignalProxyInfo Widget_signal_child_notify_info =
1084 {
1085   "child_notify",
1086   (GCallback) &Widget_signal_child_notify_callback,
1087   (GCallback) &Widget_signal_child_notify_callback
1088 };
1089 
1090 
Widget_signal_mnemonic_activate_callback(GtkWidget * self,gboolean p0,void * data)1091 static gboolean Widget_signal_mnemonic_activate_callback(GtkWidget* self, gboolean p0,void* data)
1092 {
1093   using namespace Gtk;
1094   using SlotType = sigc::slot< bool,bool >;
1095 
1096   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1097   // Do not try to call a signal on a disassociated wrapper.
1098   if(obj)
1099   {
1100     try
1101     {
1102       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1103         return static_cast<int>((*static_cast<SlotType*>(slot))(p0
1104 ));
1105     }
1106     catch(...)
1107     {
1108        Glib::exception_handlers_invoke();
1109     }
1110   }
1111 
1112   using RType = gboolean;
1113   return RType();
1114 }
1115 
Widget_signal_mnemonic_activate_notify_callback(GtkWidget * self,gboolean p0,void * data)1116 static gboolean Widget_signal_mnemonic_activate_notify_callback(GtkWidget* self, gboolean p0, void* data)
1117 {
1118   using namespace Gtk;
1119   using SlotType = sigc::slot< void,bool >;
1120 
1121   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1122   // Do not try to call a signal on a disassociated wrapper.
1123   if(obj)
1124   {
1125     try
1126     {
1127       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1128         (*static_cast<SlotType*>(slot))(p0
1129 );
1130     }
1131     catch(...)
1132     {
1133       Glib::exception_handlers_invoke();
1134     }
1135   }
1136 
1137   using RType = gboolean;
1138   return RType();
1139 }
1140 
1141 static const Glib::SignalProxyInfo Widget_signal_mnemonic_activate_info =
1142 {
1143   "mnemonic_activate",
1144   (GCallback) &Widget_signal_mnemonic_activate_callback,
1145   (GCallback) &Widget_signal_mnemonic_activate_notify_callback
1146 };
1147 
1148 
1149 static const Glib::SignalProxyInfo Widget_signal_grab_focus_info =
1150 {
1151   "grab_focus",
1152   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback,
1153   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback
1154 };
1155 
1156 
Widget_signal_focus_callback(GtkWidget * self,GtkDirectionType p0,void * data)1157 static gboolean Widget_signal_focus_callback(GtkWidget* self, GtkDirectionType p0,void* data)
1158 {
1159   using namespace Gtk;
1160   using SlotType = sigc::slot< bool,DirectionType >;
1161 
1162   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1163   // Do not try to call a signal on a disassociated wrapper.
1164   if(obj)
1165   {
1166     try
1167     {
1168       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1169         return static_cast<int>((*static_cast<SlotType*>(slot))(((DirectionType)(p0))
1170 ));
1171     }
1172     catch(...)
1173     {
1174        Glib::exception_handlers_invoke();
1175     }
1176   }
1177 
1178   using RType = gboolean;
1179   return RType();
1180 }
1181 
Widget_signal_focus_notify_callback(GtkWidget * self,GtkDirectionType p0,void * data)1182 static gboolean Widget_signal_focus_notify_callback(GtkWidget* self, GtkDirectionType p0, void* data)
1183 {
1184   using namespace Gtk;
1185   using SlotType = sigc::slot< void,DirectionType >;
1186 
1187   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1188   // Do not try to call a signal on a disassociated wrapper.
1189   if(obj)
1190   {
1191     try
1192     {
1193       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1194         (*static_cast<SlotType*>(slot))(((DirectionType)(p0))
1195 );
1196     }
1197     catch(...)
1198     {
1199       Glib::exception_handlers_invoke();
1200     }
1201   }
1202 
1203   using RType = gboolean;
1204   return RType();
1205 }
1206 
1207 static const Glib::SignalProxyInfo Widget_signal_focus_info =
1208 {
1209   "focus",
1210   (GCallback) &Widget_signal_focus_callback,
1211   (GCallback) &Widget_signal_focus_notify_callback
1212 };
1213 
1214 
Widget_signal_event_callback(GtkWidget * self,GdkEvent * p0,void * data)1215 static gboolean Widget_signal_event_callback(GtkWidget* self, GdkEvent* p0,void* data)
1216 {
1217   using namespace Gtk;
1218   using SlotType = sigc::slot< bool,GdkEvent* >;
1219 
1220   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1221   // Do not try to call a signal on a disassociated wrapper.
1222   if(obj)
1223   {
1224     try
1225     {
1226       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1227         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1228     }
1229     catch(...)
1230     {
1231        Glib::exception_handlers_invoke();
1232     }
1233   }
1234 
1235   using RType = gboolean;
1236   return RType();
1237 }
1238 
Widget_signal_event_notify_callback(GtkWidget * self,GdkEvent * p0,void * data)1239 static gboolean Widget_signal_event_notify_callback(GtkWidget* self, GdkEvent* p0, void* data)
1240 {
1241   using namespace Gtk;
1242   using SlotType = sigc::slot< void,GdkEvent* >;
1243 
1244   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1245   // Do not try to call a signal on a disassociated wrapper.
1246   if(obj)
1247   {
1248     try
1249     {
1250       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1251         (*static_cast<SlotType*>(slot))(p0);
1252     }
1253     catch(...)
1254     {
1255       Glib::exception_handlers_invoke();
1256     }
1257   }
1258 
1259   using RType = gboolean;
1260   return RType();
1261 }
1262 
1263 static const Glib::SignalProxyInfo Widget_signal_event_info =
1264 {
1265   "event",
1266   (GCallback) &Widget_signal_event_callback,
1267   (GCallback) &Widget_signal_event_notify_callback
1268 };
1269 
1270 
Widget_signal_event_after_callback(GtkWidget * self,GdkEvent * p0,void * data)1271 static void Widget_signal_event_after_callback(GtkWidget* self, GdkEvent* p0,void* data)
1272 {
1273   using namespace Gtk;
1274   using SlotType = sigc::slot< void,GdkEvent* >;
1275 
1276   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1277   // Do not try to call a signal on a disassociated wrapper.
1278   if(obj)
1279   {
1280     try
1281     {
1282       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1283         (*static_cast<SlotType*>(slot))(p0);
1284     }
1285     catch(...)
1286     {
1287        Glib::exception_handlers_invoke();
1288     }
1289   }
1290 }
1291 
1292 static const Glib::SignalProxyInfo Widget_signal_event_after_info =
1293 {
1294   "event_after",
1295   (GCallback) &Widget_signal_event_after_callback,
1296   (GCallback) &Widget_signal_event_after_callback
1297 };
1298 
1299 
Widget_signal_button_press_event_callback(GtkWidget * self,GdkEventButton * p0,void * data)1300 static gboolean Widget_signal_button_press_event_callback(GtkWidget* self, GdkEventButton* p0,void* data)
1301 {
1302   using namespace Gtk;
1303   using SlotType = sigc::slot< bool,GdkEventButton* >;
1304 
1305   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1306   // Do not try to call a signal on a disassociated wrapper.
1307   if(obj)
1308   {
1309     try
1310     {
1311       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1312         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1313     }
1314     catch(...)
1315     {
1316        Glib::exception_handlers_invoke();
1317     }
1318   }
1319 
1320   using RType = gboolean;
1321   return RType();
1322 }
1323 
Widget_signal_button_press_event_notify_callback(GtkWidget * self,GdkEventButton * p0,void * data)1324 static gboolean Widget_signal_button_press_event_notify_callback(GtkWidget* self, GdkEventButton* p0, void* data)
1325 {
1326   using namespace Gtk;
1327   using SlotType = sigc::slot< void,GdkEventButton* >;
1328 
1329   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1330   // Do not try to call a signal on a disassociated wrapper.
1331   if(obj)
1332   {
1333     try
1334     {
1335       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1336         (*static_cast<SlotType*>(slot))(p0);
1337     }
1338     catch(...)
1339     {
1340       Glib::exception_handlers_invoke();
1341     }
1342   }
1343 
1344   using RType = gboolean;
1345   return RType();
1346 }
1347 
1348 static const Glib::SignalProxyInfo Widget_signal_button_press_event_info =
1349 {
1350   "button_press_event",
1351   (GCallback) &Widget_signal_button_press_event_callback,
1352   (GCallback) &Widget_signal_button_press_event_notify_callback
1353 };
1354 
1355 
Widget_signal_button_release_event_callback(GtkWidget * self,GdkEventButton * p0,void * data)1356 static gboolean Widget_signal_button_release_event_callback(GtkWidget* self, GdkEventButton* p0,void* data)
1357 {
1358   using namespace Gtk;
1359   using SlotType = sigc::slot< bool,GdkEventButton* >;
1360 
1361   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1362   // Do not try to call a signal on a disassociated wrapper.
1363   if(obj)
1364   {
1365     try
1366     {
1367       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1368         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1369     }
1370     catch(...)
1371     {
1372        Glib::exception_handlers_invoke();
1373     }
1374   }
1375 
1376   using RType = gboolean;
1377   return RType();
1378 }
1379 
Widget_signal_button_release_event_notify_callback(GtkWidget * self,GdkEventButton * p0,void * data)1380 static gboolean Widget_signal_button_release_event_notify_callback(GtkWidget* self, GdkEventButton* p0, void* data)
1381 {
1382   using namespace Gtk;
1383   using SlotType = sigc::slot< void,GdkEventButton* >;
1384 
1385   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1386   // Do not try to call a signal on a disassociated wrapper.
1387   if(obj)
1388   {
1389     try
1390     {
1391       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1392         (*static_cast<SlotType*>(slot))(p0);
1393     }
1394     catch(...)
1395     {
1396       Glib::exception_handlers_invoke();
1397     }
1398   }
1399 
1400   using RType = gboolean;
1401   return RType();
1402 }
1403 
1404 static const Glib::SignalProxyInfo Widget_signal_button_release_event_info =
1405 {
1406   "button_release_event",
1407   (GCallback) &Widget_signal_button_release_event_callback,
1408   (GCallback) &Widget_signal_button_release_event_notify_callback
1409 };
1410 
1411 
Widget_signal_scroll_event_callback(GtkWidget * self,GdkEventScroll * p0,void * data)1412 static gboolean Widget_signal_scroll_event_callback(GtkWidget* self, GdkEventScroll* p0,void* data)
1413 {
1414   using namespace Gtk;
1415   using SlotType = sigc::slot< bool,GdkEventScroll* >;
1416 
1417   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1418   // Do not try to call a signal on a disassociated wrapper.
1419   if(obj)
1420   {
1421     try
1422     {
1423       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1424         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1425     }
1426     catch(...)
1427     {
1428        Glib::exception_handlers_invoke();
1429     }
1430   }
1431 
1432   using RType = gboolean;
1433   return RType();
1434 }
1435 
Widget_signal_scroll_event_notify_callback(GtkWidget * self,GdkEventScroll * p0,void * data)1436 static gboolean Widget_signal_scroll_event_notify_callback(GtkWidget* self, GdkEventScroll* p0, void* data)
1437 {
1438   using namespace Gtk;
1439   using SlotType = sigc::slot< void,GdkEventScroll* >;
1440 
1441   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1442   // Do not try to call a signal on a disassociated wrapper.
1443   if(obj)
1444   {
1445     try
1446     {
1447       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1448         (*static_cast<SlotType*>(slot))(p0);
1449     }
1450     catch(...)
1451     {
1452       Glib::exception_handlers_invoke();
1453     }
1454   }
1455 
1456   using RType = gboolean;
1457   return RType();
1458 }
1459 
1460 static const Glib::SignalProxyInfo Widget_signal_scroll_event_info =
1461 {
1462   "scroll_event",
1463   (GCallback) &Widget_signal_scroll_event_callback,
1464   (GCallback) &Widget_signal_scroll_event_notify_callback
1465 };
1466 
1467 
Widget_signal_motion_notify_event_callback(GtkWidget * self,GdkEventMotion * p0,void * data)1468 static gboolean Widget_signal_motion_notify_event_callback(GtkWidget* self, GdkEventMotion* p0,void* data)
1469 {
1470   using namespace Gtk;
1471   using SlotType = sigc::slot< bool,GdkEventMotion* >;
1472 
1473   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1474   // Do not try to call a signal on a disassociated wrapper.
1475   if(obj)
1476   {
1477     try
1478     {
1479       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1480         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1481     }
1482     catch(...)
1483     {
1484        Glib::exception_handlers_invoke();
1485     }
1486   }
1487 
1488   using RType = gboolean;
1489   return RType();
1490 }
1491 
Widget_signal_motion_notify_event_notify_callback(GtkWidget * self,GdkEventMotion * p0,void * data)1492 static gboolean Widget_signal_motion_notify_event_notify_callback(GtkWidget* self, GdkEventMotion* p0, void* data)
1493 {
1494   using namespace Gtk;
1495   using SlotType = sigc::slot< void,GdkEventMotion* >;
1496 
1497   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1498   // Do not try to call a signal on a disassociated wrapper.
1499   if(obj)
1500   {
1501     try
1502     {
1503       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1504         (*static_cast<SlotType*>(slot))(p0);
1505     }
1506     catch(...)
1507     {
1508       Glib::exception_handlers_invoke();
1509     }
1510   }
1511 
1512   using RType = gboolean;
1513   return RType();
1514 }
1515 
1516 static const Glib::SignalProxyInfo Widget_signal_motion_notify_event_info =
1517 {
1518   "motion_notify_event",
1519   (GCallback) &Widget_signal_motion_notify_event_callback,
1520   (GCallback) &Widget_signal_motion_notify_event_notify_callback
1521 };
1522 
1523 
Widget_signal_delete_event_callback(GtkWidget * self,GdkEventAny * p0,void * data)1524 static gboolean Widget_signal_delete_event_callback(GtkWidget* self, GdkEventAny* p0,void* data)
1525 {
1526   using namespace Gtk;
1527   using SlotType = sigc::slot< bool,GdkEventAny* >;
1528 
1529   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1530   // Do not try to call a signal on a disassociated wrapper.
1531   if(obj)
1532   {
1533     try
1534     {
1535       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1536         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1537     }
1538     catch(...)
1539     {
1540        Glib::exception_handlers_invoke();
1541     }
1542   }
1543 
1544   using RType = gboolean;
1545   return RType();
1546 }
1547 
Widget_signal_delete_event_notify_callback(GtkWidget * self,GdkEventAny * p0,void * data)1548 static gboolean Widget_signal_delete_event_notify_callback(GtkWidget* self, GdkEventAny* p0, void* data)
1549 {
1550   using namespace Gtk;
1551   using SlotType = sigc::slot< void,GdkEventAny* >;
1552 
1553   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1554   // Do not try to call a signal on a disassociated wrapper.
1555   if(obj)
1556   {
1557     try
1558     {
1559       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1560         (*static_cast<SlotType*>(slot))(p0);
1561     }
1562     catch(...)
1563     {
1564       Glib::exception_handlers_invoke();
1565     }
1566   }
1567 
1568   using RType = gboolean;
1569   return RType();
1570 }
1571 
1572 static const Glib::SignalProxyInfo Widget_signal_delete_event_info =
1573 {
1574   "delete_event",
1575   (GCallback) &Widget_signal_delete_event_callback,
1576   (GCallback) &Widget_signal_delete_event_notify_callback
1577 };
1578 
1579 
Widget_signal_draw_callback(GtkWidget * self,cairo_t * p0,void * data)1580 static gboolean Widget_signal_draw_callback(GtkWidget* self, cairo_t* p0,void* data)
1581 {
1582   using namespace Gtk;
1583   using SlotType = sigc::slot< bool,const ::Cairo::RefPtr< ::Cairo::Context>& >;
1584 
1585   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1586   // Do not try to call a signal on a disassociated wrapper.
1587   if(obj)
1588   {
1589     try
1590     {
1591       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1592         return static_cast<int>((*static_cast<SlotType*>(slot))(::Cairo::RefPtr< ::Cairo::Context>(new ::Cairo::Context(p0, false /* has_reference */))
1593 ));
1594     }
1595     catch(...)
1596     {
1597        Glib::exception_handlers_invoke();
1598     }
1599   }
1600 
1601   using RType = gboolean;
1602   return RType();
1603 }
1604 
Widget_signal_draw_notify_callback(GtkWidget * self,cairo_t * p0,void * data)1605 static gboolean Widget_signal_draw_notify_callback(GtkWidget* self, cairo_t* p0, void* data)
1606 {
1607   using namespace Gtk;
1608   using SlotType = sigc::slot< void,const ::Cairo::RefPtr< ::Cairo::Context>& >;
1609 
1610   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1611   // Do not try to call a signal on a disassociated wrapper.
1612   if(obj)
1613   {
1614     try
1615     {
1616       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1617         (*static_cast<SlotType*>(slot))(::Cairo::RefPtr< ::Cairo::Context>(new ::Cairo::Context(p0, false /* has_reference */))
1618 );
1619     }
1620     catch(...)
1621     {
1622       Glib::exception_handlers_invoke();
1623     }
1624   }
1625 
1626   using RType = gboolean;
1627   return RType();
1628 }
1629 
1630 static const Glib::SignalProxyInfo Widget_signal_draw_info =
1631 {
1632   "draw",
1633   (GCallback) &Widget_signal_draw_callback,
1634   (GCallback) &Widget_signal_draw_notify_callback
1635 };
1636 
1637 
Widget_signal_key_press_event_callback(GtkWidget * self,GdkEventKey * p0,void * data)1638 static gboolean Widget_signal_key_press_event_callback(GtkWidget* self, GdkEventKey* p0,void* data)
1639 {
1640   using namespace Gtk;
1641   using SlotType = sigc::slot< bool,GdkEventKey* >;
1642 
1643   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1644   // Do not try to call a signal on a disassociated wrapper.
1645   if(obj)
1646   {
1647     try
1648     {
1649       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1650         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1651     }
1652     catch(...)
1653     {
1654        Glib::exception_handlers_invoke();
1655     }
1656   }
1657 
1658   using RType = gboolean;
1659   return RType();
1660 }
1661 
Widget_signal_key_press_event_notify_callback(GtkWidget * self,GdkEventKey * p0,void * data)1662 static gboolean Widget_signal_key_press_event_notify_callback(GtkWidget* self, GdkEventKey* p0, void* data)
1663 {
1664   using namespace Gtk;
1665   using SlotType = sigc::slot< void,GdkEventKey* >;
1666 
1667   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1668   // Do not try to call a signal on a disassociated wrapper.
1669   if(obj)
1670   {
1671     try
1672     {
1673       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1674         (*static_cast<SlotType*>(slot))(p0);
1675     }
1676     catch(...)
1677     {
1678       Glib::exception_handlers_invoke();
1679     }
1680   }
1681 
1682   using RType = gboolean;
1683   return RType();
1684 }
1685 
1686 static const Glib::SignalProxyInfo Widget_signal_key_press_event_info =
1687 {
1688   "key_press_event",
1689   (GCallback) &Widget_signal_key_press_event_callback,
1690   (GCallback) &Widget_signal_key_press_event_notify_callback
1691 };
1692 
1693 
Widget_signal_key_release_event_callback(GtkWidget * self,GdkEventKey * p0,void * data)1694 static gboolean Widget_signal_key_release_event_callback(GtkWidget* self, GdkEventKey* p0,void* data)
1695 {
1696   using namespace Gtk;
1697   using SlotType = sigc::slot< bool,GdkEventKey* >;
1698 
1699   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1700   // Do not try to call a signal on a disassociated wrapper.
1701   if(obj)
1702   {
1703     try
1704     {
1705       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1706         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1707     }
1708     catch(...)
1709     {
1710        Glib::exception_handlers_invoke();
1711     }
1712   }
1713 
1714   using RType = gboolean;
1715   return RType();
1716 }
1717 
Widget_signal_key_release_event_notify_callback(GtkWidget * self,GdkEventKey * p0,void * data)1718 static gboolean Widget_signal_key_release_event_notify_callback(GtkWidget* self, GdkEventKey* p0, void* data)
1719 {
1720   using namespace Gtk;
1721   using SlotType = sigc::slot< void,GdkEventKey* >;
1722 
1723   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1724   // Do not try to call a signal on a disassociated wrapper.
1725   if(obj)
1726   {
1727     try
1728     {
1729       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1730         (*static_cast<SlotType*>(slot))(p0);
1731     }
1732     catch(...)
1733     {
1734       Glib::exception_handlers_invoke();
1735     }
1736   }
1737 
1738   using RType = gboolean;
1739   return RType();
1740 }
1741 
1742 static const Glib::SignalProxyInfo Widget_signal_key_release_event_info =
1743 {
1744   "key_release_event",
1745   (GCallback) &Widget_signal_key_release_event_callback,
1746   (GCallback) &Widget_signal_key_release_event_notify_callback
1747 };
1748 
1749 
Widget_signal_enter_notify_event_callback(GtkWidget * self,GdkEventCrossing * p0,void * data)1750 static gboolean Widget_signal_enter_notify_event_callback(GtkWidget* self, GdkEventCrossing* p0,void* data)
1751 {
1752   using namespace Gtk;
1753   using SlotType = sigc::slot< bool,GdkEventCrossing* >;
1754 
1755   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1756   // Do not try to call a signal on a disassociated wrapper.
1757   if(obj)
1758   {
1759     try
1760     {
1761       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1762         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1763     }
1764     catch(...)
1765     {
1766        Glib::exception_handlers_invoke();
1767     }
1768   }
1769 
1770   using RType = gboolean;
1771   return RType();
1772 }
1773 
Widget_signal_enter_notify_event_notify_callback(GtkWidget * self,GdkEventCrossing * p0,void * data)1774 static gboolean Widget_signal_enter_notify_event_notify_callback(GtkWidget* self, GdkEventCrossing* p0, void* data)
1775 {
1776   using namespace Gtk;
1777   using SlotType = sigc::slot< void,GdkEventCrossing* >;
1778 
1779   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1780   // Do not try to call a signal on a disassociated wrapper.
1781   if(obj)
1782   {
1783     try
1784     {
1785       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1786         (*static_cast<SlotType*>(slot))(p0);
1787     }
1788     catch(...)
1789     {
1790       Glib::exception_handlers_invoke();
1791     }
1792   }
1793 
1794   using RType = gboolean;
1795   return RType();
1796 }
1797 
1798 static const Glib::SignalProxyInfo Widget_signal_enter_notify_event_info =
1799 {
1800   "enter_notify_event",
1801   (GCallback) &Widget_signal_enter_notify_event_callback,
1802   (GCallback) &Widget_signal_enter_notify_event_notify_callback
1803 };
1804 
1805 
Widget_signal_leave_notify_event_callback(GtkWidget * self,GdkEventCrossing * p0,void * data)1806 static gboolean Widget_signal_leave_notify_event_callback(GtkWidget* self, GdkEventCrossing* p0,void* data)
1807 {
1808   using namespace Gtk;
1809   using SlotType = sigc::slot< bool,GdkEventCrossing* >;
1810 
1811   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1812   // Do not try to call a signal on a disassociated wrapper.
1813   if(obj)
1814   {
1815     try
1816     {
1817       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1818         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1819     }
1820     catch(...)
1821     {
1822        Glib::exception_handlers_invoke();
1823     }
1824   }
1825 
1826   using RType = gboolean;
1827   return RType();
1828 }
1829 
Widget_signal_leave_notify_event_notify_callback(GtkWidget * self,GdkEventCrossing * p0,void * data)1830 static gboolean Widget_signal_leave_notify_event_notify_callback(GtkWidget* self, GdkEventCrossing* p0, void* data)
1831 {
1832   using namespace Gtk;
1833   using SlotType = sigc::slot< void,GdkEventCrossing* >;
1834 
1835   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1836   // Do not try to call a signal on a disassociated wrapper.
1837   if(obj)
1838   {
1839     try
1840     {
1841       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1842         (*static_cast<SlotType*>(slot))(p0);
1843     }
1844     catch(...)
1845     {
1846       Glib::exception_handlers_invoke();
1847     }
1848   }
1849 
1850   using RType = gboolean;
1851   return RType();
1852 }
1853 
1854 static const Glib::SignalProxyInfo Widget_signal_leave_notify_event_info =
1855 {
1856   "leave_notify_event",
1857   (GCallback) &Widget_signal_leave_notify_event_callback,
1858   (GCallback) &Widget_signal_leave_notify_event_notify_callback
1859 };
1860 
1861 
Widget_signal_configure_event_callback(GtkWidget * self,GdkEventConfigure * p0,void * data)1862 static gboolean Widget_signal_configure_event_callback(GtkWidget* self, GdkEventConfigure* p0,void* data)
1863 {
1864   using namespace Gtk;
1865   using SlotType = sigc::slot< bool,GdkEventConfigure* >;
1866 
1867   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1868   // Do not try to call a signal on a disassociated wrapper.
1869   if(obj)
1870   {
1871     try
1872     {
1873       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1874         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1875     }
1876     catch(...)
1877     {
1878        Glib::exception_handlers_invoke();
1879     }
1880   }
1881 
1882   using RType = gboolean;
1883   return RType();
1884 }
1885 
Widget_signal_configure_event_notify_callback(GtkWidget * self,GdkEventConfigure * p0,void * data)1886 static gboolean Widget_signal_configure_event_notify_callback(GtkWidget* self, GdkEventConfigure* p0, void* data)
1887 {
1888   using namespace Gtk;
1889   using SlotType = sigc::slot< void,GdkEventConfigure* >;
1890 
1891   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1892   // Do not try to call a signal on a disassociated wrapper.
1893   if(obj)
1894   {
1895     try
1896     {
1897       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1898         (*static_cast<SlotType*>(slot))(p0);
1899     }
1900     catch(...)
1901     {
1902       Glib::exception_handlers_invoke();
1903     }
1904   }
1905 
1906   using RType = gboolean;
1907   return RType();
1908 }
1909 
1910 static const Glib::SignalProxyInfo Widget_signal_configure_event_info =
1911 {
1912   "configure_event",
1913   (GCallback) &Widget_signal_configure_event_callback,
1914   (GCallback) &Widget_signal_configure_event_notify_callback
1915 };
1916 
1917 
Widget_signal_focus_in_event_callback(GtkWidget * self,GdkEventFocus * p0,void * data)1918 static gboolean Widget_signal_focus_in_event_callback(GtkWidget* self, GdkEventFocus* p0,void* data)
1919 {
1920   using namespace Gtk;
1921   using SlotType = sigc::slot< bool,GdkEventFocus* >;
1922 
1923   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1924   // Do not try to call a signal on a disassociated wrapper.
1925   if(obj)
1926   {
1927     try
1928     {
1929       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1930         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1931     }
1932     catch(...)
1933     {
1934        Glib::exception_handlers_invoke();
1935     }
1936   }
1937 
1938   using RType = gboolean;
1939   return RType();
1940 }
1941 
Widget_signal_focus_in_event_notify_callback(GtkWidget * self,GdkEventFocus * p0,void * data)1942 static gboolean Widget_signal_focus_in_event_notify_callback(GtkWidget* self, GdkEventFocus* p0, void* data)
1943 {
1944   using namespace Gtk;
1945   using SlotType = sigc::slot< void,GdkEventFocus* >;
1946 
1947   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1948   // Do not try to call a signal on a disassociated wrapper.
1949   if(obj)
1950   {
1951     try
1952     {
1953       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1954         (*static_cast<SlotType*>(slot))(p0);
1955     }
1956     catch(...)
1957     {
1958       Glib::exception_handlers_invoke();
1959     }
1960   }
1961 
1962   using RType = gboolean;
1963   return RType();
1964 }
1965 
1966 static const Glib::SignalProxyInfo Widget_signal_focus_in_event_info =
1967 {
1968   "focus_in_event",
1969   (GCallback) &Widget_signal_focus_in_event_callback,
1970   (GCallback) &Widget_signal_focus_in_event_notify_callback
1971 };
1972 
1973 
Widget_signal_focus_out_event_callback(GtkWidget * self,GdkEventFocus * p0,void * data)1974 static gboolean Widget_signal_focus_out_event_callback(GtkWidget* self, GdkEventFocus* p0,void* data)
1975 {
1976   using namespace Gtk;
1977   using SlotType = sigc::slot< bool,GdkEventFocus* >;
1978 
1979   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
1980   // Do not try to call a signal on a disassociated wrapper.
1981   if(obj)
1982   {
1983     try
1984     {
1985       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
1986         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
1987     }
1988     catch(...)
1989     {
1990        Glib::exception_handlers_invoke();
1991     }
1992   }
1993 
1994   using RType = gboolean;
1995   return RType();
1996 }
1997 
Widget_signal_focus_out_event_notify_callback(GtkWidget * self,GdkEventFocus * p0,void * data)1998 static gboolean Widget_signal_focus_out_event_notify_callback(GtkWidget* self, GdkEventFocus* p0, void* data)
1999 {
2000   using namespace Gtk;
2001   using SlotType = sigc::slot< void,GdkEventFocus* >;
2002 
2003   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2004   // Do not try to call a signal on a disassociated wrapper.
2005   if(obj)
2006   {
2007     try
2008     {
2009       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2010         (*static_cast<SlotType*>(slot))(p0);
2011     }
2012     catch(...)
2013     {
2014       Glib::exception_handlers_invoke();
2015     }
2016   }
2017 
2018   using RType = gboolean;
2019   return RType();
2020 }
2021 
2022 static const Glib::SignalProxyInfo Widget_signal_focus_out_event_info =
2023 {
2024   "focus_out_event",
2025   (GCallback) &Widget_signal_focus_out_event_callback,
2026   (GCallback) &Widget_signal_focus_out_event_notify_callback
2027 };
2028 
2029 
Widget_signal_map_event_callback(GtkWidget * self,GdkEventAny * p0,void * data)2030 static gboolean Widget_signal_map_event_callback(GtkWidget* self, GdkEventAny* p0,void* data)
2031 {
2032   using namespace Gtk;
2033   using SlotType = sigc::slot< bool,GdkEventAny* >;
2034 
2035   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2036   // Do not try to call a signal on a disassociated wrapper.
2037   if(obj)
2038   {
2039     try
2040     {
2041       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2042         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
2043     }
2044     catch(...)
2045     {
2046        Glib::exception_handlers_invoke();
2047     }
2048   }
2049 
2050   using RType = gboolean;
2051   return RType();
2052 }
2053 
Widget_signal_map_event_notify_callback(GtkWidget * self,GdkEventAny * p0,void * data)2054 static gboolean Widget_signal_map_event_notify_callback(GtkWidget* self, GdkEventAny* p0, void* data)
2055 {
2056   using namespace Gtk;
2057   using SlotType = sigc::slot< void,GdkEventAny* >;
2058 
2059   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2060   // Do not try to call a signal on a disassociated wrapper.
2061   if(obj)
2062   {
2063     try
2064     {
2065       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2066         (*static_cast<SlotType*>(slot))(p0);
2067     }
2068     catch(...)
2069     {
2070       Glib::exception_handlers_invoke();
2071     }
2072   }
2073 
2074   using RType = gboolean;
2075   return RType();
2076 }
2077 
2078 static const Glib::SignalProxyInfo Widget_signal_map_event_info =
2079 {
2080   "map_event",
2081   (GCallback) &Widget_signal_map_event_callback,
2082   (GCallback) &Widget_signal_map_event_notify_callback
2083 };
2084 
2085 
Widget_signal_unmap_event_callback(GtkWidget * self,GdkEventAny * p0,void * data)2086 static gboolean Widget_signal_unmap_event_callback(GtkWidget* self, GdkEventAny* p0,void* data)
2087 {
2088   using namespace Gtk;
2089   using SlotType = sigc::slot< bool,GdkEventAny* >;
2090 
2091   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2092   // Do not try to call a signal on a disassociated wrapper.
2093   if(obj)
2094   {
2095     try
2096     {
2097       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2098         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
2099     }
2100     catch(...)
2101     {
2102        Glib::exception_handlers_invoke();
2103     }
2104   }
2105 
2106   using RType = gboolean;
2107   return RType();
2108 }
2109 
Widget_signal_unmap_event_notify_callback(GtkWidget * self,GdkEventAny * p0,void * data)2110 static gboolean Widget_signal_unmap_event_notify_callback(GtkWidget* self, GdkEventAny* p0, void* data)
2111 {
2112   using namespace Gtk;
2113   using SlotType = sigc::slot< void,GdkEventAny* >;
2114 
2115   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2116   // Do not try to call a signal on a disassociated wrapper.
2117   if(obj)
2118   {
2119     try
2120     {
2121       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2122         (*static_cast<SlotType*>(slot))(p0);
2123     }
2124     catch(...)
2125     {
2126       Glib::exception_handlers_invoke();
2127     }
2128   }
2129 
2130   using RType = gboolean;
2131   return RType();
2132 }
2133 
2134 static const Glib::SignalProxyInfo Widget_signal_unmap_event_info =
2135 {
2136   "unmap_event",
2137   (GCallback) &Widget_signal_unmap_event_callback,
2138   (GCallback) &Widget_signal_unmap_event_notify_callback
2139 };
2140 
2141 
Widget_signal_property_notify_event_callback(GtkWidget * self,GdkEventProperty * p0,void * data)2142 static gboolean Widget_signal_property_notify_event_callback(GtkWidget* self, GdkEventProperty* p0,void* data)
2143 {
2144   using namespace Gtk;
2145   using SlotType = sigc::slot< bool,GdkEventProperty* >;
2146 
2147   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2148   // Do not try to call a signal on a disassociated wrapper.
2149   if(obj)
2150   {
2151     try
2152     {
2153       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2154         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
2155     }
2156     catch(...)
2157     {
2158        Glib::exception_handlers_invoke();
2159     }
2160   }
2161 
2162   using RType = gboolean;
2163   return RType();
2164 }
2165 
Widget_signal_property_notify_event_notify_callback(GtkWidget * self,GdkEventProperty * p0,void * data)2166 static gboolean Widget_signal_property_notify_event_notify_callback(GtkWidget* self, GdkEventProperty* p0, void* data)
2167 {
2168   using namespace Gtk;
2169   using SlotType = sigc::slot< void,GdkEventProperty* >;
2170 
2171   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2172   // Do not try to call a signal on a disassociated wrapper.
2173   if(obj)
2174   {
2175     try
2176     {
2177       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2178         (*static_cast<SlotType*>(slot))(p0);
2179     }
2180     catch(...)
2181     {
2182       Glib::exception_handlers_invoke();
2183     }
2184   }
2185 
2186   using RType = gboolean;
2187   return RType();
2188 }
2189 
2190 static const Glib::SignalProxyInfo Widget_signal_property_notify_event_info =
2191 {
2192   "property_notify_event",
2193   (GCallback) &Widget_signal_property_notify_event_callback,
2194   (GCallback) &Widget_signal_property_notify_event_notify_callback
2195 };
2196 
2197 
Widget_signal_selection_clear_event_callback(GtkWidget * self,GdkEventSelection * p0,void * data)2198 static gboolean Widget_signal_selection_clear_event_callback(GtkWidget* self, GdkEventSelection* p0,void* data)
2199 {
2200   using namespace Gtk;
2201   using SlotType = sigc::slot< bool,GdkEventSelection* >;
2202 
2203   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2204   // Do not try to call a signal on a disassociated wrapper.
2205   if(obj)
2206   {
2207     try
2208     {
2209       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2210         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
2211     }
2212     catch(...)
2213     {
2214        Glib::exception_handlers_invoke();
2215     }
2216   }
2217 
2218   using RType = gboolean;
2219   return RType();
2220 }
2221 
Widget_signal_selection_clear_event_notify_callback(GtkWidget * self,GdkEventSelection * p0,void * data)2222 static gboolean Widget_signal_selection_clear_event_notify_callback(GtkWidget* self, GdkEventSelection* p0, void* data)
2223 {
2224   using namespace Gtk;
2225   using SlotType = sigc::slot< void,GdkEventSelection* >;
2226 
2227   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2228   // Do not try to call a signal on a disassociated wrapper.
2229   if(obj)
2230   {
2231     try
2232     {
2233       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2234         (*static_cast<SlotType*>(slot))(p0);
2235     }
2236     catch(...)
2237     {
2238       Glib::exception_handlers_invoke();
2239     }
2240   }
2241 
2242   using RType = gboolean;
2243   return RType();
2244 }
2245 
2246 static const Glib::SignalProxyInfo Widget_signal_selection_clear_event_info =
2247 {
2248   "selection_clear_event",
2249   (GCallback) &Widget_signal_selection_clear_event_callback,
2250   (GCallback) &Widget_signal_selection_clear_event_notify_callback
2251 };
2252 
2253 
Widget_signal_selection_request_event_callback(GtkWidget * self,GdkEventSelection * p0,void * data)2254 static gboolean Widget_signal_selection_request_event_callback(GtkWidget* self, GdkEventSelection* p0,void* data)
2255 {
2256   using namespace Gtk;
2257   using SlotType = sigc::slot< bool,GdkEventSelection* >;
2258 
2259   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2260   // Do not try to call a signal on a disassociated wrapper.
2261   if(obj)
2262   {
2263     try
2264     {
2265       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2266         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
2267     }
2268     catch(...)
2269     {
2270        Glib::exception_handlers_invoke();
2271     }
2272   }
2273 
2274   using RType = gboolean;
2275   return RType();
2276 }
2277 
Widget_signal_selection_request_event_notify_callback(GtkWidget * self,GdkEventSelection * p0,void * data)2278 static gboolean Widget_signal_selection_request_event_notify_callback(GtkWidget* self, GdkEventSelection* p0, void* data)
2279 {
2280   using namespace Gtk;
2281   using SlotType = sigc::slot< void,GdkEventSelection* >;
2282 
2283   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2284   // Do not try to call a signal on a disassociated wrapper.
2285   if(obj)
2286   {
2287     try
2288     {
2289       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2290         (*static_cast<SlotType*>(slot))(p0);
2291     }
2292     catch(...)
2293     {
2294       Glib::exception_handlers_invoke();
2295     }
2296   }
2297 
2298   using RType = gboolean;
2299   return RType();
2300 }
2301 
2302 static const Glib::SignalProxyInfo Widget_signal_selection_request_event_info =
2303 {
2304   "selection_request_event",
2305   (GCallback) &Widget_signal_selection_request_event_callback,
2306   (GCallback) &Widget_signal_selection_request_event_notify_callback
2307 };
2308 
2309 
Widget_signal_selection_notify_event_callback(GtkWidget * self,GdkEventSelection * p0,void * data)2310 static gboolean Widget_signal_selection_notify_event_callback(GtkWidget* self, GdkEventSelection* p0,void* data)
2311 {
2312   using namespace Gtk;
2313   using SlotType = sigc::slot< bool,GdkEventSelection* >;
2314 
2315   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2316   // Do not try to call a signal on a disassociated wrapper.
2317   if(obj)
2318   {
2319     try
2320     {
2321       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2322         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
2323     }
2324     catch(...)
2325     {
2326        Glib::exception_handlers_invoke();
2327     }
2328   }
2329 
2330   using RType = gboolean;
2331   return RType();
2332 }
2333 
Widget_signal_selection_notify_event_notify_callback(GtkWidget * self,GdkEventSelection * p0,void * data)2334 static gboolean Widget_signal_selection_notify_event_notify_callback(GtkWidget* self, GdkEventSelection* p0, void* data)
2335 {
2336   using namespace Gtk;
2337   using SlotType = sigc::slot< void,GdkEventSelection* >;
2338 
2339   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2340   // Do not try to call a signal on a disassociated wrapper.
2341   if(obj)
2342   {
2343     try
2344     {
2345       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2346         (*static_cast<SlotType*>(slot))(p0);
2347     }
2348     catch(...)
2349     {
2350       Glib::exception_handlers_invoke();
2351     }
2352   }
2353 
2354   using RType = gboolean;
2355   return RType();
2356 }
2357 
2358 static const Glib::SignalProxyInfo Widget_signal_selection_notify_event_info =
2359 {
2360   "selection_notify_event",
2361   (GCallback) &Widget_signal_selection_notify_event_callback,
2362   (GCallback) &Widget_signal_selection_notify_event_notify_callback
2363 };
2364 
2365 
Widget_signal_proximity_in_event_callback(GtkWidget * self,GdkEventProximity * p0,void * data)2366 static gboolean Widget_signal_proximity_in_event_callback(GtkWidget* self, GdkEventProximity* p0,void* data)
2367 {
2368   using namespace Gtk;
2369   using SlotType = sigc::slot< bool,GdkEventProximity* >;
2370 
2371   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2372   // Do not try to call a signal on a disassociated wrapper.
2373   if(obj)
2374   {
2375     try
2376     {
2377       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2378         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
2379     }
2380     catch(...)
2381     {
2382        Glib::exception_handlers_invoke();
2383     }
2384   }
2385 
2386   using RType = gboolean;
2387   return RType();
2388 }
2389 
Widget_signal_proximity_in_event_notify_callback(GtkWidget * self,GdkEventProximity * p0,void * data)2390 static gboolean Widget_signal_proximity_in_event_notify_callback(GtkWidget* self, GdkEventProximity* p0, void* data)
2391 {
2392   using namespace Gtk;
2393   using SlotType = sigc::slot< void,GdkEventProximity* >;
2394 
2395   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2396   // Do not try to call a signal on a disassociated wrapper.
2397   if(obj)
2398   {
2399     try
2400     {
2401       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2402         (*static_cast<SlotType*>(slot))(p0);
2403     }
2404     catch(...)
2405     {
2406       Glib::exception_handlers_invoke();
2407     }
2408   }
2409 
2410   using RType = gboolean;
2411   return RType();
2412 }
2413 
2414 static const Glib::SignalProxyInfo Widget_signal_proximity_in_event_info =
2415 {
2416   "proximity_in_event",
2417   (GCallback) &Widget_signal_proximity_in_event_callback,
2418   (GCallback) &Widget_signal_proximity_in_event_notify_callback
2419 };
2420 
2421 
Widget_signal_proximity_out_event_callback(GtkWidget * self,GdkEventProximity * p0,void * data)2422 static gboolean Widget_signal_proximity_out_event_callback(GtkWidget* self, GdkEventProximity* p0,void* data)
2423 {
2424   using namespace Gtk;
2425   using SlotType = sigc::slot< bool,GdkEventProximity* >;
2426 
2427   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2428   // Do not try to call a signal on a disassociated wrapper.
2429   if(obj)
2430   {
2431     try
2432     {
2433       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2434         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
2435     }
2436     catch(...)
2437     {
2438        Glib::exception_handlers_invoke();
2439     }
2440   }
2441 
2442   using RType = gboolean;
2443   return RType();
2444 }
2445 
Widget_signal_proximity_out_event_notify_callback(GtkWidget * self,GdkEventProximity * p0,void * data)2446 static gboolean Widget_signal_proximity_out_event_notify_callback(GtkWidget* self, GdkEventProximity* p0, void* data)
2447 {
2448   using namespace Gtk;
2449   using SlotType = sigc::slot< void,GdkEventProximity* >;
2450 
2451   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2452   // Do not try to call a signal on a disassociated wrapper.
2453   if(obj)
2454   {
2455     try
2456     {
2457       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2458         (*static_cast<SlotType*>(slot))(p0);
2459     }
2460     catch(...)
2461     {
2462       Glib::exception_handlers_invoke();
2463     }
2464   }
2465 
2466   using RType = gboolean;
2467   return RType();
2468 }
2469 
2470 static const Glib::SignalProxyInfo Widget_signal_proximity_out_event_info =
2471 {
2472   "proximity_out_event",
2473   (GCallback) &Widget_signal_proximity_out_event_callback,
2474   (GCallback) &Widget_signal_proximity_out_event_notify_callback
2475 };
2476 
2477 
2478 #ifndef GTKMM_DISABLE_DEPRECATED
2479 
2480 
Widget_signal_visibility_notify_event_callback(GtkWidget * self,GdkEventVisibility * p0,void * data)2481 static gboolean Widget_signal_visibility_notify_event_callback(GtkWidget* self, GdkEventVisibility* p0,void* data)
2482 {
2483   using namespace Gtk;
2484   using SlotType = sigc::slot< bool,GdkEventVisibility* >;
2485 
2486   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2487   // Do not try to call a signal on a disassociated wrapper.
2488   if(obj)
2489   {
2490     try
2491     {
2492       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2493         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
2494     }
2495     catch(...)
2496     {
2497        Glib::exception_handlers_invoke();
2498     }
2499   }
2500 
2501   using RType = gboolean;
2502   return RType();
2503 }
2504 
Widget_signal_visibility_notify_event_notify_callback(GtkWidget * self,GdkEventVisibility * p0,void * data)2505 static gboolean Widget_signal_visibility_notify_event_notify_callback(GtkWidget* self, GdkEventVisibility* p0, void* data)
2506 {
2507   using namespace Gtk;
2508   using SlotType = sigc::slot< void,GdkEventVisibility* >;
2509 
2510   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2511   // Do not try to call a signal on a disassociated wrapper.
2512   if(obj)
2513   {
2514     try
2515     {
2516       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2517         (*static_cast<SlotType*>(slot))(p0);
2518     }
2519     catch(...)
2520     {
2521       Glib::exception_handlers_invoke();
2522     }
2523   }
2524 
2525   using RType = gboolean;
2526   return RType();
2527 }
2528 
2529 static const Glib::SignalProxyInfo Widget_signal_visibility_notify_event_info =
2530 {
2531   "visibility_notify_event",
2532   (GCallback) &Widget_signal_visibility_notify_event_callback,
2533   (GCallback) &Widget_signal_visibility_notify_event_notify_callback
2534 };
2535 
2536 #endif // GTKMM_DISABLE_DEPRECATED
2537 
2538 
Widget_signal_window_state_event_callback(GtkWidget * self,GdkEventWindowState * p0,void * data)2539 static gboolean Widget_signal_window_state_event_callback(GtkWidget* self, GdkEventWindowState* p0,void* data)
2540 {
2541   using namespace Gtk;
2542   using SlotType = sigc::slot< bool,GdkEventWindowState* >;
2543 
2544   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2545   // Do not try to call a signal on a disassociated wrapper.
2546   if(obj)
2547   {
2548     try
2549     {
2550       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2551         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
2552     }
2553     catch(...)
2554     {
2555        Glib::exception_handlers_invoke();
2556     }
2557   }
2558 
2559   using RType = gboolean;
2560   return RType();
2561 }
2562 
Widget_signal_window_state_event_notify_callback(GtkWidget * self,GdkEventWindowState * p0,void * data)2563 static gboolean Widget_signal_window_state_event_notify_callback(GtkWidget* self, GdkEventWindowState* p0, void* data)
2564 {
2565   using namespace Gtk;
2566   using SlotType = sigc::slot< void,GdkEventWindowState* >;
2567 
2568   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2569   // Do not try to call a signal on a disassociated wrapper.
2570   if(obj)
2571   {
2572     try
2573     {
2574       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2575         (*static_cast<SlotType*>(slot))(p0);
2576     }
2577     catch(...)
2578     {
2579       Glib::exception_handlers_invoke();
2580     }
2581   }
2582 
2583   using RType = gboolean;
2584   return RType();
2585 }
2586 
2587 static const Glib::SignalProxyInfo Widget_signal_window_state_event_info =
2588 {
2589   "window_state_event",
2590   (GCallback) &Widget_signal_window_state_event_callback,
2591   (GCallback) &Widget_signal_window_state_event_notify_callback
2592 };
2593 
2594 
2595 static const Glib::SignalProxyInfo Widget_signal_selection_get_info =
2596 {
2597   "selection_get",
2598   (GCallback) &Widget_signal_selection_get_callback,
2599   (GCallback) &Widget_signal_selection_get_callback
2600 };
2601 
2602 
Widget_signal_selection_received_callback(GtkWidget * self,GtkSelectionData * p0,guint p1,void * data)2603 static void Widget_signal_selection_received_callback(GtkWidget* self, GtkSelectionData* p0,guint p1,void* data)
2604 {
2605   using namespace Gtk;
2606   using SlotType = sigc::slot< void,const SelectionData&,guint >;
2607 
2608   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2609   // Do not try to call a signal on a disassociated wrapper.
2610   if(obj)
2611   {
2612     try
2613     {
2614       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2615         (*static_cast<SlotType*>(slot))(SelectionData_WithoutOwnership(p0)
2616 , p1);
2617     }
2618     catch(...)
2619     {
2620        Glib::exception_handlers_invoke();
2621     }
2622   }
2623 }
2624 
2625 static const Glib::SignalProxyInfo Widget_signal_selection_received_info =
2626 {
2627   "selection_received",
2628   (GCallback) &Widget_signal_selection_received_callback,
2629   (GCallback) &Widget_signal_selection_received_callback
2630 };
2631 
2632 
Widget_signal_drag_begin_callback(GtkWidget * self,GdkDragContext * p0,void * data)2633 static void Widget_signal_drag_begin_callback(GtkWidget* self, GdkDragContext* p0,void* data)
2634 {
2635   using namespace Gtk;
2636   using SlotType = sigc::slot< void,const Glib::RefPtr<Gdk::DragContext>& >;
2637 
2638   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2639   // Do not try to call a signal on a disassociated wrapper.
2640   if(obj)
2641   {
2642     try
2643     {
2644       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2645         (*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2646 );
2647     }
2648     catch(...)
2649     {
2650        Glib::exception_handlers_invoke();
2651     }
2652   }
2653 }
2654 
2655 static const Glib::SignalProxyInfo Widget_signal_drag_begin_info =
2656 {
2657   "drag_begin",
2658   (GCallback) &Widget_signal_drag_begin_callback,
2659   (GCallback) &Widget_signal_drag_begin_callback
2660 };
2661 
2662 
Widget_signal_drag_end_callback(GtkWidget * self,GdkDragContext * p0,void * data)2663 static void Widget_signal_drag_end_callback(GtkWidget* self, GdkDragContext* p0,void* data)
2664 {
2665   using namespace Gtk;
2666   using SlotType = sigc::slot< void,const Glib::RefPtr<Gdk::DragContext>& >;
2667 
2668   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2669   // Do not try to call a signal on a disassociated wrapper.
2670   if(obj)
2671   {
2672     try
2673     {
2674       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2675         (*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2676 );
2677     }
2678     catch(...)
2679     {
2680        Glib::exception_handlers_invoke();
2681     }
2682   }
2683 }
2684 
2685 static const Glib::SignalProxyInfo Widget_signal_drag_end_info =
2686 {
2687   "drag_end",
2688   (GCallback) &Widget_signal_drag_end_callback,
2689   (GCallback) &Widget_signal_drag_end_callback
2690 };
2691 
2692 
2693 static const Glib::SignalProxyInfo Widget_signal_drag_data_get_info =
2694 {
2695   "drag_data_get",
2696   (GCallback) &Widget_signal_drag_data_get_callback,
2697   (GCallback) &Widget_signal_drag_data_get_callback
2698 };
2699 
2700 
Widget_signal_drag_data_delete_callback(GtkWidget * self,GdkDragContext * p0,void * data)2701 static void Widget_signal_drag_data_delete_callback(GtkWidget* self, GdkDragContext* p0,void* data)
2702 {
2703   using namespace Gtk;
2704   using SlotType = sigc::slot< void,const Glib::RefPtr<Gdk::DragContext>& >;
2705 
2706   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2707   // Do not try to call a signal on a disassociated wrapper.
2708   if(obj)
2709   {
2710     try
2711     {
2712       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2713         (*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2714 );
2715     }
2716     catch(...)
2717     {
2718        Glib::exception_handlers_invoke();
2719     }
2720   }
2721 }
2722 
2723 static const Glib::SignalProxyInfo Widget_signal_drag_data_delete_info =
2724 {
2725   "drag_data_delete",
2726   (GCallback) &Widget_signal_drag_data_delete_callback,
2727   (GCallback) &Widget_signal_drag_data_delete_callback
2728 };
2729 
2730 
Widget_signal_drag_failed_callback(GtkWidget * self,GdkDragContext * p0,GtkDragResult p1,void * data)2731 static gboolean Widget_signal_drag_failed_callback(GtkWidget* self, GdkDragContext* p0,GtkDragResult p1,void* data)
2732 {
2733   using namespace Gtk;
2734   using SlotType = sigc::slot< bool,const Glib::RefPtr<Gdk::DragContext>&,DragResult >;
2735 
2736   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2737   // Do not try to call a signal on a disassociated wrapper.
2738   if(obj)
2739   {
2740     try
2741     {
2742       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2743         return static_cast<int>((*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2744 , (DragResult)p1
2745 ));
2746     }
2747     catch(...)
2748     {
2749        Glib::exception_handlers_invoke();
2750     }
2751   }
2752 
2753   using RType = gboolean;
2754   return RType();
2755 }
2756 
Widget_signal_drag_failed_notify_callback(GtkWidget * self,GdkDragContext * p0,GtkDragResult p1,void * data)2757 static gboolean Widget_signal_drag_failed_notify_callback(GtkWidget* self, GdkDragContext* p0,GtkDragResult p1, void* data)
2758 {
2759   using namespace Gtk;
2760   using SlotType = sigc::slot< void,const Glib::RefPtr<Gdk::DragContext>&,DragResult >;
2761 
2762   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2763   // Do not try to call a signal on a disassociated wrapper.
2764   if(obj)
2765   {
2766     try
2767     {
2768       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2769         (*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2770 , (DragResult)p1
2771 );
2772     }
2773     catch(...)
2774     {
2775       Glib::exception_handlers_invoke();
2776     }
2777   }
2778 
2779   using RType = gboolean;
2780   return RType();
2781 }
2782 
2783 static const Glib::SignalProxyInfo Widget_signal_drag_failed_info =
2784 {
2785   "drag_failed",
2786   (GCallback) &Widget_signal_drag_failed_callback,
2787   (GCallback) &Widget_signal_drag_failed_notify_callback
2788 };
2789 
2790 
Widget_signal_drag_leave_callback(GtkWidget * self,GdkDragContext * p0,guint p1,void * data)2791 static void Widget_signal_drag_leave_callback(GtkWidget* self, GdkDragContext* p0,guint p1,void* data)
2792 {
2793   using namespace Gtk;
2794   using SlotType = sigc::slot< void,const Glib::RefPtr<Gdk::DragContext>&,guint >;
2795 
2796   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2797   // Do not try to call a signal on a disassociated wrapper.
2798   if(obj)
2799   {
2800     try
2801     {
2802       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2803         (*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2804 , p1);
2805     }
2806     catch(...)
2807     {
2808        Glib::exception_handlers_invoke();
2809     }
2810   }
2811 }
2812 
2813 static const Glib::SignalProxyInfo Widget_signal_drag_leave_info =
2814 {
2815   "drag_leave",
2816   (GCallback) &Widget_signal_drag_leave_callback,
2817   (GCallback) &Widget_signal_drag_leave_callback
2818 };
2819 
2820 
Widget_signal_drag_motion_callback(GtkWidget * self,GdkDragContext * p0,gint p1,gint p2,guint p3,void * data)2821 static gboolean Widget_signal_drag_motion_callback(GtkWidget* self, GdkDragContext* p0,gint p1,gint p2,guint p3,void* data)
2822 {
2823   using namespace Gtk;
2824   using SlotType = sigc::slot< bool,const Glib::RefPtr<Gdk::DragContext>&,int,int,guint >;
2825 
2826   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2827   // Do not try to call a signal on a disassociated wrapper.
2828   if(obj)
2829   {
2830     try
2831     {
2832       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2833         return static_cast<int>((*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2834 , p1
2835 , p2
2836 , p3));
2837     }
2838     catch(...)
2839     {
2840        Glib::exception_handlers_invoke();
2841     }
2842   }
2843 
2844   using RType = gboolean;
2845   return RType();
2846 }
2847 
Widget_signal_drag_motion_notify_callback(GtkWidget * self,GdkDragContext * p0,gint p1,gint p2,guint p3,void * data)2848 static gboolean Widget_signal_drag_motion_notify_callback(GtkWidget* self, GdkDragContext* p0,gint p1,gint p2,guint p3, void* data)
2849 {
2850   using namespace Gtk;
2851   using SlotType = sigc::slot< void,const Glib::RefPtr<Gdk::DragContext>&,int,int,guint >;
2852 
2853   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2854   // Do not try to call a signal on a disassociated wrapper.
2855   if(obj)
2856   {
2857     try
2858     {
2859       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2860         (*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2861 , p1
2862 , p2
2863 , p3);
2864     }
2865     catch(...)
2866     {
2867       Glib::exception_handlers_invoke();
2868     }
2869   }
2870 
2871   using RType = gboolean;
2872   return RType();
2873 }
2874 
2875 static const Glib::SignalProxyInfo Widget_signal_drag_motion_info =
2876 {
2877   "drag_motion",
2878   (GCallback) &Widget_signal_drag_motion_callback,
2879   (GCallback) &Widget_signal_drag_motion_notify_callback
2880 };
2881 
2882 
Widget_signal_drag_drop_callback(GtkWidget * self,GdkDragContext * p0,gint p1,gint p2,guint p3,void * data)2883 static gboolean Widget_signal_drag_drop_callback(GtkWidget* self, GdkDragContext* p0,gint p1,gint p2,guint p3,void* data)
2884 {
2885   using namespace Gtk;
2886   using SlotType = sigc::slot< bool,const Glib::RefPtr<Gdk::DragContext>&,int,int,guint >;
2887 
2888   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2889   // Do not try to call a signal on a disassociated wrapper.
2890   if(obj)
2891   {
2892     try
2893     {
2894       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2895         return static_cast<int>((*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2896 , p1
2897 , p2
2898 , p3));
2899     }
2900     catch(...)
2901     {
2902        Glib::exception_handlers_invoke();
2903     }
2904   }
2905 
2906   using RType = gboolean;
2907   return RType();
2908 }
2909 
Widget_signal_drag_drop_notify_callback(GtkWidget * self,GdkDragContext * p0,gint p1,gint p2,guint p3,void * data)2910 static gboolean Widget_signal_drag_drop_notify_callback(GtkWidget* self, GdkDragContext* p0,gint p1,gint p2,guint p3, void* data)
2911 {
2912   using namespace Gtk;
2913   using SlotType = sigc::slot< void,const Glib::RefPtr<Gdk::DragContext>&,int,int,guint >;
2914 
2915   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2916   // Do not try to call a signal on a disassociated wrapper.
2917   if(obj)
2918   {
2919     try
2920     {
2921       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2922         (*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2923 , p1
2924 , p2
2925 , p3);
2926     }
2927     catch(...)
2928     {
2929       Glib::exception_handlers_invoke();
2930     }
2931   }
2932 
2933   using RType = gboolean;
2934   return RType();
2935 }
2936 
2937 static const Glib::SignalProxyInfo Widget_signal_drag_drop_info =
2938 {
2939   "drag_drop",
2940   (GCallback) &Widget_signal_drag_drop_callback,
2941   (GCallback) &Widget_signal_drag_drop_notify_callback
2942 };
2943 
2944 
Widget_signal_drag_data_received_callback(GtkWidget * self,GdkDragContext * p0,gint p1,gint p2,GtkSelectionData * p3,guint p4,guint p5,void * data)2945 static void Widget_signal_drag_data_received_callback(GtkWidget* self, GdkDragContext* p0,gint p1,gint p2,GtkSelectionData* p3,guint p4,guint p5,void* data)
2946 {
2947   using namespace Gtk;
2948   using SlotType = sigc::slot< void,const Glib::RefPtr<Gdk::DragContext>&,int,int,const SelectionData&,guint,guint >;
2949 
2950   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2951   // Do not try to call a signal on a disassociated wrapper.
2952   if(obj)
2953   {
2954     try
2955     {
2956       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2957         (*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2958 , p1
2959 , p2
2960 , SelectionData_WithoutOwnership(p3)
2961 , p4, p5);
2962     }
2963     catch(...)
2964     {
2965        Glib::exception_handlers_invoke();
2966     }
2967   }
2968 }
2969 
2970 static const Glib::SignalProxyInfo Widget_signal_drag_data_received_info =
2971 {
2972   "drag_data_received",
2973   (GCallback) &Widget_signal_drag_data_received_callback,
2974   (GCallback) &Widget_signal_drag_data_received_callback
2975 };
2976 
2977 
Widget_signal_screen_changed_callback(GtkWidget * self,GdkScreen * p0,void * data)2978 static void Widget_signal_screen_changed_callback(GtkWidget* self, GdkScreen* p0,void* data)
2979 {
2980   using namespace Gtk;
2981   using SlotType = sigc::slot< void,const Glib::RefPtr<Gdk::Screen>& >;
2982 
2983   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
2984   // Do not try to call a signal on a disassociated wrapper.
2985   if(obj)
2986   {
2987     try
2988     {
2989       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
2990         (*static_cast<SlotType*>(slot))(Glib::wrap(p0, true)
2991 );
2992     }
2993     catch(...)
2994     {
2995        Glib::exception_handlers_invoke();
2996     }
2997   }
2998 }
2999 
3000 static const Glib::SignalProxyInfo Widget_signal_screen_changed_info =
3001 {
3002   "screen_changed",
3003   (GCallback) &Widget_signal_screen_changed_callback,
3004   (GCallback) &Widget_signal_screen_changed_callback
3005 };
3006 
3007 
3008 #ifndef GTKMM_DISABLE_DEPRECATED
3009 
3010 
3011 static const Glib::SignalProxyInfo Widget_signal_composited_changed_info =
3012 {
3013   "composited_changed",
3014   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback,
3015   (GCallback) &Glib::SignalProxyNormal::slot0_void_callback
3016 };
3017 
3018 #endif // GTKMM_DISABLE_DEPRECATED
3019 
3020 
Widget_signal_popup_menu_callback(GtkWidget * self,void * data)3021 static gboolean Widget_signal_popup_menu_callback(GtkWidget* self, void* data)
3022 {
3023   using namespace Gtk;
3024   using SlotType = sigc::slot< bool >;
3025 
3026   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
3027   // Do not try to call a signal on a disassociated wrapper.
3028   if(obj)
3029   {
3030     try
3031     {
3032       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
3033         return static_cast<int>((*static_cast<SlotType*>(slot))());
3034     }
3035     catch(...)
3036     {
3037        Glib::exception_handlers_invoke();
3038     }
3039   }
3040 
3041   using RType = gboolean;
3042   return RType();
3043 }
3044 
Widget_signal_popup_menu_notify_callback(GtkWidget * self,void * data)3045 static gboolean Widget_signal_popup_menu_notify_callback(GtkWidget* self,  void* data)
3046 {
3047   using namespace Gtk;
3048   using SlotType = sigc::slot< void >;
3049 
3050   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
3051   // Do not try to call a signal on a disassociated wrapper.
3052   if(obj)
3053   {
3054     try
3055     {
3056       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
3057         (*static_cast<SlotType*>(slot))();
3058     }
3059     catch(...)
3060     {
3061       Glib::exception_handlers_invoke();
3062     }
3063   }
3064 
3065   using RType = gboolean;
3066   return RType();
3067 }
3068 
3069 static const Glib::SignalProxyInfo Widget_signal_popup_menu_info =
3070 {
3071   "popup_menu",
3072   (GCallback) &Widget_signal_popup_menu_callback,
3073   (GCallback) &Widget_signal_popup_menu_notify_callback
3074 };
3075 
3076 
Widget_signal_query_tooltip_callback(GtkWidget * self,gint p0,gint p1,gboolean p2,GtkTooltip * p3,void * data)3077 static gboolean Widget_signal_query_tooltip_callback(GtkWidget* self, gint p0,gint p1,gboolean p2,GtkTooltip* p3,void* data)
3078 {
3079   using namespace Gtk;
3080   using SlotType = sigc::slot< bool,int,int,bool,const Glib::RefPtr<Tooltip>& >;
3081 
3082   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
3083   // Do not try to call a signal on a disassociated wrapper.
3084   if(obj)
3085   {
3086     try
3087     {
3088       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
3089         return static_cast<int>((*static_cast<SlotType*>(slot))(p0
3090 , p1
3091 , p2
3092 , Glib::wrap(p3, true)
3093 ));
3094     }
3095     catch(...)
3096     {
3097        Glib::exception_handlers_invoke();
3098     }
3099   }
3100 
3101   using RType = gboolean;
3102   return RType();
3103 }
3104 
Widget_signal_query_tooltip_notify_callback(GtkWidget * self,gint p0,gint p1,gboolean p2,GtkTooltip * p3,void * data)3105 static gboolean Widget_signal_query_tooltip_notify_callback(GtkWidget* self, gint p0,gint p1,gboolean p2,GtkTooltip* p3, void* data)
3106 {
3107   using namespace Gtk;
3108   using SlotType = sigc::slot< void,int,int,bool,const Glib::RefPtr<Tooltip>& >;
3109 
3110   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
3111   // Do not try to call a signal on a disassociated wrapper.
3112   if(obj)
3113   {
3114     try
3115     {
3116       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
3117         (*static_cast<SlotType*>(slot))(p0
3118 , p1
3119 , p2
3120 , Glib::wrap(p3, true)
3121 );
3122     }
3123     catch(...)
3124     {
3125       Glib::exception_handlers_invoke();
3126     }
3127   }
3128 
3129   using RType = gboolean;
3130   return RType();
3131 }
3132 
3133 static const Glib::SignalProxyInfo Widget_signal_query_tooltip_info =
3134 {
3135   "query_tooltip",
3136   (GCallback) &Widget_signal_query_tooltip_callback,
3137   (GCallback) &Widget_signal_query_tooltip_notify_callback
3138 };
3139 
3140 
Widget_signal_grab_broken_event_callback(GtkWidget * self,GdkEventGrabBroken * p0,void * data)3141 static gboolean Widget_signal_grab_broken_event_callback(GtkWidget* self, GdkEventGrabBroken* p0,void* data)
3142 {
3143   using namespace Gtk;
3144   using SlotType = sigc::slot< bool,GdkEventGrabBroken* >;
3145 
3146   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
3147   // Do not try to call a signal on a disassociated wrapper.
3148   if(obj)
3149   {
3150     try
3151     {
3152       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
3153         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
3154     }
3155     catch(...)
3156     {
3157        Glib::exception_handlers_invoke();
3158     }
3159   }
3160 
3161   using RType = gboolean;
3162   return RType();
3163 }
3164 
Widget_signal_grab_broken_event_notify_callback(GtkWidget * self,GdkEventGrabBroken * p0,void * data)3165 static gboolean Widget_signal_grab_broken_event_notify_callback(GtkWidget* self, GdkEventGrabBroken* p0, void* data)
3166 {
3167   using namespace Gtk;
3168   using SlotType = sigc::slot< void,GdkEventGrabBroken* >;
3169 
3170   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
3171   // Do not try to call a signal on a disassociated wrapper.
3172   if(obj)
3173   {
3174     try
3175     {
3176       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
3177         (*static_cast<SlotType*>(slot))(p0);
3178     }
3179     catch(...)
3180     {
3181       Glib::exception_handlers_invoke();
3182     }
3183   }
3184 
3185   using RType = gboolean;
3186   return RType();
3187 }
3188 
3189 static const Glib::SignalProxyInfo Widget_signal_grab_broken_event_info =
3190 {
3191   "grab_broken_event",
3192   (GCallback) &Widget_signal_grab_broken_event_callback,
3193   (GCallback) &Widget_signal_grab_broken_event_notify_callback
3194 };
3195 
3196 
Widget_signal_damage_event_callback(GtkWidget * self,GdkEventExpose * p0,void * data)3197 static gboolean Widget_signal_damage_event_callback(GtkWidget* self, GdkEventExpose* p0,void* data)
3198 {
3199   using namespace Gtk;
3200   using SlotType = sigc::slot< bool,GdkEventExpose* >;
3201 
3202   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
3203   // Do not try to call a signal on a disassociated wrapper.
3204   if(obj)
3205   {
3206     try
3207     {
3208       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
3209         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
3210     }
3211     catch(...)
3212     {
3213        Glib::exception_handlers_invoke();
3214     }
3215   }
3216 
3217   using RType = gboolean;
3218   return RType();
3219 }
3220 
Widget_signal_damage_event_notify_callback(GtkWidget * self,GdkEventExpose * p0,void * data)3221 static gboolean Widget_signal_damage_event_notify_callback(GtkWidget* self, GdkEventExpose* p0, void* data)
3222 {
3223   using namespace Gtk;
3224   using SlotType = sigc::slot< void,GdkEventExpose* >;
3225 
3226   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
3227   // Do not try to call a signal on a disassociated wrapper.
3228   if(obj)
3229   {
3230     try
3231     {
3232       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
3233         (*static_cast<SlotType*>(slot))(p0);
3234     }
3235     catch(...)
3236     {
3237       Glib::exception_handlers_invoke();
3238     }
3239   }
3240 
3241   using RType = gboolean;
3242   return RType();
3243 }
3244 
3245 static const Glib::SignalProxyInfo Widget_signal_damage_event_info =
3246 {
3247   "damage-event",
3248   (GCallback) &Widget_signal_damage_event_callback,
3249   (GCallback) &Widget_signal_damage_event_notify_callback
3250 };
3251 
3252 
Widget_signal_touch_event_callback(GtkWidget * self,GdkEventTouch * p0,void * data)3253 static gboolean Widget_signal_touch_event_callback(GtkWidget* self, GdkEventTouch* p0,void* data)
3254 {
3255   using namespace Gtk;
3256   using SlotType = sigc::slot< bool,GdkEventTouch* >;
3257 
3258   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
3259   // Do not try to call a signal on a disassociated wrapper.
3260   if(obj)
3261   {
3262     try
3263     {
3264       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
3265         return static_cast<int>((*static_cast<SlotType*>(slot))(p0));
3266     }
3267     catch(...)
3268     {
3269        Glib::exception_handlers_invoke();
3270     }
3271   }
3272 
3273   using RType = gboolean;
3274   return RType();
3275 }
3276 
Widget_signal_touch_event_notify_callback(GtkWidget * self,GdkEventTouch * p0,void * data)3277 static gboolean Widget_signal_touch_event_notify_callback(GtkWidget* self, GdkEventTouch* p0, void* data)
3278 {
3279   using namespace Gtk;
3280   using SlotType = sigc::slot< void,GdkEventTouch* >;
3281 
3282   auto obj = dynamic_cast<Widget*>(Glib::ObjectBase::_get_current_wrapper((GObject*) self));
3283   // Do not try to call a signal on a disassociated wrapper.
3284   if(obj)
3285   {
3286     try
3287     {
3288       if(const auto slot = Glib::SignalProxyNormal::data_to_slot(data))
3289         (*static_cast<SlotType*>(slot))(p0);
3290     }
3291     catch(...)
3292     {
3293       Glib::exception_handlers_invoke();
3294     }
3295   }
3296 
3297   using RType = gboolean;
3298   return RType();
3299 }
3300 
3301 static const Glib::SignalProxyInfo Widget_signal_touch_event_info =
3302 {
3303   "touch_event",
3304   (GCallback) &Widget_signal_touch_event_callback,
3305   (GCallback) &Widget_signal_touch_event_notify_callback
3306 };
3307 
3308 
3309 } // anonymous namespace
3310 
3311 // static
value_type()3312 GType Glib::Value<Gtk::DestDefaults>::value_type()
3313 {
3314   return gtk_dest_defaults_get_type();
3315 }
3316 
3317 // static
value_type()3318 GType Glib::Value<Gtk::WidgetHelpType>::value_type()
3319 {
3320   return gtk_widget_help_type_get_type();
3321 }
3322 
3323 // static
value_type()3324 GType Glib::Value<Gtk::DragResult>::value_type()
3325 {
3326   return gtk_drag_result_get_type();
3327 }
3328 
3329 
3330 namespace Glib
3331 {
3332 
wrap(GtkWidget * object,bool take_copy)3333 Gtk::Widget* wrap(GtkWidget* object, bool take_copy)
3334 {
3335   return dynamic_cast<Gtk::Widget *> (Glib::wrap_auto ((GObject*)(object), take_copy));
3336 }
3337 
3338 } /* namespace Glib */
3339 
3340 namespace Gtk
3341 {
3342 
3343 
3344 /* The *_Class implementation: */
3345 
init()3346 const Glib::Class& Widget_Class::init()
3347 {
3348   if(!gtype_) // create the GType if necessary
3349   {
3350     // Glib::Class has to know the class init function to clone custom types.
3351     class_init_func_ = &Widget_Class::class_init_function;
3352 
3353     // This is actually just optimized away, apparently with no harm.
3354     // Make sure that the parent type has been created.
3355     //CppClassParent::CppObjectType::get_type();
3356 
3357     // Create the wrapper type, with the same class/instance size as the base type.
3358     register_derived_type(gtk_widget_get_type());
3359 
3360     // Add derived versions of interfaces, if the C type implements any interfaces:
3361   Buildable::add_interface(get_type());
3362 #ifdef GTKMM_ATKMM_ENABLED
3363   Atk::Implementor::add_interface(get_type());
3364 
3365 #endif // GTKMM_ATKMM_ENABLED
3366 
3367   }
3368 
3369   return *this;
3370 }
3371 
3372 
class_init_function(void * g_class,void * class_data)3373 void Widget_Class::class_init_function(void* g_class, void* class_data)
3374 {
3375   const auto klass = static_cast<BaseClassType*>(g_class);
3376   CppClassParent::class_init_function(klass, class_data);
3377 
3378     reinterpret_cast<GObjectClass*>(klass)->dispose = &dispose_vfunc_callback;
3379     klass->dispatch_child_properties_changed = &dispatch_child_properties_changed_vfunc_callback;
3380   klass->show_all = &show_all_vfunc_callback;
3381 #ifdef GTKMM_ATKMM_ENABLED
3382   klass->get_accessible = &get_accessible_vfunc_callback;
3383 #endif // GTKMM_ATKMM_ENABLED
3384   klass->get_request_mode = &get_request_mode_vfunc_callback;
3385   klass->get_preferred_width = &get_preferred_width_vfunc_callback;
3386   klass->get_preferred_height_for_width = &get_preferred_height_for_width_vfunc_callback;
3387   klass->get_preferred_height = &get_preferred_height_vfunc_callback;
3388   klass->get_preferred_width_for_height = &get_preferred_width_for_height_vfunc_callback;
3389 
3390   klass->show = &show_callback;
3391   klass->hide = &hide_callback;
3392   klass->map = &map_callback;
3393   klass->unmap = &unmap_callback;
3394   klass->realize = &realize_callback;
3395   klass->unrealize = &unrealize_callback;
3396   klass->size_allocate = &size_allocate_callback;
3397 #ifndef GTKMM_DISABLE_DEPRECATED
3398 
3399   klass->state_changed = &state_changed_callback;
3400 #endif // GTKMM_DISABLE_DEPRECATED
3401 
3402   klass->parent_set = &parent_set_callback;
3403   klass->hierarchy_changed = &hierarchy_changed_callback;
3404   klass->style_updated = &style_updated_callback;
3405   klass->direction_changed = &direction_changed_callback;
3406   klass->grab_notify = &grab_notify_callback;
3407   klass->child_notify = &child_notify_callback;
3408   klass->mnemonic_activate = &mnemonic_activate_callback;
3409   klass->grab_focus = &grab_focus_callback;
3410   klass->focus = &focus_callback;
3411   klass->event = &event_callback;
3412   klass->button_press_event = &button_press_event_callback;
3413   klass->button_release_event = &button_release_event_callback;
3414   klass->scroll_event = &scroll_event_callback;
3415   klass->motion_notify_event = &motion_notify_event_callback;
3416   klass->delete_event = &delete_event_callback;
3417   klass->draw = &draw_callback;
3418   klass->key_press_event = &key_press_event_callback;
3419   klass->key_release_event = &key_release_event_callback;
3420   klass->enter_notify_event = &enter_notify_event_callback;
3421   klass->leave_notify_event = &leave_notify_event_callback;
3422   klass->configure_event = &configure_event_callback;
3423   klass->focus_in_event = &focus_in_event_callback;
3424   klass->focus_out_event = &focus_out_event_callback;
3425   klass->map_event = &map_event_callback;
3426   klass->unmap_event = &unmap_event_callback;
3427   klass->property_notify_event = &property_notify_event_callback;
3428   klass->selection_clear_event = &selection_clear_event_callback;
3429   klass->selection_request_event = &selection_request_event_callback;
3430   klass->selection_notify_event = &selection_notify_event_callback;
3431   klass->proximity_in_event = &proximity_in_event_callback;
3432   klass->proximity_out_event = &proximity_out_event_callback;
3433 #ifndef GTKMM_DISABLE_DEPRECATED
3434 
3435   klass->visibility_notify_event = &visibility_notify_event_callback;
3436 #endif // GTKMM_DISABLE_DEPRECATED
3437 
3438   klass->window_state_event = &window_state_event_callback;
3439   klass->selection_get = &selection_get_callback;
3440   klass->selection_received = &selection_received_callback;
3441   klass->drag_begin = &drag_begin_callback;
3442   klass->drag_end = &drag_end_callback;
3443   klass->drag_data_get = &drag_data_get_callback;
3444   klass->drag_data_delete = &drag_data_delete_callback;
3445   klass->drag_leave = &drag_leave_callback;
3446   klass->drag_motion = &drag_motion_callback;
3447   klass->drag_drop = &drag_drop_callback;
3448   klass->drag_data_received = &drag_data_received_callback;
3449   klass->screen_changed = &screen_changed_callback;
3450     klass->hierarchy_changed = &hierarchy_changed_callback_custom;
3451       klass->parent_set = &parent_set_callback_custom;
3452   }
3453 
dispatch_child_properties_changed_vfunc_callback(GtkWidget * self,guint n_pspecs,GParamSpec ** pspecs)3454 void Widget_Class::dispatch_child_properties_changed_vfunc_callback(GtkWidget* self, guint n_pspecs, GParamSpec** pspecs)
3455 {
3456   const auto obj_base = static_cast<Glib::ObjectBase*>(
3457       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3458 
3459   // Non-gtkmmproc-generated custom classes implicitly call the default
3460   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3461   // generated classes can use this optimisation, which avoids the unnecessary
3462   // parameter conversions if there is no possibility of the virtual function
3463   // being overridden:
3464   if(obj_base && obj_base->is_derived_())
3465   {
3466     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3467     if(obj) // This can be NULL during destruction.
3468     {
3469       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3470       {
3471         // Call the virtual member method, which derived classes might override.
3472         obj->dispatch_child_properties_changed_vfunc(n_pspecs, pspecs);
3473         return;
3474       }
3475       catch(...)
3476       {
3477         Glib::exception_handlers_invoke();
3478       }
3479     }
3480   }
3481 
3482   BaseClassType *const base = static_cast<BaseClassType*>(
3483       g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3484   );
3485 
3486   // Call the original underlying C function:
3487   if(base && base->dispatch_child_properties_changed)
3488     (*base->dispatch_child_properties_changed)(self, n_pspecs, pspecs);
3489 }
show_all_vfunc_callback(GtkWidget * self)3490 void Widget_Class::show_all_vfunc_callback(GtkWidget* self)
3491 {
3492   const auto obj_base = static_cast<Glib::ObjectBase*>(
3493       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3494 
3495   // Non-gtkmmproc-generated custom classes implicitly call the default
3496   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3497   // generated classes can use this optimisation, which avoids the unnecessary
3498   // parameter conversions if there is no possibility of the virtual function
3499   // being overridden:
3500   if(obj_base && obj_base->is_derived_())
3501   {
3502     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3503     if(obj) // This can be NULL during destruction.
3504     {
3505       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3506       {
3507         // Call the virtual member method, which derived classes might override.
3508         obj->show_all_vfunc();
3509         return;
3510       }
3511       catch(...)
3512       {
3513         Glib::exception_handlers_invoke();
3514       }
3515     }
3516   }
3517 
3518   BaseClassType *const base = static_cast<BaseClassType*>(
3519       g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3520   );
3521 
3522   // Call the original underlying C function:
3523   if(base && base->show_all)
3524     (*base->show_all)(self);
3525 }
3526 #ifdef GTKMM_ATKMM_ENABLED
get_accessible_vfunc_callback(GtkWidget * self)3527 AtkObject* Widget_Class::get_accessible_vfunc_callback(GtkWidget* self)
3528 {
3529   const auto obj_base = static_cast<Glib::ObjectBase*>(
3530       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3531 
3532   // Non-gtkmmproc-generated custom classes implicitly call the default
3533   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3534   // generated classes can use this optimisation, which avoids the unnecessary
3535   // parameter conversions if there is no possibility of the virtual function
3536   // being overridden:
3537   if(obj_base && obj_base->is_derived_())
3538   {
3539     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3540     if(obj) // This can be NULL during destruction.
3541     {
3542       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3543       {
3544         // Call the virtual member method, which derived classes might override.
3545         return Glib::unwrap(obj->get_accessible_vfunc());
3546       }
3547       catch(...)
3548       {
3549         Glib::exception_handlers_invoke();
3550       }
3551     }
3552   }
3553 
3554   BaseClassType *const base = static_cast<BaseClassType*>(
3555       g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3556   );
3557 
3558   // Call the original underlying C function:
3559   if(base && base->get_accessible)
3560     return (*base->get_accessible)(self);
3561 
3562   using RType = AtkObject*;
3563   return RType();
3564 }
3565 #endif // GTKMM_ATKMM_ENABLED
get_request_mode_vfunc_callback(GtkWidget * self)3566 GtkSizeRequestMode Widget_Class::get_request_mode_vfunc_callback(GtkWidget* self)
3567 {
3568   const auto obj_base = static_cast<Glib::ObjectBase*>(
3569       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3570 
3571   // Non-gtkmmproc-generated custom classes implicitly call the default
3572   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3573   // generated classes can use this optimisation, which avoids the unnecessary
3574   // parameter conversions if there is no possibility of the virtual function
3575   // being overridden:
3576   if(obj_base && obj_base->is_derived_())
3577   {
3578     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3579     if(obj) // This can be NULL during destruction.
3580     {
3581       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3582       {
3583         // Call the virtual member method, which derived classes might override.
3584         return ((GtkSizeRequestMode)(obj->get_request_mode_vfunc()));
3585       }
3586       catch(...)
3587       {
3588         Glib::exception_handlers_invoke();
3589       }
3590     }
3591   }
3592 
3593   BaseClassType *const base = static_cast<BaseClassType*>(
3594       g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3595   );
3596 
3597   // Call the original underlying C function:
3598   if(base && base->get_request_mode)
3599     return (*base->get_request_mode)(self);
3600 
3601   using RType = GtkSizeRequestMode;
3602   return RType();
3603 }
3604 
show_callback(GtkWidget * self)3605 void Widget_Class::show_callback(GtkWidget* self)
3606 {
3607   const auto obj_base = static_cast<Glib::ObjectBase*>(
3608       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3609 
3610   // Non-gtkmmproc-generated custom classes implicitly call the default
3611   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3612   // generated classes can use this optimisation, which avoids the unnecessary
3613   // parameter conversions if there is no possibility of the virtual function
3614   // being overridden:
3615   if(obj_base && obj_base->is_derived_())
3616   {
3617     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3618     if(obj) // This can be NULL during destruction.
3619     {
3620       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3621       {
3622         // Call the virtual member method, which derived classes might override.
3623         obj->on_show();
3624         return;
3625       }
3626       catch(...)
3627       {
3628         Glib::exception_handlers_invoke();
3629       }
3630     }
3631   }
3632 
3633   const auto base = static_cast<BaseClassType*>(
3634         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3635     );
3636 
3637   // Call the original underlying C function:
3638   if(base && base->show)
3639     (*base->show)(self);
3640 }
map_callback(GtkWidget * self)3641 void Widget_Class::map_callback(GtkWidget* self)
3642 {
3643   const auto obj_base = static_cast<Glib::ObjectBase*>(
3644       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3645 
3646   // Non-gtkmmproc-generated custom classes implicitly call the default
3647   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3648   // generated classes can use this optimisation, which avoids the unnecessary
3649   // parameter conversions if there is no possibility of the virtual function
3650   // being overridden:
3651   if(obj_base && obj_base->is_derived_())
3652   {
3653     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3654     if(obj) // This can be NULL during destruction.
3655     {
3656       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3657       {
3658         // Call the virtual member method, which derived classes might override.
3659         obj->on_map();
3660         return;
3661       }
3662       catch(...)
3663       {
3664         Glib::exception_handlers_invoke();
3665       }
3666     }
3667   }
3668 
3669   const auto base = static_cast<BaseClassType*>(
3670         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3671     );
3672 
3673   // Call the original underlying C function:
3674   if(base && base->map)
3675     (*base->map)(self);
3676 }
unmap_callback(GtkWidget * self)3677 void Widget_Class::unmap_callback(GtkWidget* self)
3678 {
3679   const auto obj_base = static_cast<Glib::ObjectBase*>(
3680       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3681 
3682   // Non-gtkmmproc-generated custom classes implicitly call the default
3683   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3684   // generated classes can use this optimisation, which avoids the unnecessary
3685   // parameter conversions if there is no possibility of the virtual function
3686   // being overridden:
3687   if(obj_base && obj_base->is_derived_())
3688   {
3689     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3690     if(obj) // This can be NULL during destruction.
3691     {
3692       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3693       {
3694         // Call the virtual member method, which derived classes might override.
3695         obj->on_unmap();
3696         return;
3697       }
3698       catch(...)
3699       {
3700         Glib::exception_handlers_invoke();
3701       }
3702     }
3703   }
3704 
3705   const auto base = static_cast<BaseClassType*>(
3706         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3707     );
3708 
3709   // Call the original underlying C function:
3710   if(base && base->unmap)
3711     (*base->unmap)(self);
3712 }
realize_callback(GtkWidget * self)3713 void Widget_Class::realize_callback(GtkWidget* self)
3714 {
3715   const auto obj_base = static_cast<Glib::ObjectBase*>(
3716       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3717 
3718   // Non-gtkmmproc-generated custom classes implicitly call the default
3719   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3720   // generated classes can use this optimisation, which avoids the unnecessary
3721   // parameter conversions if there is no possibility of the virtual function
3722   // being overridden:
3723   if(obj_base && obj_base->is_derived_())
3724   {
3725     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3726     if(obj) // This can be NULL during destruction.
3727     {
3728       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3729       {
3730         // Call the virtual member method, which derived classes might override.
3731         obj->on_realize();
3732         return;
3733       }
3734       catch(...)
3735       {
3736         Glib::exception_handlers_invoke();
3737       }
3738     }
3739   }
3740 
3741   const auto base = static_cast<BaseClassType*>(
3742         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3743     );
3744 
3745   // Call the original underlying C function:
3746   if(base && base->realize)
3747     (*base->realize)(self);
3748 }
unrealize_callback(GtkWidget * self)3749 void Widget_Class::unrealize_callback(GtkWidget* self)
3750 {
3751   const auto obj_base = static_cast<Glib::ObjectBase*>(
3752       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3753 
3754   // Non-gtkmmproc-generated custom classes implicitly call the default
3755   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3756   // generated classes can use this optimisation, which avoids the unnecessary
3757   // parameter conversions if there is no possibility of the virtual function
3758   // being overridden:
3759   if(obj_base && obj_base->is_derived_())
3760   {
3761     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3762     if(obj) // This can be NULL during destruction.
3763     {
3764       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3765       {
3766         // Call the virtual member method, which derived classes might override.
3767         obj->on_unrealize();
3768         return;
3769       }
3770       catch(...)
3771       {
3772         Glib::exception_handlers_invoke();
3773       }
3774     }
3775   }
3776 
3777   const auto base = static_cast<BaseClassType*>(
3778         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3779     );
3780 
3781   // Call the original underlying C function:
3782   if(base && base->unrealize)
3783     (*base->unrealize)(self);
3784 }
size_allocate_callback(GtkWidget * self,GdkRectangle * p0)3785 void Widget_Class::size_allocate_callback(GtkWidget* self, GdkRectangle* p0)
3786 {
3787   const auto obj_base = static_cast<Glib::ObjectBase*>(
3788       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3789 
3790   // Non-gtkmmproc-generated custom classes implicitly call the default
3791   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3792   // generated classes can use this optimisation, which avoids the unnecessary
3793   // parameter conversions if there is no possibility of the virtual function
3794   // being overridden:
3795   if(obj_base && obj_base->is_derived_())
3796   {
3797     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3798     if(obj) // This can be NULL during destruction.
3799     {
3800       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3801       {
3802         // Call the virtual member method, which derived classes might override.
3803         obj->on_size_allocate((Allocation&)(Glib::wrap(p0))
3804 );
3805         return;
3806       }
3807       catch(...)
3808       {
3809         Glib::exception_handlers_invoke();
3810       }
3811     }
3812   }
3813 
3814   const auto base = static_cast<BaseClassType*>(
3815         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3816     );
3817 
3818   // Call the original underlying C function:
3819   if(base && base->size_allocate)
3820     (*base->size_allocate)(self, p0);
3821 }
3822 #ifndef GTKMM_DISABLE_DEPRECATED
3823 
state_changed_callback(GtkWidget * self,GtkStateType p0)3824 void Widget_Class::state_changed_callback(GtkWidget* self, GtkStateType p0)
3825 {
3826   const auto obj_base = static_cast<Glib::ObjectBase*>(
3827       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3828 
3829   // Non-gtkmmproc-generated custom classes implicitly call the default
3830   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3831   // generated classes can use this optimisation, which avoids the unnecessary
3832   // parameter conversions if there is no possibility of the virtual function
3833   // being overridden:
3834   if(obj_base && obj_base->is_derived_())
3835   {
3836     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3837     if(obj) // This can be NULL during destruction.
3838     {
3839       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3840       {
3841         // Call the virtual member method, which derived classes might override.
3842         obj->on_state_changed(((Gtk::StateType)(p0))
3843 );
3844         return;
3845       }
3846       catch(...)
3847       {
3848         Glib::exception_handlers_invoke();
3849       }
3850     }
3851   }
3852 
3853   const auto base = static_cast<BaseClassType*>(
3854         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3855     );
3856 
3857   // Call the original underlying C function:
3858   if(base && base->state_changed)
3859     (*base->state_changed)(self, p0);
3860 }
3861 #endif // GTKMM_DISABLE_DEPRECATED
3862 
parent_set_callback(GtkWidget * self,GtkWidget * p0)3863 void Widget_Class::parent_set_callback(GtkWidget* self, GtkWidget* p0)
3864 {
3865   const auto obj_base = static_cast<Glib::ObjectBase*>(
3866       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3867 
3868   // Non-gtkmmproc-generated custom classes implicitly call the default
3869   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3870   // generated classes can use this optimisation, which avoids the unnecessary
3871   // parameter conversions if there is no possibility of the virtual function
3872   // being overridden:
3873   if(obj_base && obj_base->is_derived_())
3874   {
3875     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3876     if(obj) // This can be NULL during destruction.
3877     {
3878       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3879       {
3880         // Call the virtual member method, which derived classes might override.
3881         obj->on_parent_changed(Glib::wrap(p0)
3882 );
3883         return;
3884       }
3885       catch(...)
3886       {
3887         Glib::exception_handlers_invoke();
3888       }
3889     }
3890   }
3891 
3892   const auto base = static_cast<BaseClassType*>(
3893         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3894     );
3895 
3896   // Call the original underlying C function:
3897   if(base && base->parent_set)
3898     (*base->parent_set)(self, p0);
3899 }
hierarchy_changed_callback(GtkWidget * self,GtkWidget * p0)3900 void Widget_Class::hierarchy_changed_callback(GtkWidget* self, GtkWidget* p0)
3901 {
3902   const auto obj_base = static_cast<Glib::ObjectBase*>(
3903       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3904 
3905   // Non-gtkmmproc-generated custom classes implicitly call the default
3906   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3907   // generated classes can use this optimisation, which avoids the unnecessary
3908   // parameter conversions if there is no possibility of the virtual function
3909   // being overridden:
3910   if(obj_base && obj_base->is_derived_())
3911   {
3912     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3913     if(obj) // This can be NULL during destruction.
3914     {
3915       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3916       {
3917         // Call the virtual member method, which derived classes might override.
3918         obj->on_hierarchy_changed(Glib::wrap(p0)
3919 );
3920         return;
3921       }
3922       catch(...)
3923       {
3924         Glib::exception_handlers_invoke();
3925       }
3926     }
3927   }
3928 
3929   const auto base = static_cast<BaseClassType*>(
3930         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3931     );
3932 
3933   // Call the original underlying C function:
3934   if(base && base->hierarchy_changed)
3935     (*base->hierarchy_changed)(self, p0);
3936 }
style_updated_callback(GtkWidget * self)3937 void Widget_Class::style_updated_callback(GtkWidget* self)
3938 {
3939   const auto obj_base = static_cast<Glib::ObjectBase*>(
3940       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3941 
3942   // Non-gtkmmproc-generated custom classes implicitly call the default
3943   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3944   // generated classes can use this optimisation, which avoids the unnecessary
3945   // parameter conversions if there is no possibility of the virtual function
3946   // being overridden:
3947   if(obj_base && obj_base->is_derived_())
3948   {
3949     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3950     if(obj) // This can be NULL during destruction.
3951     {
3952       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3953       {
3954         // Call the virtual member method, which derived classes might override.
3955         obj->on_style_updated();
3956         return;
3957       }
3958       catch(...)
3959       {
3960         Glib::exception_handlers_invoke();
3961       }
3962     }
3963   }
3964 
3965   const auto base = static_cast<BaseClassType*>(
3966         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
3967     );
3968 
3969   // Call the original underlying C function:
3970   if(base && base->style_updated)
3971     (*base->style_updated)(self);
3972 }
direction_changed_callback(GtkWidget * self,GtkTextDirection p0)3973 void Widget_Class::direction_changed_callback(GtkWidget* self, GtkTextDirection p0)
3974 {
3975   const auto obj_base = static_cast<Glib::ObjectBase*>(
3976       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
3977 
3978   // Non-gtkmmproc-generated custom classes implicitly call the default
3979   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
3980   // generated classes can use this optimisation, which avoids the unnecessary
3981   // parameter conversions if there is no possibility of the virtual function
3982   // being overridden:
3983   if(obj_base && obj_base->is_derived_())
3984   {
3985     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
3986     if(obj) // This can be NULL during destruction.
3987     {
3988       try // Trap C++ exceptions which would normally be lost because this is a C callback.
3989       {
3990         // Call the virtual member method, which derived classes might override.
3991         obj->on_direction_changed(((TextDirection)(p0))
3992 );
3993         return;
3994       }
3995       catch(...)
3996       {
3997         Glib::exception_handlers_invoke();
3998       }
3999     }
4000   }
4001 
4002   const auto base = static_cast<BaseClassType*>(
4003         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4004     );
4005 
4006   // Call the original underlying C function:
4007   if(base && base->direction_changed)
4008     (*base->direction_changed)(self, p0);
4009 }
grab_notify_callback(GtkWidget * self,gboolean p0)4010 void Widget_Class::grab_notify_callback(GtkWidget* self, gboolean p0)
4011 {
4012   const auto obj_base = static_cast<Glib::ObjectBase*>(
4013       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4014 
4015   // Non-gtkmmproc-generated custom classes implicitly call the default
4016   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4017   // generated classes can use this optimisation, which avoids the unnecessary
4018   // parameter conversions if there is no possibility of the virtual function
4019   // being overridden:
4020   if(obj_base && obj_base->is_derived_())
4021   {
4022     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4023     if(obj) // This can be NULL during destruction.
4024     {
4025       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4026       {
4027         // Call the virtual member method, which derived classes might override.
4028         obj->on_grab_notify(p0
4029 );
4030         return;
4031       }
4032       catch(...)
4033       {
4034         Glib::exception_handlers_invoke();
4035       }
4036     }
4037   }
4038 
4039   const auto base = static_cast<BaseClassType*>(
4040         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4041     );
4042 
4043   // Call the original underlying C function:
4044   if(base && base->grab_notify)
4045     (*base->grab_notify)(self, p0);
4046 }
child_notify_callback(GtkWidget * self,GParamSpec * p0)4047 void Widget_Class::child_notify_callback(GtkWidget* self, GParamSpec* p0)
4048 {
4049   const auto obj_base = static_cast<Glib::ObjectBase*>(
4050       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4051 
4052   // Non-gtkmmproc-generated custom classes implicitly call the default
4053   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4054   // generated classes can use this optimisation, which avoids the unnecessary
4055   // parameter conversions if there is no possibility of the virtual function
4056   // being overridden:
4057   if(obj_base && obj_base->is_derived_())
4058   {
4059     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4060     if(obj) // This can be NULL during destruction.
4061     {
4062       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4063       {
4064         // Call the virtual member method, which derived classes might override.
4065         obj->on_child_notify(p0);
4066         return;
4067       }
4068       catch(...)
4069       {
4070         Glib::exception_handlers_invoke();
4071       }
4072     }
4073   }
4074 
4075   const auto base = static_cast<BaseClassType*>(
4076         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4077     );
4078 
4079   // Call the original underlying C function:
4080   if(base && base->child_notify)
4081     (*base->child_notify)(self, p0);
4082 }
mnemonic_activate_callback(GtkWidget * self,gboolean p0)4083 gboolean Widget_Class::mnemonic_activate_callback(GtkWidget* self, gboolean p0)
4084 {
4085   const auto obj_base = static_cast<Glib::ObjectBase*>(
4086       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4087 
4088   // Non-gtkmmproc-generated custom classes implicitly call the default
4089   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4090   // generated classes can use this optimisation, which avoids the unnecessary
4091   // parameter conversions if there is no possibility of the virtual function
4092   // being overridden:
4093   if(obj_base && obj_base->is_derived_())
4094   {
4095     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4096     if(obj) // This can be NULL during destruction.
4097     {
4098       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4099       {
4100         // Call the virtual member method, which derived classes might override.
4101         return static_cast<int>(obj->on_mnemonic_activate(p0
4102 ));
4103       }
4104       catch(...)
4105       {
4106         Glib::exception_handlers_invoke();
4107       }
4108     }
4109   }
4110 
4111   const auto base = static_cast<BaseClassType*>(
4112         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4113     );
4114 
4115   // Call the original underlying C function:
4116   if(base && base->mnemonic_activate)
4117     return (*base->mnemonic_activate)(self, p0);
4118 
4119   using RType = gboolean;
4120   return RType();
4121 }
grab_focus_callback(GtkWidget * self)4122 void Widget_Class::grab_focus_callback(GtkWidget* self)
4123 {
4124   const auto obj_base = static_cast<Glib::ObjectBase*>(
4125       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4126 
4127   // Non-gtkmmproc-generated custom classes implicitly call the default
4128   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4129   // generated classes can use this optimisation, which avoids the unnecessary
4130   // parameter conversions if there is no possibility of the virtual function
4131   // being overridden:
4132   if(obj_base && obj_base->is_derived_())
4133   {
4134     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4135     if(obj) // This can be NULL during destruction.
4136     {
4137       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4138       {
4139         // Call the virtual member method, which derived classes might override.
4140         obj->on_grab_focus();
4141         return;
4142       }
4143       catch(...)
4144       {
4145         Glib::exception_handlers_invoke();
4146       }
4147     }
4148   }
4149 
4150   const auto base = static_cast<BaseClassType*>(
4151         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4152     );
4153 
4154   // Call the original underlying C function:
4155   if(base && base->grab_focus)
4156     (*base->grab_focus)(self);
4157 }
focus_callback(GtkWidget * self,GtkDirectionType p0)4158 gboolean Widget_Class::focus_callback(GtkWidget* self, GtkDirectionType p0)
4159 {
4160   const auto obj_base = static_cast<Glib::ObjectBase*>(
4161       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4162 
4163   // Non-gtkmmproc-generated custom classes implicitly call the default
4164   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4165   // generated classes can use this optimisation, which avoids the unnecessary
4166   // parameter conversions if there is no possibility of the virtual function
4167   // being overridden:
4168   if(obj_base && obj_base->is_derived_())
4169   {
4170     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4171     if(obj) // This can be NULL during destruction.
4172     {
4173       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4174       {
4175         // Call the virtual member method, which derived classes might override.
4176         return static_cast<int>(obj->on_focus(((DirectionType)(p0))
4177 ));
4178       }
4179       catch(...)
4180       {
4181         Glib::exception_handlers_invoke();
4182       }
4183     }
4184   }
4185 
4186   const auto base = static_cast<BaseClassType*>(
4187         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4188     );
4189 
4190   // Call the original underlying C function:
4191   if(base && base->focus)
4192     return (*base->focus)(self, p0);
4193 
4194   using RType = gboolean;
4195   return RType();
4196 }
event_callback(GtkWidget * self,GdkEvent * p0)4197 gboolean Widget_Class::event_callback(GtkWidget* self, GdkEvent* p0)
4198 {
4199   const auto obj_base = static_cast<Glib::ObjectBase*>(
4200       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4201 
4202   // Non-gtkmmproc-generated custom classes implicitly call the default
4203   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4204   // generated classes can use this optimisation, which avoids the unnecessary
4205   // parameter conversions if there is no possibility of the virtual function
4206   // being overridden:
4207   if(obj_base && obj_base->is_derived_())
4208   {
4209     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4210     if(obj) // This can be NULL during destruction.
4211     {
4212       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4213       {
4214         // Call the virtual member method, which derived classes might override.
4215         return static_cast<int>(obj->on_event(p0));
4216       }
4217       catch(...)
4218       {
4219         Glib::exception_handlers_invoke();
4220       }
4221     }
4222   }
4223 
4224   const auto base = static_cast<BaseClassType*>(
4225         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4226     );
4227 
4228   // Call the original underlying C function:
4229   if(base && base->event)
4230     return (*base->event)(self, p0);
4231 
4232   using RType = gboolean;
4233   return RType();
4234 }
button_press_event_callback(GtkWidget * self,GdkEventButton * p0)4235 gboolean Widget_Class::button_press_event_callback(GtkWidget* self, GdkEventButton* p0)
4236 {
4237   const auto obj_base = static_cast<Glib::ObjectBase*>(
4238       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4239 
4240   // Non-gtkmmproc-generated custom classes implicitly call the default
4241   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4242   // generated classes can use this optimisation, which avoids the unnecessary
4243   // parameter conversions if there is no possibility of the virtual function
4244   // being overridden:
4245   if(obj_base && obj_base->is_derived_())
4246   {
4247     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4248     if(obj) // This can be NULL during destruction.
4249     {
4250       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4251       {
4252         // Call the virtual member method, which derived classes might override.
4253         return static_cast<int>(obj->on_button_press_event(p0));
4254       }
4255       catch(...)
4256       {
4257         Glib::exception_handlers_invoke();
4258       }
4259     }
4260   }
4261 
4262   const auto base = static_cast<BaseClassType*>(
4263         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4264     );
4265 
4266   // Call the original underlying C function:
4267   if(base && base->button_press_event)
4268     return (*base->button_press_event)(self, p0);
4269 
4270   using RType = gboolean;
4271   return RType();
4272 }
button_release_event_callback(GtkWidget * self,GdkEventButton * p0)4273 gboolean Widget_Class::button_release_event_callback(GtkWidget* self, GdkEventButton* p0)
4274 {
4275   const auto obj_base = static_cast<Glib::ObjectBase*>(
4276       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4277 
4278   // Non-gtkmmproc-generated custom classes implicitly call the default
4279   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4280   // generated classes can use this optimisation, which avoids the unnecessary
4281   // parameter conversions if there is no possibility of the virtual function
4282   // being overridden:
4283   if(obj_base && obj_base->is_derived_())
4284   {
4285     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4286     if(obj) // This can be NULL during destruction.
4287     {
4288       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4289       {
4290         // Call the virtual member method, which derived classes might override.
4291         return static_cast<int>(obj->on_button_release_event(p0));
4292       }
4293       catch(...)
4294       {
4295         Glib::exception_handlers_invoke();
4296       }
4297     }
4298   }
4299 
4300   const auto base = static_cast<BaseClassType*>(
4301         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4302     );
4303 
4304   // Call the original underlying C function:
4305   if(base && base->button_release_event)
4306     return (*base->button_release_event)(self, p0);
4307 
4308   using RType = gboolean;
4309   return RType();
4310 }
scroll_event_callback(GtkWidget * self,GdkEventScroll * p0)4311 gboolean Widget_Class::scroll_event_callback(GtkWidget* self, GdkEventScroll* p0)
4312 {
4313   const auto obj_base = static_cast<Glib::ObjectBase*>(
4314       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4315 
4316   // Non-gtkmmproc-generated custom classes implicitly call the default
4317   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4318   // generated classes can use this optimisation, which avoids the unnecessary
4319   // parameter conversions if there is no possibility of the virtual function
4320   // being overridden:
4321   if(obj_base && obj_base->is_derived_())
4322   {
4323     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4324     if(obj) // This can be NULL during destruction.
4325     {
4326       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4327       {
4328         // Call the virtual member method, which derived classes might override.
4329         return static_cast<int>(obj->on_scroll_event(p0));
4330       }
4331       catch(...)
4332       {
4333         Glib::exception_handlers_invoke();
4334       }
4335     }
4336   }
4337 
4338   const auto base = static_cast<BaseClassType*>(
4339         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4340     );
4341 
4342   // Call the original underlying C function:
4343   if(base && base->scroll_event)
4344     return (*base->scroll_event)(self, p0);
4345 
4346   using RType = gboolean;
4347   return RType();
4348 }
motion_notify_event_callback(GtkWidget * self,GdkEventMotion * p0)4349 gboolean Widget_Class::motion_notify_event_callback(GtkWidget* self, GdkEventMotion* p0)
4350 {
4351   const auto obj_base = static_cast<Glib::ObjectBase*>(
4352       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4353 
4354   // Non-gtkmmproc-generated custom classes implicitly call the default
4355   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4356   // generated classes can use this optimisation, which avoids the unnecessary
4357   // parameter conversions if there is no possibility of the virtual function
4358   // being overridden:
4359   if(obj_base && obj_base->is_derived_())
4360   {
4361     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4362     if(obj) // This can be NULL during destruction.
4363     {
4364       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4365       {
4366         // Call the virtual member method, which derived classes might override.
4367         return static_cast<int>(obj->on_motion_notify_event(p0));
4368       }
4369       catch(...)
4370       {
4371         Glib::exception_handlers_invoke();
4372       }
4373     }
4374   }
4375 
4376   const auto base = static_cast<BaseClassType*>(
4377         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4378     );
4379 
4380   // Call the original underlying C function:
4381   if(base && base->motion_notify_event)
4382     return (*base->motion_notify_event)(self, p0);
4383 
4384   using RType = gboolean;
4385   return RType();
4386 }
delete_event_callback(GtkWidget * self,GdkEventAny * p0)4387 gboolean Widget_Class::delete_event_callback(GtkWidget* self, GdkEventAny* p0)
4388 {
4389   const auto obj_base = static_cast<Glib::ObjectBase*>(
4390       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4391 
4392   // Non-gtkmmproc-generated custom classes implicitly call the default
4393   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4394   // generated classes can use this optimisation, which avoids the unnecessary
4395   // parameter conversions if there is no possibility of the virtual function
4396   // being overridden:
4397   if(obj_base && obj_base->is_derived_())
4398   {
4399     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4400     if(obj) // This can be NULL during destruction.
4401     {
4402       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4403       {
4404         // Call the virtual member method, which derived classes might override.
4405         return static_cast<int>(obj->on_delete_event(p0));
4406       }
4407       catch(...)
4408       {
4409         Glib::exception_handlers_invoke();
4410       }
4411     }
4412   }
4413 
4414   const auto base = static_cast<BaseClassType*>(
4415         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4416     );
4417 
4418   // Call the original underlying C function:
4419   if(base && base->delete_event)
4420     return (*base->delete_event)(self, p0);
4421 
4422   using RType = gboolean;
4423   return RType();
4424 }
draw_callback(GtkWidget * self,cairo_t * p0)4425 gboolean Widget_Class::draw_callback(GtkWidget* self, cairo_t* p0)
4426 {
4427   const auto obj_base = static_cast<Glib::ObjectBase*>(
4428       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4429 
4430   // Non-gtkmmproc-generated custom classes implicitly call the default
4431   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4432   // generated classes can use this optimisation, which avoids the unnecessary
4433   // parameter conversions if there is no possibility of the virtual function
4434   // being overridden:
4435   if(obj_base && obj_base->is_derived_())
4436   {
4437     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4438     if(obj) // This can be NULL during destruction.
4439     {
4440       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4441       {
4442         // Call the virtual member method, which derived classes might override.
4443         return static_cast<int>(obj->on_draw(::Cairo::RefPtr< ::Cairo::Context>(new ::Cairo::Context(p0, false /* has_reference */))
4444 ));
4445       }
4446       catch(...)
4447       {
4448         Glib::exception_handlers_invoke();
4449       }
4450     }
4451   }
4452 
4453   const auto base = static_cast<BaseClassType*>(
4454         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4455     );
4456 
4457   // Call the original underlying C function:
4458   if(base && base->draw)
4459     return (*base->draw)(self, p0);
4460 
4461   using RType = gboolean;
4462   return RType();
4463 }
key_press_event_callback(GtkWidget * self,GdkEventKey * p0)4464 gboolean Widget_Class::key_press_event_callback(GtkWidget* self, GdkEventKey* p0)
4465 {
4466   const auto obj_base = static_cast<Glib::ObjectBase*>(
4467       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4468 
4469   // Non-gtkmmproc-generated custom classes implicitly call the default
4470   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4471   // generated classes can use this optimisation, which avoids the unnecessary
4472   // parameter conversions if there is no possibility of the virtual function
4473   // being overridden:
4474   if(obj_base && obj_base->is_derived_())
4475   {
4476     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4477     if(obj) // This can be NULL during destruction.
4478     {
4479       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4480       {
4481         // Call the virtual member method, which derived classes might override.
4482         return static_cast<int>(obj->on_key_press_event(p0));
4483       }
4484       catch(...)
4485       {
4486         Glib::exception_handlers_invoke();
4487       }
4488     }
4489   }
4490 
4491   const auto base = static_cast<BaseClassType*>(
4492         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4493     );
4494 
4495   // Call the original underlying C function:
4496   if(base && base->key_press_event)
4497     return (*base->key_press_event)(self, p0);
4498 
4499   using RType = gboolean;
4500   return RType();
4501 }
key_release_event_callback(GtkWidget * self,GdkEventKey * p0)4502 gboolean Widget_Class::key_release_event_callback(GtkWidget* self, GdkEventKey* p0)
4503 {
4504   const auto obj_base = static_cast<Glib::ObjectBase*>(
4505       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4506 
4507   // Non-gtkmmproc-generated custom classes implicitly call the default
4508   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4509   // generated classes can use this optimisation, which avoids the unnecessary
4510   // parameter conversions if there is no possibility of the virtual function
4511   // being overridden:
4512   if(obj_base && obj_base->is_derived_())
4513   {
4514     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4515     if(obj) // This can be NULL during destruction.
4516     {
4517       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4518       {
4519         // Call the virtual member method, which derived classes might override.
4520         return static_cast<int>(obj->on_key_release_event(p0));
4521       }
4522       catch(...)
4523       {
4524         Glib::exception_handlers_invoke();
4525       }
4526     }
4527   }
4528 
4529   const auto base = static_cast<BaseClassType*>(
4530         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4531     );
4532 
4533   // Call the original underlying C function:
4534   if(base && base->key_release_event)
4535     return (*base->key_release_event)(self, p0);
4536 
4537   using RType = gboolean;
4538   return RType();
4539 }
enter_notify_event_callback(GtkWidget * self,GdkEventCrossing * p0)4540 gboolean Widget_Class::enter_notify_event_callback(GtkWidget* self, GdkEventCrossing* p0)
4541 {
4542   const auto obj_base = static_cast<Glib::ObjectBase*>(
4543       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4544 
4545   // Non-gtkmmproc-generated custom classes implicitly call the default
4546   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4547   // generated classes can use this optimisation, which avoids the unnecessary
4548   // parameter conversions if there is no possibility of the virtual function
4549   // being overridden:
4550   if(obj_base && obj_base->is_derived_())
4551   {
4552     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4553     if(obj) // This can be NULL during destruction.
4554     {
4555       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4556       {
4557         // Call the virtual member method, which derived classes might override.
4558         return static_cast<int>(obj->on_enter_notify_event(p0));
4559       }
4560       catch(...)
4561       {
4562         Glib::exception_handlers_invoke();
4563       }
4564     }
4565   }
4566 
4567   const auto base = static_cast<BaseClassType*>(
4568         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4569     );
4570 
4571   // Call the original underlying C function:
4572   if(base && base->enter_notify_event)
4573     return (*base->enter_notify_event)(self, p0);
4574 
4575   using RType = gboolean;
4576   return RType();
4577 }
leave_notify_event_callback(GtkWidget * self,GdkEventCrossing * p0)4578 gboolean Widget_Class::leave_notify_event_callback(GtkWidget* self, GdkEventCrossing* p0)
4579 {
4580   const auto obj_base = static_cast<Glib::ObjectBase*>(
4581       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4582 
4583   // Non-gtkmmproc-generated custom classes implicitly call the default
4584   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4585   // generated classes can use this optimisation, which avoids the unnecessary
4586   // parameter conversions if there is no possibility of the virtual function
4587   // being overridden:
4588   if(obj_base && obj_base->is_derived_())
4589   {
4590     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4591     if(obj) // This can be NULL during destruction.
4592     {
4593       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4594       {
4595         // Call the virtual member method, which derived classes might override.
4596         return static_cast<int>(obj->on_leave_notify_event(p0));
4597       }
4598       catch(...)
4599       {
4600         Glib::exception_handlers_invoke();
4601       }
4602     }
4603   }
4604 
4605   const auto base = static_cast<BaseClassType*>(
4606         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4607     );
4608 
4609   // Call the original underlying C function:
4610   if(base && base->leave_notify_event)
4611     return (*base->leave_notify_event)(self, p0);
4612 
4613   using RType = gboolean;
4614   return RType();
4615 }
configure_event_callback(GtkWidget * self,GdkEventConfigure * p0)4616 gboolean Widget_Class::configure_event_callback(GtkWidget* self, GdkEventConfigure* p0)
4617 {
4618   const auto obj_base = static_cast<Glib::ObjectBase*>(
4619       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4620 
4621   // Non-gtkmmproc-generated custom classes implicitly call the default
4622   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4623   // generated classes can use this optimisation, which avoids the unnecessary
4624   // parameter conversions if there is no possibility of the virtual function
4625   // being overridden:
4626   if(obj_base && obj_base->is_derived_())
4627   {
4628     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4629     if(obj) // This can be NULL during destruction.
4630     {
4631       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4632       {
4633         // Call the virtual member method, which derived classes might override.
4634         return static_cast<int>(obj->on_configure_event(p0));
4635       }
4636       catch(...)
4637       {
4638         Glib::exception_handlers_invoke();
4639       }
4640     }
4641   }
4642 
4643   const auto base = static_cast<BaseClassType*>(
4644         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4645     );
4646 
4647   // Call the original underlying C function:
4648   if(base && base->configure_event)
4649     return (*base->configure_event)(self, p0);
4650 
4651   using RType = gboolean;
4652   return RType();
4653 }
focus_in_event_callback(GtkWidget * self,GdkEventFocus * p0)4654 gboolean Widget_Class::focus_in_event_callback(GtkWidget* self, GdkEventFocus* p0)
4655 {
4656   const auto obj_base = static_cast<Glib::ObjectBase*>(
4657       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4658 
4659   // Non-gtkmmproc-generated custom classes implicitly call the default
4660   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4661   // generated classes can use this optimisation, which avoids the unnecessary
4662   // parameter conversions if there is no possibility of the virtual function
4663   // being overridden:
4664   if(obj_base && obj_base->is_derived_())
4665   {
4666     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4667     if(obj) // This can be NULL during destruction.
4668     {
4669       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4670       {
4671         // Call the virtual member method, which derived classes might override.
4672         return static_cast<int>(obj->on_focus_in_event(p0));
4673       }
4674       catch(...)
4675       {
4676         Glib::exception_handlers_invoke();
4677       }
4678     }
4679   }
4680 
4681   const auto base = static_cast<BaseClassType*>(
4682         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4683     );
4684 
4685   // Call the original underlying C function:
4686   if(base && base->focus_in_event)
4687     return (*base->focus_in_event)(self, p0);
4688 
4689   using RType = gboolean;
4690   return RType();
4691 }
focus_out_event_callback(GtkWidget * self,GdkEventFocus * p0)4692 gboolean Widget_Class::focus_out_event_callback(GtkWidget* self, GdkEventFocus* p0)
4693 {
4694   const auto obj_base = static_cast<Glib::ObjectBase*>(
4695       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4696 
4697   // Non-gtkmmproc-generated custom classes implicitly call the default
4698   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4699   // generated classes can use this optimisation, which avoids the unnecessary
4700   // parameter conversions if there is no possibility of the virtual function
4701   // being overridden:
4702   if(obj_base && obj_base->is_derived_())
4703   {
4704     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4705     if(obj) // This can be NULL during destruction.
4706     {
4707       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4708       {
4709         // Call the virtual member method, which derived classes might override.
4710         return static_cast<int>(obj->on_focus_out_event(p0));
4711       }
4712       catch(...)
4713       {
4714         Glib::exception_handlers_invoke();
4715       }
4716     }
4717   }
4718 
4719   const auto base = static_cast<BaseClassType*>(
4720         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4721     );
4722 
4723   // Call the original underlying C function:
4724   if(base && base->focus_out_event)
4725     return (*base->focus_out_event)(self, p0);
4726 
4727   using RType = gboolean;
4728   return RType();
4729 }
map_event_callback(GtkWidget * self,GdkEventAny * p0)4730 gboolean Widget_Class::map_event_callback(GtkWidget* self, GdkEventAny* p0)
4731 {
4732   const auto obj_base = static_cast<Glib::ObjectBase*>(
4733       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4734 
4735   // Non-gtkmmproc-generated custom classes implicitly call the default
4736   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4737   // generated classes can use this optimisation, which avoids the unnecessary
4738   // parameter conversions if there is no possibility of the virtual function
4739   // being overridden:
4740   if(obj_base && obj_base->is_derived_())
4741   {
4742     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4743     if(obj) // This can be NULL during destruction.
4744     {
4745       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4746       {
4747         // Call the virtual member method, which derived classes might override.
4748         return static_cast<int>(obj->on_map_event(p0));
4749       }
4750       catch(...)
4751       {
4752         Glib::exception_handlers_invoke();
4753       }
4754     }
4755   }
4756 
4757   const auto base = static_cast<BaseClassType*>(
4758         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4759     );
4760 
4761   // Call the original underlying C function:
4762   if(base && base->map_event)
4763     return (*base->map_event)(self, p0);
4764 
4765   using RType = gboolean;
4766   return RType();
4767 }
unmap_event_callback(GtkWidget * self,GdkEventAny * p0)4768 gboolean Widget_Class::unmap_event_callback(GtkWidget* self, GdkEventAny* p0)
4769 {
4770   const auto obj_base = static_cast<Glib::ObjectBase*>(
4771       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4772 
4773   // Non-gtkmmproc-generated custom classes implicitly call the default
4774   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4775   // generated classes can use this optimisation, which avoids the unnecessary
4776   // parameter conversions if there is no possibility of the virtual function
4777   // being overridden:
4778   if(obj_base && obj_base->is_derived_())
4779   {
4780     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4781     if(obj) // This can be NULL during destruction.
4782     {
4783       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4784       {
4785         // Call the virtual member method, which derived classes might override.
4786         return static_cast<int>(obj->on_unmap_event(p0));
4787       }
4788       catch(...)
4789       {
4790         Glib::exception_handlers_invoke();
4791       }
4792     }
4793   }
4794 
4795   const auto base = static_cast<BaseClassType*>(
4796         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4797     );
4798 
4799   // Call the original underlying C function:
4800   if(base && base->unmap_event)
4801     return (*base->unmap_event)(self, p0);
4802 
4803   using RType = gboolean;
4804   return RType();
4805 }
property_notify_event_callback(GtkWidget * self,GdkEventProperty * p0)4806 gboolean Widget_Class::property_notify_event_callback(GtkWidget* self, GdkEventProperty* p0)
4807 {
4808   const auto obj_base = static_cast<Glib::ObjectBase*>(
4809       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4810 
4811   // Non-gtkmmproc-generated custom classes implicitly call the default
4812   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4813   // generated classes can use this optimisation, which avoids the unnecessary
4814   // parameter conversions if there is no possibility of the virtual function
4815   // being overridden:
4816   if(obj_base && obj_base->is_derived_())
4817   {
4818     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4819     if(obj) // This can be NULL during destruction.
4820     {
4821       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4822       {
4823         // Call the virtual member method, which derived classes might override.
4824         return static_cast<int>(obj->on_property_notify_event(p0));
4825       }
4826       catch(...)
4827       {
4828         Glib::exception_handlers_invoke();
4829       }
4830     }
4831   }
4832 
4833   const auto base = static_cast<BaseClassType*>(
4834         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4835     );
4836 
4837   // Call the original underlying C function:
4838   if(base && base->property_notify_event)
4839     return (*base->property_notify_event)(self, p0);
4840 
4841   using RType = gboolean;
4842   return RType();
4843 }
selection_clear_event_callback(GtkWidget * self,GdkEventSelection * p0)4844 gboolean Widget_Class::selection_clear_event_callback(GtkWidget* self, GdkEventSelection* p0)
4845 {
4846   const auto obj_base = static_cast<Glib::ObjectBase*>(
4847       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4848 
4849   // Non-gtkmmproc-generated custom classes implicitly call the default
4850   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4851   // generated classes can use this optimisation, which avoids the unnecessary
4852   // parameter conversions if there is no possibility of the virtual function
4853   // being overridden:
4854   if(obj_base && obj_base->is_derived_())
4855   {
4856     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4857     if(obj) // This can be NULL during destruction.
4858     {
4859       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4860       {
4861         // Call the virtual member method, which derived classes might override.
4862         return static_cast<int>(obj->on_selection_clear_event(p0));
4863       }
4864       catch(...)
4865       {
4866         Glib::exception_handlers_invoke();
4867       }
4868     }
4869   }
4870 
4871   const auto base = static_cast<BaseClassType*>(
4872         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4873     );
4874 
4875   // Call the original underlying C function:
4876   if(base && base->selection_clear_event)
4877     return (*base->selection_clear_event)(self, p0);
4878 
4879   using RType = gboolean;
4880   return RType();
4881 }
selection_request_event_callback(GtkWidget * self,GdkEventSelection * p0)4882 gboolean Widget_Class::selection_request_event_callback(GtkWidget* self, GdkEventSelection* p0)
4883 {
4884   const auto obj_base = static_cast<Glib::ObjectBase*>(
4885       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4886 
4887   // Non-gtkmmproc-generated custom classes implicitly call the default
4888   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4889   // generated classes can use this optimisation, which avoids the unnecessary
4890   // parameter conversions if there is no possibility of the virtual function
4891   // being overridden:
4892   if(obj_base && obj_base->is_derived_())
4893   {
4894     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4895     if(obj) // This can be NULL during destruction.
4896     {
4897       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4898       {
4899         // Call the virtual member method, which derived classes might override.
4900         return static_cast<int>(obj->on_selection_request_event(p0));
4901       }
4902       catch(...)
4903       {
4904         Glib::exception_handlers_invoke();
4905       }
4906     }
4907   }
4908 
4909   const auto base = static_cast<BaseClassType*>(
4910         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4911     );
4912 
4913   // Call the original underlying C function:
4914   if(base && base->selection_request_event)
4915     return (*base->selection_request_event)(self, p0);
4916 
4917   using RType = gboolean;
4918   return RType();
4919 }
selection_notify_event_callback(GtkWidget * self,GdkEventSelection * p0)4920 gboolean Widget_Class::selection_notify_event_callback(GtkWidget* self, GdkEventSelection* p0)
4921 {
4922   const auto obj_base = static_cast<Glib::ObjectBase*>(
4923       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4924 
4925   // Non-gtkmmproc-generated custom classes implicitly call the default
4926   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4927   // generated classes can use this optimisation, which avoids the unnecessary
4928   // parameter conversions if there is no possibility of the virtual function
4929   // being overridden:
4930   if(obj_base && obj_base->is_derived_())
4931   {
4932     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4933     if(obj) // This can be NULL during destruction.
4934     {
4935       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4936       {
4937         // Call the virtual member method, which derived classes might override.
4938         return static_cast<int>(obj->on_selection_notify_event(p0));
4939       }
4940       catch(...)
4941       {
4942         Glib::exception_handlers_invoke();
4943       }
4944     }
4945   }
4946 
4947   const auto base = static_cast<BaseClassType*>(
4948         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4949     );
4950 
4951   // Call the original underlying C function:
4952   if(base && base->selection_notify_event)
4953     return (*base->selection_notify_event)(self, p0);
4954 
4955   using RType = gboolean;
4956   return RType();
4957 }
proximity_in_event_callback(GtkWidget * self,GdkEventProximity * p0)4958 gboolean Widget_Class::proximity_in_event_callback(GtkWidget* self, GdkEventProximity* p0)
4959 {
4960   const auto obj_base = static_cast<Glib::ObjectBase*>(
4961       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
4962 
4963   // Non-gtkmmproc-generated custom classes implicitly call the default
4964   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
4965   // generated classes can use this optimisation, which avoids the unnecessary
4966   // parameter conversions if there is no possibility of the virtual function
4967   // being overridden:
4968   if(obj_base && obj_base->is_derived_())
4969   {
4970     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
4971     if(obj) // This can be NULL during destruction.
4972     {
4973       try // Trap C++ exceptions which would normally be lost because this is a C callback.
4974       {
4975         // Call the virtual member method, which derived classes might override.
4976         return static_cast<int>(obj->on_proximity_in_event(p0));
4977       }
4978       catch(...)
4979       {
4980         Glib::exception_handlers_invoke();
4981       }
4982     }
4983   }
4984 
4985   const auto base = static_cast<BaseClassType*>(
4986         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
4987     );
4988 
4989   // Call the original underlying C function:
4990   if(base && base->proximity_in_event)
4991     return (*base->proximity_in_event)(self, p0);
4992 
4993   using RType = gboolean;
4994   return RType();
4995 }
proximity_out_event_callback(GtkWidget * self,GdkEventProximity * p0)4996 gboolean Widget_Class::proximity_out_event_callback(GtkWidget* self, GdkEventProximity* p0)
4997 {
4998   const auto obj_base = static_cast<Glib::ObjectBase*>(
4999       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5000 
5001   // Non-gtkmmproc-generated custom classes implicitly call the default
5002   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5003   // generated classes can use this optimisation, which avoids the unnecessary
5004   // parameter conversions if there is no possibility of the virtual function
5005   // being overridden:
5006   if(obj_base && obj_base->is_derived_())
5007   {
5008     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5009     if(obj) // This can be NULL during destruction.
5010     {
5011       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5012       {
5013         // Call the virtual member method, which derived classes might override.
5014         return static_cast<int>(obj->on_proximity_out_event(p0));
5015       }
5016       catch(...)
5017       {
5018         Glib::exception_handlers_invoke();
5019       }
5020     }
5021   }
5022 
5023   const auto base = static_cast<BaseClassType*>(
5024         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5025     );
5026 
5027   // Call the original underlying C function:
5028   if(base && base->proximity_out_event)
5029     return (*base->proximity_out_event)(self, p0);
5030 
5031   using RType = gboolean;
5032   return RType();
5033 }
5034 #ifndef GTKMM_DISABLE_DEPRECATED
5035 
visibility_notify_event_callback(GtkWidget * self,GdkEventVisibility * p0)5036 gboolean Widget_Class::visibility_notify_event_callback(GtkWidget* self, GdkEventVisibility* p0)
5037 {
5038   const auto obj_base = static_cast<Glib::ObjectBase*>(
5039       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5040 
5041   // Non-gtkmmproc-generated custom classes implicitly call the default
5042   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5043   // generated classes can use this optimisation, which avoids the unnecessary
5044   // parameter conversions if there is no possibility of the virtual function
5045   // being overridden:
5046   if(obj_base && obj_base->is_derived_())
5047   {
5048     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5049     if(obj) // This can be NULL during destruction.
5050     {
5051       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5052       {
5053         // Call the virtual member method, which derived classes might override.
5054         return static_cast<int>(obj->on_visibility_notify_event(p0));
5055       }
5056       catch(...)
5057       {
5058         Glib::exception_handlers_invoke();
5059       }
5060     }
5061   }
5062 
5063   const auto base = static_cast<BaseClassType*>(
5064         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5065     );
5066 
5067   // Call the original underlying C function:
5068   if(base && base->visibility_notify_event)
5069     return (*base->visibility_notify_event)(self, p0);
5070 
5071   using RType = gboolean;
5072   return RType();
5073 }
5074 #endif // GTKMM_DISABLE_DEPRECATED
5075 
window_state_event_callback(GtkWidget * self,GdkEventWindowState * p0)5076 gboolean Widget_Class::window_state_event_callback(GtkWidget* self, GdkEventWindowState* p0)
5077 {
5078   const auto obj_base = static_cast<Glib::ObjectBase*>(
5079       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5080 
5081   // Non-gtkmmproc-generated custom classes implicitly call the default
5082   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5083   // generated classes can use this optimisation, which avoids the unnecessary
5084   // parameter conversions if there is no possibility of the virtual function
5085   // being overridden:
5086   if(obj_base && obj_base->is_derived_())
5087   {
5088     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5089     if(obj) // This can be NULL during destruction.
5090     {
5091       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5092       {
5093         // Call the virtual member method, which derived classes might override.
5094         return static_cast<int>(obj->on_window_state_event(p0));
5095       }
5096       catch(...)
5097       {
5098         Glib::exception_handlers_invoke();
5099       }
5100     }
5101   }
5102 
5103   const auto base = static_cast<BaseClassType*>(
5104         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5105     );
5106 
5107   // Call the original underlying C function:
5108   if(base && base->window_state_event)
5109     return (*base->window_state_event)(self, p0);
5110 
5111   using RType = gboolean;
5112   return RType();
5113 }
selection_received_callback(GtkWidget * self,GtkSelectionData * p0,guint p1)5114 void Widget_Class::selection_received_callback(GtkWidget* self, GtkSelectionData* p0, guint p1)
5115 {
5116   const auto obj_base = static_cast<Glib::ObjectBase*>(
5117       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5118 
5119   // Non-gtkmmproc-generated custom classes implicitly call the default
5120   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5121   // generated classes can use this optimisation, which avoids the unnecessary
5122   // parameter conversions if there is no possibility of the virtual function
5123   // being overridden:
5124   if(obj_base && obj_base->is_derived_())
5125   {
5126     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5127     if(obj) // This can be NULL during destruction.
5128     {
5129       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5130       {
5131         // Call the virtual member method, which derived classes might override.
5132         obj->on_selection_received(SelectionData_WithoutOwnership(p0)
5133 , p1);
5134         return;
5135       }
5136       catch(...)
5137       {
5138         Glib::exception_handlers_invoke();
5139       }
5140     }
5141   }
5142 
5143   const auto base = static_cast<BaseClassType*>(
5144         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5145     );
5146 
5147   // Call the original underlying C function:
5148   if(base && base->selection_received)
5149     (*base->selection_received)(self, p0, p1);
5150 }
drag_begin_callback(GtkWidget * self,GdkDragContext * p0)5151 void Widget_Class::drag_begin_callback(GtkWidget* self, GdkDragContext* p0)
5152 {
5153   const auto obj_base = static_cast<Glib::ObjectBase*>(
5154       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5155 
5156   // Non-gtkmmproc-generated custom classes implicitly call the default
5157   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5158   // generated classes can use this optimisation, which avoids the unnecessary
5159   // parameter conversions if there is no possibility of the virtual function
5160   // being overridden:
5161   if(obj_base && obj_base->is_derived_())
5162   {
5163     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5164     if(obj) // This can be NULL during destruction.
5165     {
5166       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5167       {
5168         // Call the virtual member method, which derived classes might override.
5169         obj->on_drag_begin(Glib::wrap(p0, true)
5170 );
5171         return;
5172       }
5173       catch(...)
5174       {
5175         Glib::exception_handlers_invoke();
5176       }
5177     }
5178   }
5179 
5180   const auto base = static_cast<BaseClassType*>(
5181         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5182     );
5183 
5184   // Call the original underlying C function:
5185   if(base && base->drag_begin)
5186     (*base->drag_begin)(self, p0);
5187 }
drag_end_callback(GtkWidget * self,GdkDragContext * p0)5188 void Widget_Class::drag_end_callback(GtkWidget* self, GdkDragContext* p0)
5189 {
5190   const auto obj_base = static_cast<Glib::ObjectBase*>(
5191       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5192 
5193   // Non-gtkmmproc-generated custom classes implicitly call the default
5194   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5195   // generated classes can use this optimisation, which avoids the unnecessary
5196   // parameter conversions if there is no possibility of the virtual function
5197   // being overridden:
5198   if(obj_base && obj_base->is_derived_())
5199   {
5200     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5201     if(obj) // This can be NULL during destruction.
5202     {
5203       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5204       {
5205         // Call the virtual member method, which derived classes might override.
5206         obj->on_drag_end(Glib::wrap(p0, true)
5207 );
5208         return;
5209       }
5210       catch(...)
5211       {
5212         Glib::exception_handlers_invoke();
5213       }
5214     }
5215   }
5216 
5217   const auto base = static_cast<BaseClassType*>(
5218         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5219     );
5220 
5221   // Call the original underlying C function:
5222   if(base && base->drag_end)
5223     (*base->drag_end)(self, p0);
5224 }
drag_data_delete_callback(GtkWidget * self,GdkDragContext * p0)5225 void Widget_Class::drag_data_delete_callback(GtkWidget* self, GdkDragContext* p0)
5226 {
5227   const auto obj_base = static_cast<Glib::ObjectBase*>(
5228       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5229 
5230   // Non-gtkmmproc-generated custom classes implicitly call the default
5231   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5232   // generated classes can use this optimisation, which avoids the unnecessary
5233   // parameter conversions if there is no possibility of the virtual function
5234   // being overridden:
5235   if(obj_base && obj_base->is_derived_())
5236   {
5237     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5238     if(obj) // This can be NULL during destruction.
5239     {
5240       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5241       {
5242         // Call the virtual member method, which derived classes might override.
5243         obj->on_drag_data_delete(Glib::wrap(p0, true)
5244 );
5245         return;
5246       }
5247       catch(...)
5248       {
5249         Glib::exception_handlers_invoke();
5250       }
5251     }
5252   }
5253 
5254   const auto base = static_cast<BaseClassType*>(
5255         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5256     );
5257 
5258   // Call the original underlying C function:
5259   if(base && base->drag_data_delete)
5260     (*base->drag_data_delete)(self, p0);
5261 }
drag_leave_callback(GtkWidget * self,GdkDragContext * p0,guint p1)5262 void Widget_Class::drag_leave_callback(GtkWidget* self, GdkDragContext* p0, guint p1)
5263 {
5264   const auto obj_base = static_cast<Glib::ObjectBase*>(
5265       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5266 
5267   // Non-gtkmmproc-generated custom classes implicitly call the default
5268   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5269   // generated classes can use this optimisation, which avoids the unnecessary
5270   // parameter conversions if there is no possibility of the virtual function
5271   // being overridden:
5272   if(obj_base && obj_base->is_derived_())
5273   {
5274     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5275     if(obj) // This can be NULL during destruction.
5276     {
5277       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5278       {
5279         // Call the virtual member method, which derived classes might override.
5280         obj->on_drag_leave(Glib::wrap(p0, true)
5281 , p1);
5282         return;
5283       }
5284       catch(...)
5285       {
5286         Glib::exception_handlers_invoke();
5287       }
5288     }
5289   }
5290 
5291   const auto base = static_cast<BaseClassType*>(
5292         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5293     );
5294 
5295   // Call the original underlying C function:
5296   if(base && base->drag_leave)
5297     (*base->drag_leave)(self, p0, p1);
5298 }
drag_motion_callback(GtkWidget * self,GdkDragContext * p0,gint p1,gint p2,guint p3)5299 gboolean Widget_Class::drag_motion_callback(GtkWidget* self, GdkDragContext* p0, gint p1, gint p2, guint p3)
5300 {
5301   const auto obj_base = static_cast<Glib::ObjectBase*>(
5302       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5303 
5304   // Non-gtkmmproc-generated custom classes implicitly call the default
5305   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5306   // generated classes can use this optimisation, which avoids the unnecessary
5307   // parameter conversions if there is no possibility of the virtual function
5308   // being overridden:
5309   if(obj_base && obj_base->is_derived_())
5310   {
5311     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5312     if(obj) // This can be NULL during destruction.
5313     {
5314       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5315       {
5316         // Call the virtual member method, which derived classes might override.
5317         return static_cast<int>(obj->on_drag_motion(Glib::wrap(p0, true)
5318 , p1
5319 , p2
5320 , p3));
5321       }
5322       catch(...)
5323       {
5324         Glib::exception_handlers_invoke();
5325       }
5326     }
5327   }
5328 
5329   const auto base = static_cast<BaseClassType*>(
5330         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5331     );
5332 
5333   // Call the original underlying C function:
5334   if(base && base->drag_motion)
5335     return (*base->drag_motion)(self, p0, p1, p2, p3);
5336 
5337   using RType = gboolean;
5338   return RType();
5339 }
drag_drop_callback(GtkWidget * self,GdkDragContext * p0,gint p1,gint p2,guint p3)5340 gboolean Widget_Class::drag_drop_callback(GtkWidget* self, GdkDragContext* p0, gint p1, gint p2, guint p3)
5341 {
5342   const auto obj_base = static_cast<Glib::ObjectBase*>(
5343       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5344 
5345   // Non-gtkmmproc-generated custom classes implicitly call the default
5346   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5347   // generated classes can use this optimisation, which avoids the unnecessary
5348   // parameter conversions if there is no possibility of the virtual function
5349   // being overridden:
5350   if(obj_base && obj_base->is_derived_())
5351   {
5352     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5353     if(obj) // This can be NULL during destruction.
5354     {
5355       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5356       {
5357         // Call the virtual member method, which derived classes might override.
5358         return static_cast<int>(obj->on_drag_drop(Glib::wrap(p0, true)
5359 , p1
5360 , p2
5361 , p3));
5362       }
5363       catch(...)
5364       {
5365         Glib::exception_handlers_invoke();
5366       }
5367     }
5368   }
5369 
5370   const auto base = static_cast<BaseClassType*>(
5371         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5372     );
5373 
5374   // Call the original underlying C function:
5375   if(base && base->drag_drop)
5376     return (*base->drag_drop)(self, p0, p1, p2, p3);
5377 
5378   using RType = gboolean;
5379   return RType();
5380 }
drag_data_received_callback(GtkWidget * self,GdkDragContext * p0,gint p1,gint p2,GtkSelectionData * p3,guint p4,guint p5)5381 void Widget_Class::drag_data_received_callback(GtkWidget* self, GdkDragContext* p0, gint p1, gint p2, GtkSelectionData* p3, guint p4, guint p5)
5382 {
5383   const auto obj_base = static_cast<Glib::ObjectBase*>(
5384       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5385 
5386   // Non-gtkmmproc-generated custom classes implicitly call the default
5387   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5388   // generated classes can use this optimisation, which avoids the unnecessary
5389   // parameter conversions if there is no possibility of the virtual function
5390   // being overridden:
5391   if(obj_base && obj_base->is_derived_())
5392   {
5393     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5394     if(obj) // This can be NULL during destruction.
5395     {
5396       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5397       {
5398         // Call the virtual member method, which derived classes might override.
5399         obj->on_drag_data_received(Glib::wrap(p0, true)
5400 , p1
5401 , p2
5402 , SelectionData_WithoutOwnership(p3)
5403 , p4, p5);
5404         return;
5405       }
5406       catch(...)
5407       {
5408         Glib::exception_handlers_invoke();
5409       }
5410     }
5411   }
5412 
5413   const auto base = static_cast<BaseClassType*>(
5414         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5415     );
5416 
5417   // Call the original underlying C function:
5418   if(base && base->drag_data_received)
5419     (*base->drag_data_received)(self, p0, p1, p2, p3, p4, p5);
5420 }
screen_changed_callback(GtkWidget * self,GdkScreen * p0)5421 void Widget_Class::screen_changed_callback(GtkWidget* self, GdkScreen* p0)
5422 {
5423   const auto obj_base = static_cast<Glib::ObjectBase*>(
5424       Glib::ObjectBase::_get_current_wrapper((GObject*)self));
5425 
5426   // Non-gtkmmproc-generated custom classes implicitly call the default
5427   // Glib::ObjectBase constructor, which sets is_derived_. But gtkmmproc-
5428   // generated classes can use this optimisation, which avoids the unnecessary
5429   // parameter conversions if there is no possibility of the virtual function
5430   // being overridden:
5431   if(obj_base && obj_base->is_derived_())
5432   {
5433     const auto obj = dynamic_cast<CppObjectType* const>(obj_base);
5434     if(obj) // This can be NULL during destruction.
5435     {
5436       try // Trap C++ exceptions which would normally be lost because this is a C callback.
5437       {
5438         // Call the virtual member method, which derived classes might override.
5439         obj->on_screen_changed(Glib::wrap(p0, true)
5440 );
5441         return;
5442       }
5443       catch(...)
5444       {
5445         Glib::exception_handlers_invoke();
5446       }
5447     }
5448   }
5449 
5450   const auto base = static_cast<BaseClassType*>(
5451         g_type_class_peek_parent(G_OBJECT_GET_CLASS(self)) // Get the parent class of the object class (The original underlying C class).
5452     );
5453 
5454   // Call the original underlying C function:
5455   if(base && base->screen_changed)
5456     (*base->screen_changed)(self, p0);
5457 }
5458 
5459 
wrap_new(GObject * o)5460 Glib::ObjectBase* Widget_Class::wrap_new(GObject* o)
5461 {
5462   return manage(new Widget((GtkWidget*)(o)));
5463 
5464 }
5465 
5466 
5467 /* The implementation: */
5468 
Widget(const Glib::ConstructParams & construct_params)5469 Widget::Widget(const Glib::ConstructParams& construct_params)
5470 :
5471   Object(construct_params)
5472 {
5473   }
5474 
Widget(GtkWidget * castitem)5475 Widget::Widget(GtkWidget* castitem)
5476 :
5477   Object((GObject*)(castitem))
5478 {
5479   }
5480 
5481 
Widget(Widget && src)5482 Widget::Widget(Widget&& src) noexcept
5483 : Object(std::move(src))
5484   , Buildable(std::move(src))
5485 #ifdef GTKMM_ATKMM_ENABLED
5486   , Atk::Implementor(std::move(src))
5487 
5488 #endif // GTKMM_ATKMM_ENABLED
5489 {}
5490 
operator =(Widget && src)5491 Widget& Widget::operator=(Widget&& src) noexcept
5492 {
5493   Object::operator=(std::move(src));
5494   Buildable::operator=(std::move(src));
5495 #ifdef GTKMM_ATKMM_ENABLED
5496   Atk::Implementor::operator=(std::move(src));
5497 
5498 #endif // GTKMM_ATKMM_ENABLED
5499   return *this;
5500 }
5501 
5502 Widget::CppClassType Widget::widget_class_; // initialize static member
5503 
get_type()5504 GType Widget::get_type()
5505 {
5506   return widget_class_.init().get_type();
5507 }
5508 
5509 
get_base_type()5510 GType Widget::get_base_type()
5511 {
5512   return gtk_widget_get_type();
5513 }
5514 
5515 
show()5516 void Widget::show()
5517 {
5518   gtk_widget_show(gobj());
5519 }
5520 
show_now()5521 void Widget::show_now()
5522 {
5523   gtk_widget_show_now(gobj());
5524 }
5525 
hide()5526 void Widget::hide()
5527 {
5528   gtk_widget_hide(gobj());
5529 }
5530 
show_all()5531 void Widget::show_all()
5532 {
5533   gtk_widget_show_all(gobj());
5534 }
5535 
queue_draw()5536 void Widget::queue_draw()
5537 {
5538   gtk_widget_queue_draw(gobj());
5539 }
5540 
queue_draw_area(int x,int y,int width,int height)5541 void Widget::queue_draw_area(int x, int y, int width, int height)
5542 {
5543   gtk_widget_queue_draw_area(gobj(), x, y, width, height);
5544 }
5545 
queue_draw_region(const::Cairo::RefPtr<const::Cairo::Region> & region)5546 void Widget::queue_draw_region(const ::Cairo::RefPtr<const ::Cairo::Region>& region)
5547 {
5548   gtk_widget_queue_draw_region(gobj(), ((region) ? (region)->cobj() : nullptr));
5549 }
5550 
queue_resize()5551 void Widget::queue_resize()
5552 {
5553   gtk_widget_queue_resize(gobj());
5554 }
5555 
queue_allocate()5556 void Widget::queue_allocate()
5557 {
5558   gtk_widget_queue_allocate(gobj());
5559 }
5560 
size_allocate(const Allocation & allocation)5561 void Widget::size_allocate(const Allocation& allocation)
5562 {
5563   gtk_widget_size_allocate(gobj(), (GtkAllocation*)(allocation.gobj()));
5564 }
5565 
size_allocate(const Allocation & allocation,int baseline)5566 void Widget::size_allocate(const Allocation& allocation, int baseline)
5567 {
5568   gtk_widget_size_allocate_with_baseline(gobj(), (GtkAllocation*)(allocation.gobj()), baseline);
5569 }
5570 
get_request_mode() const5571 SizeRequestMode Widget::get_request_mode() const
5572 {
5573   return ((SizeRequestMode)(gtk_widget_get_request_mode(const_cast<GtkWidget*>(gobj()))));
5574 }
5575 
get_preferred_width(int & minimum_width,int & natural_width) const5576 void Widget::get_preferred_width(int& minimum_width, int& natural_width) const
5577 {
5578   gtk_widget_get_preferred_width(const_cast<GtkWidget*>(gobj()), &(minimum_width), &(natural_width));
5579 }
5580 
get_preferred_height_for_width(int width,int & minimum_height,int & natural_height) const5581 void Widget::get_preferred_height_for_width(int width, int& minimum_height, int& natural_height) const
5582 {
5583   gtk_widget_get_preferred_height_for_width(const_cast<GtkWidget*>(gobj()), width, &(minimum_height), &(natural_height));
5584 }
5585 
get_preferred_height_for_width(int width,int & minimum_height,int & natural_height,int & minimum_baseline,int & natural_baseline) const5586 void Widget::get_preferred_height_for_width(int width, int& minimum_height, int& natural_height, int& minimum_baseline, int& natural_baseline) const
5587 {
5588   gtk_widget_get_preferred_height_and_baseline_for_width(const_cast<GtkWidget*>(gobj()), width, &(minimum_height), &(natural_height), &(minimum_baseline), &(natural_baseline));
5589 }
5590 
get_preferred_height(int & minimum_height,int & natural_height) const5591 void Widget::get_preferred_height(int& minimum_height, int& natural_height) const
5592 {
5593   gtk_widget_get_preferred_height(const_cast<GtkWidget*>(gobj()), &(minimum_height), &(natural_height));
5594 }
5595 
get_preferred_width_for_height(int height,int & minimum_width,int & natural_width) const5596 void Widget::get_preferred_width_for_height(int height, int& minimum_width, int& natural_width) const
5597 {
5598   gtk_widget_get_preferred_width_for_height(const_cast<GtkWidget*>(gobj()), height, &(minimum_width), &(natural_width));
5599 }
5600 
get_preferred_size(Requisition & minimum_size,Requisition & natural_size) const5601 void Widget::get_preferred_size(Requisition& minimum_size, Requisition& natural_size) const
5602 {
5603   gtk_widget_get_preferred_size(const_cast<GtkWidget*>(gobj()), (GtkRequisition*)(&minimum_size), (GtkRequisition*)(&natural_size));
5604 }
5605 
add_accelerator(const Glib::ustring & accel_signal,const Glib::RefPtr<AccelGroup> & accel_group,guint accel_key,Gdk::ModifierType accel_mods,AccelFlags accel_flags)5606 void Widget::add_accelerator(const Glib::ustring& accel_signal, const Glib::RefPtr<AccelGroup>& accel_group, guint accel_key, Gdk::ModifierType accel_mods, AccelFlags accel_flags)
5607 {
5608   gtk_widget_add_accelerator(gobj(), accel_signal.c_str(), Glib::unwrap(accel_group), accel_key, ((GdkModifierType)(accel_mods)), ((GtkAccelFlags)(accel_flags)));
5609 }
5610 
remove_accelerator(const Glib::RefPtr<AccelGroup> & accel_group,guint accel_key,Gdk::ModifierType accel_mods)5611 bool Widget::remove_accelerator(const Glib::RefPtr<AccelGroup>& accel_group, guint accel_key, Gdk::ModifierType accel_mods)
5612 {
5613   return gtk_widget_remove_accelerator(gobj(), Glib::unwrap(accel_group), accel_key, ((GdkModifierType)(accel_mods)));
5614 }
5615 
set_accel_path(const Glib::ustring & accel_path,const Glib::RefPtr<AccelGroup> & accel_group)5616 void Widget::set_accel_path(const Glib::ustring& accel_path, const Glib::RefPtr<AccelGroup>& accel_group)
5617 {
5618   gtk_widget_set_accel_path(gobj(), accel_path.c_str(), Glib::unwrap(accel_group));
5619 }
5620 
mnemonic_activate(bool group_cycling)5621 bool Widget::mnemonic_activate(bool group_cycling)
5622 {
5623   return gtk_widget_mnemonic_activate(gobj(), static_cast<int>(group_cycling));
5624 }
5625 
event(GdkEvent * gdk_event)5626 bool Widget::event(GdkEvent* gdk_event)
5627 {
5628   return gtk_widget_event(gobj(), gdk_event);
5629 }
5630 
5631 #ifndef GTKMM_DISABLE_DEPRECATED
5632 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
send_expose(GdkEvent * gdk_event)5633 int Widget::send_expose(GdkEvent* gdk_event)
5634 {
5635   return gtk_widget_send_expose(gobj(), gdk_event);
5636 }
5637 G_GNUC_END_IGNORE_DEPRECATIONS
5638 #endif // GTKMM_DISABLE_DEPRECATED
5639 
send_focus_change(GdkEvent * gdk_event)5640 bool Widget::send_focus_change(GdkEvent* gdk_event)
5641 {
5642   return gtk_widget_send_focus_change(gobj(), gdk_event);
5643 }
5644 
activate()5645 bool Widget::activate()
5646 {
5647   return gtk_widget_activate(gobj());
5648 }
5649 
intersect(const Gdk::Rectangle & area,Gdk::Rectangle & intersection) const5650 bool Widget::intersect(const Gdk::Rectangle& area, Gdk::Rectangle& intersection) const
5651 {
5652   return gtk_widget_intersect(const_cast<GtkWidget*>(gobj()), (area).gobj(), (intersection).gobj());
5653 }
5654 
5655 #ifndef GTKMM_DISABLE_DEPRECATED
5656 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
region_intersect(const::Cairo::RefPtr<::Cairo::Region> & region) const5657 ::Cairo::RefPtr< ::Cairo::Region> Widget::region_intersect(const ::Cairo::RefPtr< ::Cairo::Region>& region) const
5658 {
5659   return ::Cairo::RefPtr< ::Cairo::Region>(new ::Cairo::Region(gtk_widget_region_intersect(const_cast<GtkWidget*>(gobj()), ((region) ? (region)->cobj() : nullptr)), true /* do not take ref */));
5660 }
5661 G_GNUC_END_IGNORE_DEPRECATIONS
5662 #endif // GTKMM_DISABLE_DEPRECATED
5663 
freeze_child_notify()5664 void Widget::freeze_child_notify()
5665 {
5666   gtk_widget_freeze_child_notify(gobj());
5667 }
5668 
child_notify(const Glib::ustring & child_property)5669 void Widget::child_notify(const Glib::ustring& child_property)
5670 {
5671   gtk_widget_child_notify(gobj(), child_property.c_str());
5672 }
5673 
thaw_child_notify()5674 void Widget::thaw_child_notify()
5675 {
5676   gtk_widget_thaw_child_notify(gobj());
5677 }
5678 
set_can_focus(bool can_focus)5679 void Widget::set_can_focus(bool can_focus)
5680 {
5681   gtk_widget_set_can_focus(gobj(), static_cast<int>(can_focus));
5682 }
5683 
get_can_focus() const5684 bool Widget::get_can_focus() const
5685 {
5686   return gtk_widget_get_can_focus(const_cast<GtkWidget*>(gobj()));
5687 }
5688 
has_focus() const5689 bool Widget::has_focus() const
5690 {
5691   return gtk_widget_has_focus(const_cast<GtkWidget*>(gobj()));
5692 }
5693 
is_focus() const5694 bool Widget::is_focus() const
5695 {
5696   return gtk_widget_is_focus(const_cast<GtkWidget*>(gobj()));
5697 }
5698 
has_visible_focus() const5699 bool Widget::has_visible_focus() const
5700 {
5701   return gtk_widget_has_visible_focus(const_cast<GtkWidget*>(gobj()));
5702 }
5703 
grab_focus()5704 void Widget::grab_focus()
5705 {
5706   gtk_widget_grab_focus(gobj());
5707 }
5708 
set_focus_on_click(bool focus_on_click)5709 void Widget::set_focus_on_click(bool focus_on_click)
5710 {
5711   gtk_widget_set_focus_on_click(gobj(), static_cast<int>(focus_on_click));
5712 }
5713 
get_focus_on_click() const5714 bool Widget::get_focus_on_click() const
5715 {
5716   return gtk_widget_get_focus_on_click(const_cast<GtkWidget*>(gobj()));
5717 }
5718 
set_can_default(bool can_default)5719 void Widget::set_can_default(bool can_default)
5720 {
5721   gtk_widget_set_can_default(gobj(), static_cast<int>(can_default));
5722 }
5723 
get_can_default() const5724 bool Widget::get_can_default() const
5725 {
5726   return gtk_widget_get_can_default(const_cast<GtkWidget*>(gobj()));
5727 }
5728 
has_default() const5729 bool Widget::has_default() const
5730 {
5731   return gtk_widget_has_default(const_cast<GtkWidget*>(gobj()));
5732 }
5733 
grab_default()5734 void Widget::grab_default()
5735 {
5736   gtk_widget_grab_default(gobj());
5737 }
5738 
set_receives_default(bool receives_default)5739 void Widget::set_receives_default(bool receives_default)
5740 {
5741   gtk_widget_set_receives_default(gobj(), static_cast<int>(receives_default));
5742 }
5743 
get_receives_default() const5744 bool Widget::get_receives_default() const
5745 {
5746   return gtk_widget_get_receives_default(const_cast<GtkWidget*>(gobj()));
5747 }
5748 
has_grab() const5749 bool Widget::has_grab() const
5750 {
5751   return gtk_widget_has_grab(const_cast<GtkWidget*>(gobj()));
5752 }
5753 
device_is_shadowed(const Glib::RefPtr<const Gdk::Device> & device)5754 bool Widget::device_is_shadowed(const Glib::RefPtr<const Gdk::Device>& device)
5755 {
5756   return gtk_widget_device_is_shadowed(gobj(), const_cast<GdkDevice*>(Glib::unwrap<Gdk::Device>(device)));
5757 }
5758 
set_name(const Glib::ustring & name)5759 void Widget::set_name(const Glib::ustring& name)
5760 {
5761   gtk_widget_set_name(gobj(), name.c_str());
5762 }
5763 
get_name() const5764 Glib::ustring Widget::get_name() const
5765 {
5766   return Glib::convert_const_gchar_ptr_to_ustring(gtk_widget_get_name(const_cast<GtkWidget*>(gobj())));
5767 }
5768 
5769 #ifndef GTKMM_DISABLE_DEPRECATED
5770 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
set_state(StateType state)5771 void Widget::set_state(StateType state)
5772 {
5773   gtk_widget_set_state(gobj(), ((GtkStateType)(state)));
5774 }
5775 G_GNUC_END_IGNORE_DEPRECATIONS
5776 #endif // GTKMM_DISABLE_DEPRECATED
5777 
5778 #ifndef GTKMM_DISABLE_DEPRECATED
5779 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
get_state() const5780 StateType Widget::get_state() const
5781 {
5782   return ((StateType)(gtk_widget_get_state(const_cast<GtkWidget*>(gobj()))));
5783 }
5784 G_GNUC_END_IGNORE_DEPRECATIONS
5785 #endif // GTKMM_DISABLE_DEPRECATED
5786 
set_state_flags(StateFlags flags,bool clear)5787 void Widget::set_state_flags(StateFlags flags, bool clear)
5788 {
5789   gtk_widget_set_state_flags(gobj(), ((GtkStateFlags)(flags)), static_cast<int>(clear));
5790 }
5791 
unset_state_flags(StateFlags flags)5792 void Widget::unset_state_flags(StateFlags flags)
5793 {
5794   gtk_widget_unset_state_flags(gobj(), ((GtkStateFlags)(flags)));
5795 }
5796 
get_state_flags() const5797 StateFlags Widget::get_state_flags() const
5798 {
5799   return ((StateFlags)(gtk_widget_get_state_flags(const_cast<GtkWidget*>(gobj()))));
5800 }
5801 
set_sensitive(bool sensitive)5802 void Widget::set_sensitive(bool sensitive)
5803 {
5804   gtk_widget_set_sensitive(gobj(), static_cast<int>(sensitive));
5805 }
5806 
get_sensitive() const5807 bool Widget::get_sensitive() const
5808 {
5809   return gtk_widget_get_sensitive(const_cast<GtkWidget*>(gobj()));
5810 }
5811 
is_sensitive() const5812 bool Widget::is_sensitive() const
5813 {
5814   return gtk_widget_is_sensitive(const_cast<GtkWidget*>(gobj()));
5815 }
5816 
set_visible(bool visible)5817 void Widget::set_visible(bool visible)
5818 {
5819   gtk_widget_set_visible(gobj(), static_cast<int>(visible));
5820 }
5821 
get_visible() const5822 bool Widget::get_visible() const
5823 {
5824   return gtk_widget_get_visible(const_cast<GtkWidget*>(gobj()));
5825 }
5826 
is_visible() const5827 bool Widget::is_visible() const
5828 {
5829   return gtk_widget_is_visible(const_cast<GtkWidget*>(gobj()));
5830 }
5831 
get_has_window() const5832 bool Widget::get_has_window() const
5833 {
5834   return gtk_widget_get_has_window(const_cast<GtkWidget*>(gobj()));
5835 }
5836 
get_is_toplevel() const5837 bool Widget::get_is_toplevel() const
5838 {
5839   return gtk_widget_is_toplevel(const_cast<GtkWidget*>(gobj()));
5840 }
5841 
get_is_drawable() const5842 bool Widget::get_is_drawable() const
5843 {
5844   return gtk_widget_is_drawable(const_cast<GtkWidget*>(gobj()));
5845 }
5846 
get_realized() const5847 bool Widget::get_realized() const
5848 {
5849   return gtk_widget_get_realized(const_cast<GtkWidget*>(gobj()));
5850 }
5851 
get_mapped() const5852 bool Widget::get_mapped() const
5853 {
5854   return gtk_widget_get_mapped(const_cast<GtkWidget*>(gobj()));
5855 }
5856 
set_app_paintable(bool app_paintable)5857 void Widget::set_app_paintable(bool app_paintable)
5858 {
5859   gtk_widget_set_app_paintable(gobj(), static_cast<int>(app_paintable));
5860 }
5861 
get_app_paintable() const5862 bool Widget::get_app_paintable() const
5863 {
5864   return gtk_widget_get_app_paintable(const_cast<GtkWidget*>(gobj()));
5865 }
5866 
5867 #ifndef GTKMM_DISABLE_DEPRECATED
5868 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
set_double_buffered(bool double_buffered)5869 void Widget::set_double_buffered(bool double_buffered)
5870 {
5871   gtk_widget_set_double_buffered(gobj(), static_cast<int>(double_buffered));
5872 }
5873 G_GNUC_END_IGNORE_DEPRECATIONS
5874 #endif // GTKMM_DISABLE_DEPRECATED
5875 
5876 #ifndef GTKMM_DISABLE_DEPRECATED
5877 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
get_double_buffered() const5878 bool Widget::get_double_buffered() const
5879 {
5880   return gtk_widget_get_double_buffered(const_cast<GtkWidget*>(gobj()));
5881 }
5882 G_GNUC_END_IGNORE_DEPRECATIONS
5883 #endif // GTKMM_DISABLE_DEPRECATED
5884 
set_redraw_on_allocate(bool redraw_on_allocate)5885 void Widget::set_redraw_on_allocate(bool redraw_on_allocate)
5886 {
5887   gtk_widget_set_redraw_on_allocate(gobj(), static_cast<int>(redraw_on_allocate));
5888 }
5889 
set_child_visible(bool visible)5890 void Widget::set_child_visible(bool visible)
5891 {
5892   gtk_widget_set_child_visible(gobj(), static_cast<int>(visible));
5893 }
5894 
get_child_visible() const5895 bool Widget::get_child_visible() const
5896 {
5897   return gtk_widget_get_child_visible(const_cast<GtkWidget*>(gobj()));
5898 }
5899 
get_window()5900 Glib::RefPtr<Gdk::Window> Widget::get_window()
5901 {
5902   Glib::RefPtr<Gdk::Window> retvalue = Glib::wrap(gtk_widget_get_window(gobj()));
5903   if(retvalue)
5904     retvalue->reference(); //The function does not do a ref for us.
5905   return retvalue;
5906 }
5907 
get_window() const5908 Glib::RefPtr<const Gdk::Window> Widget::get_window() const
5909 {
5910   return const_cast<Widget*>(this)->get_window();
5911 }
5912 
register_window(const Glib::RefPtr<Gdk::Window> & window)5913 void Widget::register_window(const Glib::RefPtr<Gdk::Window>& window)
5914 {
5915   gtk_widget_register_window(gobj(), Glib::unwrap(window));
5916 }
5917 
unregister_window(const Glib::RefPtr<Gdk::Window> & window)5918 void Widget::unregister_window(const Glib::RefPtr<Gdk::Window>& window)
5919 {
5920   gtk_widget_unregister_window(gobj(), Glib::unwrap(window));
5921 }
5922 
get_allocated_width() const5923 int Widget::get_allocated_width() const
5924 {
5925   return gtk_widget_get_allocated_width(const_cast<GtkWidget*>(gobj()));
5926 }
5927 
get_allocated_height() const5928 int Widget::get_allocated_height() const
5929 {
5930   return gtk_widget_get_allocated_height(const_cast<GtkWidget*>(gobj()));
5931 }
5932 
get_allocated_baseline() const5933 int Widget::get_allocated_baseline() const
5934 {
5935   return gtk_widget_get_allocated_baseline(const_cast<GtkWidget*>(gobj()));
5936 }
5937 
get_allocated_size(Allocation & allocation,int & baseline) const5938 void Widget::get_allocated_size(Allocation& allocation, int& baseline) const
5939 {
5940   gtk_widget_get_allocated_size(const_cast<GtkWidget*>(gobj()), (GtkAllocation*)(allocation.gobj()), &(baseline));
5941 }
5942 
set_allocation(const Allocation & allocation)5943 void Widget::set_allocation(const Allocation& allocation)
5944 {
5945   gtk_widget_set_allocation(gobj(), (allocation).gobj());
5946 }
5947 
set_clip(const Allocation & clip)5948 void Widget::set_clip(const Allocation& clip)
5949 {
5950   gtk_widget_set_clip(gobj(), (clip).gobj());
5951 }
5952 
get_parent()5953 Container* Widget::get_parent()
5954 {
5955   return Glib::wrap((GtkContainer*)(gtk_widget_get_parent(gobj())));
5956 }
5957 
get_parent() const5958 const Container* Widget::get_parent() const
5959 {
5960   return const_cast<Widget*>(this)->get_parent();
5961 }
5962 
get_parent_window()5963 Glib::RefPtr<Gdk::Window> Widget::get_parent_window()
5964 {
5965   Glib::RefPtr<Gdk::Window> retvalue = Glib::wrap(gtk_widget_get_parent_window(gobj()));
5966   if(retvalue)
5967     retvalue->reference(); //The function does not do a ref for us.
5968   return retvalue;
5969 }
5970 
get_parent_window() const5971 Glib::RefPtr<const Gdk::Window> Widget::get_parent_window() const
5972 {
5973   return const_cast<Widget*>(this)->get_parent_window();
5974 }
5975 
set_parent_window(const Glib::RefPtr<const Gdk::Window> & parent_window)5976 void Widget::set_parent_window(const Glib::RefPtr<const Gdk::Window>& parent_window)
5977 {
5978   gtk_widget_set_parent_window(gobj(), const_cast<GdkWindow*>(Glib::unwrap<Gdk::Window>(parent_window)));
5979 }
5980 
child_focus(DirectionType direction)5981 bool Widget::child_focus(DirectionType direction)
5982 {
5983   return gtk_widget_child_focus(gobj(), ((GtkDirectionType)(direction)));
5984 }
5985 
keynav_failed(DirectionType direction)5986 bool Widget::keynav_failed(DirectionType direction)
5987 {
5988   return gtk_widget_keynav_failed(gobj(), ((GtkDirectionType)(direction)));
5989 }
5990 
error_bell()5991 void Widget::error_bell()
5992 {
5993   gtk_widget_error_bell(gobj());
5994 }
5995 
set_size_request(int width,int height)5996 void Widget::set_size_request(int width, int height)
5997 {
5998   gtk_widget_set_size_request(gobj(), width, height);
5999 }
6000 
get_size_request(int & width,int & height) const6001 void Widget::get_size_request(int& width, int& height) const
6002 {
6003   gtk_widget_get_size_request(const_cast<GtkWidget*>(gobj()), &(width), &(height));
6004 }
6005 
set_events(Gdk::EventMask events)6006 void Widget::set_events(Gdk::EventMask events)
6007 {
6008   gtk_widget_set_events(gobj(), events);
6009 }
6010 
add_events(Gdk::EventMask events)6011 void Widget::add_events(Gdk::EventMask events)
6012 {
6013   gtk_widget_add_events(gobj(), events);
6014 }
6015 
set_device_events(const Glib::RefPtr<const Gdk::Device> & device,Gdk::EventMask events)6016 void Widget::set_device_events(const Glib::RefPtr<const Gdk::Device>& device, Gdk::EventMask events)
6017 {
6018   gtk_widget_set_device_events(gobj(), const_cast<GdkDevice*>(Glib::unwrap<Gdk::Device>(device)), ((GdkEventMask)(events)));
6019 }
6020 
add_device_events(const Glib::RefPtr<const Gdk::Device> & device,Gdk::EventMask events)6021 void Widget::add_device_events(const Glib::RefPtr<const Gdk::Device>& device, Gdk::EventMask events)
6022 {
6023   gtk_widget_add_device_events(gobj(), const_cast<GdkDevice*>(Glib::unwrap<Gdk::Device>(device)), ((GdkEventMask)(events)));
6024 }
6025 
set_opacity(double opacity)6026 void Widget::set_opacity(double opacity)
6027 {
6028   gtk_widget_set_opacity(gobj(), opacity);
6029 }
6030 
get_opacity() const6031 double Widget::get_opacity() const
6032 {
6033   return gtk_widget_get_opacity(const_cast<GtkWidget*>(gobj()));
6034 }
6035 
set_device_enabled(const Glib::RefPtr<Gdk::Device> & device,bool enabled)6036 void Widget::set_device_enabled(const Glib::RefPtr<Gdk::Device>& device, bool enabled)
6037 {
6038   gtk_widget_set_device_enabled(gobj(), Glib::unwrap(device), static_cast<int>(enabled));
6039 }
6040 
get_device_enabled(const Glib::RefPtr<const Gdk::Device> & device) const6041 bool Widget::get_device_enabled(const Glib::RefPtr<const Gdk::Device>& device) const
6042 {
6043   return gtk_widget_get_device_enabled(const_cast<GtkWidget*>(gobj()), const_cast<GdkDevice*>(Glib::unwrap<Gdk::Device>(device)));
6044 }
6045 
get_toplevel()6046 Container* Widget::get_toplevel()
6047 {
6048   return Glib::wrap((GtkContainer*)(gtk_widget_get_toplevel(gobj())));
6049 }
6050 
get_toplevel() const6051 const Container* Widget::get_toplevel() const
6052 {
6053   return const_cast<Widget*>(this)->get_toplevel();
6054 }
6055 
get_ancestor(GType widget_type)6056 Widget* Widget::get_ancestor(GType widget_type)
6057 {
6058   return Glib::wrap(gtk_widget_get_ancestor(gobj(), widget_type));
6059 }
6060 
get_ancestor(GType widget_type) const6061 const Widget* Widget::get_ancestor(GType widget_type) const
6062 {
6063   return const_cast<Widget*>(this)->get_ancestor(widget_type);
6064 }
6065 
get_visual()6066 Glib::RefPtr<Gdk::Visual> Widget::get_visual()
6067 {
6068   Glib::RefPtr<Gdk::Visual> retvalue = Glib::wrap(gtk_widget_get_visual(gobj()));
6069   if(retvalue)
6070     retvalue->reference(); //The function does not do a ref for us.
6071   return retvalue;
6072 }
6073 
get_screen()6074 Glib::RefPtr<Gdk::Screen> Widget::get_screen()
6075 {
6076   Glib::RefPtr<Gdk::Screen> retvalue = Glib::wrap(gtk_widget_get_screen(gobj()));
6077   if(retvalue)
6078     retvalue->reference(); //The function does not do a ref for us.
6079   return retvalue;
6080 }
6081 
get_screen() const6082 Glib::RefPtr<const Gdk::Screen> Widget::get_screen() const
6083 {
6084   return const_cast<Widget*>(this)->get_screen();
6085 }
6086 
has_screen() const6087 bool Widget::has_screen() const
6088 {
6089   return gtk_widget_has_screen(const_cast<GtkWidget*>(gobj()));
6090 }
6091 
get_scale_factor() const6092 int Widget::get_scale_factor() const
6093 {
6094   return gtk_widget_get_scale_factor(const_cast<GtkWidget*>(gobj()));
6095 }
6096 
get_display()6097 Glib::RefPtr<Gdk::Display> Widget::get_display()
6098 {
6099   Glib::RefPtr<Gdk::Display> retvalue = Glib::wrap(gtk_widget_get_display(gobj()));
6100   if(retvalue)
6101     retvalue->reference(); //The function does not do a ref for us.
6102   return retvalue;
6103 }
6104 
get_display() const6105 Glib::RefPtr<const Gdk::Display> Widget::get_display() const
6106 {
6107   return const_cast<Widget*>(this)->get_display();
6108 }
6109 
6110 #ifndef GTKMM_DISABLE_DEPRECATED
6111 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
get_root_window()6112 Glib::RefPtr<Gdk::Window> Widget::get_root_window()
6113 {
6114   Glib::RefPtr<Gdk::Window> retvalue = Glib::wrap(gtk_widget_get_root_window(gobj()));
6115   if(retvalue)
6116     retvalue->reference(); //The function does not do a ref for us.
6117   return retvalue;
6118 }
6119 G_GNUC_END_IGNORE_DEPRECATIONS
6120 #endif // GTKMM_DISABLE_DEPRECATED
6121 
6122 #ifndef GTKMM_DISABLE_DEPRECATED
6123 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
get_root_window() const6124 Glib::RefPtr<const Gdk::Window> Widget::get_root_window() const
6125 {
6126   return const_cast<Widget*>(this)->get_root_window();
6127 }
6128 G_GNUC_END_IGNORE_DEPRECATIONS
6129 #endif // GTKMM_DISABLE_DEPRECATED
6130 
get_settings()6131 Glib::RefPtr<Settings> Widget::get_settings()
6132 {
6133   Glib::RefPtr<Settings> retvalue = Glib::wrap(gtk_widget_get_settings(gobj()));
6134   if(retvalue)
6135     retvalue->reference(); //The function does not do a ref for us.
6136   return retvalue;
6137 }
6138 
get_clipboard(const Glib::ustring & selection)6139 Glib::RefPtr<Clipboard> Widget::get_clipboard(const Glib::ustring& selection)
6140 {
6141   Glib::RefPtr<Clipboard> retvalue = Glib::wrap(gtk_widget_get_clipboard(gobj(), Gdk::AtomString::to_c_type(selection)));
6142   if(retvalue)
6143     retvalue->reference(); //The function does not do a ref for us.
6144   return retvalue;
6145 }
6146 
get_clipboard(const Glib::ustring & selection) const6147 Glib::RefPtr<const Clipboard> Widget::get_clipboard(const Glib::ustring& selection) const
6148 {
6149   return const_cast<Widget*>(this)->get_clipboard(selection);
6150 }
6151 
get_hexpand() const6152 bool Widget::get_hexpand() const
6153 {
6154   return gtk_widget_get_hexpand(const_cast<GtkWidget*>(gobj()));
6155 }
6156 
set_hexpand(bool expand)6157 void Widget::set_hexpand(bool expand)
6158 {
6159   gtk_widget_set_hexpand(gobj(), static_cast<int>(expand));
6160 }
6161 
get_hexpand_set() const6162 bool Widget::get_hexpand_set() const
6163 {
6164   return gtk_widget_get_hexpand_set(const_cast<GtkWidget*>(gobj()));
6165 }
6166 
set_hexpand_set(bool set)6167 void Widget::set_hexpand_set(bool set)
6168 {
6169   gtk_widget_set_hexpand_set(gobj(), static_cast<int>(set));
6170 }
6171 
get_vexpand() const6172 bool Widget::get_vexpand() const
6173 {
6174   return gtk_widget_get_vexpand(const_cast<GtkWidget*>(gobj()));
6175 }
6176 
set_vexpand(bool expand)6177 void Widget::set_vexpand(bool expand)
6178 {
6179   gtk_widget_set_vexpand(gobj(), static_cast<int>(expand));
6180 }
6181 
get_vexpand_set() const6182 bool Widget::get_vexpand_set() const
6183 {
6184   return gtk_widget_get_vexpand_set(const_cast<GtkWidget*>(gobj()));
6185 }
6186 
set_vexpand_set(bool set)6187 void Widget::set_vexpand_set(bool set)
6188 {
6189   gtk_widget_set_vexpand_set(gobj(), static_cast<int>(set));
6190 }
6191 
queue_compute_expand()6192 void Widget::queue_compute_expand()
6193 {
6194   gtk_widget_queue_compute_expand(gobj());
6195 }
6196 
compute_expand(Orientation orientation)6197 bool Widget::compute_expand(Orientation orientation)
6198 {
6199   return gtk_widget_compute_expand(gobj(), ((GtkOrientation)(orientation)));
6200 }
6201 
get_support_multidevice() const6202 bool Widget::get_support_multidevice() const
6203 {
6204   return gtk_widget_get_support_multidevice(const_cast<GtkWidget*>(gobj()));
6205 }
6206 
set_support_multidevice(bool support_multidevice)6207 void Widget::set_support_multidevice(bool support_multidevice)
6208 {
6209   gtk_widget_set_support_multidevice(gobj(), static_cast<int>(support_multidevice));
6210 }
6211 
6212 #ifdef GTKMM_ATKMM_ENABLED
get_accessible()6213 Glib::RefPtr<Atk::Object> Widget::get_accessible()
6214 {
6215   Glib::RefPtr<Atk::Object> retvalue = Glib::wrap(gtk_widget_get_accessible(gobj()));
6216   if(retvalue)
6217     retvalue->reference(); //The function does not do a ref for us.
6218   return retvalue;
6219 }
6220 #endif // GTKMM_ATKMM_ENABLED
6221 
6222 #ifdef GTKMM_ATKMM_ENABLED
get_accessible() const6223 Glib::RefPtr<const Atk::Object> Widget::get_accessible() const
6224 {
6225   return const_cast<Widget*>(this)->get_accessible();
6226 }
6227 #endif // GTKMM_ATKMM_ENABLED
6228 
get_halign() const6229 Align Widget::get_halign() const
6230 {
6231   return ((Align)(gtk_widget_get_halign(const_cast<GtkWidget*>(gobj()))));
6232 }
6233 
set_halign(Align align)6234 void Widget::set_halign(Align align)
6235 {
6236   gtk_widget_set_halign(gobj(), ((GtkAlign)(align)));
6237 }
6238 
get_valign() const6239 Align Widget::get_valign() const
6240 {
6241   return ((Align)(gtk_widget_get_valign(const_cast<GtkWidget*>(gobj()))));
6242 }
6243 
get_valign_with_baseline() const6244 Align Widget::get_valign_with_baseline() const
6245 {
6246   return ((Align)(gtk_widget_get_valign_with_baseline(const_cast<GtkWidget*>(gobj()))));
6247 }
6248 
set_valign(Align align)6249 void Widget::set_valign(Align align)
6250 {
6251   gtk_widget_set_valign(gobj(), ((GtkAlign)(align)));
6252 }
6253 
6254 #ifndef GTKMM_DISABLE_DEPRECATED
6255 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
get_margin_left() const6256 int Widget::get_margin_left() const
6257 {
6258   return gtk_widget_get_margin_left(const_cast<GtkWidget*>(gobj()));
6259 }
6260 G_GNUC_END_IGNORE_DEPRECATIONS
6261 #endif // GTKMM_DISABLE_DEPRECATED
6262 
6263 #ifndef GTKMM_DISABLE_DEPRECATED
6264 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
set_margin_left(int margin)6265 void Widget::set_margin_left(int margin)
6266 {
6267   gtk_widget_set_margin_left(gobj(), margin);
6268 }
6269 G_GNUC_END_IGNORE_DEPRECATIONS
6270 #endif // GTKMM_DISABLE_DEPRECATED
6271 
6272 #ifndef GTKMM_DISABLE_DEPRECATED
6273 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
get_margin_right() const6274 int Widget::get_margin_right() const
6275 {
6276   return gtk_widget_get_margin_right(const_cast<GtkWidget*>(gobj()));
6277 }
6278 G_GNUC_END_IGNORE_DEPRECATIONS
6279 #endif // GTKMM_DISABLE_DEPRECATED
6280 
6281 #ifndef GTKMM_DISABLE_DEPRECATED
6282 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
set_margin_right(int margin)6283 void Widget::set_margin_right(int margin)
6284 {
6285   gtk_widget_set_margin_right(gobj(), margin);
6286 }
6287 G_GNUC_END_IGNORE_DEPRECATIONS
6288 #endif // GTKMM_DISABLE_DEPRECATED
6289 
get_margin_start() const6290 int Widget::get_margin_start() const
6291 {
6292   return gtk_widget_get_margin_start(const_cast<GtkWidget*>(gobj()));
6293 }
6294 
set_margin_start(int margin)6295 void Widget::set_margin_start(int margin)
6296 {
6297   gtk_widget_set_margin_start(gobj(), margin);
6298 }
6299 
get_margin_end() const6300 int Widget::get_margin_end() const
6301 {
6302   return gtk_widget_get_margin_end(const_cast<GtkWidget*>(gobj()));
6303 }
6304 
set_margin_end(int margin)6305 void Widget::set_margin_end(int margin)
6306 {
6307   gtk_widget_set_margin_end(gobj(), margin);
6308 }
6309 
get_margin_top() const6310 int Widget::get_margin_top() const
6311 {
6312   return gtk_widget_get_margin_top(const_cast<GtkWidget*>(gobj()));
6313 }
6314 
set_margin_top(int margin)6315 void Widget::set_margin_top(int margin)
6316 {
6317   gtk_widget_set_margin_top(gobj(), margin);
6318 }
6319 
get_margin_bottom() const6320 int Widget::get_margin_bottom() const
6321 {
6322   return gtk_widget_get_margin_bottom(const_cast<GtkWidget*>(gobj()));
6323 }
6324 
set_margin_bottom(int margin)6325 void Widget::set_margin_bottom(int margin)
6326 {
6327   gtk_widget_set_margin_bottom(gobj(), margin);
6328 }
6329 
get_events() const6330 Gdk::EventMask Widget::get_events() const
6331 {
6332   return static_cast<Gdk::EventMask>(gtk_widget_get_events(const_cast<GtkWidget*>(gobj())));
6333 }
6334 
get_device_events(const Glib::RefPtr<const Gdk::Device> & device) const6335 Gdk::EventMask Widget::get_device_events(const Glib::RefPtr<const Gdk::Device>& device) const
6336 {
6337   return ((Gdk::EventMask)(gtk_widget_get_device_events(const_cast<GtkWidget*>(gobj()), const_cast<GdkDevice*>(Glib::unwrap<Gdk::Device>(device)))));
6338 }
6339 
6340 #ifndef GTKMM_DISABLE_DEPRECATED
6341 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
get_pointer(int & x,int & y) const6342 void Widget::get_pointer(int & x, int & y) const
6343 {
6344   gtk_widget_get_pointer(const_cast<GtkWidget*>(gobj()), &(x), &(y));
6345 }
6346 G_GNUC_END_IGNORE_DEPRECATIONS
6347 #endif // GTKMM_DISABLE_DEPRECATED
6348 
is_ancestor(Widget & ancestor) const6349 bool Widget::is_ancestor(Widget & ancestor) const
6350 {
6351   return gtk_widget_is_ancestor(const_cast<GtkWidget*>(gobj()), (ancestor).gobj());
6352 }
6353 
translate_coordinates(Widget & dest_widget,int src_x,int src_y,int & dest_x,int & dest_y)6354 bool Widget::translate_coordinates(Widget& dest_widget, int src_x, int src_y, int& dest_x, int& dest_y)
6355 {
6356   return gtk_widget_translate_coordinates(gobj(), (dest_widget).gobj(), src_x, src_y, &(dest_x), &(dest_y));
6357 }
6358 
6359 #ifndef GTKMM_DISABLE_DEPRECATED
6360 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
override_color(const Gdk::RGBA & color,StateFlags state)6361 void Widget::override_color(const Gdk::RGBA& color, StateFlags state)
6362 {
6363   gtk_widget_override_color(gobj(), ((GtkStateFlags)(state)), (color).gobj());
6364 }
6365 G_GNUC_END_IGNORE_DEPRECATIONS
6366 #endif // GTKMM_DISABLE_DEPRECATED
6367 
6368 #ifndef GTKMM_DISABLE_DEPRECATED
6369 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
override_background_color(const Gdk::RGBA & color,StateFlags state)6370 void Widget::override_background_color(const Gdk::RGBA& color, StateFlags state)
6371 {
6372   gtk_widget_override_background_color(gobj(), ((GtkStateFlags)(state)), (color).gobj());
6373 }
6374 G_GNUC_END_IGNORE_DEPRECATIONS
6375 #endif // GTKMM_DISABLE_DEPRECATED
6376 
6377 #ifndef GTKMM_DISABLE_DEPRECATED
6378 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
override_font(const Pango::FontDescription & font_desc)6379 void Widget::override_font(const Pango::FontDescription& font_desc)
6380 {
6381   gtk_widget_override_font(gobj(), (font_desc).gobj());
6382 }
6383 G_GNUC_END_IGNORE_DEPRECATIONS
6384 #endif // GTKMM_DISABLE_DEPRECATED
6385 
6386 #ifndef GTKMM_DISABLE_DEPRECATED
6387 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
override_symbolic_color(const Glib::ustring & name,const Gdk::RGBA & color)6388 void Widget::override_symbolic_color(const Glib::ustring& name, const Gdk::RGBA& color)
6389 {
6390   gtk_widget_override_symbolic_color(gobj(), name.c_str(), (color).gobj());
6391 }
6392 G_GNUC_END_IGNORE_DEPRECATIONS
6393 #endif // GTKMM_DISABLE_DEPRECATED
6394 
6395 #ifndef GTKMM_DISABLE_DEPRECATED
6396 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
override_cursor(const Gdk::RGBA & cursor,const Gdk::RGBA & secondary_cursor)6397 void Widget::override_cursor(const Gdk::RGBA& cursor, const Gdk::RGBA& secondary_cursor)
6398 {
6399   gtk_widget_override_cursor(gobj(), (cursor).gobj(), (secondary_cursor).gobj());
6400 }
6401 G_GNUC_END_IGNORE_DEPRECATIONS
6402 #endif // GTKMM_DISABLE_DEPRECATED
6403 
reset_style()6404 void Widget::reset_style()
6405 {
6406   gtk_widget_reset_style(gobj());
6407 }
6408 
create_pango_context()6409 Glib::RefPtr<Pango::Context> Widget::create_pango_context()
6410 {
6411   return Glib::wrap(gtk_widget_create_pango_context(gobj()));
6412 }
6413 
get_pango_context()6414 Glib::RefPtr<Pango::Context> Widget::get_pango_context()
6415 {
6416   Glib::RefPtr<Pango::Context> retvalue = Glib::wrap(gtk_widget_get_pango_context(gobj()));
6417   if(retvalue)
6418     retvalue->reference(); //The function does not do a ref for us.
6419   return retvalue;
6420 }
6421 
set_font_options(const::Cairo::FontOptions & options)6422 void Widget::set_font_options(const ::Cairo::FontOptions& options)
6423 {
6424   gtk_widget_set_font_options(gobj(), (options).cobj());
6425 }
6426 
get_font_options() const6427 ::Cairo::FontOptions Widget::get_font_options() const
6428 {
6429   return ::Cairo::FontOptions(const_cast<cairo_font_options_t*>(gtk_widget_get_font_options(const_cast<GtkWidget*>(gobj()))), false /* take_ownership */);
6430 }
6431 
create_pango_layout(const Glib::ustring & text)6432 Glib::RefPtr<Pango::Layout> Widget::create_pango_layout(const Glib::ustring& text)
6433 {
6434   return Glib::wrap(gtk_widget_create_pango_layout(gobj(), text.c_str()));
6435 }
6436 
6437 #ifndef GTKMM_DISABLE_DEPRECATED
6438 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
render_icon_pixbuf(const StockID & stock_id,IconSize size)6439 Glib::RefPtr<Gdk::Pixbuf> Widget::render_icon_pixbuf(const StockID& stock_id, IconSize size)
6440 {
6441   return Glib::wrap(gtk_widget_render_icon_pixbuf(gobj(), (stock_id).get_c_str(), static_cast<GtkIconSize>(int(size))));
6442 }
6443 G_GNUC_END_IGNORE_DEPRECATIONS
6444 #endif // GTKMM_DISABLE_DEPRECATED
6445 
6446 #ifndef GTKMM_DISABLE_DEPRECATED
6447 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
set_composite_name(const Glib::ustring & name)6448 void Widget::set_composite_name(const Glib::ustring& name)
6449 {
6450   gtk_widget_set_composite_name(gobj(), name.c_str());
6451 }
6452 G_GNUC_END_IGNORE_DEPRECATIONS
6453 #endif // GTKMM_DISABLE_DEPRECATED
6454 
6455 #ifndef GTKMM_DISABLE_DEPRECATED
6456 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
get_composite_name() const6457 Glib::ustring Widget::get_composite_name() const
6458 {
6459   return Glib::convert_return_gchar_ptr_to_ustring(gtk_widget_get_composite_name(const_cast<GtkWidget*>(gobj())));
6460 }
6461 G_GNUC_END_IGNORE_DEPRECATIONS
6462 #endif // GTKMM_DISABLE_DEPRECATED
6463 
6464 #ifndef GTKMM_DISABLE_DEPRECATED
6465 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
push_composite_child()6466 void Widget::push_composite_child()
6467 {
6468   gtk_widget_push_composite_child();
6469 }
6470 G_GNUC_END_IGNORE_DEPRECATIONS
6471 #endif // GTKMM_DISABLE_DEPRECATED
6472 
6473 #ifndef GTKMM_DISABLE_DEPRECATED
6474 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
pop_composite_child()6475 void Widget::pop_composite_child()
6476 {
6477   gtk_widget_pop_composite_child();
6478 }
6479 G_GNUC_END_IGNORE_DEPRECATIONS
6480 #endif // GTKMM_DISABLE_DEPRECATED
6481 
set_direction(TextDirection dir)6482 void Widget::set_direction(TextDirection dir)
6483 {
6484   gtk_widget_set_direction(gobj(), ((GtkTextDirection)(dir)));
6485 }
6486 
get_direction() const6487 TextDirection Widget::get_direction() const
6488 {
6489   return ((TextDirection)(gtk_widget_get_direction(const_cast<GtkWidget*>(gobj()))));
6490 }
6491 
set_default_direction(TextDirection dir)6492 void Widget::set_default_direction(TextDirection dir)
6493 {
6494   gtk_widget_set_default_direction(((GtkTextDirection)(dir)));
6495 }
6496 
get_default_direction()6497 TextDirection Widget::get_default_direction()
6498 {
6499   return ((TextDirection)(gtk_widget_get_default_direction()));
6500 }
6501 
shape_combine_region(const::Cairo::RefPtr<const::Cairo::Region> & region)6502 void Widget::shape_combine_region(const ::Cairo::RefPtr<const ::Cairo::Region>& region)
6503 {
6504   gtk_widget_shape_combine_region(gobj(), const_cast<cairo_region_t*>((region) ? (region)->cobj() : nullptr));
6505 }
6506 
input_shape_combine_region(const::Cairo::RefPtr<const::Cairo::Region> & region)6507 void Widget::input_shape_combine_region(const ::Cairo::RefPtr<const ::Cairo::Region>& region)
6508 {
6509   gtk_widget_input_shape_combine_region(gobj(), const_cast<cairo_region_t*>((region) ? (region)->cobj() : nullptr));
6510 }
6511 
get_path() const6512 WidgetPath Widget::get_path() const
6513 {
6514   return Glib::wrap(gtk_widget_get_path(const_cast<GtkWidget*>(gobj())), true);
6515 }
6516 
list_mnemonic_labels()6517 std::vector<Widget*> Widget::list_mnemonic_labels()
6518 {
6519   return Glib::ListHandler<Widget*>::list_to_vector(gtk_widget_list_mnemonic_labels(gobj()), Glib::OWNERSHIP_SHALLOW);
6520 }
6521 
list_mnemonic_labels() const6522 std::vector<const Widget*> Widget::list_mnemonic_labels() const
6523 {
6524   return Glib::ListHandler<const Widget*>::list_to_vector(gtk_widget_list_mnemonic_labels(const_cast<GtkWidget*>(gobj())), Glib::OWNERSHIP_SHALLOW);
6525 }
6526 
add_mnemonic_label(Widget & label)6527 void Widget::add_mnemonic_label(Widget& label)
6528 {
6529   gtk_widget_add_mnemonic_label(gobj(), (label).gobj());
6530 }
6531 
remove_mnemonic_label(Widget & label)6532 void Widget::remove_mnemonic_label(Widget& label)
6533 {
6534   gtk_widget_remove_mnemonic_label(gobj(), (label).gobj());
6535 }
6536 
drag_get_data(const Glib::RefPtr<Gdk::DragContext> & context,const Glib::ustring & target,guint32 time)6537 void Widget::drag_get_data(const Glib::RefPtr<Gdk::DragContext>& context, const Glib::ustring& target, guint32 time)
6538 {
6539   gtk_drag_get_data(gobj(), Glib::unwrap(context), Gdk::AtomString::to_c_type(target), time);
6540 }
6541 
drag_highlight()6542 void Widget::drag_highlight()
6543 {
6544   gtk_drag_highlight(gobj());
6545 }
6546 
drag_unhighlight()6547 void Widget::drag_unhighlight()
6548 {
6549   gtk_drag_unhighlight(gobj());
6550 }
6551 
6552 #ifndef GTKMM_DISABLE_DEPRECATED
6553 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
drag_dest_set_proxy(const Glib::RefPtr<Gdk::Window> & proxy_window,Gdk::DragProtocol protocol,bool use_coordinates)6554 void Widget::drag_dest_set_proxy(const Glib::RefPtr<Gdk::Window>& proxy_window, Gdk::DragProtocol protocol, bool use_coordinates)
6555 {
6556   gtk_drag_dest_set_proxy(gobj(), Glib::unwrap(proxy_window), ((GdkDragProtocol)(protocol)), static_cast<int>(use_coordinates));
6557 }
6558 G_GNUC_END_IGNORE_DEPRECATIONS
6559 #endif // GTKMM_DISABLE_DEPRECATED
6560 
drag_dest_unset()6561 void Widget::drag_dest_unset()
6562 {
6563   gtk_drag_dest_unset(gobj());
6564 }
6565 
drag_dest_find_target(const Glib::RefPtr<Gdk::DragContext> & context,const Glib::RefPtr<TargetList> & target_list) const6566 Glib::ustring Widget::drag_dest_find_target(const Glib::RefPtr<Gdk::DragContext>& context, const Glib::RefPtr<TargetList>& target_list) const
6567 {
6568   return Gdk::AtomString::to_cpp_type(gtk_drag_dest_find_target(const_cast<GtkWidget*>(gobj()), Glib::unwrap(context), const_cast<GtkTargetList*>(Glib::unwrap(target_list))));
6569 }
6570 
drag_dest_get_target_list()6571 Glib::RefPtr<TargetList> Widget::drag_dest_get_target_list()
6572 {
6573   Glib::RefPtr<TargetList> retvalue = Glib::wrap(gtk_drag_dest_get_target_list(gobj()));
6574   if(retvalue)
6575     retvalue->reference(); //The function does not do a ref for us.
6576   return retvalue;
6577 }
6578 
drag_dest_get_target_list() const6579 Glib::RefPtr<const TargetList> Widget::drag_dest_get_target_list() const
6580 {
6581   return const_cast<Widget*>(this)->drag_dest_get_target_list();
6582 }
6583 
drag_dest_set_target_list(const Glib::RefPtr<TargetList> & target_list)6584 void Widget::drag_dest_set_target_list(const Glib::RefPtr<TargetList>& target_list)
6585 {
6586   gtk_drag_dest_set_target_list(gobj(), const_cast<GtkTargetList*>(Glib::unwrap(target_list)));
6587 }
6588 
drag_dest_add_text_targets()6589 void Widget::drag_dest_add_text_targets()
6590 {
6591   gtk_drag_dest_add_text_targets(gobj());
6592 }
6593 
drag_dest_add_image_targets()6594 void Widget::drag_dest_add_image_targets()
6595 {
6596   gtk_drag_dest_add_image_targets(gobj());
6597 }
6598 
drag_dest_add_uri_targets()6599 void Widget::drag_dest_add_uri_targets()
6600 {
6601   gtk_drag_dest_add_uri_targets(gobj());
6602 }
6603 
drag_source_unset()6604 void Widget::drag_source_unset()
6605 {
6606   gtk_drag_source_unset(gobj());
6607 }
6608 
drag_source_set_icon(const Glib::RefPtr<Gdk::Pixbuf> & pixbuf)6609 void Widget::drag_source_set_icon(const Glib::RefPtr<Gdk::Pixbuf>& pixbuf)
6610 {
6611   gtk_drag_source_set_icon_pixbuf(gobj(), Glib::unwrap(pixbuf));
6612 }
6613 
6614 #ifndef GTKMM_DISABLE_DEPRECATED
6615 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
drag_source_set_icon(const StockID & stock_id)6616 void Widget::drag_source_set_icon(const StockID& stock_id)
6617 {
6618   gtk_drag_source_set_icon_stock(gobj(), (stock_id).get_c_str());
6619 }
6620 G_GNUC_END_IGNORE_DEPRECATIONS
6621 #endif // GTKMM_DISABLE_DEPRECATED
6622 
drag_source_set_icon(const Glib::ustring & icon_name)6623 void Widget::drag_source_set_icon(const Glib::ustring& icon_name)
6624 {
6625   gtk_drag_source_set_icon_name(gobj(), icon_name.c_str());
6626 }
6627 
drag_source_add_text_targets()6628 void Widget::drag_source_add_text_targets()
6629 {
6630   gtk_drag_source_add_text_targets(gobj());
6631 }
6632 
drag_source_add_uri_targets()6633 void Widget::drag_source_add_uri_targets()
6634 {
6635   gtk_drag_source_add_uri_targets(gobj());
6636 }
6637 
drag_source_add_image_targets()6638 void Widget::drag_source_add_image_targets()
6639 {
6640   gtk_drag_source_add_image_targets(gobj());
6641 }
6642 
6643 #ifndef GTKMM_DISABLE_DEPRECATED
6644 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
drag_begin(const Glib::RefPtr<TargetList> & targets,Gdk::DragAction actions,int button,GdkEvent * gdk_event)6645 Glib::RefPtr<Gdk::DragContext> Widget::drag_begin(const Glib::RefPtr<TargetList>& targets, Gdk::DragAction actions, int button, GdkEvent* gdk_event)
6646 {
6647   Glib::RefPtr<Gdk::DragContext> retvalue = Glib::wrap(gtk_drag_begin(gobj(), const_cast<GtkTargetList*>(Glib::unwrap(targets)), ((GdkDragAction)(actions)), button, gdk_event), true);
6648   if(retvalue)
6649     retvalue->reference(); //The function does not do a ref for us.
6650   return retvalue;
6651 }
6652 G_GNUC_END_IGNORE_DEPRECATIONS
6653 #endif // GTKMM_DISABLE_DEPRECATED
6654 
drag_begin(const Glib::RefPtr<TargetList> & targets,Gdk::DragAction actions,int button,GdkEvent * gdk_event,int x,int y)6655 Glib::RefPtr<Gdk::DragContext> Widget::drag_begin(const Glib::RefPtr<TargetList>& targets, Gdk::DragAction actions, int button, GdkEvent* gdk_event, int x, int y)
6656 {
6657   Glib::RefPtr<Gdk::DragContext> retvalue = Glib::wrap(gtk_drag_begin_with_coordinates(gobj(), const_cast<GtkTargetList*>(Glib::unwrap(targets)), ((GdkDragAction)(actions)), button, gdk_event, x, y), true);
6658   if(retvalue)
6659     retvalue->reference(); //The function does not do a ref for us.
6660   return retvalue;
6661 }
6662 
drag_check_threshold(int start_x,int start_y,int current_x,int current_y)6663 bool Widget::drag_check_threshold(int start_x, int start_y, int current_x, int current_y)
6664 {
6665   return gtk_drag_check_threshold(gobj(), start_x, start_y, current_x, current_y);
6666 }
6667 
queue_resize_no_redraw()6668 void Widget::queue_resize_no_redraw()
6669 {
6670   gtk_widget_queue_resize_no_redraw(gobj());
6671 }
6672 
get_frame_clock()6673 Glib::RefPtr<Gdk::FrameClock> Widget::get_frame_clock()
6674 {
6675   Glib::RefPtr<Gdk::FrameClock> retvalue = Glib::wrap(gtk_widget_get_frame_clock(gobj()));
6676   if(retvalue)
6677     retvalue->reference(); //The function does not do a ref for us.
6678   return retvalue;
6679 }
6680 
get_frame_clock() const6681 Glib::RefPtr<const Gdk::FrameClock> Widget::get_frame_clock() const
6682 {
6683   return const_cast<Widget*>(this)->get_frame_clock();
6684 }
6685 
get_no_show_all() const6686 bool Widget::get_no_show_all() const
6687 {
6688   return gtk_widget_get_no_show_all(const_cast<GtkWidget*>(gobj()));
6689 }
6690 
set_no_show_all(bool no_show_all)6691 void Widget::set_no_show_all(bool no_show_all)
6692 {
6693   gtk_widget_set_no_show_all(gobj(), static_cast<int>(no_show_all));
6694 }
6695 
set_parent(Widget & parent)6696 void Widget::set_parent(Widget& parent)
6697 {
6698   gtk_widget_set_parent(gobj(), (parent).gobj());
6699 }
6700 
unparent()6701 void Widget::unparent()
6702 {
6703   gtk_widget_unparent(gobj());
6704 }
6705 
map()6706 void Widget::map()
6707 {
6708   gtk_widget_map(gobj());
6709 }
6710 
unmap()6711 void Widget::unmap()
6712 {
6713   gtk_widget_unmap(gobj());
6714 }
6715 
set_tooltip_window(Window & custom_window)6716 void Widget::set_tooltip_window(Window& custom_window)
6717 {
6718   gtk_widget_set_tooltip_window(gobj(), (custom_window).gobj());
6719 }
6720 
get_tooltip_window()6721 Window* Widget::get_tooltip_window()
6722 {
6723   return Glib::wrap(gtk_widget_get_tooltip_window(gobj()));
6724 }
6725 
trigger_tooltip_query()6726 void Widget::trigger_tooltip_query()
6727 {
6728   gtk_widget_trigger_tooltip_query(gobj());
6729 }
6730 
set_tooltip_text(const Glib::ustring & text)6731 void Widget::set_tooltip_text(const Glib::ustring& text)
6732 {
6733   gtk_widget_set_tooltip_text(gobj(), text.c_str());
6734 }
6735 
get_tooltip_text() const6736 Glib::ustring Widget::get_tooltip_text() const
6737 {
6738   return Glib::convert_return_gchar_ptr_to_ustring(gtk_widget_get_tooltip_text(const_cast<GtkWidget*>(gobj())));
6739 }
6740 
set_tooltip_markup(const Glib::ustring & markup)6741 void Widget::set_tooltip_markup(const Glib::ustring& markup)
6742 {
6743   gtk_widget_set_tooltip_markup(gobj(), markup.c_str());
6744 }
6745 
get_tooltip_markup() const6746 Glib::ustring Widget::get_tooltip_markup() const
6747 {
6748   return Glib::convert_return_gchar_ptr_to_ustring(gtk_widget_get_tooltip_markup(const_cast<GtkWidget*>(gobj())));
6749 }
6750 
set_has_tooltip(bool has_tooltip)6751 void Widget::set_has_tooltip(bool has_tooltip)
6752 {
6753   gtk_widget_set_has_tooltip(gobj(), static_cast<int>(has_tooltip));
6754 }
6755 
get_has_tooltip() const6756 bool Widget::get_has_tooltip() const
6757 {
6758   return gtk_widget_get_has_tooltip(const_cast<GtkWidget*>(gobj()));
6759 }
6760 
6761 #ifndef GTKMM_DISABLE_DEPRECATED
6762 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
is_composited() const6763 bool Widget::is_composited() const
6764 {
6765   return gtk_widget_is_composited(const_cast<GtkWidget*>(gobj()));
6766 }
6767 G_GNUC_END_IGNORE_DEPRECATIONS
6768 #endif // GTKMM_DISABLE_DEPRECATED
6769 
in_destruction() const6770 bool Widget::in_destruction() const
6771 {
6772   return gtk_widget_in_destruction(const_cast<GtkWidget*>(gobj()));
6773 }
6774 
get_style_context()6775 Glib::RefPtr<StyleContext> Widget::get_style_context()
6776 {
6777   Glib::RefPtr<StyleContext> retvalue = Glib::wrap(gtk_widget_get_style_context(gobj()));
6778   if(retvalue)
6779     retvalue->reference(); //The function does not do a ref for us.
6780   return retvalue;
6781 }
6782 
get_style_context() const6783 Glib::RefPtr<Gtk::StyleContext> Widget::get_style_context() const
6784 {
6785   return const_cast<Widget*>(this)->get_style_context();
6786 }
6787 
get_modifier_mask(Gdk::ModifierIntent intent)6788 Gdk::ModifierType Widget::get_modifier_mask(Gdk::ModifierIntent intent)
6789 {
6790   return ((Gdk::ModifierType)(gtk_widget_get_modifier_mask(gobj(), ((GdkModifierIntent)(intent)))));
6791 }
6792 
remove_tick_callback(guint id)6793 void Widget::remove_tick_callback(guint id)
6794 {
6795   gtk_widget_remove_tick_callback(gobj(), id);
6796 }
6797 
insert_action_group(const Glib::ustring & name,const Glib::RefPtr<Gio::ActionGroup> & group)6798 void Widget::insert_action_group(const Glib::ustring& name, const Glib::RefPtr<Gio::ActionGroup>& group)
6799 {
6800   gtk_widget_insert_action_group(gobj(), name.c_str(), const_cast<GActionGroup*>(Glib::unwrap<Gio::ActionGroup>(group)));
6801 }
6802 
get_action_group(const Glib::ustring & prefix)6803 Glib::RefPtr<Gio::ActionGroup> Widget::get_action_group(const Glib::ustring& prefix)
6804 {
6805   Glib::RefPtr<Gio::ActionGroup> retvalue = Glib::wrap(gtk_widget_get_action_group(gobj(), prefix.c_str()));
6806   if(retvalue)
6807     retvalue->reference(); //The function does not do a ref for us.
6808   return retvalue;
6809 }
6810 
get_action_group(const Glib::ustring & prefix) const6811 Glib::RefPtr<const Gio::ActionGroup> Widget::get_action_group(const Glib::ustring& prefix) const
6812 {
6813   return const_cast<Widget*>(this)->get_action_group(prefix);
6814 }
6815 
list_action_prefixes() const6816 std::vector<Glib::ustring> Widget::list_action_prefixes() const
6817 {
6818   return Glib::ArrayHandler<Glib::ustring>::array_to_vector(gtk_widget_list_action_prefixes(const_cast<GtkWidget*>(gobj())), Glib::OWNERSHIP_SHALLOW);
6819 }
6820 
set_font_map(const Glib::RefPtr<Pango::FontMap> & font_map)6821 void Widget::set_font_map(const Glib::RefPtr<Pango::FontMap>& font_map)
6822 {
6823   gtk_widget_set_font_map(gobj(), Glib::unwrap(font_map));
6824 }
6825 
get_font_map()6826 Glib::RefPtr<Pango::FontMap> Widget::get_font_map()
6827 {
6828   Glib::RefPtr<Pango::FontMap> retvalue = Glib::wrap(gtk_widget_get_font_map(gobj()));
6829   if(retvalue)
6830     retvalue->reference(); //The function does not do a ref for us.
6831   return retvalue;
6832 }
6833 
get_font_map() const6834 Glib::RefPtr<const Pango::FontMap> Widget::get_font_map() const
6835 {
6836   return const_cast<Widget*>(this)->get_font_map();
6837 }
6838 
Widget()6839 Widget::Widget()
6840 :
6841   // Mark this class as non-derived to allow C++ vfuncs to be skipped.
6842   Glib::ObjectBase(nullptr),
6843   Object(Glib::ConstructParams(widget_class_.init()))
6844 {
6845 
6846 
6847 }
6848 
realize()6849 void Widget::realize()
6850 {
6851   gtk_widget_realize(gobj());
6852 }
6853 
unrealize()6854 void Widget::unrealize()
6855 {
6856   gtk_widget_unrealize(gobj());
6857 }
6858 
draw(const::Cairo::RefPtr<::Cairo::Context> & cr)6859 void Widget::draw(const ::Cairo::RefPtr< ::Cairo::Context>& cr)
6860 {
6861   gtk_widget_draw(gobj(), (cr)->cobj());
6862 }
6863 
set_mapped(bool mapped)6864 void Widget::set_mapped(bool mapped)
6865 {
6866   gtk_widget_set_mapped(gobj(), static_cast<int>(mapped));
6867 }
6868 
set_realized(bool realized)6869 void Widget::set_realized(bool realized)
6870 {
6871   gtk_widget_set_realized(gobj(), static_cast<int>(realized));
6872 }
6873 
set_has_window(bool has_window)6874 void Widget::set_has_window(bool has_window)
6875 {
6876   gtk_widget_set_has_window(gobj(), static_cast<int>(has_window));
6877 }
6878 
should_draw_window(const::Cairo::RefPtr<const::Cairo::Context> & cr,const Glib::RefPtr<const Gdk::Window> & window)6879 bool Widget::should_draw_window(const ::Cairo::RefPtr<const ::Cairo::Context>& cr, const Glib::RefPtr<const Gdk::Window>& window)
6880 {
6881   return gtk_cairo_should_draw_window(const_cast<cairo_t*>((cr)->cobj()), const_cast<GdkWindow*>(Glib::unwrap<Gdk::Window>(window)));
6882 }
6883 
get_style_property_value(const Glib::ustring & the_property_name,Glib::ValueBase & value) const6884 void Widget::get_style_property_value(const Glib::ustring& the_property_name, Glib::ValueBase& value) const
6885 {
6886   gtk_widget_style_get_property(const_cast<GtkWidget*>(gobj()), the_property_name.c_str(), (value).gobj());
6887 }
6888 
6889 
signal_show()6890 Glib::SignalProxy< void > Widget::signal_show()
6891 {
6892   return Glib::SignalProxy< void >(this, &Widget_signal_show_info);
6893 }
6894 
6895 
signal_hide()6896 Glib::SignalProxy< void > Widget::signal_hide()
6897 {
6898   return Glib::SignalProxy< void >(this, &Widget_signal_hide_info);
6899 }
6900 
6901 
signal_map()6902 Glib::SignalProxy< void > Widget::signal_map()
6903 {
6904   return Glib::SignalProxy< void >(this, &Widget_signal_map_info);
6905 }
6906 
6907 
signal_unmap()6908 Glib::SignalProxy< void > Widget::signal_unmap()
6909 {
6910   return Glib::SignalProxy< void >(this, &Widget_signal_unmap_info);
6911 }
6912 
6913 
signal_realize()6914 Glib::SignalProxy< void > Widget::signal_realize()
6915 {
6916   return Glib::SignalProxy< void >(this, &Widget_signal_realize_info);
6917 }
6918 
6919 
signal_unrealize()6920 Glib::SignalProxy< void > Widget::signal_unrealize()
6921 {
6922   return Glib::SignalProxy< void >(this, &Widget_signal_unrealize_info);
6923 }
6924 
6925 
signal_size_allocate()6926 Glib::SignalProxy< void,Allocation& > Widget::signal_size_allocate()
6927 {
6928   return Glib::SignalProxy< void,Allocation& >(this, &Widget_signal_size_allocate_info);
6929 }
6930 
6931 
6932 #ifndef GTKMM_DISABLE_DEPRECATED
6933 
signal_state_changed()6934 Glib::SignalProxy< void,Gtk::StateType > Widget::signal_state_changed()
6935 {
6936   return Glib::SignalProxy< void,Gtk::StateType >(this, &Widget_signal_state_changed_info);
6937 }
6938 #endif // GTKMM_DISABLE_DEPRECATED
6939 
6940 
signal_state_flags_changed()6941 Glib::SignalProxy< void,Gtk::StateFlags > Widget::signal_state_flags_changed()
6942 {
6943   return Glib::SignalProxy< void,Gtk::StateFlags >(this, &Widget_signal_state_flags_changed_info);
6944 }
6945 
6946 
signal_parent_changed()6947 Glib::SignalProxy< void,Widget* > Widget::signal_parent_changed()
6948 {
6949   return Glib::SignalProxy< void,Widget* >(this, &Widget_signal_parent_changed_info);
6950 }
6951 
6952 
signal_hierarchy_changed()6953 Glib::SignalProxy< void,Widget* > Widget::signal_hierarchy_changed()
6954 {
6955   return Glib::SignalProxy< void,Widget* >(this, &Widget_signal_hierarchy_changed_info);
6956 }
6957 
6958 
signal_style_updated()6959 Glib::SignalProxy< void > Widget::signal_style_updated()
6960 {
6961   return Glib::SignalProxy< void >(this, &Widget_signal_style_updated_info);
6962 }
6963 
6964 
signal_direction_changed()6965 Glib::SignalProxy< void,TextDirection > Widget::signal_direction_changed()
6966 {
6967   return Glib::SignalProxy< void,TextDirection >(this, &Widget_signal_direction_changed_info);
6968 }
6969 
6970 
signal_grab_notify()6971 Glib::SignalProxy< void,bool > Widget::signal_grab_notify()
6972 {
6973   return Glib::SignalProxy< void,bool >(this, &Widget_signal_grab_notify_info);
6974 }
6975 
6976 
signal_child_notify()6977 Glib::SignalProxy< void,GParamSpec* > Widget::signal_child_notify()
6978 {
6979   return Glib::SignalProxy< void,GParamSpec* >(this, &Widget_signal_child_notify_info);
6980 }
6981 
signal_child_notify(const Glib::ustring & child_property_name)6982 Glib::SignalProxyDetailedAnyType< void,GParamSpec* > Widget::signal_child_notify(const Glib::ustring& child_property_name)
6983 {
6984   return Glib::SignalProxyDetailedAnyType< void,GParamSpec* >(this, &Widget_signal_child_notify_info, child_property_name);
6985 }
6986 
6987 
signal_mnemonic_activate()6988 Glib::SignalProxy< bool,bool > Widget::signal_mnemonic_activate()
6989 {
6990   return Glib::SignalProxy< bool,bool >(this, &Widget_signal_mnemonic_activate_info);
6991 }
6992 
6993 
signal_grab_focus()6994 Glib::SignalProxy< void > Widget::signal_grab_focus()
6995 {
6996   return Glib::SignalProxy< void >(this, &Widget_signal_grab_focus_info);
6997 }
6998 
6999 
signal_focus()7000 Glib::SignalProxy< bool,DirectionType > Widget::signal_focus()
7001 {
7002   return Glib::SignalProxy< bool,DirectionType >(this, &Widget_signal_focus_info);
7003 }
7004 
7005 
signal_event()7006 Glib::SignalProxy< bool,GdkEvent* > Widget::signal_event()
7007 {
7008   return Glib::SignalProxy< bool,GdkEvent* >(this, &Widget_signal_event_info);
7009 }
7010 
7011 
signal_event_after()7012 Glib::SignalProxy< void,GdkEvent* > Widget::signal_event_after()
7013 {
7014   return Glib::SignalProxy< void,GdkEvent* >(this, &Widget_signal_event_after_info);
7015 }
7016 
7017 
signal_button_press_event()7018 Glib::SignalProxy< bool,GdkEventButton* > Widget::signal_button_press_event()
7019 {
7020   return Glib::SignalProxy< bool,GdkEventButton* >(this, &Widget_signal_button_press_event_info);
7021 }
7022 
7023 
signal_button_release_event()7024 Glib::SignalProxy< bool,GdkEventButton* > Widget::signal_button_release_event()
7025 {
7026   return Glib::SignalProxy< bool,GdkEventButton* >(this, &Widget_signal_button_release_event_info);
7027 }
7028 
7029 
signal_scroll_event()7030 Glib::SignalProxy< bool,GdkEventScroll* > Widget::signal_scroll_event()
7031 {
7032   return Glib::SignalProxy< bool,GdkEventScroll* >(this, &Widget_signal_scroll_event_info);
7033 }
7034 
7035 
signal_motion_notify_event()7036 Glib::SignalProxy< bool,GdkEventMotion* > Widget::signal_motion_notify_event()
7037 {
7038   return Glib::SignalProxy< bool,GdkEventMotion* >(this, &Widget_signal_motion_notify_event_info);
7039 }
7040 
7041 
signal_delete_event()7042 Glib::SignalProxy< bool,GdkEventAny* > Widget::signal_delete_event()
7043 {
7044   return Glib::SignalProxy< bool,GdkEventAny* >(this, &Widget_signal_delete_event_info);
7045 }
7046 
7047 
signal_draw()7048 Glib::SignalProxy< bool,const ::Cairo::RefPtr< ::Cairo::Context>& > Widget::signal_draw()
7049 {
7050   return Glib::SignalProxy< bool,const ::Cairo::RefPtr< ::Cairo::Context>& >(this, &Widget_signal_draw_info);
7051 }
7052 
7053 
signal_key_press_event()7054 Glib::SignalProxy< bool,GdkEventKey* > Widget::signal_key_press_event()
7055 {
7056   return Glib::SignalProxy< bool,GdkEventKey* >(this, &Widget_signal_key_press_event_info);
7057 }
7058 
7059 
signal_key_release_event()7060 Glib::SignalProxy< bool,GdkEventKey* > Widget::signal_key_release_event()
7061 {
7062   return Glib::SignalProxy< bool,GdkEventKey* >(this, &Widget_signal_key_release_event_info);
7063 }
7064 
7065 
signal_enter_notify_event()7066 Glib::SignalProxy< bool,GdkEventCrossing* > Widget::signal_enter_notify_event()
7067 {
7068   return Glib::SignalProxy< bool,GdkEventCrossing* >(this, &Widget_signal_enter_notify_event_info);
7069 }
7070 
7071 
signal_leave_notify_event()7072 Glib::SignalProxy< bool,GdkEventCrossing* > Widget::signal_leave_notify_event()
7073 {
7074   return Glib::SignalProxy< bool,GdkEventCrossing* >(this, &Widget_signal_leave_notify_event_info);
7075 }
7076 
7077 
signal_configure_event()7078 Glib::SignalProxy< bool,GdkEventConfigure* > Widget::signal_configure_event()
7079 {
7080   return Glib::SignalProxy< bool,GdkEventConfigure* >(this, &Widget_signal_configure_event_info);
7081 }
7082 
7083 
signal_focus_in_event()7084 Glib::SignalProxy< bool,GdkEventFocus* > Widget::signal_focus_in_event()
7085 {
7086   return Glib::SignalProxy< bool,GdkEventFocus* >(this, &Widget_signal_focus_in_event_info);
7087 }
7088 
7089 
signal_focus_out_event()7090 Glib::SignalProxy< bool,GdkEventFocus* > Widget::signal_focus_out_event()
7091 {
7092   return Glib::SignalProxy< bool,GdkEventFocus* >(this, &Widget_signal_focus_out_event_info);
7093 }
7094 
7095 
signal_map_event()7096 Glib::SignalProxy< bool,GdkEventAny* > Widget::signal_map_event()
7097 {
7098   return Glib::SignalProxy< bool,GdkEventAny* >(this, &Widget_signal_map_event_info);
7099 }
7100 
7101 
signal_unmap_event()7102 Glib::SignalProxy< bool,GdkEventAny* > Widget::signal_unmap_event()
7103 {
7104   return Glib::SignalProxy< bool,GdkEventAny* >(this, &Widget_signal_unmap_event_info);
7105 }
7106 
7107 
signal_property_notify_event()7108 Glib::SignalProxy< bool,GdkEventProperty* > Widget::signal_property_notify_event()
7109 {
7110   return Glib::SignalProxy< bool,GdkEventProperty* >(this, &Widget_signal_property_notify_event_info);
7111 }
7112 
7113 
signal_selection_clear_event()7114 Glib::SignalProxy< bool,GdkEventSelection* > Widget::signal_selection_clear_event()
7115 {
7116   return Glib::SignalProxy< bool,GdkEventSelection* >(this, &Widget_signal_selection_clear_event_info);
7117 }
7118 
7119 
signal_selection_request_event()7120 Glib::SignalProxy< bool,GdkEventSelection* > Widget::signal_selection_request_event()
7121 {
7122   return Glib::SignalProxy< bool,GdkEventSelection* >(this, &Widget_signal_selection_request_event_info);
7123 }
7124 
7125 
signal_selection_notify_event()7126 Glib::SignalProxy< bool,GdkEventSelection* > Widget::signal_selection_notify_event()
7127 {
7128   return Glib::SignalProxy< bool,GdkEventSelection* >(this, &Widget_signal_selection_notify_event_info);
7129 }
7130 
7131 
signal_proximity_in_event()7132 Glib::SignalProxy< bool,GdkEventProximity* > Widget::signal_proximity_in_event()
7133 {
7134   return Glib::SignalProxy< bool,GdkEventProximity* >(this, &Widget_signal_proximity_in_event_info);
7135 }
7136 
7137 
signal_proximity_out_event()7138 Glib::SignalProxy< bool,GdkEventProximity* > Widget::signal_proximity_out_event()
7139 {
7140   return Glib::SignalProxy< bool,GdkEventProximity* >(this, &Widget_signal_proximity_out_event_info);
7141 }
7142 
7143 
7144 #ifndef GTKMM_DISABLE_DEPRECATED
7145 
signal_visibility_notify_event()7146 Glib::SignalProxy< bool,GdkEventVisibility* > Widget::signal_visibility_notify_event()
7147 {
7148   return Glib::SignalProxy< bool,GdkEventVisibility* >(this, &Widget_signal_visibility_notify_event_info);
7149 }
7150 #endif // GTKMM_DISABLE_DEPRECATED
7151 
7152 
signal_window_state_event()7153 Glib::SignalProxy< bool,GdkEventWindowState* > Widget::signal_window_state_event()
7154 {
7155   return Glib::SignalProxy< bool,GdkEventWindowState* >(this, &Widget_signal_window_state_event_info);
7156 }
7157 
7158 
signal_selection_get()7159 Glib::SignalProxy< void,SelectionData&,guint,guint > Widget::signal_selection_get()
7160 {
7161   return Glib::SignalProxy< void,SelectionData&,guint,guint >(this, &Widget_signal_selection_get_info);
7162 }
7163 
7164 
signal_selection_received()7165 Glib::SignalProxy< void,const SelectionData&,guint > Widget::signal_selection_received()
7166 {
7167   return Glib::SignalProxy< void,const SelectionData&,guint >(this, &Widget_signal_selection_received_info);
7168 }
7169 
7170 
signal_drag_begin()7171 Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>& > Widget::signal_drag_begin()
7172 {
7173   return Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>& >(this, &Widget_signal_drag_begin_info);
7174 }
7175 
7176 
signal_drag_end()7177 Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>& > Widget::signal_drag_end()
7178 {
7179   return Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>& >(this, &Widget_signal_drag_end_info);
7180 }
7181 
7182 
signal_drag_data_get()7183 Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>&,SelectionData&,guint,guint > Widget::signal_drag_data_get()
7184 {
7185   return Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>&,SelectionData&,guint,guint >(this, &Widget_signal_drag_data_get_info);
7186 }
7187 
7188 
signal_drag_data_delete()7189 Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>& > Widget::signal_drag_data_delete()
7190 {
7191   return Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>& >(this, &Widget_signal_drag_data_delete_info);
7192 }
7193 
7194 
signal_drag_failed()7195 Glib::SignalProxy< bool,const Glib::RefPtr<Gdk::DragContext>&,DragResult > Widget::signal_drag_failed()
7196 {
7197   return Glib::SignalProxy< bool,const Glib::RefPtr<Gdk::DragContext>&,DragResult >(this, &Widget_signal_drag_failed_info);
7198 }
7199 
7200 
signal_drag_leave()7201 Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>&,guint > Widget::signal_drag_leave()
7202 {
7203   return Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>&,guint >(this, &Widget_signal_drag_leave_info);
7204 }
7205 
7206 
signal_drag_motion()7207 Glib::SignalProxy< bool,const Glib::RefPtr<Gdk::DragContext>&,int,int,guint > Widget::signal_drag_motion()
7208 {
7209   return Glib::SignalProxy< bool,const Glib::RefPtr<Gdk::DragContext>&,int,int,guint >(this, &Widget_signal_drag_motion_info);
7210 }
7211 
7212 
signal_drag_drop()7213 Glib::SignalProxy< bool,const Glib::RefPtr<Gdk::DragContext>&,int,int,guint > Widget::signal_drag_drop()
7214 {
7215   return Glib::SignalProxy< bool,const Glib::RefPtr<Gdk::DragContext>&,int,int,guint >(this, &Widget_signal_drag_drop_info);
7216 }
7217 
7218 
signal_drag_data_received()7219 Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>&,int,int,const SelectionData&,guint,guint > Widget::signal_drag_data_received()
7220 {
7221   return Glib::SignalProxy< void,const Glib::RefPtr<Gdk::DragContext>&,int,int,const SelectionData&,guint,guint >(this, &Widget_signal_drag_data_received_info);
7222 }
7223 
7224 
signal_screen_changed()7225 Glib::SignalProxy< void,const Glib::RefPtr<Gdk::Screen>& > Widget::signal_screen_changed()
7226 {
7227   return Glib::SignalProxy< void,const Glib::RefPtr<Gdk::Screen>& >(this, &Widget_signal_screen_changed_info);
7228 }
7229 
7230 
7231 #ifndef GTKMM_DISABLE_DEPRECATED
7232 
signal_composited_changed()7233 Glib::SignalProxy< void > Widget::signal_composited_changed()
7234 {
7235   return Glib::SignalProxy< void >(this, &Widget_signal_composited_changed_info);
7236 }
7237 #endif // GTKMM_DISABLE_DEPRECATED
7238 
7239 
signal_popup_menu()7240 Glib::SignalProxy< bool > Widget::signal_popup_menu()
7241 {
7242   return Glib::SignalProxy< bool >(this, &Widget_signal_popup_menu_info);
7243 }
7244 
7245 
signal_query_tooltip()7246 Glib::SignalProxy< bool,int,int,bool,const Glib::RefPtr<Tooltip>& > Widget::signal_query_tooltip()
7247 {
7248   return Glib::SignalProxy< bool,int,int,bool,const Glib::RefPtr<Tooltip>& >(this, &Widget_signal_query_tooltip_info);
7249 }
7250 
7251 
signal_grab_broken_event()7252 Glib::SignalProxy< bool,GdkEventGrabBroken* > Widget::signal_grab_broken_event()
7253 {
7254   return Glib::SignalProxy< bool,GdkEventGrabBroken* >(this, &Widget_signal_grab_broken_event_info);
7255 }
7256 
7257 
signal_damage_event()7258 Glib::SignalProxy< bool,GdkEventExpose* > Widget::signal_damage_event()
7259 {
7260   return Glib::SignalProxy< bool,GdkEventExpose* >(this, &Widget_signal_damage_event_info);
7261 }
7262 
7263 
signal_touch_event()7264 Glib::SignalProxy< bool,GdkEventTouch* > Widget::signal_touch_event()
7265 {
7266   return Glib::SignalProxy< bool,GdkEventTouch* >(this, &Widget_signal_touch_event_info);
7267 }
7268 
7269 
property_name()7270 Glib::PropertyProxy< Glib::ustring > Widget::property_name()
7271 {
7272   return Glib::PropertyProxy< Glib::ustring >(this, "name");
7273 }
7274 
property_name() const7275 Glib::PropertyProxy_ReadOnly< Glib::ustring > Widget::property_name() const
7276 {
7277   return Glib::PropertyProxy_ReadOnly< Glib::ustring >(this, "name");
7278 }
7279 
property_parent()7280 Glib::PropertyProxy< Container* > Widget::property_parent()
7281 {
7282   return Glib::PropertyProxy< Container* >(this, "parent");
7283 }
7284 
property_parent() const7285 Glib::PropertyProxy_ReadOnly< Container* > Widget::property_parent() const
7286 {
7287   return Glib::PropertyProxy_ReadOnly< Container* >(this, "parent");
7288 }
7289 
property_width_request()7290 Glib::PropertyProxy< int > Widget::property_width_request()
7291 {
7292   return Glib::PropertyProxy< int >(this, "width-request");
7293 }
7294 
property_width_request() const7295 Glib::PropertyProxy_ReadOnly< int > Widget::property_width_request() const
7296 {
7297   return Glib::PropertyProxy_ReadOnly< int >(this, "width-request");
7298 }
7299 
property_height_request()7300 Glib::PropertyProxy< int > Widget::property_height_request()
7301 {
7302   return Glib::PropertyProxy< int >(this, "height-request");
7303 }
7304 
property_height_request() const7305 Glib::PropertyProxy_ReadOnly< int > Widget::property_height_request() const
7306 {
7307   return Glib::PropertyProxy_ReadOnly< int >(this, "height-request");
7308 }
7309 
property_visible()7310 Glib::PropertyProxy< bool > Widget::property_visible()
7311 {
7312   return Glib::PropertyProxy< bool >(this, "visible");
7313 }
7314 
property_visible() const7315 Glib::PropertyProxy_ReadOnly< bool > Widget::property_visible() const
7316 {
7317   return Glib::PropertyProxy_ReadOnly< bool >(this, "visible");
7318 }
7319 
property_sensitive()7320 Glib::PropertyProxy< bool > Widget::property_sensitive()
7321 {
7322   return Glib::PropertyProxy< bool >(this, "sensitive");
7323 }
7324 
property_sensitive() const7325 Glib::PropertyProxy_ReadOnly< bool > Widget::property_sensitive() const
7326 {
7327   return Glib::PropertyProxy_ReadOnly< bool >(this, "sensitive");
7328 }
7329 
property_app_paintable()7330 Glib::PropertyProxy< bool > Widget::property_app_paintable()
7331 {
7332   return Glib::PropertyProxy< bool >(this, "app-paintable");
7333 }
7334 
property_app_paintable() const7335 Glib::PropertyProxy_ReadOnly< bool > Widget::property_app_paintable() const
7336 {
7337   return Glib::PropertyProxy_ReadOnly< bool >(this, "app-paintable");
7338 }
7339 
property_can_focus()7340 Glib::PropertyProxy< bool > Widget::property_can_focus()
7341 {
7342   return Glib::PropertyProxy< bool >(this, "can-focus");
7343 }
7344 
property_can_focus() const7345 Glib::PropertyProxy_ReadOnly< bool > Widget::property_can_focus() const
7346 {
7347   return Glib::PropertyProxy_ReadOnly< bool >(this, "can-focus");
7348 }
7349 
property_has_focus()7350 Glib::PropertyProxy< bool > Widget::property_has_focus()
7351 {
7352   return Glib::PropertyProxy< bool >(this, "has-focus");
7353 }
7354 
property_has_focus() const7355 Glib::PropertyProxy_ReadOnly< bool > Widget::property_has_focus() const
7356 {
7357   return Glib::PropertyProxy_ReadOnly< bool >(this, "has-focus");
7358 }
7359 
property_is_focus()7360 Glib::PropertyProxy< bool > Widget::property_is_focus()
7361 {
7362   return Glib::PropertyProxy< bool >(this, "is-focus");
7363 }
7364 
property_is_focus() const7365 Glib::PropertyProxy_ReadOnly< bool > Widget::property_is_focus() const
7366 {
7367   return Glib::PropertyProxy_ReadOnly< bool >(this, "is-focus");
7368 }
7369 
property_focus_on_click()7370 Glib::PropertyProxy< bool > Widget::property_focus_on_click()
7371 {
7372   return Glib::PropertyProxy< bool >(this, "focus-on-click");
7373 }
7374 
property_focus_on_click() const7375 Glib::PropertyProxy_ReadOnly< bool > Widget::property_focus_on_click() const
7376 {
7377   return Glib::PropertyProxy_ReadOnly< bool >(this, "focus-on-click");
7378 }
7379 
property_can_default()7380 Glib::PropertyProxy< bool > Widget::property_can_default()
7381 {
7382   return Glib::PropertyProxy< bool >(this, "can-default");
7383 }
7384 
property_can_default() const7385 Glib::PropertyProxy_ReadOnly< bool > Widget::property_can_default() const
7386 {
7387   return Glib::PropertyProxy_ReadOnly< bool >(this, "can-default");
7388 }
7389 
property_has_default()7390 Glib::PropertyProxy< bool > Widget::property_has_default()
7391 {
7392   return Glib::PropertyProxy< bool >(this, "has-default");
7393 }
7394 
property_has_default() const7395 Glib::PropertyProxy_ReadOnly< bool > Widget::property_has_default() const
7396 {
7397   return Glib::PropertyProxy_ReadOnly< bool >(this, "has-default");
7398 }
7399 
property_receives_default()7400 Glib::PropertyProxy< bool > Widget::property_receives_default()
7401 {
7402   return Glib::PropertyProxy< bool >(this, "receives-default");
7403 }
7404 
property_receives_default() const7405 Glib::PropertyProxy_ReadOnly< bool > Widget::property_receives_default() const
7406 {
7407   return Glib::PropertyProxy_ReadOnly< bool >(this, "receives-default");
7408 }
7409 
property_composite_child() const7410 Glib::PropertyProxy_ReadOnly< bool > Widget::property_composite_child() const
7411 {
7412   return Glib::PropertyProxy_ReadOnly< bool >(this, "composite-child");
7413 }
7414 
7415 #ifndef GTKMM_DISABLE_DEPRECATED
7416 
property_style()7417 Glib::PropertyProxy< Glib::RefPtr<Style> > Widget::property_style()
7418 {
7419   return Glib::PropertyProxy< Glib::RefPtr<Style> >(this, "style");
7420 }
7421 #endif // GTKMM_DISABLE_DEPRECATED
7422 
7423 
7424 #ifndef GTKMM_DISABLE_DEPRECATED
7425 
property_style() const7426 Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Style> > Widget::property_style() const
7427 {
7428   return Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Style> >(this, "style");
7429 }
7430 #endif // GTKMM_DISABLE_DEPRECATED
7431 
7432 
property_events()7433 Glib::PropertyProxy< Gdk::EventMask > Widget::property_events()
7434 {
7435   return Glib::PropertyProxy< Gdk::EventMask >(this, "events");
7436 }
7437 
property_events() const7438 Glib::PropertyProxy_ReadOnly< Gdk::EventMask > Widget::property_events() const
7439 {
7440   return Glib::PropertyProxy_ReadOnly< Gdk::EventMask >(this, "events");
7441 }
7442 
property_has_tooltip()7443 Glib::PropertyProxy< bool > Widget::property_has_tooltip()
7444 {
7445   return Glib::PropertyProxy< bool >(this, "has-tooltip");
7446 }
7447 
property_has_tooltip() const7448 Glib::PropertyProxy_ReadOnly< bool > Widget::property_has_tooltip() const
7449 {
7450   return Glib::PropertyProxy_ReadOnly< bool >(this, "has-tooltip");
7451 }
7452 
property_tooltip_markup()7453 Glib::PropertyProxy< Glib::ustring > Widget::property_tooltip_markup()
7454 {
7455   return Glib::PropertyProxy< Glib::ustring >(this, "tooltip-markup");
7456 }
7457 
property_tooltip_markup() const7458 Glib::PropertyProxy_ReadOnly< Glib::ustring > Widget::property_tooltip_markup() const
7459 {
7460   return Glib::PropertyProxy_ReadOnly< Glib::ustring >(this, "tooltip-markup");
7461 }
7462 
property_tooltip_text()7463 Glib::PropertyProxy< Glib::ustring > Widget::property_tooltip_text()
7464 {
7465   return Glib::PropertyProxy< Glib::ustring >(this, "tooltip-text");
7466 }
7467 
property_tooltip_text() const7468 Glib::PropertyProxy_ReadOnly< Glib::ustring > Widget::property_tooltip_text() const
7469 {
7470   return Glib::PropertyProxy_ReadOnly< Glib::ustring >(this, "tooltip-text");
7471 }
7472 
property_window() const7473 Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gdk::Window> > Widget::property_window() const
7474 {
7475   return Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gdk::Window> >(this, "window");
7476 }
7477 
property_no_show_all()7478 Glib::PropertyProxy< bool > Widget::property_no_show_all()
7479 {
7480   return Glib::PropertyProxy< bool >(this, "no-show-all");
7481 }
7482 
property_no_show_all() const7483 Glib::PropertyProxy_ReadOnly< bool > Widget::property_no_show_all() const
7484 {
7485   return Glib::PropertyProxy_ReadOnly< bool >(this, "no-show-all");
7486 }
7487 
7488 #ifndef GTKMM_DISABLE_DEPRECATED
7489 
property_double_buffered()7490 Glib::PropertyProxy< bool > Widget::property_double_buffered()
7491 {
7492   return Glib::PropertyProxy< bool >(this, "double-buffered");
7493 }
7494 #endif // GTKMM_DISABLE_DEPRECATED
7495 
7496 
7497 #ifndef GTKMM_DISABLE_DEPRECATED
7498 
property_double_buffered() const7499 Glib::PropertyProxy_ReadOnly< bool > Widget::property_double_buffered() const
7500 {
7501   return Glib::PropertyProxy_ReadOnly< bool >(this, "double-buffered");
7502 }
7503 #endif // GTKMM_DISABLE_DEPRECATED
7504 
7505 
property_halign()7506 Glib::PropertyProxy< Align > Widget::property_halign()
7507 {
7508   return Glib::PropertyProxy< Align >(this, "halign");
7509 }
7510 
property_halign() const7511 Glib::PropertyProxy_ReadOnly< Align > Widget::property_halign() const
7512 {
7513   return Glib::PropertyProxy_ReadOnly< Align >(this, "halign");
7514 }
7515 
property_valign()7516 Glib::PropertyProxy< Align > Widget::property_valign()
7517 {
7518   return Glib::PropertyProxy< Align >(this, "valign");
7519 }
7520 
property_valign() const7521 Glib::PropertyProxy_ReadOnly< Align > Widget::property_valign() const
7522 {
7523   return Glib::PropertyProxy_ReadOnly< Align >(this, "valign");
7524 }
7525 
7526 #ifndef GTKMM_DISABLE_DEPRECATED
7527 
property_margin_left()7528 Glib::PropertyProxy< int > Widget::property_margin_left()
7529 {
7530   return Glib::PropertyProxy< int >(this, "margin-left");
7531 }
7532 #endif // GTKMM_DISABLE_DEPRECATED
7533 
7534 
7535 #ifndef GTKMM_DISABLE_DEPRECATED
7536 
property_margin_left() const7537 Glib::PropertyProxy_ReadOnly< int > Widget::property_margin_left() const
7538 {
7539   return Glib::PropertyProxy_ReadOnly< int >(this, "margin-left");
7540 }
7541 #endif // GTKMM_DISABLE_DEPRECATED
7542 
7543 
7544 #ifndef GTKMM_DISABLE_DEPRECATED
7545 
property_margin_right()7546 Glib::PropertyProxy< int > Widget::property_margin_right()
7547 {
7548   return Glib::PropertyProxy< int >(this, "margin-right");
7549 }
7550 #endif // GTKMM_DISABLE_DEPRECATED
7551 
7552 
7553 #ifndef GTKMM_DISABLE_DEPRECATED
7554 
property_margin_right() const7555 Glib::PropertyProxy_ReadOnly< int > Widget::property_margin_right() const
7556 {
7557   return Glib::PropertyProxy_ReadOnly< int >(this, "margin-right");
7558 }
7559 #endif // GTKMM_DISABLE_DEPRECATED
7560 
7561 
property_margin_start()7562 Glib::PropertyProxy< int > Widget::property_margin_start()
7563 {
7564   return Glib::PropertyProxy< int >(this, "margin-start");
7565 }
7566 
property_margin_start() const7567 Glib::PropertyProxy_ReadOnly< int > Widget::property_margin_start() const
7568 {
7569   return Glib::PropertyProxy_ReadOnly< int >(this, "margin-start");
7570 }
7571 
property_margin_end()7572 Glib::PropertyProxy< int > Widget::property_margin_end()
7573 {
7574   return Glib::PropertyProxy< int >(this, "margin-end");
7575 }
7576 
property_margin_end() const7577 Glib::PropertyProxy_ReadOnly< int > Widget::property_margin_end() const
7578 {
7579   return Glib::PropertyProxy_ReadOnly< int >(this, "margin-end");
7580 }
7581 
property_margin_top()7582 Glib::PropertyProxy< int > Widget::property_margin_top()
7583 {
7584   return Glib::PropertyProxy< int >(this, "margin-top");
7585 }
7586 
property_margin_top() const7587 Glib::PropertyProxy_ReadOnly< int > Widget::property_margin_top() const
7588 {
7589   return Glib::PropertyProxy_ReadOnly< int >(this, "margin-top");
7590 }
7591 
property_margin_bottom()7592 Glib::PropertyProxy< int > Widget::property_margin_bottom()
7593 {
7594   return Glib::PropertyProxy< int >(this, "margin-bottom");
7595 }
7596 
property_margin_bottom() const7597 Glib::PropertyProxy_ReadOnly< int > Widget::property_margin_bottom() const
7598 {
7599   return Glib::PropertyProxy_ReadOnly< int >(this, "margin-bottom");
7600 }
7601 
property_margin()7602 Glib::PropertyProxy< int > Widget::property_margin()
7603 {
7604   return Glib::PropertyProxy< int >(this, "margin");
7605 }
7606 
property_margin() const7607 Glib::PropertyProxy_ReadOnly< int > Widget::property_margin() const
7608 {
7609   return Glib::PropertyProxy_ReadOnly< int >(this, "margin");
7610 }
7611 
property_hexpand()7612 Glib::PropertyProxy< bool > Widget::property_hexpand()
7613 {
7614   return Glib::PropertyProxy< bool >(this, "hexpand");
7615 }
7616 
property_hexpand() const7617 Glib::PropertyProxy_ReadOnly< bool > Widget::property_hexpand() const
7618 {
7619   return Glib::PropertyProxy_ReadOnly< bool >(this, "hexpand");
7620 }
7621 
property_hexpand_set()7622 Glib::PropertyProxy< bool > Widget::property_hexpand_set()
7623 {
7624   return Glib::PropertyProxy< bool >(this, "hexpand-set");
7625 }
7626 
property_hexpand_set() const7627 Glib::PropertyProxy_ReadOnly< bool > Widget::property_hexpand_set() const
7628 {
7629   return Glib::PropertyProxy_ReadOnly< bool >(this, "hexpand-set");
7630 }
7631 
property_vexpand()7632 Glib::PropertyProxy< bool > Widget::property_vexpand()
7633 {
7634   return Glib::PropertyProxy< bool >(this, "vexpand");
7635 }
7636 
property_vexpand() const7637 Glib::PropertyProxy_ReadOnly< bool > Widget::property_vexpand() const
7638 {
7639   return Glib::PropertyProxy_ReadOnly< bool >(this, "vexpand");
7640 }
7641 
property_vexpand_set()7642 Glib::PropertyProxy< bool > Widget::property_vexpand_set()
7643 {
7644   return Glib::PropertyProxy< bool >(this, "vexpand-set");
7645 }
7646 
property_vexpand_set() const7647 Glib::PropertyProxy_ReadOnly< bool > Widget::property_vexpand_set() const
7648 {
7649   return Glib::PropertyProxy_ReadOnly< bool >(this, "vexpand-set");
7650 }
7651 
property_expand()7652 Glib::PropertyProxy< bool > Widget::property_expand()
7653 {
7654   return Glib::PropertyProxy< bool >(this, "expand");
7655 }
7656 
property_expand() const7657 Glib::PropertyProxy_ReadOnly< bool > Widget::property_expand() const
7658 {
7659   return Glib::PropertyProxy_ReadOnly< bool >(this, "expand");
7660 }
7661 
property_opacity()7662 Glib::PropertyProxy< double > Widget::property_opacity()
7663 {
7664   return Glib::PropertyProxy< double >(this, "opacity");
7665 }
7666 
property_opacity() const7667 Glib::PropertyProxy_ReadOnly< double > Widget::property_opacity() const
7668 {
7669   return Glib::PropertyProxy_ReadOnly< double >(this, "opacity");
7670 }
7671 
property_scale_factor() const7672 Glib::PropertyProxy_ReadOnly< int > Widget::property_scale_factor() const
7673 {
7674   return Glib::PropertyProxy_ReadOnly< int >(this, "scale-factor");
7675 }
7676 
7677 
on_show()7678 void Gtk::Widget::on_show()
7679 {
7680   const auto base = static_cast<BaseClassType*>(
7681       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7682   );
7683 
7684   if(base && base->show)
7685     (*base->show)(gobj());
7686 }
on_hide()7687 void Gtk::Widget::on_hide()
7688 {
7689   const auto base = static_cast<BaseClassType*>(
7690       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7691   );
7692 
7693   if(base && base->hide)
7694     (*base->hide)(gobj());
7695 }
on_map()7696 void Gtk::Widget::on_map()
7697 {
7698   const auto base = static_cast<BaseClassType*>(
7699       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7700   );
7701 
7702   if(base && base->map)
7703     (*base->map)(gobj());
7704 }
on_unmap()7705 void Gtk::Widget::on_unmap()
7706 {
7707   const auto base = static_cast<BaseClassType*>(
7708       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7709   );
7710 
7711   if(base && base->unmap)
7712     (*base->unmap)(gobj());
7713 }
on_realize()7714 void Gtk::Widget::on_realize()
7715 {
7716   const auto base = static_cast<BaseClassType*>(
7717       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7718   );
7719 
7720   if(base && base->realize)
7721     (*base->realize)(gobj());
7722 }
on_unrealize()7723 void Gtk::Widget::on_unrealize()
7724 {
7725   const auto base = static_cast<BaseClassType*>(
7726       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7727   );
7728 
7729   if(base && base->unrealize)
7730     (*base->unrealize)(gobj());
7731 }
on_size_allocate(Allocation & allocation)7732 void Gtk::Widget::on_size_allocate(Allocation& allocation)
7733 {
7734   const auto base = static_cast<BaseClassType*>(
7735       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7736   );
7737 
7738   if(base && base->size_allocate)
7739     (*base->size_allocate)(gobj(),(GdkRectangle*)(allocation.gobj()));
7740 }
on_state_changed(Gtk::StateType previous_state)7741 void Gtk::Widget::on_state_changed(Gtk::StateType previous_state)
7742 {
7743   const auto base = static_cast<BaseClassType*>(
7744       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7745   );
7746 
7747   if(base && base->state_changed)
7748     (*base->state_changed)(gobj(),((GtkStateType)(previous_state)));
7749 }
on_parent_changed(Widget * previous_parent)7750 void Gtk::Widget::on_parent_changed(Widget* previous_parent)
7751 {
7752   const auto base = static_cast<BaseClassType*>(
7753       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7754   );
7755 
7756   if(base && base->parent_set)
7757     (*base->parent_set)(gobj(),(GtkWidget*)Glib::unwrap(previous_parent));
7758 }
on_hierarchy_changed(Widget * previous_toplevel)7759 void Gtk::Widget::on_hierarchy_changed(Widget* previous_toplevel)
7760 {
7761   const auto base = static_cast<BaseClassType*>(
7762       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7763   );
7764 
7765   if(base && base->hierarchy_changed)
7766     (*base->hierarchy_changed)(gobj(),(GtkWidget*)Glib::unwrap(previous_toplevel));
7767 }
on_style_updated()7768 void Gtk::Widget::on_style_updated()
7769 {
7770   const auto base = static_cast<BaseClassType*>(
7771       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7772   );
7773 
7774   if(base && base->style_updated)
7775     (*base->style_updated)(gobj());
7776 }
on_direction_changed(TextDirection direction)7777 void Gtk::Widget::on_direction_changed(TextDirection direction)
7778 {
7779   const auto base = static_cast<BaseClassType*>(
7780       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7781   );
7782 
7783   if(base && base->direction_changed)
7784     (*base->direction_changed)(gobj(),((GtkTextDirection)(direction)));
7785 }
on_grab_notify(bool was_grabbed)7786 void Gtk::Widget::on_grab_notify(bool was_grabbed)
7787 {
7788   const auto base = static_cast<BaseClassType*>(
7789       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7790   );
7791 
7792   if(base && base->grab_notify)
7793     (*base->grab_notify)(gobj(),static_cast<int>(was_grabbed));
7794 }
on_child_notify(GParamSpec * pspec)7795 void Gtk::Widget::on_child_notify(GParamSpec* pspec)
7796 {
7797   const auto base = static_cast<BaseClassType*>(
7798       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7799   );
7800 
7801   if(base && base->child_notify)
7802     (*base->child_notify)(gobj(),pspec);
7803 }
on_mnemonic_activate(bool group_cycling)7804 bool Gtk::Widget::on_mnemonic_activate(bool group_cycling)
7805 {
7806   const auto base = static_cast<BaseClassType*>(
7807       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7808   );
7809 
7810   if(base && base->mnemonic_activate)
7811     return (*base->mnemonic_activate)(gobj(),static_cast<int>(group_cycling));
7812 
7813   using RType = bool;
7814   return RType();
7815 }
on_grab_focus()7816 void Gtk::Widget::on_grab_focus()
7817 {
7818   const auto base = static_cast<BaseClassType*>(
7819       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7820   );
7821 
7822   if(base && base->grab_focus)
7823     (*base->grab_focus)(gobj());
7824 }
on_focus(DirectionType direction)7825 bool Gtk::Widget::on_focus(DirectionType direction)
7826 {
7827   const auto base = static_cast<BaseClassType*>(
7828       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7829   );
7830 
7831   if(base && base->focus)
7832     return (*base->focus)(gobj(),((GtkDirectionType)(direction)));
7833 
7834   using RType = bool;
7835   return RType();
7836 }
on_event(GdkEvent * gdk_event)7837 bool Gtk::Widget::on_event(GdkEvent* gdk_event)
7838 {
7839   const auto base = static_cast<BaseClassType*>(
7840       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7841   );
7842 
7843   if(base && base->event)
7844     return (*base->event)(gobj(),gdk_event);
7845 
7846   using RType = bool;
7847   return RType();
7848 }
on_button_press_event(GdkEventButton * button_event)7849 bool Gtk::Widget::on_button_press_event(GdkEventButton* button_event)
7850 {
7851   const auto base = static_cast<BaseClassType*>(
7852       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7853   );
7854 
7855   if(base && base->button_press_event)
7856     return (*base->button_press_event)(gobj(),button_event);
7857 
7858   using RType = bool;
7859   return RType();
7860 }
on_button_release_event(GdkEventButton * release_event)7861 bool Gtk::Widget::on_button_release_event(GdkEventButton* release_event)
7862 {
7863   const auto base = static_cast<BaseClassType*>(
7864       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7865   );
7866 
7867   if(base && base->button_release_event)
7868     return (*base->button_release_event)(gobj(),release_event);
7869 
7870   using RType = bool;
7871   return RType();
7872 }
on_scroll_event(GdkEventScroll * scroll_event)7873 bool Gtk::Widget::on_scroll_event(GdkEventScroll* scroll_event)
7874 {
7875   const auto base = static_cast<BaseClassType*>(
7876       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7877   );
7878 
7879   if(base && base->scroll_event)
7880     return (*base->scroll_event)(gobj(),scroll_event);
7881 
7882   using RType = bool;
7883   return RType();
7884 }
on_motion_notify_event(GdkEventMotion * motion_event)7885 bool Gtk::Widget::on_motion_notify_event(GdkEventMotion* motion_event)
7886 {
7887   const auto base = static_cast<BaseClassType*>(
7888       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7889   );
7890 
7891   if(base && base->motion_notify_event)
7892     return (*base->motion_notify_event)(gobj(),motion_event);
7893 
7894   using RType = bool;
7895   return RType();
7896 }
on_delete_event(GdkEventAny * any_event)7897 bool Gtk::Widget::on_delete_event(GdkEventAny* any_event)
7898 {
7899   const auto base = static_cast<BaseClassType*>(
7900       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7901   );
7902 
7903   if(base && base->delete_event)
7904     return (*base->delete_event)(gobj(),any_event);
7905 
7906   using RType = bool;
7907   return RType();
7908 }
on_draw(const::Cairo::RefPtr<::Cairo::Context> & cr)7909 bool Gtk::Widget::on_draw(const ::Cairo::RefPtr< ::Cairo::Context>& cr)
7910 {
7911   const auto base = static_cast<BaseClassType*>(
7912       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7913   );
7914 
7915   if(base && base->draw)
7916     return (*base->draw)(gobj(),(cr)->cobj());
7917 
7918   using RType = bool;
7919   return RType();
7920 }
on_key_press_event(GdkEventKey * key_event)7921 bool Gtk::Widget::on_key_press_event(GdkEventKey* key_event)
7922 {
7923   const auto base = static_cast<BaseClassType*>(
7924       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7925   );
7926 
7927   if(base && base->key_press_event)
7928     return (*base->key_press_event)(gobj(),key_event);
7929 
7930   using RType = bool;
7931   return RType();
7932 }
on_key_release_event(GdkEventKey * key_event)7933 bool Gtk::Widget::on_key_release_event(GdkEventKey* key_event)
7934 {
7935   const auto base = static_cast<BaseClassType*>(
7936       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7937   );
7938 
7939   if(base && base->key_release_event)
7940     return (*base->key_release_event)(gobj(),key_event);
7941 
7942   using RType = bool;
7943   return RType();
7944 }
on_enter_notify_event(GdkEventCrossing * crossing_event)7945 bool Gtk::Widget::on_enter_notify_event(GdkEventCrossing* crossing_event)
7946 {
7947   const auto base = static_cast<BaseClassType*>(
7948       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7949   );
7950 
7951   if(base && base->enter_notify_event)
7952     return (*base->enter_notify_event)(gobj(),crossing_event);
7953 
7954   using RType = bool;
7955   return RType();
7956 }
on_leave_notify_event(GdkEventCrossing * crossing_event)7957 bool Gtk::Widget::on_leave_notify_event(GdkEventCrossing* crossing_event)
7958 {
7959   const auto base = static_cast<BaseClassType*>(
7960       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7961   );
7962 
7963   if(base && base->leave_notify_event)
7964     return (*base->leave_notify_event)(gobj(),crossing_event);
7965 
7966   using RType = bool;
7967   return RType();
7968 }
on_configure_event(GdkEventConfigure * configure_event)7969 bool Gtk::Widget::on_configure_event(GdkEventConfigure* configure_event)
7970 {
7971   const auto base = static_cast<BaseClassType*>(
7972       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7973   );
7974 
7975   if(base && base->configure_event)
7976     return (*base->configure_event)(gobj(),configure_event);
7977 
7978   using RType = bool;
7979   return RType();
7980 }
on_focus_in_event(GdkEventFocus * focus_event)7981 bool Gtk::Widget::on_focus_in_event(GdkEventFocus* focus_event)
7982 {
7983   const auto base = static_cast<BaseClassType*>(
7984       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7985   );
7986 
7987   if(base && base->focus_in_event)
7988     return (*base->focus_in_event)(gobj(),focus_event);
7989 
7990   using RType = bool;
7991   return RType();
7992 }
on_focus_out_event(GdkEventFocus * gdk_event)7993 bool Gtk::Widget::on_focus_out_event(GdkEventFocus* gdk_event)
7994 {
7995   const auto base = static_cast<BaseClassType*>(
7996       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
7997   );
7998 
7999   if(base && base->focus_out_event)
8000     return (*base->focus_out_event)(gobj(),gdk_event);
8001 
8002   using RType = bool;
8003   return RType();
8004 }
on_map_event(GdkEventAny * any_event)8005 bool Gtk::Widget::on_map_event(GdkEventAny* any_event)
8006 {
8007   const auto base = static_cast<BaseClassType*>(
8008       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8009   );
8010 
8011   if(base && base->map_event)
8012     return (*base->map_event)(gobj(),any_event);
8013 
8014   using RType = bool;
8015   return RType();
8016 }
on_unmap_event(GdkEventAny * any_event)8017 bool Gtk::Widget::on_unmap_event(GdkEventAny* any_event)
8018 {
8019   const auto base = static_cast<BaseClassType*>(
8020       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8021   );
8022 
8023   if(base && base->unmap_event)
8024     return (*base->unmap_event)(gobj(),any_event);
8025 
8026   using RType = bool;
8027   return RType();
8028 }
on_property_notify_event(GdkEventProperty * property_event)8029 bool Gtk::Widget::on_property_notify_event(GdkEventProperty* property_event)
8030 {
8031   const auto base = static_cast<BaseClassType*>(
8032       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8033   );
8034 
8035   if(base && base->property_notify_event)
8036     return (*base->property_notify_event)(gobj(),property_event);
8037 
8038   using RType = bool;
8039   return RType();
8040 }
on_selection_clear_event(GdkEventSelection * selection_event)8041 bool Gtk::Widget::on_selection_clear_event(GdkEventSelection* selection_event)
8042 {
8043   const auto base = static_cast<BaseClassType*>(
8044       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8045   );
8046 
8047   if(base && base->selection_clear_event)
8048     return (*base->selection_clear_event)(gobj(),selection_event);
8049 
8050   using RType = bool;
8051   return RType();
8052 }
on_selection_request_event(GdkEventSelection * selection_event)8053 bool Gtk::Widget::on_selection_request_event(GdkEventSelection* selection_event)
8054 {
8055   const auto base = static_cast<BaseClassType*>(
8056       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8057   );
8058 
8059   if(base && base->selection_request_event)
8060     return (*base->selection_request_event)(gobj(),selection_event);
8061 
8062   using RType = bool;
8063   return RType();
8064 }
on_selection_notify_event(GdkEventSelection * selection_event)8065 bool Gtk::Widget::on_selection_notify_event(GdkEventSelection* selection_event)
8066 {
8067   const auto base = static_cast<BaseClassType*>(
8068       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8069   );
8070 
8071   if(base && base->selection_notify_event)
8072     return (*base->selection_notify_event)(gobj(),selection_event);
8073 
8074   using RType = bool;
8075   return RType();
8076 }
on_proximity_in_event(GdkEventProximity * proximity_event)8077 bool Gtk::Widget::on_proximity_in_event(GdkEventProximity* proximity_event)
8078 {
8079   const auto base = static_cast<BaseClassType*>(
8080       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8081   );
8082 
8083   if(base && base->proximity_in_event)
8084     return (*base->proximity_in_event)(gobj(),proximity_event);
8085 
8086   using RType = bool;
8087   return RType();
8088 }
on_proximity_out_event(GdkEventProximity * proximity_event)8089 bool Gtk::Widget::on_proximity_out_event(GdkEventProximity* proximity_event)
8090 {
8091   const auto base = static_cast<BaseClassType*>(
8092       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8093   );
8094 
8095   if(base && base->proximity_out_event)
8096     return (*base->proximity_out_event)(gobj(),proximity_event);
8097 
8098   using RType = bool;
8099   return RType();
8100 }
on_visibility_notify_event(GdkEventVisibility * visibility_event)8101 bool Gtk::Widget::on_visibility_notify_event(GdkEventVisibility* visibility_event)
8102 {
8103   const auto base = static_cast<BaseClassType*>(
8104       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8105   );
8106 
8107   if(base && base->visibility_notify_event)
8108     return (*base->visibility_notify_event)(gobj(),visibility_event);
8109 
8110   using RType = bool;
8111   return RType();
8112 }
on_window_state_event(GdkEventWindowState * window_state_event)8113 bool Gtk::Widget::on_window_state_event(GdkEventWindowState* window_state_event)
8114 {
8115   const auto base = static_cast<BaseClassType*>(
8116       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8117   );
8118 
8119   if(base && base->window_state_event)
8120     return (*base->window_state_event)(gobj(),window_state_event);
8121 
8122   using RType = bool;
8123   return RType();
8124 }
on_selection_get(SelectionData & selection_data,guint info,guint time)8125 void Gtk::Widget::on_selection_get(SelectionData& selection_data, guint info, guint time)
8126 {
8127   const auto base = static_cast<BaseClassType*>(
8128       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8129   );
8130 
8131   if(base && base->selection_get)
8132     (*base->selection_get)(gobj(),(selection_data).gobj(),info,time);
8133 }
on_selection_received(const SelectionData & selection_data,guint time)8134 void Gtk::Widget::on_selection_received(const SelectionData& selection_data, guint time)
8135 {
8136   const auto base = static_cast<BaseClassType*>(
8137       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8138   );
8139 
8140   if(base && base->selection_received)
8141     (*base->selection_received)(gobj(),const_cast<GtkSelectionData*>((selection_data).gobj()),time);
8142 }
on_drag_begin(const Glib::RefPtr<Gdk::DragContext> & context)8143 void Gtk::Widget::on_drag_begin(const Glib::RefPtr<Gdk::DragContext>& context)
8144 {
8145   const auto base = static_cast<BaseClassType*>(
8146       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8147   );
8148 
8149   if(base && base->drag_begin)
8150     (*base->drag_begin)(gobj(),Glib::unwrap(context));
8151 }
on_drag_end(const Glib::RefPtr<Gdk::DragContext> & context)8152 void Gtk::Widget::on_drag_end(const Glib::RefPtr<Gdk::DragContext>& context)
8153 {
8154   const auto base = static_cast<BaseClassType*>(
8155       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8156   );
8157 
8158   if(base && base->drag_end)
8159     (*base->drag_end)(gobj(),Glib::unwrap(context));
8160 }
on_drag_data_get(const Glib::RefPtr<Gdk::DragContext> & context,SelectionData & selection_data,guint info,guint time)8161 void Gtk::Widget::on_drag_data_get(const Glib::RefPtr<Gdk::DragContext>& context, SelectionData& selection_data, guint info, guint time)
8162 {
8163   const auto base = static_cast<BaseClassType*>(
8164       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8165   );
8166 
8167   if(base && base->drag_data_get)
8168     (*base->drag_data_get)(gobj(),Glib::unwrap(context),(selection_data).gobj(),info,time);
8169 }
on_drag_data_delete(const Glib::RefPtr<Gdk::DragContext> & context)8170 void Gtk::Widget::on_drag_data_delete(const Glib::RefPtr<Gdk::DragContext>& context)
8171 {
8172   const auto base = static_cast<BaseClassType*>(
8173       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8174   );
8175 
8176   if(base && base->drag_data_delete)
8177     (*base->drag_data_delete)(gobj(),Glib::unwrap(context));
8178 }
on_drag_leave(const Glib::RefPtr<Gdk::DragContext> & context,guint time)8179 void Gtk::Widget::on_drag_leave(const Glib::RefPtr<Gdk::DragContext>& context, guint time)
8180 {
8181   const auto base = static_cast<BaseClassType*>(
8182       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8183   );
8184 
8185   if(base && base->drag_leave)
8186     (*base->drag_leave)(gobj(),Glib::unwrap(context),time);
8187 }
on_drag_motion(const Glib::RefPtr<Gdk::DragContext> & context,int x,int y,guint time)8188 bool Gtk::Widget::on_drag_motion(const Glib::RefPtr<Gdk::DragContext>& context, int x, int y, guint time)
8189 {
8190   const auto base = static_cast<BaseClassType*>(
8191       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8192   );
8193 
8194   if(base && base->drag_motion)
8195     return (*base->drag_motion)(gobj(),Glib::unwrap(context),x,y,time);
8196 
8197   using RType = bool;
8198   return RType();
8199 }
on_drag_drop(const Glib::RefPtr<Gdk::DragContext> & context,int x,int y,guint time)8200 bool Gtk::Widget::on_drag_drop(const Glib::RefPtr<Gdk::DragContext>& context, int x, int y, guint time)
8201 {
8202   const auto base = static_cast<BaseClassType*>(
8203       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8204   );
8205 
8206   if(base && base->drag_drop)
8207     return (*base->drag_drop)(gobj(),Glib::unwrap(context),x,y,time);
8208 
8209   using RType = bool;
8210   return RType();
8211 }
on_drag_data_received(const Glib::RefPtr<Gdk::DragContext> & context,int x,int y,const SelectionData & selection_data,guint info,guint time)8212 void Gtk::Widget::on_drag_data_received(const Glib::RefPtr<Gdk::DragContext>& context, int x, int y, const SelectionData& selection_data, guint info, guint time)
8213 {
8214   const auto base = static_cast<BaseClassType*>(
8215       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8216   );
8217 
8218   if(base && base->drag_data_received)
8219     (*base->drag_data_received)(gobj(),Glib::unwrap(context),x,y,const_cast<GtkSelectionData*>((selection_data).gobj()),info,time);
8220 }
on_screen_changed(const Glib::RefPtr<Gdk::Screen> & previous_screen)8221 void Gtk::Widget::on_screen_changed(const Glib::RefPtr<Gdk::Screen>& previous_screen)
8222 {
8223   const auto base = static_cast<BaseClassType*>(
8224       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8225   );
8226 
8227   if(base && base->screen_changed)
8228     (*base->screen_changed)(gobj(),Glib::unwrap(previous_screen));
8229 }
8230 
dispatch_child_properties_changed_vfunc(guint p1,GParamSpec ** p2)8231 void Gtk::Widget::dispatch_child_properties_changed_vfunc(guint p1, GParamSpec** p2)
8232 {
8233   const auto base = static_cast<BaseClassType*>(
8234       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8235   );
8236 
8237   if(base && base->dispatch_child_properties_changed)
8238   {
8239     (*base->dispatch_child_properties_changed)(gobj(),p1,p2);
8240   }
8241 }
show_all_vfunc()8242 void Gtk::Widget::show_all_vfunc()
8243 {
8244   const auto base = static_cast<BaseClassType*>(
8245       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8246   );
8247 
8248   if(base && base->show_all)
8249   {
8250     (*base->show_all)(gobj());
8251   }
8252 }
8253 #ifdef GTKMM_ATKMM_ENABLED
get_accessible_vfunc()8254 Glib::RefPtr<Atk::Object> Gtk::Widget::get_accessible_vfunc()
8255 {
8256   const auto base = static_cast<BaseClassType*>(
8257       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8258   );
8259 
8260   if(base && base->get_accessible)
8261   {
8262     Glib::RefPtr<Atk::Object> retval(Glib::wrap((*base->get_accessible)(gobj()), true));
8263     return retval;
8264   }
8265 
8266   using RType = Glib::RefPtr<Atk::Object>;
8267   return RType();
8268 }
8269 #endif // GTKMM_ATKMM_ENABLED
get_request_mode_vfunc() const8270 SizeRequestMode Gtk::Widget::get_request_mode_vfunc() const
8271 {
8272   const auto base = static_cast<BaseClassType*>(
8273       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8274   );
8275 
8276   if(base && base->get_request_mode)
8277   {
8278     SizeRequestMode retval(((SizeRequestMode)((*base->get_request_mode)(const_cast<GtkWidget*>(gobj())))));
8279     return retval;
8280   }
8281 
8282   using RType = SizeRequestMode;
8283   return RType();
8284 }
get_preferred_width_vfunc(int & minimum_width,int & natural_width) const8285 void Gtk::Widget::get_preferred_width_vfunc(int& minimum_width, int& natural_width) const
8286 {
8287   const auto base = static_cast<BaseClassType*>(
8288       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8289   );
8290 
8291   if(base && base->get_preferred_width)
8292   {
8293     (*base->get_preferred_width)(const_cast<GtkWidget*>(gobj()),&(minimum_width),&(natural_width));
8294   }
8295 }
get_preferred_height_for_width_vfunc(int width,int & minimum_height,int & natural_height) const8296 void Gtk::Widget::get_preferred_height_for_width_vfunc(int width, int& minimum_height, int& natural_height) const
8297 {
8298   const auto base = static_cast<BaseClassType*>(
8299       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8300   );
8301 
8302   if(base && base->get_preferred_height_for_width)
8303   {
8304     (*base->get_preferred_height_for_width)(const_cast<GtkWidget*>(gobj()),width,&(minimum_height),&(natural_height));
8305   }
8306 }
get_preferred_height_vfunc(int & minimum_height,int & natural_height) const8307 void Gtk::Widget::get_preferred_height_vfunc(int& minimum_height, int& natural_height) const
8308 {
8309   const auto base = static_cast<BaseClassType*>(
8310       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8311   );
8312 
8313   if(base && base->get_preferred_height)
8314   {
8315     (*base->get_preferred_height)(const_cast<GtkWidget*>(gobj()),&(minimum_height),&(natural_height));
8316   }
8317 }
get_preferred_width_for_height_vfunc(int height,int & minimum_width,int & natural_width) const8318 void Gtk::Widget::get_preferred_width_for_height_vfunc(int height, int& minimum_width, int& natural_width) const
8319 {
8320   const auto base = static_cast<BaseClassType*>(
8321       g_type_class_peek_parent(G_OBJECT_GET_CLASS(gobject_)) // Get the parent class of the object class (The original underlying C class).
8322   );
8323 
8324   if(base && base->get_preferred_width_for_height)
8325   {
8326     (*base->get_preferred_width_for_height)(const_cast<GtkWidget*>(gobj()),height,&(minimum_width),&(natural_width));
8327   }
8328 }
8329 
8330 
8331 } // namespace Gtk
8332 
8333 
8334