## GtkWidget

GtkWidget

## Functions

#define | GTK_WIDGET_TYPE()
#define | GTK_WIDGET_STATE()
#define | GTK_WIDGET_SAVED_STATE()
#define | GTK_WIDGET_FLAGS()
#define | GTK_WIDGET_TOPLEVEL()
#define | GTK_WIDGET_NO_WINDOW()
#define | GTK_WIDGET_REALIZED()
#define | GTK_WIDGET_MAPPED()
#define | GTK_WIDGET_VISIBLE()
#define | GTK_WIDGET_DRAWABLE()
#define | GTK_WIDGET_SENSITIVE()
#define | GTK_WIDGET_PARENT_SENSITIVE()
#define | GTK_WIDGET_IS_SENSITIVE()
#define | GTK_WIDGET_CAN_FOCUS()
#define | GTK_WIDGET_HAS_FOCUS()
#define | GTK_WIDGET_CAN_DEFAULT()
#define | GTK_WIDGET_RECEIVES_DEFAULT()
#define | GTK_WIDGET_HAS_DEFAULT()
#define | GTK_WIDGET_HAS_GRAB()
#define | GTK_WIDGET_RC_STYLE()
#define | GTK_WIDGET_COMPOSITE_CHILD()
#define | GTK_WIDGET_APP_PAINTABLE()
#define | GTK_WIDGET_DOUBLE_BUFFERED()
#define | GTK_WIDGET_SET_FLAGS()
#define | GTK_WIDGET_UNSET_FLAGS()
void | (*GtkCallback) ()
GtkWidget * | gtk_widget_new ()
GtkWidget * | gtk_widget_ref ()
void | gtk_widget_unref ()
void | gtk_widget_destroy ()
void | gtk_widget_destroyed ()
void | gtk_widget_set ()
void | gtk_widget_unparent ()
void | gtk_widget_show ()
void | gtk_widget_show_now ()
void | gtk_widget_hide ()
void | gtk_widget_show_all ()
void | gtk_widget_hide_all ()
void | gtk_widget_map ()
void | gtk_widget_unmap ()
void | gtk_widget_realize ()
void | gtk_widget_unrealize ()
void | gtk_widget_queue_draw ()
void | gtk_widget_queue_resize ()
void | gtk_widget_queue_resize_no_redraw ()
void | gtk_widget_draw ()
void | gtk_widget_size_request ()
void | gtk_widget_get_child_requisition ()
void | gtk_widget_size_allocate ()
void | gtk_widget_add_accelerator ()
gboolean | gtk_widget_remove_accelerator ()
void | gtk_widget_set_accel_path ()
GList * | gtk_widget_list_accel_closures ()
gboolean | gtk_widget_can_activate_accel ()
gboolean | gtk_widget_event ()
gboolean | gtk_widget_activate ()
void | gtk_widget_reparent ()
gboolean | gtk_widget_intersect ()
gboolean | gtk_widget_is_focus ()
void | gtk_widget_grab_focus ()
void | gtk_widget_grab_default ()
void | gtk_widget_set_name ()
const gchar * | gtk_widget_get_name ()
void | gtk_widget_set_state ()
void | gtk_widget_set_sensitive ()
void | gtk_widget_set_parent ()
void | gtk_widget_set_parent_window ()
GdkWindow * | gtk_widget_get_parent_window ()
void | gtk_widget_set_uposition ()
void | gtk_widget_set_usize ()
void | gtk_widget_set_events ()
void | gtk_widget_add_events ()
void | gtk_widget_set_extension_events ()
GdkExtensionMode | gtk_widget_get_extension_events ()
GtkWidget * | gtk_widget_get_toplevel ()
GtkWidget * | gtk_widget_get_ancestor ()
GdkColormap * | gtk_widget_get_colormap ()
void | gtk_widget_set_colormap ()
GdkVisual * | gtk_widget_get_visual ()
gint | gtk_widget_get_events ()
void | gtk_widget_get_pointer ()
gboolean | gtk_widget_is_ancestor ()
gboolean | gtk_widget_translate_coordinates ()
gboolean | gtk_widget_hide_on_delete ()
void | gtk_widget_set_style ()
#define | gtk_widget_set_rc_style()
void | gtk_widget_ensure_style ()
GtkStyle * | gtk_widget_get_style ()
#define | gtk_widget_restore_default_style()
void | gtk_widget_reset_rc_styles ()
void | gtk_widget_push_colormap ()
void | gtk_widget_pop_colormap ()
void | gtk_widget_set_default_colormap ()
GtkStyle * | gtk_widget_get_default_style ()
GdkColormap * | gtk_widget_get_default_colormap ()
GdkVisual * | gtk_widget_get_default_visual ()
void | gtk_widget_set_direction ()
GtkTextDirection | gtk_widget_get_direction ()
void | gtk_widget_set_default_direction ()
GtkTextDirection | gtk_widget_get_default_direction ()
void | gtk_widget_shape_combine_mask ()
void | gtk_widget_input_shape_combine_mask ()
void | gtk_widget_path ()
void | gtk_widget_class_path ()
gchar * | gtk_widget_get_composite_name ()
void | gtk_widget_modify_style ()
GtkRcStyle * | gtk_widget_get_modifier_style ()
void | gtk_widget_modify_fg ()
void | gtk_widget_modify_bg ()
void | gtk_widget_modify_text ()
void | gtk_widget_modify_base ()
void | gtk_widget_modify_font ()
void | gtk_widget_modify_cursor ()
PangoContext * | gtk_widget_create_pango_context ()
PangoContext * | gtk_widget_get_pango_context ()
PangoLayout * | gtk_widget_create_pango_layout ()
GdkPixbuf * | gtk_widget_render_icon ()
void | gtk_widget_pop_composite_child ()
void | gtk_widget_push_composite_child ()
void | gtk_widget_queue_clear ()
void | gtk_widget_queue_clear_area ()
void | gtk_widget_queue_draw_area ()
void | gtk_widget_reset_shapes ()
void | gtk_widget_set_app_paintable ()
void | gtk_widget_set_double_buffered ()
void | gtk_widget_set_redraw_on_allocate ()
void | gtk_widget_set_composite_name ()
gboolean | gtk_widget_set_scroll_adjustments ()
gboolean | gtk_widget_mnemonic_activate ()
void | gtk_widget_class_install_style_property ()
void | gtk_widget_class_install_style_property_parser ()
GParamSpec * | gtk_widget_class_find_style_property ()
GParamSpec ** | gtk_widget_class_list_style_properties ()
GdkRegion * | gtk_widget_region_intersect ()
gint | gtk_widget_send_expose ()
gboolean | gtk_widget_send_focus_change ()
void | gtk_widget_style_get ()
void | gtk_widget_style_get_property ()
void | gtk_widget_style_get_valist ()
void | gtk_widget_style_attach ()
AtkObject * | gtk_widget_get_accessible ()
gboolean | gtk_widget_child_focus ()
void | gtk_widget_child_notify ()
void | gtk_widget_freeze_child_notify ()
gboolean | gtk_widget_get_child_visible ()
GtkWidget * | gtk_widget_get_parent ()
GtkSettings * | gtk_widget_get_settings ()
GtkClipboard * | gtk_widget_get_clipboard ()
GdkDisplay * | gtk_widget_get_display ()
GdkWindow * | gtk_widget_get_root_window ()
GdkScreen * | gtk_widget_get_screen ()
gboolean | gtk_widget_has_screen ()
void | gtk_widget_get_size_request ()
#define | gtk_widget_pop_visual
#define | gtk_widget_push_visual()
void | gtk_widget_set_child_visible ()
#define | gtk_widget_set_default_visual()
void | gtk_widget_set_size_request ()
#define | gtk_widget_set_visual()
void | gtk_widget_thaw_child_notify ()
void | gtk_widget_set_no_show_all ()
gboolean | gtk_widget_get_no_show_all ()
GList * | gtk_widget_list_mnemonic_labels ()
void | gtk_widget_add_mnemonic_label ()
void | gtk_widget_remove_mnemonic_label ()
GtkAction * | gtk_widget_get_action ()
gboolean | gtk_widget_is_composited ()
void | gtk_widget_error_bell ()
gboolean | gtk_widget_keynav_failed ()
gchar * | gtk_widget_get_tooltip_markup ()
void | gtk_widget_set_tooltip_markup ()
gchar * | gtk_widget_get_tooltip_text ()
void | gtk_widget_set_tooltip_text ()
GtkWindow * | gtk_widget_get_tooltip_window ()
void | gtk_widget_set_tooltip_window ()
gboolean | gtk_widget_get_has_tooltip ()
void | gtk_widget_set_has_tooltip ()
void | gtk_widget_trigger_tooltip_query ()
GdkPixmap * | gtk_widget_get_snapshot ()
GdkWindow * | gtk_widget_get_window ()
void | gtk_widget_get_allocation ()
void | gtk_widget_set_allocation ()
gboolean | gtk_widget_get_app_paintable ()
gboolean | gtk_widget_get_can_default ()
void | gtk_widget_set_can_default ()
gboolean | gtk_widget_get_can_focus ()
void | gtk_widget_set_can_focus ()
gboolean | gtk_widget_get_double_buffered ()
gboolean | gtk_widget_get_has_window ()
void | gtk_widget_set_has_window ()
gboolean | gtk_widget_get_sensitive ()
gboolean | gtk_widget_is_sensitive ()
GtkStateType | gtk_widget_get_state ()
gboolean | gtk_widget_get_visible ()
void | gtk_widget_set_visible ()
gboolean | gtk_widget_has_default ()
gboolean | gtk_widget_has_focus ()
gboolean | gtk_widget_has_grab ()
gboolean | gtk_widget_has_rc_style ()
gboolean | gtk_widget_is_drawable ()
gboolean | gtk_widget_is_toplevel ()
void | gtk_widget_set_window ()
void | gtk_widget_set_receives_default ()
gboolean | gtk_widget_get_receives_default ()
void | gtk_widget_set_realized ()
gboolean | gtk_widget_get_realized ()
void | gtk_widget_set_mapped ()
gboolean | gtk_widget_get_mapped ()
void | gtk_widget_get_requisition ()
GtkRequisition * | gtk_requisition_copy ()
void | gtk_requisition_free ()

## Properties

gboolean | app-paintable | Read / Write
gboolean | can-default | Read / Write
gboolean | can-focus | Read / Write
gboolean | composite-child | Read
gboolean | double-buffered | Read / Write
GdkEventMask | events | Read / Write
GdkExtensionMode | extension-events | Read / Write
gboolean | has-default | Read / Write
gboolean | has-focus | Read / Write
gboolean | has-tooltip | Read / Write
gint | height-request | Read / Write
gboolean | is-focus | Read / Write
gchar * | name | Read / Write
gboolean | no-show-all | Read / Write
GtkContainer * | parent | Read / Write
gboolean | receives-default | Read / Write
gboolean | sensitive | Read / Write
GtkStyle * | style | Read / Write
gchar * | tooltip-markup | Read / Write
gchar * | tooltip-text | Read / Write
gboolean | visible | Read / Write
gint | width-request | Read / Write
GdkWindow * | window | Read

## Style Properties

gfloat | cursor-aspect-ratio | Read
GdkColor * | cursor-color | Read
GtkBorder * | draw-border | Read
gchar * | focus-line-pattern | Read
gint | focus-line-width | Read
gint | focus-padding | Read
gboolean | interior-focus | Read
GdkColor * | link-color | Read
gint | scroll-arrow-hlength | Read
gint | scroll-arrow-vlength | Read
GdkColor * | secondary-cursor-color | Read
gint | separator-height | Read
gint | separator-width | Read
guchar | tooltip-alpha | Read
guint | tooltip-radius | Read
GdkColor * | visited-link-color | Read
gboolean | wide-separators | Read

## Signals

void | accel-closures-changed |
gboolean | button-press-event | Run Last
gboolean | button-release-event | Run Last
gboolean | can-activate-accel | Run Last
void | child-notify | No Hooks
gboolean | client-event | Run Last
void | composited-changed | Action
gboolean | configure-event | Run Last
gboolean | damage-event | Run Last
gboolean | delete-event | Run Last
gboolean | destroy-event | Run Last
void | direction-changed | Run First
void | drag-begin | Run Last
void | drag-data-delete | Run Last
void | drag-data-get | Run Last
void | drag-data-received | Run Last
gboolean | drag-drop | Run Last
void | drag-end | Run Last
gboolean | drag-failed | Run Last
void | drag-leave | Run Last
gboolean | drag-motion | Run Last
gboolean | enter-notify-event | Run Last
gboolean | event | Run Last
void | event-after |
gboolean | expose-event | Run Last
gboolean | focus | Run Last
gboolean | focus-in-event | Run Last
gboolean | focus-out-event | Run Last
gboolean | grab-broken-event | Run Last
void | grab-focus | Action
void | grab-notify | Run First
void | hide | Run First
void | hierarchy-changed | Run Last
gboolean | key-press-event | Run Last
gboolean | key-release-event | Run Last
gboolean | keynav-failed | Run Last
gboolean | leave-notify-event | Run Last
void | map | Run First
gboolean | map-event | Run Last
gboolean | mnemonic-activate | Run Last
gboolean | motion-notify-event | Run Last
void | move-focus | Action
gboolean | no-expose-event | Run Last
void | parent-set | Run First
gboolean | popup-menu | Action
gboolean | property-notify-event | Run Last
gboolean | proximity-in-event | Run Last
gboolean | proximity-out-event | Run Last
gboolean | query-tooltip | Run Last
void | realize | Run First
void | screen-changed | Run Last
gboolean | scroll-event | Run Last
gboolean | selection-clear-event | Run Last
void | selection-get | Run Last
gboolean | selection-notify-event | Run Last
void | selection-received | Run Last
gboolean | selection-request-event | Run Last
void | show | Run First
gboolean | show-help | Action
void | size-allocate | Run First
void | size-request | Run First
void | state-changed | Run First
void | style-set | Run First
void | unmap | Run First
gboolean | unmap-event | Run Last
void | unrealize | Run Last
gboolean | visibility-notify-event | Run Last
gboolean | window-state-event | Run Last

## Types and Values

| GtkWidget
struct | GtkWidgetClass
enum | GtkWidgetFlags
struct | GtkRequisition
typedef | GtkAllocation
| GtkSelectionData
struct | GtkWidgetAuxInfo
struct | GtkWidgetShapeInfo
enum | GtkWidgetHelpType
enum | GtkTextDirection

## Object Hierarchy

        GBoxed
        ├── GtkRequisition
        ╰── GtkSelectionData
        GObject
        ╰── GInitiallyUnowned
            ╰── GtkObject
                ╰── GtkWidget
                    ├── GtkContainer
                    ├── GtkMisc
                    ├── GtkCalendar
                    ├── GtkCellView
                    ├── GtkDrawingArea
                    ├── GtkEntry
                    ├── GtkRuler
                    ├── GtkRange
                    ├── GtkSeparator
                    ├── GtkHSV
                    ├── GtkInvisible
                    ├── GtkOldEditable
                    ├── GtkPreview
                    ╰── GtkProgress

## Known Derived Interfaces

GtkWidget is required by GtkCellEditable, GtkFileChooser and GtkToolShell.

## Implemented Interfaces

GtkWidget implements AtkImplementorIface and GtkBuildable.

## Includes

    #include <gtk/gtk.h>

## Description

## Functions

### GTK_WIDGET_TYPE()

    #define GTK_WIDGET_TYPE(wid)		  (GTK_OBJECT_TYPE (wid))

`GTK_WIDGET_TYPE` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `G_OBJECT_TYPE()` instead.

### GTK_WIDGET_STATE()

    #define GTK_WIDGET_STATE(wid)		  (GTK_WIDGET (wid)->state)

`GTK_WIDGET_STATE` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_state()` instead.

### GTK_WIDGET_SAVED_STATE()

    #define GTK_WIDGET_SAVED_STATE(wid)	  (GTK_WIDGET (wid)->saved_state)

`GTK_WIDGET_SAVED_STATE` has been deprecated since version 2.20 and should not be used in newly-written code.

Do not used it.

### GTK_WIDGET_FLAGS()

    #define GTK_WIDGET_FLAGS(wid)		  (GTK_OBJECT_FLAGS (wid))

`GTK_WIDGET_FLAGS` has been deprecated since version 2.20 and should not be used in newly-written code.

Use the proper function to test individual states: `gtk_widget_get_app_paintable()`, `gtk_widget_get_can_default()`, `gtk_widget_get_can_focus()`, `gtk_widget_get_double_buffered()`, `gtk_widget_has_default()`, `gtk_widget_is_drawable()`, `gtk_widget_has_focus()`, `gtk_widget_has_grab()`, `gtk_widget_get_mapped()`, `gtk_widget_get_has_window()`, `gtk_widget_has_rc_style()`, `gtk_widget_get_realized()`, `gtk_widget_get_receives_default()`, `gtk_widget_get_sensitive()`, `gtk_widget_is_sensitive()`, `gtk_widget_is_toplevel()` or `gtk_widget_get_visible()`.

### GTK_WIDGET_TOPLEVEL()

    #define GTK_WIDGET_TOPLEVEL(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_TOPLEVEL) != 0)

`GTK_WIDGET_TOPLEVEL` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_is_toplevel()` instead.

### GTK_WIDGET_NO_WINDOW()

    #define GTK_WIDGET_NO_WINDOW(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_NO_WINDOW) != 0)

`GTK_WIDGET_NO_WINDOW` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_has_window()` instead.

### GTK_WIDGET_REALIZED()

    #define GTK_WIDGET_REALIZED(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_REALIZED) != 0)

`GTK_WIDGET_REALIZED` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_realized()` instead.

### GTK_WIDGET_MAPPED()

    #define GTK_WIDGET_MAPPED(wid)		  ((GTK_WIDGET_FLAGS (wid) & GTK_MAPPED) != 0)

`GTK_WIDGET_MAPPED` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_mapped()` instead.

### GTK_WIDGET_VISIBLE()

    #define GTK_WIDGET_VISIBLE(wid)		  ((GTK_WIDGET_FLAGS (wid) & GTK_VISIBLE) != 0)

`GTK_WIDGET_VISIBLE` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_visible()` instead.

### GTK_WIDGET_DRAWABLE()

    #define GTK_WIDGET_DRAWABLE(wid)	  (GTK_WIDGET_VISIBLE (wid) && GTK_WIDGET_MAPPED (wid))

`GTK_WIDGET_DRAWABLE` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_is_drawable()` instead.

### GTK_WIDGET_SENSITIVE()

    #define GTK_WIDGET_SENSITIVE(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_SENSITIVE) != 0)

`GTK_WIDGET_SENSITIVE` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_sensitive()` instead.

### GTK_WIDGET_PARENT_SENSITIVE()

    #define GTK_WIDGET_PARENT_SENSITIVE(wid)  ((GTK_WIDGET_FLAGS (wid) & GTK_PARENT_SENSITIVE) != 0)

`GTK_WIDGET_PARENT_SENSITIVE` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_sensitive()` on the parent widget instead.

### GTK_WIDGET_IS_SENSITIVE()

    #define             GTK_WIDGET_IS_SENSITIVE(wid)

`GTK_WIDGET_IS_SENSITIVE` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_is_sensitive()` instead.

### GTK_WIDGET_CAN_FOCUS()

    #define GTK_WIDGET_CAN_FOCUS(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_CAN_FOCUS) != 0)

`GTK_WIDGET_CAN_FOCUS` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_can_focus()` instead.

### GTK_WIDGET_HAS_FOCUS()

    #define GTK_WIDGET_HAS_FOCUS(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_HAS_FOCUS) != 0)

`GTK_WIDGET_HAS_FOCUS` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_has_focus()` instead.

### GTK_WIDGET_CAN_DEFAULT()

    #define GTK_WIDGET_CAN_DEFAULT(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_CAN_DEFAULT) != 0)

`GTK_WIDGET_CAN_DEFAULT` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_can_default()` instead.

### GTK_WIDGET_RECEIVES_DEFAULT()

    #define GTK_WIDGET_RECEIVES_DEFAULT(wid)  ((GTK_WIDGET_FLAGS (wid) & GTK_RECEIVES_DEFAULT) != 0)

`GTK_WIDGET_RECEIVES_DEFAULT` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_receives_default()` instead.

### GTK_WIDGET_HAS_DEFAULT()

    #define GTK_WIDGET_HAS_DEFAULT(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_HAS_DEFAULT) != 0)

`GTK_WIDGET_HAS_DEFAULT` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_has_default()` instead.

### GTK_WIDGET_HAS_GRAB()

    #define GTK_WIDGET_HAS_GRAB(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_HAS_GRAB) != 0)

`GTK_WIDGET_HAS_GRAB` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_has_grab()` instead.

### GTK_WIDGET_RC_STYLE()

    #define GTK_WIDGET_RC_STYLE(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_RC_STYLE) != 0)

`GTK_WIDGET_RC_STYLE` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_has_rc_style()` instead.

### GTK_WIDGET_COMPOSITE_CHILD()

    #define GTK_WIDGET_COMPOSITE_CHILD(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_COMPOSITE_CHILD) != 0)

`GTK_WIDGET_COMPOSITE_CHILD` has been deprecated since version 2.20 and should not be used in newly-written code.

Use the “composite-child” property instead.

### GTK_WIDGET_APP_PAINTABLE()

    #define GTK_WIDGET_APP_PAINTABLE(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_APP_PAINTABLE) != 0)

`GTK_WIDGET_APP_PAINTABLE` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_app_paintable()` instead.

### GTK_WIDGET_DOUBLE_BUFFERED()

    #define GTK_WIDGET_DOUBLE_BUFFERED(wid)	  ((GTK_WIDGET_FLAGS (wid) & GTK_DOUBLE_BUFFERED) != 0)

`GTK_WIDGET_DOUBLE_BUFFERED` has been deprecated since version 2.20 and should not be used in newly-written code.

Use `gtk_widget_get_double_buffered()` instead.

### GTK_WIDGET_SET_FLAGS()

    #define GTK_WIDGET_SET_FLAGS(wid,flag)	  G_STMT_START{ (GTK_WIDGET_FLAGS (wid) |= (flag)); }G_STMT_END

`GTK_WIDGET_SET_FLAGS` has been deprecated since version 2.22 and should not be used in newly-written code.

Use the proper function instead: `gtk_widget_set_app_paintable()`, `gtk_widget_set_can_default()`, `gtk_widget_set_can_focus()`, `gtk_widget_set_double_buffered()`, `gtk_widget_set_has_window()`, `gtk_widget_set_mapped()`, `gtk_widget_set_no_show_all()`, `gtk_widget_set_realized()`, `gtk_widget_set_receives_default()`, `gtk_widget_set_sensitive()` or `gtk_widget_set_visible()`.

### GTK_WIDGET_UNSET_FLAGS()

    #define GTK_WIDGET_UNSET_FLAGS(wid,flag)  G_STMT_START{ (GTK_WIDGET_FLAGS (wid) &= ~(flag)); }G_STMT_END

`GTK_WIDGET_UNSET_FLAGS` has been deprecated since version 2.22 and should not be used in newly-written code.

Use the proper function instead. See `GTK_WIDGET_SET_FLAGS()`.

### GtkCallback ()

    void
    (*GtkCallback) (GtkWidget *widget,
                    gpointer data);

### gtk_widget_new ()

    GtkWidget *
    gtk_widget_new (GType type,
                    const gchar *first_property_name,
                    ...);

### gtk_widget_ref ()

    GtkWidget *
    gtk_widget_ref (GtkWidget *widget);

`gtk_widget_ref` has been deprecated since version 2.12 and should not be used in newly-written code.

Use `g_object_ref()` instead.

### gtk_widget_unref ()

    void
    gtk_widget_unref (GtkWidget *widget);

`gtk_widget_unref` has been deprecated since version 2.12 and should not be used in newly-written code.

Use `g_object_unref()` instead.

### gtk_widget_destroy ()

    void
    gtk_widget_destroy (GtkWidget *widget);

### gtk_widget_destroyed ()

    void
    gtk_widget_destroyed (GtkWidget *widget,
                          GtkWidget **widget_pointer);

### gtk_widget_set ()

    void
    gtk_widget_set (GtkWidget *widget,
                    const gchar *first_property_name,
                    ...);

`gtk_widget_set` has been deprecated since version 2.0 and should not be used in newly-written code.

Use `g_object_set()` instead.

### gtk_widget_unparent ()

    void
    gtk_widget_unparent (GtkWidget *widget);

### gtk_widget_show ()

    void
    gtk_widget_show (GtkWidget *widget);

### gtk_widget_show_now ()

    void
    gtk_widget_show_now (GtkWidget *widget);

### gtk_widget_hide ()

    void
    gtk_widget_hide (GtkWidget *widget);

### gtk_widget_show_all ()

    void
    gtk_widget_show_all (GtkWidget *widget);

### gtk_widget_hide_all ()

    void
    gtk_widget_hide_all (GtkWidget *widget);

`gtk_widget_hide_all` has been deprecated since version 2.24 and should not be used in newly-written code.

Use `gtk_widget_hide()` instead.

### gtk_widget_map ()

    void
    gtk_widget_map (GtkWidget *widget);

### gtk_widget_unmap ()

    void
    gtk_widget_unmap (GtkWidget *widget);

### gtk_widget_realize ()

    void
    gtk_widget_realize (GtkWidget *widget);

### gtk_widget_unrealize ()

    void
    gtk_widget_unrealize (GtkWidget *widget);

### gtk_widget_queue_draw ()

    void
    gtk_widget_queue_draw (GtkWidget *widget);

### gtk_widget_queue_resize ()

    void
    gtk_widget_queue_resize (GtkWidget *widget);

`gtk_widget_queue_resize` is deprecated and should not be used in newly-written code.

### gtk_widget_queue_resize_no_redraw ()

    void
    gtk_widget_queue_resize_no_redraw (GtkWidget *widget);

Since: 2.4

### gtk_widget_draw ()

    void
    gtk_widget_draw (GtkWidget *widget,
                     const GdkRectangle *area);

`gtk_widget_draw` is deprecated and should not be used in newly-written code.

### gtk_widget_size_request ()

    void
    gtk_widget_size_request (GtkWidget *widget,
                             GtkRequisition *requisition);

`gtk_widget_size_request` is deprecated and should not be used in newly-written code.

### gtk_widget_get_child_requisition ()

    void
    gtk_widget_get_child_requisition (GtkWidget *widget,
                                      GtkRequisition *requisition);

### gtk_widget_size_allocate ()

    void
    gtk_widget_size_allocate (GtkWidget *widget,
                              GtkAllocation *allocation);

### gtk_widget_add_accelerator ()

    void
    gtk_widget_add_accelerator (GtkWidget *widget,
                                const gchar *accel_signal,
                                GtkAccelGroup *accel_group,
                                guint accel_key,
                                GdkModifierType accel_mods,
                                GtkAccelFlags accel_flags);

### gtk_widget_remove_accelerator ()

    gboolean
    gtk_widget_remove_accelerator (GtkWidget *widget,
                                   GtkAccelGroup *accel_group,
                                   guint accel_key,
                                   GdkModifierType accel_mods);

### gtk_widget_set_accel_path ()

    void
    gtk_widget_set_accel_path (GtkWidget *widget,
                               const gchar *accel_path,
                               GtkAccelGroup *accel_group);

### gtk_widget_list_accel_closures ()

    GList *
    gtk_widget_list_accel_closures (GtkWidget *widget);

### gtk_widget_can_activate_accel ()

    gboolean
    gtk_widget_can_activate_accel (GtkWidget *widget,
                                   guint signal_id);

Since: 2.4

### gtk_widget_event ()

    gboolean
    gtk_widget_event (GtkWidget *widget,
                      GdkEvent *event);

### gtk_widget_activate ()

    gboolean
    gtk_widget_activate (GtkWidget *widget);

### gtk_widget_reparent ()

    void
    gtk_widget_reparent (GtkWidget *widget,
                         GtkWidget *new_parent);

### gtk_widget_intersect ()

    gboolean
    gtk_widget_intersect (GtkWidget *widget,
                          const GdkRectangle *area,
                          GdkRectangle *intersection);

### gtk_widget_is_focus ()

    gboolean
    gtk_widget_is_focus (GtkWidget *widget);

### gtk_widget_grab_focus ()

    void
    gtk_widget_grab_focus (GtkWidget *widget);

### gtk_widget_grab_default ()

    void
    gtk_widget_grab_default (GtkWidget *widget);

### gtk_widget_set_name ()

    void
    gtk_widget_set_name (GtkWidget *widget,
                         const gchar *name);

### gtk_widget_get_name ()

    const gchar *
    gtk_widget_get_name (GtkWidget *widget);

### gtk_widget_set_state ()

    void
    gtk_widget_set_state (GtkWidget *widget,
                          GtkStateType state);

### gtk_widget_set_sensitive ()

    void
    gtk_widget_set_sensitive (GtkWidget *widget,
                              gboolean sensitive);

### gtk_widget_set_parent ()

    void
    gtk_widget_set_parent (GtkWidget *widget,
                           GtkWidget *parent);

### gtk_widget_set_parent_window ()

    void
    gtk_widget_set_parent_window (GtkWidget *widget,
                                  GdkWindow *parent_window);

### gtk_widget_get_parent_window ()

    GdkWindow *
    gtk_widget_get_parent_window (GtkWidget *widget);

### gtk_widget_set_uposition ()

    void
    gtk_widget_set_uposition (GtkWidget *widget,
                              gint x,
                              gint y);

`gtk_widget_set_uposition` is deprecated and should not be used in newly-written code.

### gtk_widget_set_usize ()

    void
    gtk_widget_set_usize (GtkWidget *widget,
                          gint width,
                          gint height);

`gtk_widget_set_usize` has been deprecated since version 2.2 and should not be used in newly-written code.

Use `gtk_widget_set_size_request()` instead.

### gtk_widget_set_events ()

    void
    gtk_widget_set_events (GtkWidget *widget,
                           gint events);

### gtk_widget_add_events ()

    void
    gtk_widget_add_events (GtkWidget *widget,
                           gint events);

### gtk_widget_set_extension_events ()

    void
    gtk_widget_set_extension_events (GtkWidget *widget,
                                     GdkExtensionMode mode);

### gtk_widget_get_extension_events ()

    GdkExtensionMode
    gtk_widget_get_extension_events (GtkWidget *widget);

### gtk_widget_get_toplevel ()

    GtkWidget *
    gtk_widget_get_toplevel (GtkWidget *widget);

### gtk_widget_get_ancestor ()

    GtkWidget *
    gtk_widget_get_ancestor (GtkWidget *widget,
                             GType widget_type);

### gtk_widget_get_colormap ()

    GdkColormap *
    gtk_widget_get_colormap (GtkWidget *widget);

### gtk_widget_set_colormap ()

    void
    gtk_widget_set_colormap (GtkWidget *widget,
                             GdkColormap *colormap);

### gtk_widget_get_visual ()

    GdkVisual *
    gtk_widget_get_visual (GtkWidget *widget);

### gtk_widget_get_events ()

    gint
    gtk_widget_get_events (GtkWidget *widget);

### gtk_widget_get_pointer ()

    void
    gtk_widget_get_pointer (GtkWidget *widget,
                            gint *x,
                            gint *y);

### gtk_widget_is_ancestor ()

    gboolean
    gtk_widget_is_ancestor (GtkWidget *widget,
                            GtkWidget *ancestor);

### gtk_widget_translate_coordinates ()

    gboolean
    gtk_widget_translate_coordinates (GtkWidget *src_widget,
                                      GtkWidget *dest_widget,
                                      gint src_x,
                                      gint src_y,
                                      gint *dest_x,
                                      gint *dest_y);

### gtk_widget_hide_on_delete ()

    gboolean
    gtk_widget_hide_on_delete (GtkWidget *widget);

### gtk_widget_set_style ()

    void
    gtk_widget_set_style (GtkWidget *widget,
                          GtkStyle *style);

### gtk_widget_set_rc_style()

    #define gtk_widget_set_rc_style(widget)          (gtk_widget_set_style (widget, NULL))

`gtk_widget_set_rc_style` has been deprecated since version 2.0 and should not be used in newly-written code.

Use `gtk_widget_set_style()` with a `NULL` `style` argument instead.

### gtk_widget_ensure_style ()

    void
    gtk_widget_ensure_style (GtkWidget *widget);

### gtk_widget_get_style ()

    GtkStyle *
    gtk_widget_get_style (GtkWidget *widget);

### gtk_widget_restore_default_style()

    #define gtk_widget_restore_default_style(widget) (gtk_widget_set_style (widget, NULL))

`gtk_widget_restore_default_style` has been deprecated since version 2.0 and should not be used in newly-written code.

Use `gtk_widget_set_style()` with a `NULL` `style` argument instead.

### gtk_widget_reset_rc_styles ()

    void
    gtk_widget_reset_rc_styles (GtkWidget *widget);

### gtk_widget_push_colormap ()

    void
    gtk_widget_push_colormap (GdkColormap *cmap);

### gtk_widget_pop_colormap ()

    void
    gtk_widget_pop_colormap (void);

### gtk_widget_set_default_colormap ()

    void
    gtk_widget_set_default_colormap (GdkColormap *colormap);

### gtk_widget_get_default_style ()

    GtkStyle *
    gtk_widget_get_default_style (void);

### gtk_widget_get_default_colormap ()

    GdkColormap *
    gtk_widget_get_default_colormap (void);

### gtk_widget_get_default_visual ()

    GdkVisual *
    gtk_widget_get_default_visual (void);

### gtk_widget_set_direction ()

    void
    gtk_widget_set_direction (GtkWidget *widget,
                              GtkTextDirection dir);

### gtk_widget_get_direction ()

    GtkTextDirection
    gtk_widget_get_direction (GtkWidget *widget);

### gtk_widget_set_default_direction ()

    void
    gtk_widget_set_default_direction (GtkTextDirection dir);

### gtk_widget_get_default_direction ()

    GtkTextDirection
    gtk_widget_get_default_direction (void);

### gtk_widget_shape_combine_mask ()

    void
    gtk_widget_shape_combine_mask (GtkWidget *widget,
                                   GdkBitmap *shape_mask,
                                   gint offset_x,
                                   gint offset_y);

### gtk_widget_input_shape_combine_mask ()

    void
    gtk_widget_input_shape_combine_mask (GtkWidget *widget,
                                         GdkBitmap *shape_mask,
                                         gint offset_x,
                                         gint offset_y);

Since: 2.10

### gtk_widget_path ()

    void
    gtk_widget_path (GtkWidget *widget,
                     guint *path_length,
                     gchar **path,
                     gchar **path_reversed);

### gtk_widget_class_path ()

    void
    gtk_widget_class_path (GtkWidget *widget,
                           guint *path_length,
                           gchar **path,
                           gchar **path_reversed);

### gtk_widget_get_composite_name ()

    gchar *
    gtk_widget_get_composite_name (GtkWidget *widget);

### gtk_widget_modify_style ()

    void
    gtk_widget_modify_style (GtkWidget *widget,
                             GtkRcStyle *style);

### gtk_widget_get_modifier_style ()

    GtkRcStyle *
    gtk_widget_get_modifier_style (GtkWidget *widget);

### gtk_widget_modify_fg ()

    void
    gtk_widget_modify_fg (GtkWidget *widget,
                          GtkStateType state,
                          const GdkColor *color);

### gtk_widget_modify_bg ()

    void
    gtk_widget_modify_bg (GtkWidget *widget,
                          GtkStateType state,
                          const GdkColor *color);

### gtk_widget_modify_text ()

    void
    gtk_widget_modify_text (GtkWidget *widget,
                            GtkStateType state,
                            const GdkColor *color);

### gtk_widget_modify_base ()

    void
    gtk_widget_modify_base (GtkWidget *widget,
                            GtkStateType state,
                            const GdkColor *color);

### gtk_widget_modify_font ()

    void
    gtk_widget_modify_font (GtkWidget *widget,
                            PangoFontDescription *font_desc);

### gtk_widget_modify_cursor ()

    void
    gtk_widget_modify_cursor (GtkWidget *widget,
                              const GdkColor *primary,
                              const GdkColor *secondary);

Since: 2.12

### gtk_widget_create_pango_context ()

    PangoContext *
    gtk_widget_create_pango_context (GtkWidget *widget);

### gtk_widget_get_pango_context ()

    PangoContext *
    gtk_widget_get_pango_context (GtkWidget *widget);

### gtk_widget_create_pango_layout ()

    PangoLayout *
    gtk_widget_create_pango_layout (GtkWidget *widget,
                                    const gchar *text);

### gtk_widget_render_icon ()

    GdkPixbuf *
    gtk_widget_render_icon (GtkWidget *widget,
                            const gchar *stock_id,
                            GtkIconSize size,
                            const gchar *detail);

### gtk_widget_pop_composite_child ()

    void
    gtk_widget_pop_composite_child (void);

### gtk_widget_push_composite_child ()

    void
    gtk_widget_push_composite_child (void);

### gtk_widget_queue_clear ()

    void
    gtk_widget_queue_clear (GtkWidget *widget);

`gtk_widget_queue_clear` has been deprecated since version 2.2 and should not be used in newly-written code.

Use `gtk_widget_queue_draw()` instead.

### gtk_widget_queue_clear_area ()

    void
    gtk_widget_queue_clear_area (GtkWidget *widget,
                                 gint x,
                                 gint y,
                                 gint width,
                                 gint height);

`gtk_widget_queue_clear_area` has been deprecated since version 2.2 and should not be used in newly-written code.

Use `gtk_widget_queue_draw_area()` instead.

### gtk_widget_queue_draw_area ()

    void
    gtk_widget_queue_draw_area (GtkWidget *widget,
                                gint x,
                                gint y,
                                gint width,
                                gint height);

### gtk_widget_reset_shapes ()

    void
    gtk_widget_reset_shapes (GtkWidget *widget);

`gtk_widget_reset_shapes` is deprecated and should not be used in newly-written code.

This function is being removed in GTK+ 3.0. Don't use it.

### gtk_widget_set_app_paintable ()

    void
    gtk_widget_set_app_paintable (GtkWidget *widget,
                                  gboolean app_paintable);

### gtk_widget_set_double_buffered ()

    void
    gtk_widget_set_double_buffered (GtkWidget *widget,
                                    gboolean double_buffered);

### gtk_widget_set_redraw_on_allocate ()

    void
    gtk_widget_set_redraw_on_allocate (GtkWidget *widget,
                                       gboolean redraw_on_allocate);

### gtk_widget_set_composite_name ()

    void
    gtk_widget_set_composite_name (GtkWidget *widget,
                                   const gchar *name);

### gtk_widget_set_scroll_adjustments ()

    gboolean
    gtk_widget_set_scroll_adjustments (GtkWidget *widget,
                                       GtkAdjustment *hadjustment,
                                       GtkAdjustment *vadjustment);

### gtk_widget_mnemonic_activate ()

    gboolean
    gtk_widget_mnemonic_activate (GtkWidget *widget,
                                  gboolean group_cycling);

### gtk_widget_class_install_style_property ()

    void
    gtk_widget_class_install_style_property
                                   (GtkWidgetClass *klass,
                                    GParamSpec *pspec);

### gtk_widget_class_install_style_property_parser ()

    void
    gtk_widget_class_install_style_property_parser
                                   (GtkWidgetClass *klass,
                                    GParamSpec *pspec,
                                    GtkRcPropertyParser parser);

### gtk_widget_class_find_style_property ()

    GParamSpec *
    gtk_widget_class_find_style_property (GtkWidgetClass *klass,
                                          const gchar *property_name);

Since: 2.2

### gtk_widget_class_list_style_properties ()

    GParamSpec **
    gtk_widget_class_list_style_properties
                                   (GtkWidgetClass *klass,
                                    guint *n_properties);

Since: 2.2

### gtk_widget_region_intersect ()

    GdkRegion *
    gtk_widget_region_intersect (GtkWidget *widget,
                                 const GdkRegion *region);

### gtk_widget_send_expose ()

    gint
    gtk_widget_send_expose (GtkWidget *widget,
                            GdkEvent *event);

### gtk_widget_send_focus_change ()

    gboolean
    gtk_widget_send_focus_change (GtkWidget *widget,
                                  GdkEvent *event);

Since: 2.22

### gtk_widget_style_get ()

    void
    gtk_widget_style_get (GtkWidget *widget,
                          const gchar *first_property_name,
                          ...);

### gtk_widget_style_get_property ()

    void
    gtk_widget_style_get_property (GtkWidget *widget,
                                   const gchar *property_name,
                                   GValue *value);

### gtk_widget_style_get_valist ()

    void
    gtk_widget_style_get_valist (GtkWidget *widget,
                                 const gchar *first_property_name,
                                 va_list var_args);

### gtk_widget_style_attach ()

    void
    gtk_widget_style_attach (GtkWidget *style);

Since: 2.20

### gtk_widget_get_accessible ()

    AtkObject *
    gtk_widget_get_accessible (GtkWidget *widget);

`gtk_widget_get_accessible` is deprecated and should not be used in newly-written code.

### gtk_widget_child_focus ()

    gboolean
    gtk_widget_child_focus (GtkWidget *widget,
                            GtkDirectionType direction);

### gtk_widget_child_notify ()

    void
    gtk_widget_child_notify (GtkWidget *widget,
                             const gchar *child_property);

### gtk_widget_freeze_child_notify ()

    void
    gtk_widget_freeze_child_notify (GtkWidget *widget);

### gtk_widget_get_child_visible ()

    gboolean
    gtk_widget_get_child_visible (GtkWidget *widget);

### gtk_widget_get_parent ()

    GtkWidget *
    gtk_widget_get_parent (GtkWidget *widget);

### gtk_widget_get_settings ()

    GtkSettings *
    gtk_widget_get_settings (GtkWidget *widget);

### gtk_widget_get_clipboard ()

    GtkClipboard *
    gtk_widget_get_clipboard (GtkWidget *widget,
                              GdkAtom selection);

Since: 2.2

### gtk_widget_get_display ()

    GdkDisplay *
    gtk_widget_get_display (GtkWidget *widget);

Since: 2.2

### gtk_widget_get_root_window ()

    GdkWindow *
    gtk_widget_get_root_window (GtkWidget *widget);

Since: 2.2

### gtk_widget_get_screen ()

    GdkScreen *
    gtk_widget_get_screen (GtkWidget *widget);

Since: 2.2

### gtk_widget_has_screen ()

    gboolean
    gtk_widget_has_screen (GtkWidget *widget);

Since: 2.2

### gtk_widget_get_size_request ()

    void
    gtk_widget_get_size_request (GtkWidget *widget,
                                 gint *width,
                                 gint *height);

### gtk_widget_pop_visual

    #define gtk_widget_pop_visual()               ((void) 0)

`gtk_widget_pop_visual` is deprecated and should not be used in newly-written code.

### gtk_widget_push_visual()

    #define gtk_widget_push_visual(visual)        ((void) 0)

`gtk_widget_push_visual` is deprecated and should not be used in newly-written code.

### gtk_widget_set_child_visible ()

    void
    gtk_widget_set_child_visible (GtkWidget *widget,
                                  gboolean is_visible);

### gtk_widget_set_default_visual()

    #define gtk_widget_set_default_visual(visual) ((void) 0)

`gtk_widget_set_default_visual` is deprecated and should not be used in newly-written code.

### gtk_widget_set_size_request ()

    void
    gtk_widget_set_size_request (GtkWidget *widget,
                                 gint width,
                                 gint height);

### gtk_widget_set_visual()

    #define gtk_widget_set_visual(widget,visual)  ((void) 0)

`gtk_widget_set_visual` is deprecated and should not be used in newly-written code.

### gtk_widget_thaw_child_notify ()

    void
    gtk_widget_thaw_child_notify (GtkWidget *widget);

### gtk_widget_set_no_show_all ()

    void
    gtk_widget_set_no_show_all (GtkWidget *widget,
                                gboolean no_show_all);

Since: 2.4

### gtk_widget_get_no_show_all ()

    gboolean
    gtk_widget_get_no_show_all (GtkWidget *widget);

Since: 2.4

### gtk_widget_list_mnemonic_labels ()

    GList *
    gtk_widget_list_mnemonic_labels (GtkWidget *widget);

Since: 2.4

### gtk_widget_add_mnemonic_label ()

    void
    gtk_widget_add_mnemonic_label (GtkWidget *widget,
                                   GtkWidget *label);

Since: 2.4

### gtk_widget_remove_mnemonic_label ()

    void
    gtk_widget_remove_mnemonic_label (GtkWidget *widget,
                                      GtkWidget *label);

Since: 2.4

### gtk_widget_get_action ()

    GtkAction *
    gtk_widget_get_action (GtkWidget *widget);

`gtk_widget_get_action` has been deprecated since version 2.16 and should not be used in newly-written code.

Use `gtk_activatable_get_related_action()` instead.

Since: 2.10

### gtk_widget_is_composited ()

    gboolean
    gtk_widget_is_composited (GtkWidget *widget);

Since: 2.10

### gtk_widget_error_bell ()

    void
    gtk_widget_error_bell (GtkWidget *widget);

Since: 2.12

### gtk_widget_keynav_failed ()

    gboolean
    gtk_widget_keynav_failed (GtkWidget *widget,
                              GtkDirectionType direction);

Since: 2.12

### gtk_widget_get_tooltip_markup ()

    gchar *
    gtk_widget_get_tooltip_markup (GtkWidget *widget);

Since: 2.12

### gtk_widget_set_tooltip_markup ()

    void
    gtk_widget_set_tooltip_markup (GtkWidget *widget,
                                   const gchar *markup);

Since: 2.12

### gtk_widget_get_tooltip_text ()

    gchar *
    gtk_widget_get_tooltip_text (GtkWidget *widget);

Since: 2.12

### gtk_widget_set_tooltip_text ()

    void
    gtk_widget_set_tooltip_text (GtkWidget *widget,
                                 const gchar *text);

Since: 2.12

### gtk_widget_get_tooltip_window ()

    GtkWindow *
    gtk_widget_get_tooltip_window (GtkWidget *widget);

Since: 2.12

### gtk_widget_set_tooltip_window ()

    void
    gtk_widget_set_tooltip_window (GtkWidget *widget,
                                   GtkWindow *custom_window);

Since: 2.12

### gtk_widget_get_has_tooltip ()

    gboolean
    gtk_widget_get_has_tooltip (GtkWidget *widget);

Since: 2.12

### gtk_widget_set_has_tooltip ()

    void
    gtk_widget_set_has_tooltip (GtkWidget *widget,
                                gboolean has_tooltip);

Since: 2.12

### gtk_widget_trigger_tooltip_query ()

    void
    gtk_widget_trigger_tooltip_query (GtkWidget *widget);

Since: 2.12

### gtk_widget_get_snapshot ()

    GdkPixmap *
    gtk_widget_get_snapshot (GtkWidget *widget,
                             GdkRectangle *clip_rect);

Since: 2.14

### gtk_widget_get_window ()

    GdkWindow *
    gtk_widget_get_window (GtkWidget *widget);

Since: 2.14

### gtk_widget_get_allocation ()

    void
    gtk_widget_get_allocation (GtkWidget *widget,
                               GtkAllocation *allocation);

Since: 2.18

### gtk_widget_set_allocation ()

    void
    gtk_widget_set_allocation (GtkWidget *widget,
                               const GtkAllocation *allocation);

Since: 2.18

### gtk_widget_get_app_paintable ()

    gboolean
    gtk_widget_get_app_paintable (GtkWidget *widget);

Since: 2.18

### gtk_widget_get_can_default ()

    gboolean
    gtk_widget_get_can_default (GtkWidget *widget);

Since: 2.18

### gtk_widget_set_can_default ()

    void
    gtk_widget_set_can_default (GtkWidget *widget,
                                gboolean can_default);

Since: 2.18

### gtk_widget_get_can_focus ()

    gboolean
    gtk_widget_get_can_focus (GtkWidget *widget);

Since: 2.18

### gtk_widget_set_can_focus ()

    void
    gtk_widget_set_can_focus (GtkWidget *widget,
                              gboolean can_focus);

Since: 2.18

### gtk_widget_get_double_buffered ()

    gboolean
    gtk_widget_get_double_buffered (GtkWidget *widget);

Since: 2.18

### gtk_widget_get_has_window ()

    gboolean
    gtk_widget_get_has_window (GtkWidget *widget);

Since: 2.18

### gtk_widget_set_has_window ()

    void
    gtk_widget_set_has_window (GtkWidget *widget,
                               gboolean has_window);

Since: 2.18

### gtk_widget_get_sensitive ()

    gboolean
    gtk_widget_get_sensitive (GtkWidget *widget);

Since: 2.18

### gtk_widget_is_sensitive ()

    gboolean
    gtk_widget_is_sensitive (GtkWidget *widget);

Since: 2.18

### gtk_widget_get_state ()

    GtkStateType
    gtk_widget_get_state (GtkWidget *widget);

Since: 2.18

### gtk_widget_get_visible ()

    gboolean
    gtk_widget_get_visible (GtkWidget *widget);

Since: 2.18

### gtk_widget_set_visible ()

    void
    gtk_widget_set_visible (GtkWidget *widget,
                            gboolean visible);

Since: 2.18

### gtk_widget_has_default ()

    gboolean
    gtk_widget_has_default (GtkWidget *widget);

Since: 2.18

### gtk_widget_has_focus ()

    gboolean
    gtk_widget_has_focus (GtkWidget *widget);

Since: 2.18

### gtk_widget_has_grab ()

    gboolean
    gtk_widget_has_grab (GtkWidget *widget);

Since: 2.18

### gtk_widget_has_rc_style ()

    gboolean
    gtk_widget_has_rc_style (GtkWidget *widget);

Since: 2.20

### gtk_widget_is_drawable ()

    gboolean
    gtk_widget_is_drawable (GtkWidget *widget);

Since: 2.18

### gtk_widget_is_toplevel ()

    gboolean
    gtk_widget_is_toplevel (GtkWidget *widget);

Since: 2.18

### gtk_widget_set_window ()

    void
    gtk_widget_set_window (GtkWidget *widget,
                           GdkWindow *window);

Since: 2.18

### gtk_widget_set_receives_default ()

    void
    gtk_widget_set_receives_default (GtkWidget *widget,
                                     gboolean receives_default);

Since: 2.18

### gtk_widget_get_receives_default ()

    gboolean
    gtk_widget_get_receives_default (GtkWidget *widget);

Since: 2.18

### gtk_widget_set_realized ()

    void
    gtk_widget_set_realized (GtkWidget *widget,
                             gboolean realized);

Since: 2.20

### gtk_widget_get_realized ()

    gboolean
    gtk_widget_get_realized (GtkWidget *widget);

Since: 2.20

### gtk_widget_set_mapped ()

    void
    gtk_widget_set_mapped (GtkWidget *widget,
                           gboolean mapped);

Since: 2.20

### gtk_widget_get_mapped ()

    gboolean
    gtk_widget_get_mapped (GtkWidget *widget);

Since: 2.20

### gtk_widget_get_requisition ()

    void
    gtk_widget_get_requisition (GtkWidget *widget,
                                GtkRequisition *requisition);

Since: 2.20

### gtk_requisition_copy ()

    GtkRequisition *
    gtk_requisition_copy (const GtkRequisition *requisition);

### gtk_requisition_free ()

    void
    gtk_requisition_free (GtkRequisition *requisition);

## Types and Values

### GtkWidget

    typedef struct {
      /* The style for the widget. The style contains the
       *  colors the widget should be drawn in for each state
       *  along with graphics contexts used to draw with and
       *  the font to use for text.
       */
      GtkStyle *GSEAL (style);

      /* The widget's desired size.
       */
      GtkRequisition GSEAL (requisition);

      /* The widget's allocated size.
       */
      GtkAllocation GSEAL (allocation);

      /* The widget's window or its parent window if it does
       *  not have a window. (Which will be indicated by the
       *  GTK_NO_WINDOW flag being set).
       */
      GdkWindow *GSEAL (window);

      /* The widget's parent.
       */
      GtkWidget *GSEAL (parent);
    } GtkWidget;

### struct GtkWidgetClass

    struct GtkWidgetClass {
      /* The object class structure needs to be the first
       *  element in the widget class structure in order for
       *  the class mechanism to work correctly. This allows a
       *  GtkWidgetClass pointer to be cast to a GtkObjectClass
       *  pointer.
       */
      GtkObjectClass parent_class;

      guint activate_signal;

      guint set_scroll_adjustments_signal;
    };

### enum GtkWidgetFlags

#### Members

GTK_TOPLEVEL |  |
GTK_NO_WINDOW |  |
GTK_REALIZED |  |
GTK_MAPPED |  |
GTK_VISIBLE |  |
GTK_SENSITIVE |  |
GTK_PARENT_SENSITIVE |  |
GTK_CAN_FOCUS |  |
GTK_HAS_FOCUS |  |
GTK_CAN_DEFAULT |  |
GTK_HAS_DEFAULT |  |
GTK_HAS_GRAB |  |
GTK_RC_STYLE |  |
GTK_COMPOSITE_CHILD |  |
GTK_NO_REPARENT |  |
GTK_APP_PAINTABLE |  |
GTK_RECEIVES_DEFAULT |  |
GTK_DOUBLE_BUFFERED |  |
GTK_NO_SHOW_ALL |  |

### struct GtkRequisition

    struct GtkRequisition {
      gint width;
      gint height;
    };

### GtkAllocation

    typedef 	GdkRectangle	   GtkAllocation;

### GtkSelectionData

    typedef struct {
      GdkAtom       GSEAL (selection);
      GdkAtom       GSEAL (target);
      GdkAtom       GSEAL (type);
      gint          GSEAL (format);
      guchar       *GSEAL (data);
      gint          GSEAL (length);
      GdkDisplay   *GSEAL (display);
    } GtkSelectionData;

### struct GtkWidgetAuxInfo

    struct GtkWidgetAuxInfo {
      gint x;
      gint y;
      gint width;
      gint height;
      guint x_set : 1;
      guint y_set : 1;
    };

### struct GtkWidgetShapeInfo

    struct GtkWidgetShapeInfo {
      gint16     offset_x;
      gint16     offset_y;
      GdkBitmap *shape_mask;
    };

### enum GtkWidgetHelpType

#### Members

GTK_WIDGET_HELP_TOOLTIP |  |
GTK_WIDGET_HELP_WHATS_THIS |  |

### enum GtkTextDirection

`GtkTextDirection` is deprecated and should not be used in newly-written code.

#### Members

GTK_TEXT_DIR_NONE |  |
GTK_TEXT_DIR_LTR |  |
GTK_TEXT_DIR_RTL |  |

## Property Details

### The `“app-paintable”` property

      “app-paintable”            gboolean

Whether the application will paint directly on the widget.

Flags: Read / Write

Default value: FALSE

### The `“can-default”` property

      “can-default”              gboolean

Whether the widget can be the default widget.

Flags: Read / Write

Default value: FALSE

### The `“can-focus”` property

      “can-focus”                gboolean

Whether the widget can accept the input focus.

Flags: Read / Write

Default value: FALSE

### The `“composite-child”` property

      “composite-child”          gboolean

Whether the widget is part of a composite widget.

Flags: Read

Default value: FALSE

### The `“double-buffered”` property

      “double-buffered”          gboolean

Whether or not the widget is double buffered.

Flags: Read / Write

Default value: TRUE

Since: 2.18

### The `“events”` property

      “events”                   GdkEventMask

The event mask that decides what kind of GdkEvents this widget gets.

Flags: Read / Write

Default value: GDK_STRUCTURE_MASK

### The `“extension-events”` property

      “extension-events”         GdkExtensionMode

The mask that decides what kind of extension events this widget gets.

Flags: Read / Write

Default value: GDK_EXTENSION_EVENTS_NONE

### The `“has-default”` property

      “has-default”              gboolean

Whether the widget is the default widget.

Flags: Read / Write

Default value: FALSE

### The `“has-focus”` property

      “has-focus”                gboolean

Whether the widget has the input focus.

Flags: Read / Write

Default value: FALSE

### The `“has-tooltip”` property

      “has-tooltip”              gboolean

Whether this widget has a tooltip.

Flags: Read / Write

Default value: FALSE

Since: 2.12

### The `“height-request”` property

      “height-request”           gint

Override for height request of the widget, or -1 if natural request should be used.

Flags: Read / Write

Allowed values: >= -1

Default value: -1

### The `“is-focus”` property

      “is-focus”                 gboolean

Whether the widget is the focus widget within the toplevel.

Flags: Read / Write

Default value: FALSE

### The `“name”` property

      “name”                     gchar *

The name of the widget.

Flags: Read / Write

Default value: NULL

### The `“no-show-all”` property

      “no-show-all”              gboolean

Whether gtk_widget_show_all() should not affect this widget.

Flags: Read / Write

Default value: FALSE

### The `“parent”` property

      “parent”                   GtkContainer *

The parent widget of this widget. Must be a Container widget.

Flags: Read / Write

### The `“receives-default”` property

      “receives-default”         gboolean

If TRUE, the widget will receive the default action when it is focused.

Flags: Read / Write

Default value: FALSE

### The `“sensitive”` property

      “sensitive”                gboolean

Whether the widget responds to input.

Flags: Read / Write

Default value: TRUE

### The `“style”` property

      “style”                    GtkStyle *

The style of the widget, which contains information about how it will look (colors etc).

Flags: Read / Write

### The `“tooltip-markup”` property

      “tooltip-markup”           gchar *

The contents of the tooltip for this widget.

Flags: Read / Write

Default value: NULL

Since: 2.12

### The `“tooltip-text”` property

      “tooltip-text”             gchar *

The contents of the tooltip for this widget.

Flags: Read / Write

Default value: NULL

Since: 2.12

### The `“visible”` property

      “visible”                  gboolean

Whether the widget is visible.

Flags: Read / Write

Default value: FALSE

### The `“width-request”` property

      “width-request”            gint

Override for width request of the widget, or -1 if natural request should be used.

Flags: Read / Write

Allowed values: >= -1

Default value: -1

### The `“window”` property

      “window”                   GdkWindow *

The widget's window if it is realized.

Flags: Read

Since: 2.14

## Style Property Details

### The `“cursor-aspect-ratio”` style property

      “cursor-aspect-ratio”      gfloat

Aspect ratio with which to draw insertion cursor.

Flags: Read

Allowed values: [0,1]

Default value: 0.04

### The `“cursor-color”` style property

      “cursor-color”             GdkColor *

Color with which to draw insertion cursor.

Flags: Read

### The `“draw-border”` style property

      “draw-border”              GtkBorder *

Size of areas outside the widget's allocation to draw.

`GtkWidget:draw-border` has been deprecated since version 2.22 and should not be used in newly-written code.

This property will be removed in GTK+ 3

Flags: Read

Since: 2.8

### The `“focus-line-pattern”` style property

      “focus-line-pattern”       gchar *

Dash pattern used to draw the focus indicator.

Flags: Read

Default value: "\001\001"

### The `“focus-line-width”` style property

      “focus-line-width”         gint

Width, in pixels, of the focus indicator line.

Flags: Read

Allowed values: >= 0

Default value: 1

### The `“focus-padding”` style property

      “focus-padding”            gint

Width, in pixels, between focus indicator and the widget 'box'.

Flags: Read

Allowed values: >= 0

Default value: 1

### The `“interior-focus”` style property

      “interior-focus”           gboolean

Whether to draw the focus indicator inside widgets.

Flags: Read

Default value: TRUE

### The `“link-color”` style property

      “link-color”               GdkColor *

Color of unvisited links.

Flags: Read

Since: 2.10

### The `“scroll-arrow-hlength”` style property

      “scroll-arrow-hlength”     gint

The length of horizontal scroll arrows.

Flags: Read

Allowed values: >= 1

Default value: 16

Since: 2.10

### The `“scroll-arrow-vlength”` style property

      “scroll-arrow-vlength”     gint

The length of vertical scroll arrows.

Flags: Read

Allowed values: >= 1

Default value: 16

Since: 2.10

### The `“secondary-cursor-color”` style property

      “secondary-cursor-color”   GdkColor *

Color with which to draw the secondary insertion cursor when editing mixed right-to-left and left-to-right text.

Flags: Read

### The `“separator-height”` style property

      “separator-height”         gint

The height of separators if "wide-separators" is TRUE.

Flags: Read

Allowed values: >= 0

Default value: 0

Since: 2.10

### The `“separator-width”` style property

      “separator-width”          gint

The width of separators if wide-separators is TRUE.

Flags: Read

Allowed values: >= 0

Default value: 0

Since: 2.10

### The `“tooltip-alpha”` style property

      “tooltip-alpha”            guchar

The opacity to be used when drawing tooltips.

Flags: Read

Default value: 255

### The `“tooltip-radius”` style property

      “tooltip-radius”           guint

The radius to be used when drawing tooltips.

Flags: Read

Allowed values: <= G_MAXINT

Default value: 0

### The `“visited-link-color”` style property

      “visited-link-color”       GdkColor *

Color of visited links.

Flags: Read

Since: 2.10

### The `“wide-separators”` style property

      “wide-separators”          gboolean

Whether separators have configurable width and should be drawn using a box instead of a line.

Flags: Read

Default value: FALSE

Since: 2.10

## Signal Details

### The `“accel-closures-changed”` signal

    void
    user_function (GtkWidget *widget,
                   gpointer   user_data)

### The `“button-press-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“button-release-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“can-activate-accel”` signal

    gboolean
    user_function (GtkWidget *widget,
                   guint      signal_id,
                   gpointer   user_data)

Flags: Run Last

### The `“child-notify”` signal

    void
    user_function (GtkWidget  *widget,
                   GParamSpec *pspec,
                   gpointer    user_data)

Flags: No Hooks

### The `“client-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“composited-changed”` signal

    void
    user_function (GtkWidget *widget,
                   gpointer   user_data)

Flags: Action

### The `“configure-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“damage-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

Since: 2.14

### The `“delete-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“destroy-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“direction-changed”` signal

    void
    user_function (GtkWidget       *widget,
                   GtkTextDirection previous_direction,
                   gpointer         user_data)

Flags: Run First

### The `“drag-begin”` signal

    void
    user_function (GtkWidget      *widget,
                   GdkDragContext *drag_context,
                   gpointer        user_data)

Flags: Run Last

### The `“drag-data-delete”` signal

    void
    user_function (GtkWidget      *widget,
                   GdkDragContext *drag_context,
                   gpointer        user_data)

Flags: Run Last

### The `“drag-data-get”` signal

    void
    user_function (GtkWidget        *widget,
                   GdkDragContext   *drag_context,
                   GtkSelectionData *data,
                   guint             info,
                   guint             time,
                   gpointer          user_data)

Flags: Run Last

### The `“drag-data-received”` signal

    void
    user_function (GtkWidget        *widget,
                   GdkDragContext   *drag_context,
                   gint              x,
                   gint              y,
                   GtkSelectionData *data,
                   guint             info,
                   guint             time,
                   gpointer          user_data)

Flags: Run Last

### The `“drag-drop”` signal

    gboolean
    user_function (GtkWidget      *widget,
                   GdkDragContext *drag_context,
                   gint            x,
                   gint            y,
                   guint           time,
                   gpointer        user_data)

Flags: Run Last

### The `“drag-end”` signal

    void
    user_function (GtkWidget      *widget,
                   GdkDragContext *drag_context,
                   gpointer        user_data)

Flags: Run Last

### The `“drag-failed”` signal

    gboolean
    user_function (GtkWidget      *widget,
                   GdkDragContext *drag_context,
                   GtkDragResult   result,
                   gpointer        user_data)

Flags: Run Last

Since: 2.12

### The `“drag-leave”` signal

    void
    user_function (GtkWidget      *widget,
                   GdkDragContext *drag_context,
                   guint           time,
                   gpointer        user_data)

Flags: Run Last

### The `“drag-motion”` signal

    gboolean
    user_function (GtkWidget      *widget,
                   GdkDragContext *drag_context,
                   gint            x,
                   gint            y,
                   guint           time,
                   gpointer        user_data)

Flags: Run Last

### The `“enter-notify-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“event-after”` signal

    void
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

### The `“expose-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“focus”` signal

    gboolean
    user_function (GtkWidget       *widget,
                   GtkDirectionType direction,
                   gpointer         user_data)

Flags: Run Last

### The `“focus-in-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“focus-out-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“grab-broken-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

Since: 2.8

### The `“grab-focus”` signal

    void
    user_function (GtkWidget *widget,
                   gpointer   user_data)

Flags: Action

### The `“grab-notify”` signal

    void
    user_function (GtkWidget *widget,
                   gboolean   was_grabbed,
                   gpointer   user_data)

Flags: Run First

### The `“hide”` signal

    void
    user_function (GtkWidget *widget,
                   gpointer   user_data)

Flags: Run First

### The `“hierarchy-changed”` signal

    void
    user_function (GtkWidget *widget,
                   GtkWidget *previous_toplevel,
                   gpointer   user_data)

Flags: Run Last

### The `“key-press-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“key-release-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“keynav-failed”` signal

    gboolean
    user_function (GtkWidget       *widget,
                   GtkDirectionType direction,
                   gpointer         user_data)

Flags: Run Last

Since: 2.12

### The `“leave-notify-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“map”` signal

    void
    user_function (GtkWidget *widget,
                   gpointer   user_data)

Flags: Run First

### The `“map-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“mnemonic-activate”` signal

    gboolean
    user_function (GtkWidget *widget,
                   gboolean   arg1,
                   gpointer   user_data)

Flags: Run Last

### The `“motion-notify-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“move-focus”` signal

    void
    user_function (GtkWidget       *widget,
                   GtkDirectionType direction,
                   gpointer         user_data)

Flags: Action

### The `“no-expose-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“parent-set”` signal

    void
    user_function (GtkWidget *widget,
                   GtkWidget *old_parent,
                   gpointer   user_data)

Flags: Run First

### The `“popup-menu”` signal

    gboolean
    user_function (GtkWidget *widget,
                   gpointer   user_data)

Flags: Action

### The `“property-notify-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“proximity-in-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“proximity-out-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“query-tooltip”` signal

    gboolean
    user_function (GtkWidget  *widget,
                   gint        x,
                   gint        y,
                   gboolean    keyboard_mode,
                   GtkTooltip *tooltip,
                   gpointer    user_data)

Flags: Run Last

Since: 2.12

### The `“realize”` signal

    void
    user_function (GtkWidget *widget,
                   gpointer   user_data)

Flags: Run First

### The `“screen-changed”` signal

    void
    user_function (GtkWidget *widget,
                   GdkScreen *previous_screen,
                   gpointer   user_data)

Flags: Run Last

### The `“scroll-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“selection-clear-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“selection-get”` signal

    void
    user_function (GtkWidget        *widget,
                   GtkSelectionData *data,
                   guint             info,
                   guint             time,
                   gpointer          user_data)

Flags: Run Last

### The `“selection-notify-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“selection-received”` signal

    void
    user_function (GtkWidget        *widget,
                   GtkSelectionData *data,
                   guint             time,
                   gpointer          user_data)

Flags: Run Last

### The `“selection-request-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“show”` signal

    void
    user_function (GtkWidget *widget,
                   gpointer   user_data)

Flags: Run First

### The `“show-help”` signal

    gboolean
    user_function (GtkWidget        *widget,
                   GtkWidgetHelpType help_type,
                   gpointer          user_data)

Flags: Action

### The `“size-allocate”` signal

    void
    user_function (GtkWidget    *widget,
                   GdkRectangle *allocation,
                   gpointer      user_data)

Flags: Run First

### The `“size-request”` signal

    void
    user_function (GtkWidget      *widget,
                   GtkRequisition *requisition,
                   gpointer        user_data)

Flags: Run First

### The `“state-changed”` signal

    void
    user_function (GtkWidget   *widget,
                   GtkStateType state,
                   gpointer     user_data)

Flags: Run First

### The `“style-set”` signal

    void
    user_function (GtkWidget *widget,
                   GtkStyle  *previous_style,
                   gpointer   user_data)

Flags: Run First

### The `“unmap”` signal

    void
    user_function (GtkWidget *widget,
                   gpointer   user_data)

Flags: Run First

### The `“unmap-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“unrealize”` signal

    void
    user_function (GtkWidget *widget,
                   gpointer   user_data)

Flags: Run Last

### The `“visibility-notify-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last

### The `“window-state-event”` signal

    gboolean
    user_function (GtkWidget *widget,
                   GdkEvent  *event,
                   gpointer   user_data)

Flags: Run Last