gtk.widget
Module for [Widget] class
Types 3
GtkWidget is the base class all widgets in GTK+ derive from. It manages the widget lifecycle, states and style.
Height-for-width Geometry Management # {#geometry-management}
GTK+ uses a height-for-width (and width-for-height) geometry management system. Height-for-width means that a widget can change how much vertical space it needs, depending on the amount of horizontal space that it is given (and similar for width-for-height). The most common example is a label that reflows to fill up the available width, wraps to fewer lines, and therefore needs less height.
Height-for-width geometry management is implemented in GTK+ by way of five virtual methods:
- #GtkWidgetClass.get_request_mode()
- #GtkWidgetClass.get_preferred_width()
- #GtkWidgetClass.get_preferred_height()
- #GtkWidgetClass.get_preferred_height_for_width()
- #GtkWidgetClass.get_preferred_width_for_height()
- #GtkWidgetClass.get_preferred_height_and_baseline_for_width()
There are some important things to keep in mind when implementing height-for-width and when using it in container implementations.
The geometry management system will query a widget hierarchy in only one orientation at a time. When widgets are initially queried for their minimum sizes it is generally done in two initial passes in the #GtkSizeRequestMode chosen by the toplevel.
For example, when queried in the normal gtk.types.SizeRequestMode.HeightForWidth mode: First, the default minimum and natural width for each widget in the interface will be computed using gtk.widget.Widget.getPreferredWidth. Because the preferred widths for each container depend on the preferred widths of their children, this information propagates up the hierarchy, and finally a minimum and natural width is determined for the entire toplevel. Next, the toplevel will use the minimum width to query for the minimum height contextual to that width using gtk.widget.Widget.getPreferredHeightForWidth, which will also be a highly recursive operation. The minimum height for the minimum width is normally used to set the minimum size constraint on the toplevel (unless gtk.window.Window.setGeometryHints is explicitly used instead).
After the toplevel window has initially requested its size in both dimensions it can go on to allocate itself a reasonable size (or a size previously specified with gtk.window.Window.setDefaultSize). During the recursive allocation process it’s important to note that request cycles will be recursively executed while container widgets allocate their children. Each container widget, once allocated a size, will go on to first share the space in one orientation among its children and then request each child's height for its target allocated width or its width for allocated height, depending. In this way a #GtkWidget will typically be requested its size a number of times before actually being allocated a size. The size a widget is finally allocated can of course differ from the size it has requested. For this reason, #GtkWidget caches a small number of results to avoid re-querying for the same sizes in one allocation cycle.
See GtkContainer’s geometry management section to learn more about how height-for-width allocations are performed by container widgets.
If a widget does move content around to intelligently use up the allocated size then it must support the request in both #GtkSizeRequestModes even if the widget in question only trades sizes in a single orientation.
For instance, a #GtkLabel that does height-for-width word wrapping will not expect to have #GtkWidgetClass.get_preferred_height() called because that call is specific to a width-for-height request. In this case the label must return the height required for its own minimum possible width. By following this rule any widget that handles height-for-width or width-for-height requests will always be allocated at least enough space to fit its own content.
Here are some examples of how a gtk.types.SizeRequestMode.HeightForWidth widget generally deals with width-for-height requests, for #GtkWidgetClass.get_preferred_height() it will do:
static void
foo_widget_get_preferred_height (GtkWidget *widget,
gint *min_height,
gint *nat_height)
{
if (i_am_in_height_for_width_mode)
{
gint min_width, nat_width;
GTK_WIDGET_GET_CLASS (widget)->get_preferred_width (widget,
&min_width,
&nat_width);
GTK_WIDGET_GET_CLASS (widget)->get_preferred_height_for_width
(widget,
min_width,
min_height,
nat_height);
}
else
{
... some widgets do both. For instance, if a GtkLabel is
rotated to 90 degrees it will return the minimum and
natural height for the rotated label here.
}
}And in #GtkWidgetClass.get_preferred_width_for_height() it will simply return the minimum and natural width:
static void
foo_widget_get_preferred_width_for_height (GtkWidget *widget,
gint for_height,
gint *min_width,
gint *nat_width)
{
if (i_am_in_height_for_width_mode)
{
GTK_WIDGET_GET_CLASS (widget)->get_preferred_width (widget,
min_width,
nat_width);
}
else
{
... again if a widget is sometimes operating in
width-for-height mode (like a rotated GtkLabel) it can go
ahead and do its real width for height calculation here.
}
}Often a widget needs to get its own request during size request or allocation. For example, when computing height it may need to also compute width. Or when deciding how to use an allocation, the widget may need to know its natural size. In these cases, the widget should be careful to call its virtual methods directly, like this:
GTK_WIDGET_GET_CLASS(widget)->get_preferred_width (widget,
&min,
&natural);It will not work to use the wrapper functions, such as gtk.widget.Widget.getPreferredWidth inside your own size request implementation. These return a request adjusted by #GtkSizeGroup and by the #GtkWidgetClass.adjust_size_request() virtual method. If a widget used the wrappers inside its virtual method implementations, then the adjustments (such as widget margins) would be applied twice. GTK+ therefore does not allow this and will warn if you try to do it.
Of course if you are getting the size request for another widget, such as a child of a container, you must use the wrapper APIs. Otherwise, you would not properly consider widget margins, #GtkSizeGroup, and so forth.
Since 3.10 GTK+ also supports baseline vertical alignment of widgets. This means that widgets are positioned such that the typographical baseline of widgets in the same row are aligned. This happens if a widget supports baselines, has a vertical alignment of gtk.types.Align.Baseline, and is inside a container that supports baselines and has a natural “row” that it aligns to the baseline, or a baseline assigned to it by the grandparent.
Baseline alignment support for a widget is done by the #GtkWidgetClass.get_preferred_height_and_baseline_for_width() virtual function. It allows you to report a baseline in combination with the minimum and natural height. If there is no baseline you can return -1 to indicate this. The default implementation of this virtual function calls into the #GtkWidgetClass.get_preferred_height() and #GtkWidgetClass.get_preferred_height_for_width(), so if baselines are not supported it doesn’t need to be implemented.
If a widget ends up baseline aligned it will be allocated all the space in the parent as if it was gtk.types.Align.Fill, but the selected baseline can be found via gtk.widget.Widget.getAllocatedBaseline. If this has a value other than -1 you need to align the widget such that the baseline appears at the position.
Style Properties
#GtkWidget introduces “style properties” - these are basically object properties that are stored not on the object, but in the style object associated to the widget. Style properties are set in resource files. This mechanism is used for configuring such things as the location of the scrollbar arrows through the theme, giving theme authors more control over the look of applications without the need to write a theme engine in C.
Use gtk.widget_class.WidgetClass.installStyleProperty to install style properties for a widget class, gtk.widget_class.WidgetClass.findStyleProperty or gtk.widget_class.WidgetClass.listStyleProperties to get information about existing style properties and gtk.widget.Widget.styleGetProperty, gtk.widget.Widget.styleGet or gtk.widget.Widget.styleGetValist to obtain the value of a style property.
GtkWidget as GtkBuildable
The GtkWidget implementation of the GtkBuildable interface supports a custom <accelerator> element, which has attributes named ”key”, ”modifiers” and ”signal” and allows to specify accelerators.
An example of a UI definition fragment specifying an accelerator:
<object class="GtkButton">
<accelerator key="q" modifiers="GDK_CONTROL_MASK" signal="clicked"/>
</object>In addition to accelerators, GtkWidget also support a custom <accessible> element, which supports actions and relations. Properties on the accessible implementation of an object can be set by accessing the internal child “accessible” of a #GtkWidget.
An example of a UI definition fragment specifying an accessible:
<object class="GtkLabel" id="label1"/>
<property name="label">I am a Label for a Button</property>
</object>
<object class="GtkButton" id="button1">
<accessibility>
<action action_name="click" translatable="yes">Click the button.</action>
<relation target="label1" type="labelled-by"/>
</accessibility>
<child internal-child="accessible">
<object class="AtkObject" id="a11y-button1">
<property name="accessible-name">Clickable Button</property>
</object>
</child>
</object>Finally, GtkWidget allows style information such as style classes to be associated with widgets, using the custom <style> element:
<object class="GtkButton" id="button1">
<style>
<class name="my-special-button-class"/>
<class name="dark-button"/>
</style>
</object>Building composite widgets from template XML ## {#composite-templates}
GtkWidget exposes some facilities to automate the procedure of creating composite widgets using #GtkBuilder interface description language.
To create composite widgets with #GtkBuilder XML, one must associate the interface description with the widget class at class initialization time using gtk.widget_class.WidgetClass.setTemplate.
The interface description semantics expected in composite template descriptions is slightly different from regular #GtkBuilder XML.
Unlike regular interface descriptions, gtk.widget_class.WidgetClass.setTemplate will expect a <template> tag as a direct child of the toplevel <interface> tag. The <template> tag must specify the “class” attribute which must be the type name of the widget. Optionally, the “parent” attribute may be specified to specify the direct parent type of the widget type, this is ignored by the GtkBuilder but required for Glade to introspect what kind of properties and internal children exist for a given type when the actual type does not exist.
The XML which is contained inside the <template> tag behaves as if it were added to the <object> tag defining "widget" itself. You may set properties on @widget by inserting <property> tags into the <template> tag, and also add <child> tags to add children and extend "widget" in the normal way you would with <object> tags.
Additionally, <object> tags can also be added before and after the initial <template> tag in the normal way, allowing one to define auxiliary objects which might be referenced by other widgets declared as children of the <template> tag.
An example of a GtkBuilder Template Definition:
<interface>
<template class="FooWidget" parent="GtkBox">
<property name="orientation">GTK_ORIENTATION_HORIZONTAL</property>
<property name="spacing">4</property>
<child>
<object class="GtkButton" id="hello_button">
<property name="label">Hello World</property>
<signal name="clicked" handler="hello_button_clicked" object="FooWidget" swapped="yes"/>
</object>
</child>
<child>
<object class="GtkButton" id="goodbye_button">
<property name="label">Goodbye World</property>
</object>
</child>
</template>
</interface>Typically, you'll place the template fragment into a file that is bundled with your project, using #GResource. In order to load the template, you need to call gtk.widget_class.WidgetClass.setTemplateFromResource from the class initialization of your #GtkWidget type:
static void
foo_widget_class_init (FooWidgetClass *klass)
{
// ...
gtk_widget_class_set_template_from_resource (GTK_WIDGET_CLASS (klass),
"/com/example/ui/foowidget.ui");
}You will also need to call gtk.widget.Widget.initTemplate from the instance initialization function:
static void
foo_widget_init (FooWidget *self)
{
// ...
gtk_widget_init_template (GTK_WIDGET (self));
}You can access widgets defined in the template using the gtk.widget.Widget.getTemplateChild function, but you will typically declare a pointer in the instance private data structure of your type using the same name as the widget in the template definition, and call gtk_widget_class_bind_template_child_private() with that name, e.g.
typedef struct {
GtkWidget *hello_button;
GtkWidget *goodbye_button;
} FooWidgetPrivate;
G_DEFINE_TYPE_WITH_PRIVATE (FooWidget, foo_widget, GTK_TYPE_BOX)
static void
foo_widget_class_init (FooWidgetClass *klass)
{
// ...
gtk_widget_class_set_template_from_resource (GTK_WIDGET_CLASS (klass),
"/com/example/ui/foowidget.ui");
gtk_widget_class_bind_template_child_private (GTK_WIDGET_CLASS (klass),
FooWidget, hello_button);
gtk_widget_class_bind_template_child_private (GTK_WIDGET_CLASS (klass),
FooWidget, goodbye_button);
}
static void
foo_widget_init (FooWidget *widget)
{
}You can also use gtk_widget_class_bind_template_callback() to connect a signal callback defined in the template with a function visible in the scope of the class, e.g.
// the signal handler has the instance and user data swapped
// because of the swapped="yes" attribute in the template XML
static void
hello_button_clicked (FooWidget *self,
GtkButton *button)
{
g_print ("Hello, world!\n");
}
static void
foo_widget_class_init (FooWidgetClass *klass)
{
// ...
gtk_widget_class_set_template_from_resource (GTK_WIDGET_CLASS (klass),
"/com/example/ui/foowidget.ui");
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (klass), hello_button_clicked);
}WidgetGidBuilder builder() static nothrowGet builder for [gtk.widget.Widget] Returns: New builder objectbool doubleBuffered() @property nothrowGet `doubleBuffered` property. Returns: Whether the widget is double buffered.void doubleBuffered(bool propval) @property nothrowSet `doubleBuffered` property. Params: propval = Whether the widget is double buffered.bool expand() @property nothrowGet `expand` property. Returns: Whether to expand in both directions. Setting this sets both #GtkWidget:hexpand and #GtkWidget:vexpandvoid expand(bool propval) @property nothrowSet `expand` property. Params: propval = Whether to expand in both directions. Setting this sets both #GtkWidget:hexpand and #GtkWidget:vexpandbool focusOnClick() @property nothrowGet `focusOnClick` property. Returns: Whether the widget should grab focus when it is clicked with the mouse.void focusOnClick(bool propval) @property nothrowSet `focusOnClick` property. Params: propval = Whether the widget should grab focus when it is clicked with the mouse.gtk.types.Align halign() @property nothrowGet `halign` property. Returns: How to distribute horizontal space if widget gets extra space, see #GtkAlignvoid halign(gtk.types.Align propval) @property nothrowSet `halign` property. Params: propval = How to distribute horizontal space if widget gets extra space, see #GtkAlignbool hasTooltip() @property nothrowGet `hasTooltip` property. Returns: Enables or disables the emission of #GtkWidget::query-tooltip on @widget. A value of true indicates that @widget can have a tooltip, in this case the widget will...void hasTooltip(bool propval) @property nothrowSet `hasTooltip` property. Params: propval = Enables or disables the emission of #GtkWidget::query-tooltip on @widget. A value of true indicates that @widget can have a tooltip, in this case the wi...bool hexpand() @property nothrowGet `hexpand` property. Returns: Whether to expand horizontally. See [gtk.widget.Widget.setHexpand].void hexpand(bool propval) @property nothrowSet `hexpand` property. Params: propval = Whether to expand horizontally. See [gtk.widget.Widget.setHexpand].bool hexpandSet() @property nothrowGet `hexpandSet` property. Returns: Whether to use the #GtkWidget:hexpand property. See [gtk.widget.Widget.getHexpandSet].void hexpandSet(bool propval) @property nothrowSet `hexpandSet` property. Params: propval = Whether to use the #GtkWidget:hexpand property. See [gtk.widget.Widget.getHexpandSet].int margin() @property nothrowGet `margin` property. Returns: Sets all four sides' margin at once. If read, returns max margin on any side.void margin(int propval) @property nothrowSet `margin` property. Params: propval = Sets all four sides' margin at once. If read, returns max margin on any side.int marginBottom() @property nothrowGet `marginBottom` property. Returns: Margin on bottom side of widget.void marginBottom(int propval) @property nothrowSet `marginBottom` property. Params: propval = Margin on bottom side of widget.int marginEnd() @property nothrowGet `marginEnd` property. Returns: Margin on end of widget, horizontally. This property supports left-to-right and right-to-left text directions.void marginEnd(int propval) @property nothrowSet `marginEnd` property. Params: propval = Margin on end of widget, horizontally. This property supports left-to-right and right-to-left text directions.int marginLeft() @property nothrowGet `marginLeft` property. Returns: Margin on left side of widget.void marginLeft(int propval) @property nothrowSet `marginLeft` property. Params: propval = Margin on left side of widget.int marginRight() @property nothrowGet `marginRight` property. Returns: Margin on right side of widget.void marginRight(int propval) @property nothrowSet `marginRight` property. Params: propval = Margin on right side of widget.int marginStart() @property nothrowGet `marginStart` property. Returns: Margin on start of widget, horizontally. This property supports left-to-right and right-to-left text directions.void marginStart(int propval) @property nothrowSet `marginStart` property. Params: propval = Margin on start of widget, horizontally. This property supports left-to-right and right-to-left text directions.void marginTop(int propval) @property nothrowSet `marginTop` property. Params: propval = Margin on top side of widget.double opacity() @property nothrowGet `opacity` property. Returns: The requested opacity of the widget. See [gtk.widget.Widget.setOpacity] for more details about window opacity.void opacity(double propval) @property nothrowSet `opacity` property. Params: propval = The requested opacity of the widget. See [gtk.widget.Widget.setOpacity] for more details about window opacity.int scaleFactor() @property nothrowGet `scaleFactor` property. Returns: The scale factor of the widget. See [gtk.widget.Widget.getScaleFactor] for more details about widget scaling.gtk.style.Style style() @property nothrowGet `style` property. Returns: The style of the widget, which contains information about how it will look (colors, etc).void style(gtk.style.Style propval) @property nothrowSet `style` property. Params: propval = The style of the widget, which contains information about how it will look (colors, etc).string tooltipMarkup() @property nothrowGet `tooltipMarkup` property. Returns: Sets the text of tooltip to be the given string, which is marked up with the [Pango text markup language][PangoMarkupFormat]. Also see [gtk.tooltip.Tooltip.se...void tooltipMarkup(string propval) @property nothrowSet `tooltipMarkup` property. Params: propval = Sets the text of tooltip to be the given string, which is marked up with the [Pango text markup language][PangoMarkupFormat]. Also see [gtk.tooltip.T...string tooltipText() @property nothrowGet `tooltipText` property. Returns: Sets the text of tooltip to be the given string.void tooltipText(string propval) @property nothrowSet `tooltipText` property. Params: propval = Sets the text of tooltip to be the given string.gtk.types.Align valign() @property nothrowGet `valign` property. Returns: How to distribute vertical space if widget gets extra space, see #GtkAlignvoid valign(gtk.types.Align propval) @property nothrowSet `valign` property. Params: propval = How to distribute vertical space if widget gets extra space, see #GtkAlignbool vexpand() @property nothrowGet `vexpand` property. Returns: Whether to expand vertically. See [gtk.widget.Widget.setVexpand].void vexpand(bool propval) @property nothrowSet `vexpand` property. Params: propval = Whether to expand vertically. See [gtk.widget.Widget.setVexpand].bool vexpandSet() @property nothrowGet `vexpandSet` property. Returns: Whether to use the #GtkWidget:vexpand property. See [gtk.widget.Widget.getVexpandSet].void vexpandSet(bool propval) @property nothrowSet `vexpandSet` property. Params: propval = Whether to use the #GtkWidget:vexpand property. See [gtk.widget.Widget.getVexpandSet].gdk.window.Window window() @property nothrowGet `window` property. Returns: The widget's window if it is realized, null otherwise.gtk.types.TextDirection getDefaultDirection() static nothrowObtains the current default reading direction. See [gtk.widget.Widget.setDefaultDirection]. Returns: the current default direction.gtk.style.Style getDefaultStyle() static nothrowReturns the default style used by all widgets initially. Returns: the default style. This #GtkStyle object is owned by GTK+ and should not be modified or freed.void popCompositeChild() static nothrowCancels the effect of a previous call to [gtk.widget.Widget.pushCompositeChild].void pushCompositeChild() static nothrowMakes all newly-created widgets as composite children until the corresponding [gtk.widget.Widget.popCompositeChild] call.void setDefaultDirection(gtk.types.TextDirection dir) static nothrowSets the default reading direction for widgets where the direction has not been explicitly set by [gtk.widget.Widget.setDirection].bool activate() nothrowFor widgets that can be “activated” (buttons, menu items, etc.) this function activates them. Activation is what happens when you press Enter on a widget during key navigation. If widget isn't ...void addAccelerator(string accelSignal, gtk.accel_group.AccelGroup accelGroup, uint accelKey, gdk.types.ModifierType accelMods, gtk.types.AccelFlags accelFlags) nothrowInstalls an accelerator for this widget in accel_group that causes accel_signal to be emitted if the accelerator is activated. The accel_group needs to be added to the widget’s toplevel via [gtk....void addDeviceEvents(gdk.device.Device device, gdk.types.EventMask events) nothrowAdds the device events in the bitfield events to the event mask for widget. See [gtk.widget.Widget.setDeviceEvents] for details.void addEvents(int events) nothrowAdds the events in the bitfield events to the event mask for widget. See [gtk.widget.Widget.setEvents] and the [input handling overview][event-masks] for details.void addMnemonicLabel(gtk.widget.Widget label) nothrowAdds a widget to the list of mnemonic labels for this widget. (See [gtk.widget.Widget.listMnemonicLabels]). Note the list of mnemonic labels for the widget is cleared when the widget is destroyed, ...uint addTickCallback(gtk.types.TickCallback callback) nothrowQueues an animation frame update and adds a callback to be called before each frame. Until the tick callback is removed, it will be called frequently (usually at the frame rate of the output device...bool canActivateAccel(uint signalId) nothrowDetermines whether an accelerator that activates the signal identified by signal_id can currently be activated. This is done by emitting the #GtkWidget::can-activate-accel signal on widget; if the ...bool childFocus(gtk.types.DirectionType direction) nothrowThis function is used by custom widget implementations; if you're writing an app, you’d use [gtk.widget.Widget.grabFocus] to move the focus to a particular widget, and [gtk.container.Container.se...void childNotify(string childProperty) nothrowEmits a #GtkWidget::child-notify signal for the [child property][child-properties] child_property on widget.void classPath(out uint pathLength, out string path, out string pathReversed) nothrowSame as [gtk.widget.Widget.path], but always uses the name of a widget’s type, never uses a custom name set with [gtk.widget.Widget.setName].bool computeExpand(gtk.types.Orientation orientation) nothrowComputes whether a container should give this widget extra space when possible. Containers should check this, rather than looking at [gtk.widget.Widget.getHexpand] or [gtk.widget.Widget.getVexpand].pango.context.Context createPangoContext() nothrowCreates a new #PangoContext with the appropriate font map, font options, font description, and base direction for drawing text for this widget. See also [gtk.widget.Widget.getPangoContext]. Returns...pango.layout.Layout createPangoLayout(string text = null) nothrowCreates a new #PangoLayout with the appropriate font map, font description, and base direction for drawing text for this widget.void destroyed(gtk.widget.Widget widgetPointer) nothrowThis function sets *widget_pointer to null if widget_pointer != null. It’s intended to be used as a callback connected to the “destroy” signal of a widget. You connect [gtk.widget.Widget.des...bool deviceIsShadowed(gdk.device.Device device) nothrowReturns true if device has been shadowed by a GTK+ device grab on another widget, so it would stop sending events to widget. This may be used in the #GtkWidget::grab-notify signal to check for spec...gdk.drag_context.DragContext dragBegin(gtk.target_list.TargetList targets, gdk.types.DragAction actions, int button, gdk.event.Event event = null) nothrowThis function is equivalent to [gtk.widget.Widget.dragBeginWithCoordinates], passing -1, -1 as coordinates.gdk.drag_context.DragContext dragBeginWithCoordinates(gtk.target_list.TargetList targets, gdk.types.DragAction actions, int button, gdk.event.Event event, int x, int y) nothrowInitiates a drag on the source side. The function only needs to be used when the application is starting drags itself, and is not needed when [gtk.widget.Widget.dragSourceSet] is used.bool dragCheckThreshold(int startX, int startY, int currentX, int currentY) nothrowChecks to see if a mouse drag starting at (start_x, start_y) and ending at (current_x, current_y) has passed the GTK+ drag threshold, and thus should trigger the beginning of a drag-and-drop operat...void dragDestAddImageTargets() nothrowAdd the image targets supported by #GtkSelectionData to the target list of the drag destination. The targets are added with info = 0. If you need another value, use [gtk.target_list.TargetList.addI...void dragDestAddTextTargets() nothrowAdd the text targets supported by #GtkSelectionData to the target list of the drag destination. The targets are added with info = 0. If you need another value, use [gtk.target_list.TargetList.addTe...void dragDestAddUriTargets() nothrowAdd the URI targets supported by #GtkSelectionData to the target list of the drag destination. The targets are added with info = 0. If you need another value, use [gtk.target_list.TargetList.addUri...gdk.atom.Atom dragDestFindTarget(gdk.drag_context.DragContext context, gtk.target_list.TargetList targetList = null) nothrowLooks for a match between the supported targets of context and the dest_target_list, returning the first matching target, otherwise returning `GDK_NONE`. dest_target_list should usually be the retu...gtk.target_list.TargetList dragDestGetTargetList() nothrowReturns the list of targets this widget can accept from drag-and-drop. Returns: the #GtkTargetList, or null if nonebool dragDestGetTrackMotion() nothrowReturns whether the widget has been configured to always emit #GtkWidget::drag-motion signals. Returns: true if the widget always emits #GtkWidget::drag-motion eventsvoid dragDestSet(gtk.types.DestDefaults flags, gtk.target_entry.TargetEntry[] targets, gdk.types.DragAction actions) nothrowSets a widget as a potential drop destination, and adds default behaviors.void dragDestSetProxy(gdk.window.Window proxyWindow, gdk.types.DragProtocol protocol, bool useCoordinates) nothrowSets this widget as a proxy for drops to another window.void dragDestSetTargetList(gtk.target_list.TargetList targetList = null) nothrowSets the target types that this widget can accept from drag-and-drop. The widget must first be made into a drag destination with [gtk.widget.Widget.dragDestSet].void dragDestSetTrackMotion(bool trackMotion) nothrowTells the widget to emit #GtkWidget::drag-motion and #GtkWidget::drag-leave events regardless of the targets and the [gtk.types.DestDefaults.Motion] flag.void dragDestUnset() nothrowClears information about a drop destination set with [gtk.widget.Widget.dragDestSet]. The widget will no longer receive notification of drags.void dragGetData(gdk.drag_context.DragContext context, gdk.atom.Atom target, uint time) nothrowGets the data associated with a drag. When the data is received or the retrieval fails, GTK+ will emit a #GtkWidget::drag-data-received signal. Failure of the retrieval is indicated by the length f...void dragHighlight() nothrowHighlights a widget as a currently hovered drop target. To end the highlight, call [gtk.widget.Widget.dragUnhighlight]. GTK+ calls this automatically if [gtk.types.DestDefaults.Highlight] is set.void dragSourceAddImageTargets() nothrowAdd the writable image targets supported by #GtkSelectionData to the target list of the drag source. The targets are added with info = 0. If you need another value, use [gtk.target_list.TargetList....void dragSourceAddTextTargets() nothrowAdd the text targets supported by #GtkSelectionData to the target list of the drag source. The targets are added with info = 0. If you need another value, use [gtk.target_list.TargetList.addTextTa...void dragSourceAddUriTargets() nothrowAdd the URI targets supported by #GtkSelectionData to the target list of the drag source. The targets are added with info = 0. If you need another value, use [gtk.target_list.TargetList.addUriTarg...gtk.target_list.TargetList dragSourceGetTargetList() nothrowGets the list of targets this widget can provide for drag-and-drop. Returns: the #GtkTargetList, or null if nonevoid dragSourceSet(gdk.types.ModifierType startButtonMask, gtk.target_entry.TargetEntry[] targets, gdk.types.DragAction actions) nothrowSets up a widget so that GTK+ will start a drag operation when the user clicks and drags on the widget. The widget must have a window.void dragSourceSetIconGicon(gio.icon.Icon icon) nothrowSets the icon that will be used for drags from a particular source to icon. See the docs for #GtkIconTheme for more details.void dragSourceSetIconName(string iconName) nothrowSets the icon that will be used for drags from a particular source to a themed icon. See the docs for #GtkIconTheme for more details.void dragSourceSetIconPixbuf(gdkpixbuf.pixbuf.Pixbuf pixbuf) nothrowSets the icon that will be used for drags from a particular widget from a #GdkPixbuf. GTK+ retains a reference for pixbuf and will release it when it is no longer needed.void dragSourceSetIconStock(string stockId) nothrowSets the icon that will be used for drags from a particular source to a stock icon.void dragSourceSetTargetList(gtk.target_list.TargetList targetList = null) nothrowChanges the target types that this widget offers for drag-and-drop. The widget must first be made into a drag source with [gtk.widget.Widget.dragSourceSet].void dragUnhighlight() nothrowRemoves a highlight set by [gtk.widget.Widget.dragHighlight] from a widget.void draw(cairo.context.Context cr) nothrowDraws widget to cr. The top left corner of the widget will be drawn to the currently set origin point of cr.void errorBell() nothrowNotifies the user about an input-related error on this widget. If the #GtkSettings:gtk-error-bell setting is true, it calls [gdk.window.Window.beep], otherwise it does nothing.bool event(gdk.event.Event event) nothrowRarely-used function. This function is used to emit the event signals on a widget (those signals should never be emitted without using this function to do so). If you want to synthesize an event th...void freezeChildNotify() nothrowStops emission of #GtkWidget::child-notify signals on widget. The signals are queued until [gtk.widget.Widget.thawChildNotify] is called on widget.atk.object.ObjectWrap getAccessible() nothrowReturns the accessible object that describes the widget to an assistive technology.gio.action_group.ActionGroup getActionGroup(string prefix) nothrowRetrieves the #GActionGroup that was registered using prefix. The resulting #GActionGroup may have been registered to widget or any #GtkWidget in its ancestry.int getAllocatedBaseline() nothrowReturns the baseline that has currently been allocated to widget. This function is intended to be used when implementing handlers for the #GtkWidget::draw function, and when allocating child widget...int getAllocatedHeight() nothrowReturns the height that has currently been allocated to widget. This function is intended to be used when implementing handlers for the #GtkWidget::draw function. Returns: the height of the widgetvoid getAllocatedSize(out gtk.types.Allocation allocation, out int baseline) nothrowRetrieves the widget’s allocated size.int getAllocatedWidth() nothrowReturns the width that has currently been allocated to widget. This function is intended to be used when implementing handlers for the #GtkWidget::draw function. Returns: the width of the widgetgtk.widget.Widget getAncestor(gobject.types.GType widgetType) nothrowGets the first ancestor of widget with type widget_type. For example, `gtk_widget_get_ancestor (widget, GTK_TYPE_BOX)` gets the first #GtkBox that’s an ancestor of widget. No reference will be ad...bool getAppPaintable() nothrowDetermines whether the application intends to draw on the widget in an #GtkWidget::draw handler.bool getCanDefault() nothrowDetermines whether widget can be a default widget. See [gtk.widget.Widget.setCanDefault]. Returns: true if widget can be a default widget, false otherwisebool getCanFocus() nothrowDetermines whether widget can own the input focus. See [gtk.widget.Widget.setCanFocus]. Returns: true if widget can own the input focus, false otherwisevoid getChildRequisition(out gtk.requisition.Requisition requisition) nothrowThis function is only for use in widget implementations. Obtains widget->requisition, unless someone has forced a particular geometry on the widget (e.g. with [gtk.widget.Widget.setSizeRequest]), i...bool getChildVisible() nothrowGets the value set with [gtk.widget.Widget.setChildVisible]. If you feel a need to use this function, your code probably needs reorganization.gtk.clipboard.Clipboard getClipboard(gdk.atom.Atom selection) nothrowReturns the clipboard object for the given selection to be used with widget. widget must have a #GdkDisplay associated with it, so must be attached to a toplevel window.string getCompositeName() nothrowObtains the composite name of a widget. Returns: the composite name of widget, or null if widget is not a composite child. The string should be freed when it is no longer needed.bool getDeviceEnabled(gdk.device.Device device) nothrowReturns whether device can interact with widget and its children. See [gtk.widget.Widget.setDeviceEnabled].gdk.types.EventMask getDeviceEvents(gdk.device.Device device) nothrowReturns the events mask for the widget corresponding to an specific device. These are the events that the widget will receive when device operates on it.gtk.types.TextDirection getDirection() nothrowGets the reading direction for a particular widget. See [gtk.widget.Widget.setDirection]. Returns: the reading direction for the widget.gdk.display.Display getDisplay() nothrowGet the #GdkDisplay for the toplevel window associated with this widget. This function can only be called after the widget has been added to a widget hierarchy with a #GtkWindow at the top.int getEvents() nothrowReturns the event mask (see #GdkEventMask) for the widget. These are the events that the widget will receive.bool getFocusOnClick() nothrowReturns whether the widget should grab focus when it is clicked with the mouse. See [gtk.widget.Widget.setFocusOnClick]. Returns: true if the widget should grab focus when it is clicked with the mo...pango.font_map.FontMap getFontMap() nothrowGets the font map that has been set with [gtk.widget.Widget.setFontMap]. Returns: A #PangoFontMap, or nullcairo.font_options.FontOptions getFontOptions() nothrowReturns the #cairo_font_options_t used for Pango rendering. When not set, the defaults font options for the #GdkScreen will be used. Returns: the #cairo_font_options_t or null if not setgdk.frame_clock.FrameClock getFrameClock() nothrowObtains the frame clock for a widget. The frame clock is a global “ticker” that can be used to drive animations and repaints. The most common reason to get the frame clock is to call [gdk.fram...bool getHasTooltip() nothrowReturns the current value of the has-tooltip property. See #GtkWidget:has-tooltip for more information. Returns: current value of has-tooltip on widget.bool getHasWindow() nothrowDetermines whether widget has a #GdkWindow of its own. See [gtk.widget.Widget.setHasWindow]. Returns: true if widget has a window, false otherwisebool getHexpand() nothrowGets whether the widget would like any available extra horizontal space. When a user resizes a #GtkWindow, widgets with expand=TRUE generally receive the extra space. For example, a list or scrolla...bool getHexpandSet() nothrowGets whether [gtk.widget.Widget.setHexpand] has been used to explicitly set the expand flag on this widget.bool getMapped() nothrowWhether the widget is mapped. Returns: true if the widget is mapped, false otherwise.int getMarginBottom() nothrowGets the value of the #GtkWidget:margin-bottom property. Returns: The bottom margin of widgetint getMarginEnd() nothrowGets the value of the #GtkWidget:margin-end property. Returns: The end margin of widgetint getMarginLeft() nothrowGets the value of the #GtkWidget:margin-left property. Returns: The left margin of widgetint getMarginRight() nothrowGets the value of the #GtkWidget:margin-right property. Returns: The right margin of widgetint getMarginStart() nothrowGets the value of the #GtkWidget:margin-start property. Returns: The start margin of widgetint getMarginTop() nothrowGets the value of the #GtkWidget:margin-top property. Returns: The top margin of widgetgdk.types.ModifierType getModifierMask(gdk.types.ModifierIntent intent) nothrowReturns the modifier mask the widget’s windowing system backend uses for a particular purpose.gtk.rc_style.RcStyle getModifierStyle() nothrowReturns the current modifier style for the widget. (As set by [gtk.widget.Widget.modifyStyle].) If no style has previously set, a new #GtkRcStyle will be created with all values unset, and set as t...string getName() nothrowRetrieves the name of a widget. See [gtk.widget.Widget.setName] for the significance of widget names. Returns: name of the widget. This string is owned by GTK+ and should not be modified or freedbool getNoShowAll() nothrowReturns the current value of the #GtkWidget:no-show-all property, which determines whether calls to [gtk.widget.Widget.showAll] will affect this widget. Returns: the current value of the “no-show...double getOpacity() nothrowFetches the requested opacity for this widget. See [gtk.widget.Widget.setOpacity]. Returns: the requested opacity for this widget.pango.context.Context getPangoContext() nothrowGets a #PangoContext with the appropriate font map, font description, and base direction for this widget. Unlike the context returned by [gtk.widget.Widget.createPangoContext], this context is owne...gtk.widget.Widget getParent() nothrowReturns the parent container of widget. Returns: the parent container of widget, or nullgdk.window.Window getParentWindow() nothrowGets widget’s parent window, or null if it does not have one. Returns: the parent window of widget, or null if it does not have a parent window.gtk.widget_path.WidgetPath getPath() nothrowReturns the #GtkWidgetPath representing widget, if the widget is not connected to a toplevel widget, a partial path will be created. Returns: The #GtkWidgetPath representing widgetvoid getPointer(out int x, out int y) nothrowObtains the location of the mouse pointer in widget coordinates. Widget coordinates are a bit odd; for historical reasons, they are defined as widget->window coordinates for widgets that return tru...void getPreferredHeight(out int minimumHeight, out int naturalHeight) nothrowRetrieves a widget’s initial minimum and natural height.void getPreferredHeightAndBaselineForWidth(int width, out int minimumHeight, out int naturalHeight, out int minimumBaseline, out int naturalBaseline) nothrowRetrieves a widget’s minimum and natural height and the corresponding baselines if it would be given the specified width, or the default height if width is -1. The baselines may be -1 which means...void getPreferredHeightForWidth(int width, out int minimumHeight, out int naturalHeight) nothrowRetrieves a widget’s minimum and natural height if it would be given the specified width.void getPreferredSize(out gtk.requisition.Requisition minimumSize, out gtk.requisition.Requisition naturalSize) nothrowRetrieves the minimum and natural size of a widget, taking into account the widget’s preference for height-for-width management.void getPreferredWidth(out int minimumWidth, out int naturalWidth) nothrowRetrieves a widget’s initial minimum and natural width.void getPreferredWidthForHeight(int height, out int minimumWidth, out int naturalWidth) nothrowRetrieves a widget’s minimum and natural width if it would be given the specified height.bool getRealized() nothrowDetermines whether widget is realized. Returns: true if widget is realized, false otherwisebool getReceivesDefault() nothrowDetermines whether widget is always treated as the default widget within its toplevel when it has the focus, even if another widget is the default.gtk.types.SizeRequestMode getRequestMode() nothrowGets whether the widget prefers a height-for-width layout or a width-for-height layout.void getRequisition(out gtk.requisition.Requisition requisition) nothrowRetrieves the widget’s requisition.gdk.window.Window getRootWindow() nothrowGet the root window where this widget is located. This function can only be called after the widget has been added to a widget hierarchy with #GtkWindow at the top.int getScaleFactor() nothrowRetrieves the internal scale factor that maps from window coordinates to the actual device pixels. On traditional systems this is 1, on high density outputs, it can be a higher value (typically 2).gdk.screen.Screen getScreen() nothrowGet the #GdkScreen from the toplevel window associated with this widget. This function can only be called after the widget has been added to a widget hierarchy with a #GtkWindow at the top.bool getSensitive() nothrowReturns the widget’s sensitivity (in the sense of returning the value that has been set using [gtk.widget.Widget.setSensitive]).gtk.settings.Settings getSettings() nothrowGets the settings object holding the settings used for this widget.void getSizeRequest(out int width, out int height) nothrowGets the size request that was explicitly set for the widget using [gtk.widget.Widget.setSizeRequest]. A value of -1 stored in width or height indicates that that dimension has not been set explici...gtk.types.StateType getState() nothrowReturns the widget’s state. See [gtk.widget.Widget.setState]. Returns: the state of widget.gtk.types.StateFlags getStateFlags() nothrowReturns the widget state as a flag set. It is worth mentioning that the effective [gtk.types.StateFlags.Insensitive] state will be returned, that is, also based on parent insensitivity, even if wid...gtk.style.Style getStyle() nothrowSimply an accessor function that returns widget->style. Returns: the widget’s #GtkStylegtk.style_context.StyleContext getStyleContext() nothrowReturns the style context associated to widget. The returned object is guaranteed to be the same for the lifetime of widget. Returns: a #GtkStyleContext. This memory is owned by widget and must not...bool getSupportMultidevice() nothrowReturns true if widget is multiple pointer aware. See [gtk.widget.Widget.setSupportMultidevice] for more information. Returns: true if widget is multidevice aware.gobject.object.ObjectWrap getTemplateChild(gobject.types.GType widgetType, string name) nothrowFetch an object build from the template XML for widget_type in this widget instance.string getTooltipMarkup() nothrowGets the contents of the tooltip for widget. Returns: the tooltip text, or null. You should free the returned string with [glib.global.gfree] when done.string getTooltipText() nothrowGets the contents of the tooltip for widget. Returns: the tooltip text, or null. You should free the returned string with [glib.global.gfree] when done.gtk.window.Window getTooltipWindow() nothrowReturns the #GtkWindow of the current tooltip. This can be the GtkWindow created by default, or the custom tooltip window set using [gtk.widget.Widget.setTooltipWindow]. Returns: The #GtkWindow of ...gtk.widget.Widget getToplevel() nothrowThis function returns the topmost widget in the container hierarchy widget is a part of. If widget has no parent widgets, it will be returned as the topmost widget. No reference will be added to th...gtk.types.Align getValignWithBaseline() nothrowGets the value of the #GtkWidget:valign property, including [gtk.types.Align.Baseline]. Returns: the vertical alignment of widgetbool getVexpandSet() nothrowGets whether [gtk.widget.Widget.setVexpand] has been used to explicitly set the expand flag on this widget.bool getVisible() nothrowDetermines whether the widget is visible. If you want to take into account whether the widget’s parent is also marked as visible, use [gtk.widget.Widget.isVisible] instead.gdk.visual.Visual getVisual() nothrowGets the visual that will be used to render widget. Returns: the visual for widgetgdk.window.Window getWindow() nothrowReturns the widget’s window if it is realized, null otherwise Returns: widget’s window.void grabDefault() nothrowCauses widget to become the default widget. widget must be able to be a default widget; typically you would ensure this yourself by calling [gtk.widget.Widget.setCanDefault] with a true value. The ...void grabFocus() nothrowCauses widget to have the keyboard focus for the #GtkWindow it's inside. widget must be a focusable widget, such as a #GtkEntry; something like #GtkFrame won’t work.bool hasDefault() nothrowDetermines whether widget is the current default widget within its toplevel. See [gtk.widget.Widget.setCanDefault]. Returns: true if widget is the current default widget within its toplevel, false ...bool hasFocus() nothrowDetermines if the widget has the global input focus. See [gtk.widget.Widget.isFocus] for the difference between having the global input focus, and only having the focus within a toplevel. Returns: ...bool hasGrab() nothrowDetermines whether the widget is currently grabbing events, so it is the only widget receiving input events (keyboard and mouse).bool hasRcStyle() nothrowDetermines if the widget style has been looked up through the rc mechanism. Returns: true if the widget has been looked up through the rc mechanism, false otherwise.bool hasScreen() nothrowChecks whether there is a #GdkScreen is associated with this widget. All toplevel widgets have an associated screen, and all widgets added into a hierarchy with a toplevel window at the top. Return...bool hasVisibleFocus() nothrowDetermines if the widget should show a visible indication that it has the global input focus. This is a convenience function for use in ::draw handlers that takes into account whether focus indicat...void hide() nothrowReverses the effects of [gtk.widget.Widget.show], causing the widget to be hidden (invisible to the user).bool hideOnDelete() nothrowUtility function; intended to be connected to the #GtkWidget::delete-event signal on a #GtkWindow. The function calls [gtk.widget.Widget.hide] on its argument, then returns true. If connected to ::...bool inDestruction() nothrowReturns whether the widget is currently being destroyed. This information can sometimes be used to avoid doing unnecessary work. Returns: true if widget is being destroyedvoid initTemplate() nothrowCreates and initializes child widgets defined in templates. This function must be called in the instance initializer for any class which assigned itself a template using [gtk.widget_class.WidgetCla...void inputShapeCombineRegion(cairo.region.Region region = null) nothrowSets an input shape for this widget’s GDK window. This allows for windows which react to mouse click in a nonrectangular region, see [gdk.window.Window.inputShapeCombineRegion] for more information.void insertActionGroup(string name, gio.action_group.ActionGroup group = null) nothrowInserts group into widget. Children of widget that implement #GtkActionable can then be associated with actions in group by setting their “action-name” to prefix.`action-name`.bool intersect(gdk.rectangle.Rectangle area, out gdk.rectangle.Rectangle intersection) nothrowComputes the intersection of a widget’s area and area, storing the intersection in intersection, and returns true if there was an intersection. intersection may be null if you’re only interest...bool isAncestor(gtk.widget.Widget ancestor) nothrowDetermines whether widget is somewhere inside ancestor, possibly with intermediate containers.bool isComposited() nothrowWhether widget can rely on having its alpha channel drawn correctly. On X11 this function returns whether a compositing manager is running for widget’s screen.bool isDrawable() nothrowDetermines whether widget can be drawn to. A widget can be drawn to if it is mapped and visible. Returns: true if widget is drawable, false otherwisebool isFocus() nothrowDetermines if the widget is the focus widget within its toplevel. (This does not mean that the #GtkWidget:has-focus property is necessarily set; #GtkWidget:has-focus will only be set if the topleve...bool isSensitive() nothrowReturns the widget’s effective sensitivity, which means it is sensitive itself and also its parent widget is sensitive Returns: true if the widget is effectively sensitivebool keynavFailed(gtk.types.DirectionType direction) nothrowThis function should be called whenever keyboard navigation within a single widget hits a boundary. The function emits the #GtkWidget::keynav-failed signal on the widget and its return value should...gobject.closure.Closure[] listAccelClosures() nothrowLists the closures used by widget for accelerator group connections with [gtk.accel_group.AccelGroup.connectByPath] or [gtk.accel_group.AccelGroup.connect]. The closures can be used to monitor acce...string[] listActionPrefixes() nothrowRetrieves a null-terminated array of strings containing the prefixes of #GActionGroup's available to widget. Returns: a null-terminated array of strings.gtk.widget.Widget[] listMnemonicLabels() nothrowReturns a newly allocated list of the widgets, normally labels, for which this widget is the target of a mnemonic (see for example, [gtk.label.Label.setMnemonicWidget]).void map() nothrowThis function is only for use in widget implementations. Causes a widget to be mapped if it isn’t already.void modifyBase(gtk.types.StateType state, gdk.color.Color color) nothrowSets the base color for a widget in a particular state. All other style values are left untouched. The base color is the background color used along with the text color (see [gtk.widget.Widget.modi...void modifyBg(gtk.types.StateType state, gdk.color.Color color) nothrowSets the background color for a widget in a particular state.void modifyCursor(gdk.color.Color primary, gdk.color.Color secondary) nothrowSets the cursor color to use in a widget, overriding the #GtkWidget cursor-color and secondary-cursor-color style properties.void modifyFg(gtk.types.StateType state, gdk.color.Color color) nothrowSets the foreground color for a widget in a particular state.void modifyFont(pango.font_description.FontDescription fontDesc = null) nothrowSets the font to use for a widget.void modifyText(gtk.types.StateType state, gdk.color.Color color) nothrowSets the text color for a widget in a particular state.void overrideBackgroundColor(gtk.types.StateFlags state, gdk.rgba.RGBA color) nothrowSets the background color to use for a widget.void overrideColor(gtk.types.StateFlags state, gdk.rgba.RGBA color) nothrowSets the color to use for a widget.void overrideCursor(gdk.rgba.RGBA cursor, gdk.rgba.RGBA secondaryCursor) nothrowSets the cursor color to use in a widget, overriding the cursor-color and secondary-cursor-color style properties. All other style values are left untouched. See also [gtk.widget.Widget.modifyStyle].void overrideFont(pango.font_description.FontDescription fontDesc = null) nothrowSets the font to use for a widget. All other style values are left untouched. See [gtk.widget.Widget.overrideColor].void overrideSymbolicColor(string name, gdk.rgba.RGBA color) nothrowSets a symbolic color for a widget.void path(out uint pathLength, out string path, out string pathReversed) nothrowObtains the full path to widget. The path is simply the name of a widget and all its parents in the container hierarchy, separated by periods. The name of a widget comes from [gtk.widget.Widget.get...void queueComputeExpand() nothrowMark widget as needing to recompute its expand flags. Call this function when setting legacy expand child properties on the child of a container.void queueDraw() nothrowEquivalent to calling [gtk.widget.Widget.queueDrawArea] for the entire area of a widget.void queueDrawArea(int x, int y, int width, int height) nothrowConvenience function that calls [gtk.widget.Widget.queueDrawRegion] on the region created from the given coordinates.void queueDrawRegion(cairo.region.Region region) nothrowInvalidates the area of widget defined by region by calling [gdk.window.Window.invalidateRegion] on the widget’s window and all its child windows. Once the main loop becomes idle (after the curre...void queueResize() nothrowThis function is only for use in widget implementations. Flags a widget to have its size renegotiated; should be called when a widget for some reason has a new size request. For example, when you c...void queueResizeNoRedraw() nothrowThis function works like [gtk.widget.Widget.queueResize], except that the widget is not invalidated.void realize() nothrowCreates the GDK (windowing system) resources associated with a widget. For example, widget->window will be created when a widget is realized. Normally realization happens implicitly; if you show ...cairo.region.Region regionIntersect(cairo.region.Region region) nothrowComputes the intersection of a widget’s area and region, returning the intersection. The result may be empty, use [cairo.region.Region.isEmpty] to check.void registerWindow(gdk.window.Window window) nothrowRegisters a #GdkWindow with the widget and sets it up so that the widget receives events for it. Call [gtk.widget.Widget.unregisterWindow] when destroying the window.bool removeAccelerator(gtk.accel_group.AccelGroup accelGroup, uint accelKey, gdk.types.ModifierType accelMods) nothrowRemoves an accelerator from widget, previously installed with [gtk.widget.Widget.addAccelerator].void removeMnemonicLabel(gtk.widget.Widget label) nothrowRemoves a widget from the list of mnemonic labels for this widget. (See [gtk.widget.Widget.listMnemonicLabels]). The widget must have previously been added to the list with [gtk.widget.Widget.addMn...void removeTickCallback(uint id) nothrowRemoves a tick callback previously registered with [gtk.widget.Widget.addTickCallback].gdkpixbuf.pixbuf.Pixbuf renderIcon(string stockId, gtk.types.IconSize size, string detail = null) nothrowA convenience function that uses the theme settings for widget to look up stock_id and render it to a pixbuf. stock_id should be a stock icon ID such as #GTK_STOCK_OPEN or #GTK_STOCK_OK. size shoul...gdkpixbuf.pixbuf.Pixbuf renderIconPixbuf(string stockId, gtk.types.IconSize size) nothrowA convenience function that uses the theme engine and style settings for widget to look up stock_id and render it to a pixbuf. stock_id should be a stock icon ID such as #GTK_STOCK_OPEN or #GTK_STO...void reparent(gtk.widget.Widget newParent) nothrowMoves a widget from one #GtkContainer to another, handling reference count issues to avoid destroying the widget.void resetRcStyles() nothrowReset the styles of widget and all descendents, so when they are looked up again, they get the correct values for the currently loaded RC file settings.void resetStyle() nothrowUpdates the style context of widget and all descendants by updating its widget path. #GtkContainers may want to use this on a child when reordering it in a way that a different style might apply to...int sendExpose(gdk.event.Event event) nothrowVery rarely-used function. This function is used to emit an expose event on a widget. This function is not normally used directly. The only time it is used is when propagating an expose event to a ...void setAccelPath(string accelPath = null, gtk.accel_group.AccelGroup accelGroup = null) nothrowGiven an accelerator group, accel_group, and an accelerator path, accel_path, sets up an accelerator in accel_group so whenever the key binding that is defined for accel_path is pressed, widget wil...void setAllocation(gtk.types.Allocation allocation) nothrowSets the widget’s allocation. This should not be used directly, but from within a widget’s size_allocate method.void setAppPaintable(bool appPaintable) nothrowSets whether the application intends to draw on the widget in an #GtkWidget::draw handler.void setCanDefault(bool canDefault) nothrowSpecifies whether widget can be a default widget. See [gtk.widget.Widget.grabDefault] for details about the meaning of “default”.void setCanFocus(bool canFocus) nothrowSpecifies whether widget can own the input focus. See [gtk.widget.Widget.grabFocus] for actually setting the input focus on a widget.void setChildVisible(bool isVisible) nothrowSets whether widget should be mapped along with its when its parent is mapped and widget has been shown with [gtk.widget.Widget.show].void setClip(gtk.types.Allocation clip) nothrowSets the widget’s clip. This must not be used directly, but from within a widget’s size_allocate method. It must be called after [gtk.widget.Widget.setAllocation] (or after chaining up to the ...void setCompositeName(string name) nothrowSets a widgets composite name. The widget must be a composite child of its parent; see [gtk.widget.Widget.pushCompositeChild].void setDeviceEnabled(gdk.device.Device device, bool enabled) nothrowEnables or disables a #GdkDevice to interact with widget and all its children.void setDeviceEvents(gdk.device.Device device, gdk.types.EventMask events) nothrowSets the device event mask (see #GdkEventMask) for a widget. The event mask determines which events a widget will receive from device. Keep in mind that different widgets have different default eve...void setDirection(gtk.types.TextDirection dir) nothrowSets the reading direction on a particular widget. This direction controls the primary direction for widgets containing text, and also the direction in which the children of a container are packed....void setDoubleBuffered(bool doubleBuffered) nothrowWidgets are double buffered by default; you can use this function to turn off the buffering. “Double buffered” simply means that [gdk.window.Window.beginDrawFrame] and [gdk.window.Window.endDra...void setEvents(int events) nothrowSets the event mask (see #GdkEventMask) for a widget. The event mask determines which events a widget will receive. Keep in mind that different widgets have different default event masks, and by ch...void setFocusOnClick(bool focusOnClick) nothrowSets whether the widget should grab focus when it is clicked with the mouse. Making mouse clicks not grab focus is useful in places like toolbars where you don’t want the keyboard focus removed f...void setFontMap(pango.font_map.FontMap fontMap = null) nothrowSets the font map to use for Pango rendering. When not set, the widget will inherit the font map from its parent.void setFontOptions(cairo.font_options.FontOptions options = null) nothrowSets the #cairo_font_options_t used for Pango rendering in this widget. When not set, the default font options for the #GdkScreen will be used.void setHalign(gtk.types.Align align_) nothrowSets the horizontal alignment of widget. See the #GtkWidget:halign property.void setHasTooltip(bool hasTooltip) nothrowSets the has-tooltip property on widget to has_tooltip. See #GtkWidget:has-tooltip for more information.void setHasWindow(bool hasWindow) nothrowSpecifies whether widget has a #GdkWindow of its own. Note that all realized widgets have a non-null “window” pointer ([gtk.widget.Widget.getWindow] never returns a null window when a widget is...void setHexpand(bool expand) nothrowSets whether the widget would like any available extra horizontal space. When a user resizes a #GtkWindow, widgets with expand=TRUE generally receive the extra space. For example, a list or scrolla...void setHexpandSet(bool set) nothrowSets whether the hexpand flag (see [gtk.widget.Widget.getHexpand]) will be used.void setMarginBottom(int margin) nothrowSets the bottom margin of widget. See the #GtkWidget:margin-bottom property.void setMarginEnd(int margin) nothrowSets the end margin of widget. See the #GtkWidget:margin-end property.void setMarginLeft(int margin) nothrowSets the left margin of widget. See the #GtkWidget:margin-left property.void setMarginRight(int margin) nothrowSets the right margin of widget. See the #GtkWidget:margin-right property.void setMarginStart(int margin) nothrowSets the start margin of widget. See the #GtkWidget:margin-start property.void setMarginTop(int margin) nothrowSets the top margin of widget. See the #GtkWidget:margin-top property.void setName(string name) nothrowWidgets can be named, which allows you to refer to them from a CSS file. You can apply a style to widgets with a particular name in the CSS file. See the documentation for the CSS syntax (on the sa...void setNoShowAll(bool noShowAll) nothrowSets the #GtkWidget:no-show-all property, which determines whether calls to [gtk.widget.Widget.showAll] will affect this widget.void setOpacity(double opacity) nothrowRequest the widget to be rendered partially transparent, with opacity 0 being fully transparent and 1 fully opaque. (Opacity values are clamped to the [0,1] range.). This works on both toplevel wid...void setParent(gtk.widget.Widget parent) nothrowThis function is useful only when implementing subclasses of #GtkContainer. Sets the container as the parent of widget, and takes care of some details such as updating the state and style of the ch...void setParentWindow(gdk.window.Window parentWindow) nothrowSets a non default parent window for widget.void setRealized(bool realized) nothrowMarks the widget as being realized. This function must only be called after all #GdkWindows for the widget have been created and registered.void setReceivesDefault(bool receivesDefault) nothrowSpecifies whether widget will be treated as the default widget within its toplevel when it has the focus, even if another widget is the default.void setRedrawOnAllocate(bool redrawOnAllocate) nothrowSets whether the entire widget is queued for drawing when its size allocation changes. By default, this setting is true and the entire widget is redrawn on every size change. If your widget leaves ...void setSensitive(bool sensitive) nothrowSets the sensitivity of a widget. A widget is sensitive if the user can interact with it. Insensitive widgets are “grayed out” and the user can’t interact with them. Insensitive widgets are k...void setSizeRequest(int width, int height) nothrowSets the minimum size of a widget; that is, the widget’s size request will be at least width by height. You can use this function to force a widget to be larger than it normally would be.void setState(gtk.types.StateType state) nothrowThis function is for use in widget implementations. Sets the state of a widget (insensitive, prelighted, etc.) Usually you should set the state using wrapper functions such as [gtk.widget.Widget.se...void setStateFlags(gtk.types.StateFlags flags, bool clear) nothrowThis function is for use in widget implementations. Turns on flag values in the current widget state (insensitive, prelighted, etc.).void setStyle(gtk.style.Style style = null) nothrowUsed to set the #GtkStyle for a widget (widget->style). Since GTK 3, this function does nothing, the passed in style is ignored.void setSupportMultidevice(bool supportMultidevice) nothrowEnables or disables multiple pointer awareness. If this setting is true, widget will start receiving multiple, per device enter/leave events. Note that if custom #GdkWindows are created in #GtkWidg...void setTooltipMarkup(string markup = null) nothrowSets markup as the contents of the tooltip, which is marked up with the [Pango text markup language][PangoMarkupFormat].void setTooltipText(string text = null) nothrowSets text as the contents of the tooltip. This function will take care of setting #GtkWidget:has-tooltip to true and of the default handler for the #GtkWidget::query-tooltip signal.void setTooltipWindow(gtk.window.Window customWindow = null) nothrowReplaces the default window used for displaying tooltips with custom_window. GTK+ will take care of showing and hiding custom_window at the right moment, to behave likewise as the default tooltip w...void setValign(gtk.types.Align align_) nothrowSets the vertical alignment of widget. See the #GtkWidget:valign property.void setVexpand(bool expand) nothrowSets whether the widget would like any available extra vertical space.void setVexpandSet(bool set) nothrowSets whether the vexpand flag (see [gtk.widget.Widget.getVexpand]) will be used.void setVisible(bool visible) nothrowSets the visibility state of widget. Note that setting this to true doesn’t mean the widget is actually viewable, see [gtk.widget.Widget.getVisible].void setVisual(gdk.visual.Visual visual = null) nothrowSets the visual that should be used for by widget and its children for creating #GdkWindows. The visual must be on the same #GdkScreen as returned by [gtk.widget.Widget.getScreen], so handling the ...void setWindow(gdk.window.Window window) nothrowSets a widget’s window. This function should only be used in a widget’s #GtkWidget::realize implementation. The `window` passed is usually either new window created with [gdk.window.Window.new_...void shapeCombineRegion(cairo.region.Region region = null) nothrowSets a shape for this widget’s GDK window. This allows for transparent windows etc., see [gdk.window.Window.shapeCombineRegion] for more information.void show() nothrowFlags a widget to be displayed. Any widget that isn’t shown will not appear on the screen. If you want to show all the widgets in a container, it’s easier to call [gtk.widget.Widget.showAll] on...void showAll() nothrowRecursively shows a widget, and any child widgets (if the widget is a container).void showNow() nothrowShows a widget. If the widget is an unmapped toplevel widget (i.e. a #GtkWindow that has not yet been shown), enter the main loop and wait for the window to actually be mapped. Be careful; because ...void sizeAllocate(gtk.types.Allocation allocation) nothrowThis function is only used by #GtkContainer subclasses, to assign a size and position to their child widgets.void sizeAllocateWithBaseline(gtk.types.Allocation allocation, int baseline) nothrowThis function is only used by #GtkContainer subclasses, to assign a size, position and (optionally) baseline to their child widgets.void sizeRequest(out gtk.requisition.Requisition requisition) nothrowThis function is typically used when implementing a #GtkContainer subclass. Obtains the preferred size of a widget. The container uses this information to arrange its child widgets and decide what...void styleAttach() nothrowThis function attaches the widget’s #GtkStyle to the widget's #GdkWindow. It is a replacement forvoid styleGetProperty(string propertyName, gobject.value.Value value) nothrowGets the value of a style property of widget.void thawChildNotify() nothrowReverts the effect of a previous call to [gtk.widget.Widget.freezeChildNotify]. This causes all queued #GtkWidget::child-notify signals on widget to be emitted.bool translateCoordinates(gtk.widget.Widget destWidget, int srcX, int srcY, out int destX, out int destY) nothrowTranslate coordinates relative to src_widget’s allocation to coordinates relative to dest_widget’s allocations. In order to perform this operation, both widgets must be realized, and must share...void triggerTooltipQuery() nothrowTriggers a tooltip query on the display where the toplevel of widget is located. See [gtk.tooltip.Tooltip.triggerTooltipQuery] for more information.void unmap() nothrowThis function is only for use in widget implementations. Causes a widget to be unmapped if it’s currently mapped.void unparent() nothrowThis function is only for use in widget implementations. Should be called by implementations of the remove method on #GtkContainer, to dissociate a child from the container.void unrealize() nothrowThis function is only useful in widget implementations. Causes a widget to be unrealized (frees all GDK resources associated with the widget, such as widget->window).void unregisterWindow(gdk.window.Window window) nothrowUnregisters a #GdkWindow from the widget that was previously set up with [gtk.widget.Widget.registerWindow]. You need to call this when the window is no longer used by the widget, such as when you ...void unsetStateFlags(gtk.types.StateFlags flags) nothrowThis function is for use in widget implementations. Turns off flag values for the current widget state (insensitive, prelighted, etc.). See [gtk.widget.Widget.setStateFlags].gulong connectAccelClosuresChanged(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `AccelClosuresChanged` signal.gulong connectButtonPressEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_button.EventButton)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `ButtonPressEvent` signal.gulong connectButtonReleaseEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_button.EventButton)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `ButtonReleaseEvent` signal.gulong connectCanActivateAccel(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == uint)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `CanActivateAccel` signal.gulong connectChildNotify(T)(string detail = null, T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gobject.param_spec.ParamSpec)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `ChildNotify` signal.gulong connectCompositedChanged(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `CompositedChanged` signal.gulong connectConfigureEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_configure.EventConfigure)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `ConfigureEvent` signal.gulong connectDamageEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_expose.EventExpose)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `DamageEvent` signal.gulong connectDeleteEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event.Event)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `DeleteEvent` signal.gulong connectDestroy(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `Destroy` signal.gulong connectDestroyEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event.Event)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `DestroyEvent` signal.gulong connectDirectionChanged(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gtk.types.TextDirection)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `DirectionChanged` signal.gulong connectDragBegin(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gdk.drag_context.DragContext)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `DragBegin` signal.gulong connectDragDataDelete(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gdk.drag_context.DragContext)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `DragDataDelete` signal.gulong connectDragDataGet(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gdk.drag_context.DragContext)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == gtk.selection_data.SelectionData)))
&& (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] == uint)))
&& (Parameters!T.length < 4 || (ParameterStorageClassTuple!T[3] == ParameterStorageClass.none && is(Parameters!T[3] == uint)))
&& (Parameters!T.length < 5 || (ParameterStorageClassTuple!T[4] == ParameterStorageClass.none && is(Parameters!T[4] : gtk.widget.Widget)))
&& Parameters!T.length < 6) nothrowConnect to `DragDataGet` signal.gulong connectDragDataReceived(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gdk.drag_context.DragContext)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == int)))
&& (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] == int)))
&& (Parameters!T.length < 4 || (ParameterStorageClassTuple!T[3] == ParameterStorageClass.none && is(Parameters!T[3] == gtk.selection_data.SelectionData)))
&& (Parameters!T.length < 5 || (ParameterStorageClassTuple!T[4] == ParameterStorageClass.none && is(Parameters!T[4] == uint)))
&& (Parameters!T.length < 6 || (ParameterStorageClassTuple!T[5] == ParameterStorageClass.none && is(Parameters!T[5] == uint)))
&& (Parameters!T.length < 7 || (ParameterStorageClassTuple!T[6] == ParameterStorageClass.none && is(Parameters!T[6] : gtk.widget.Widget)))
&& Parameters!T.length < 8) nothrowConnect to `DragDataReceived` signal.gulong connectDragDrop(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gdk.drag_context.DragContext)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == int)))
&& (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] == int)))
&& (Parameters!T.length < 4 || (ParameterStorageClassTuple!T[3] == ParameterStorageClass.none && is(Parameters!T[3] == uint)))
&& (Parameters!T.length < 5 || (ParameterStorageClassTuple!T[4] == ParameterStorageClass.none && is(Parameters!T[4] : gtk.widget.Widget)))
&& Parameters!T.length < 6) nothrowConnect to `DragDrop` signal.gulong connectDragEnd(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gdk.drag_context.DragContext)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `DragEnd` signal.gulong connectDragFailed(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gdk.drag_context.DragContext)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == gtk.types.DragResult)))
&& (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] : gtk.widget.Widget)))
&& Parameters!T.length < 4) nothrowConnect to `DragFailed` signal.gulong connectDragLeave(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gdk.drag_context.DragContext)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == uint)))
&& (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] : gtk.widget.Widget)))
&& Parameters!T.length < 4) nothrowConnect to `DragLeave` signal.gulong connectDragMotion(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gdk.drag_context.DragContext)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == int)))
&& (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] == int)))
&& (Parameters!T.length < 4 || (ParameterStorageClassTuple!T[3] == ParameterStorageClass.none && is(Parameters!T[3] == uint)))
&& (Parameters!T.length < 5 || (ParameterStorageClassTuple!T[4] == ParameterStorageClass.none && is(Parameters!T[4] : gtk.widget.Widget)))
&& Parameters!T.length < 6) nothrowConnect to `DragMotion` signal.gulong connectDraw(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == cairo.context.Context)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `Draw` signal.gulong connectEnterNotifyEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_crossing.EventCrossing)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `EnterNotifyEvent` signal.gulong connectEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event.Event)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `Event` signal.gulong connectEventAfter(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event.Event)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `EventAfter` signal.gulong connectFocus(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gtk.types.DirectionType)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `Focus` signal.gulong connectFocusInEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_focus.EventFocus)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `FocusInEvent` signal.gulong connectFocusOutEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_focus.EventFocus)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `FocusOutEvent` signal.gulong connectGrabBrokenEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_grab_broken.EventGrabBroken)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `GrabBrokenEvent` signal.gulong connectGrabFocus(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `GrabFocus` signal.gulong connectGrabNotify(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == bool)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `GrabNotify` signal.gulong connectHide(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `Hide` signal.gulong connectHierarchyChanged(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `HierarchyChanged` signal.gulong connectKeyPressEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_key.EventKey)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `KeyPressEvent` signal.gulong connectKeyReleaseEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_key.EventKey)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `KeyReleaseEvent` signal.gulong connectKeynavFailed(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gtk.types.DirectionType)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `KeynavFailed` signal.gulong connectLeaveNotifyEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_crossing.EventCrossing)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `LeaveNotifyEvent` signal.gulong connectMap(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `Map` signal.gulong connectMapEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_any.EventAny)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `MapEvent` signal.gulong connectMnemonicActivate(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == bool)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `MnemonicActivate` signal.gulong connectMotionNotifyEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_motion.EventMotion)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `MotionNotifyEvent` signal.gulong connectMoveFocus(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gtk.types.DirectionType)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `MoveFocus` signal.gulong connectParentSet(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `ParentSet` signal.gulong connectPopupMenu(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `PopupMenu` signal.gulong connectPropertyNotifyEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_property.EventProperty)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `PropertyNotifyEvent` signal.gulong connectProximityInEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_proximity.EventProximity)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `ProximityInEvent` signal.gulong connectProximityOutEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_proximity.EventProximity)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `ProximityOutEvent` signal.gulong connectQueryTooltip(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == int)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == int)))
&& (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] == bool)))
&& (Parameters!T.length < 4 || (ParameterStorageClassTuple!T[3] == ParameterStorageClass.none && is(Parameters!T[3] : gtk.tooltip.Tooltip)))
&& (Parameters!T.length < 5 || (ParameterStorageClassTuple!T[4] == ParameterStorageClass.none && is(Parameters!T[4] : gtk.widget.Widget)))
&& Parameters!T.length < 6) nothrowConnect to `QueryTooltip` signal.gulong connectRealize(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `Realize` signal.gulong connectScreenChanged(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gdk.screen.Screen)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `ScreenChanged` signal.gulong connectScrollEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_scroll.EventScroll)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `ScrollEvent` signal.gulong connectSelectionClearEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_selection.EventSelection)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `SelectionClearEvent` signal.gulong connectSelectionGet(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gtk.selection_data.SelectionData)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == uint)))
&& (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] == uint)))
&& (Parameters!T.length < 4 || (ParameterStorageClassTuple!T[3] == ParameterStorageClass.none && is(Parameters!T[3] : gtk.widget.Widget)))
&& Parameters!T.length < 5) nothrowConnect to `SelectionGet` signal.gulong connectSelectionNotifyEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_selection.EventSelection)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `SelectionNotifyEvent` signal.gulong connectSelectionReceived(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gtk.selection_data.SelectionData)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == uint)))
&& (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] : gtk.widget.Widget)))
&& Parameters!T.length < 4) nothrowConnect to `SelectionReceived` signal.gulong connectSelectionRequestEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_selection.EventSelection)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `SelectionRequestEvent` signal.gulong connectShow(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `Show` signal.gulong connectShowHelp(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gtk.types.WidgetHelpType)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `ShowHelp` signal.gulong connectSizeAllocate(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gtk.types.Allocation)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `SizeAllocate` signal.gulong connectStateChanged(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gtk.types.StateType)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `StateChanged` signal.gulong connectStateFlagsChanged(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gtk.types.StateFlags)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `StateFlagsChanged` signal.gulong connectStyleSet(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.style.Style)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `StyleSet` signal.gulong connectStyleUpdated(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `StyleUpdated` signal.gulong connectTouchEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event.Event)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `TouchEvent` signal.gulong connectUnmap(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `Unmap` signal.gulong connectUnmapEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_any.EventAny)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `UnmapEvent` signal.gulong connectUnrealize(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.widget.Widget)))
&& Parameters!T.length < 2) nothrowConnect to `Unrealize` signal.gulong connectVisibilityNotifyEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_visibility.EventVisibility)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `VisibilityNotifyEvent` signal.gulong connectWindowStateEvent(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] == gdk.event_window_state.EventWindowState)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gtk.widget.Widget)))
&& Parameters!T.length < 3) nothrowConnect to `WindowStateEvent` signal.Fluent builder implementation template for gtk.widget.Widget
T appPaintable(bool propval) nothrowT canDefault(bool propval) nothrowT canFocus(bool propval) nothrowT doubleBuffered(bool propval) nothrowSet `doubleBuffered` property. Params: propval = Whether the widget is double buffered. Returns: Builder instance for fluent chainingT events(gdk.types.EventMask propval) nothrowT expand(bool propval) nothrowSet `expand` property. Params: propval = Whether to expand in both directions. Setting this sets both #GtkWidget:hexpand and #GtkWidget:vexpand Returns: Builder instance for fluent chainingT focusOnClick(bool propval) nothrowSet `focusOnClick` property. Params: propval = Whether the widget should grab focus when it is clicked with the mouse.T halign(gtk.types.Align propval) nothrowSet `halign` property. Params: propval = How to distribute horizontal space if widget gets extra space, see #GtkAlign Returns: Builder instance for fluent chainingT hasTooltip(bool propval) nothrowSet `hasTooltip` property. Params: propval = Enables or disables the emission of #GtkWidget::query-tooltip on @widget. A value of true indicates that @widget can have a tooltip, in this case the wi...T heightRequest(int propval) nothrowT hexpand(bool propval) nothrowSet `hexpand` property. Params: propval = Whether to expand horizontally. See [gtk.widget.Widget.setHexpand]. Returns: Builder instance for fluent chainingT hexpandSet(bool propval) nothrowSet `hexpandSet` property. Params: propval = Whether to use the #GtkWidget:hexpand property. See [gtk.widget.Widget.getHexpandSet]. Returns: Builder instance for fluent chainingT margin(int propval) nothrowSet `margin` property. Params: propval = Sets all four sides' margin at once. If read, returns max margin on any side. Returns: Builder instance for fluent chainingT marginBottom(int propval) nothrowSet `marginBottom` property. Params: propval = Margin on bottom side of widget.T marginEnd(int propval) nothrowSet `marginEnd` property. Params: propval = Margin on end of widget, horizontally. This property supports left-to-right and right-to-left text directions.T marginLeft(int propval) nothrowSet `marginLeft` property. Params: propval = Margin on left side of widget.T marginRight(int propval) nothrowSet `marginRight` property. Params: propval = Margin on right side of widget.T marginStart(int propval) nothrowSet `marginStart` property. Params: propval = Margin on start of widget, horizontally. This property supports left-to-right and right-to-left text directions.T marginTop(int propval) nothrowSet `marginTop` property. Params: propval = Margin on top side of widget.T name(string propval) nothrowT noShowAll(bool propval) nothrowT opacity(double propval) nothrowSet `opacity` property. Params: propval = The requested opacity of the widget. See [gtk.widget.Widget.setOpacity] for more details about window opacity.T parent(gtk.container.Container propval) nothrowT receivesDefault(bool propval) nothrowT sensitive(bool propval) nothrowT style(gtk.style.Style propval) nothrowSet `style` property. Params: propval = The style of the widget, which contains information about how it will look (colors, etc). Returns: Builder instance for fluent chainingT tooltipMarkup(string propval) nothrowSet `tooltipMarkup` property. Params: propval = Sets the text of tooltip to be the given string, which is marked up with the [Pango text markup language][PangoMarkupFormat]. Also see [gtk.tooltip.T...T tooltipText(string propval) nothrowSet `tooltipText` property. Params: propval = Sets the text of tooltip to be the given string.T valign(gtk.types.Align propval) nothrowSet `valign` property. Params: propval = How to distribute vertical space if widget gets extra space, see #GtkAlign Returns: Builder instance for fluent chainingT vexpand(bool propval) nothrowSet `vexpand` property. Params: propval = Whether to expand vertically. See [gtk.widget.Widget.setVexpand]. Returns: Builder instance for fluent chainingT vexpandSet(bool propval) nothrowSet `vexpandSet` property. Params: propval = Whether to use the #GtkWidget:vexpand property. See [gtk.widget.Widget.getVexpandSet]. Returns: Builder instance for fluent chainingT visible(bool propval) nothrowT widthRequest(int propval) nothrowFluent builder for gtk.widget.Widget