GtkWidget
Base class for all widgets
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_install_style_property() to install style properties for
a widget class, gtk_widget_class_find_style_property() or
gtk_widget_class_list_style_properties() to get information about existing
style properties and gtk_widget_style_get_property(), gtk_widget_style_get() or
gtk_widget_style_get_valist() to obtain the value of a style property.
@style: 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.
@requisition: The widgets desired size.
@allocation: The widgets allocated size.
@window: The widgets window or its parent window if it does not have a window. (Which
will be indicated by the #GTK_NO_WINDOW flag being set).
@parent:
@widget: the object which received the signal.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@arg1:
@Returns:
@widget: the object which received the signal.
@arg1:
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@arg1:
@widget: the object which received the signal.
@drag_context:
@widget: the object which received the signal.
@drag_context:
@widget: the object which received the signal.
@drag_context:
@data:
@info:
@time:
@time_:
@widget: the object which received the signal.
@drag_context:
@x:
@y:
@data:
@info:
@time:
@time_:
@widget: the object which received the signal.
@drag_context:
@x:
@y:
@time:
@Returns:
@time_:
@widget: the object which received the signal.
@drag_context:
@widget: the object which received the signal.
@drag_context:
@time:
@time_:
@widget: the object which received the signal.
@drag_context:
@x:
@y:
@time:
@Returns:
@time_:
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@arg1:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@widget: the object which received the signal.
@arg1:
@widget: the object which received the signal.
Emitted when there is a chance in the hierarchy to
which a widget belong. More precisely, a widget is
anchored when its toplevel
ancestor is a #GtkWindow. This signal is emitted when
a widget changes from un-anchored to anchored or vice-versa.
@widget: the object which received the signal.
@widget2:
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@arg1:
@Returns:
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@old_parent:
@widget: the object which received the signal.
@Returns:
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@widget: the object which received the signal.
@arg1:
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@data:
@info:
@time:
@time_:
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@data:
@time:
@time_:
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@widget: the object which received the signal.
@arg1:
@Returns:
@widget: the object which received the signal.
@allocation:
@widget: the object which received the signal.
@requisition:
@widget: the object which received the signal.
@state:
@widget: the object which received the signal.
@previous_style:
@widget: the object which received the signal.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
@widget: the object which received the signal.
@event:
@Returns: %TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.
activate_signal
The signal to emit when a widget of this class is activated,
gtk_widget_activate() handles the emission. Implementation of this
signal is optional.
set_scroll_adjustment_signal
This signal is emitted when a widget of this class is added
to a scrolling aware parent, gtk_widget_set_scroll_adjustments()
handles the emission.
Implementation of this signal is optional.
@parent_class:
@activate_signal:
@set_scroll_adjustments_signal:
Tells about certain properties of the widget.
@GTK_TOPLEVEL:
widgets without a real parent, as there are #GtkWindows and
#GtkMenus have this flag set throughout their lifetime.
Toplevel widgets always contain their own #GdkWindow.
@GTK_NO_WINDOW:
Indicative for a widget that does not provide its own #GdkWindow.
Visible action (e.g. drawing) is performed on the parent's #GdkWindow.
@GTK_REALIZED:
Set by gtk_widget_realize(), unset by gtk_widget_unrealize().
A realized widget has an associated #GdkWindow.
@GTK_MAPPED:
Set by gtk_widget_map(), unset by gtk_widget_unmap().
Only realized widgets can be mapped. It means that gdk_window_show()
has been called on the widgets window(s).
@GTK_VISIBLE:
Set by gtk_widget_show(), unset by gtk_widget_hide(). Implies that a
widget will be mapped as soon as its parent is mapped.
@GTK_SENSITIVE:
Set and unset by gtk_widget_set_sensitive().
The sensitivity of a widget determines whether it will receive
certain events (e.g. button or key presses). One premise for
the widgets sensitivity is to have this flag set.
@GTK_PARENT_SENSITIVE:
Set and unset by gtk_widget_set_sensitive() operations on the
parents of the widget.
This is the second premise for the widgets sensitivity. Once
it has %GTK_SENSITIVE and %GTK_PARENT_SENSITIVE set, its state is
effectively sensitive. This is expressed (and can be examined) by
the #GTK_WIDGET_IS_SENSITIVE macro.
@GTK_CAN_FOCUS:
Determines whether a widget is able to handle focus grabs.
@GTK_HAS_FOCUS:
Set by gtk_widget_grab_focus() for widgets that also
have %GTK_CAN_FOCUS set. The flag will be unset once another widget
grabs the focus.
@GTK_CAN_DEFAULT:
The widget is allowed to receive the default action via
gtk_widget_grab_default().
@GTK_HAS_DEFAULT:
The widget currently is receiving the default action.
@GTK_HAS_GRAB:
Set by gtk_grab_add(), unset by gtk_grab_remove(). It means that the
widget is in the grab_widgets stack, and will be the preferred one for
receiving events other than ones of cosmetic value.
@GTK_RC_STYLE:
Indicates that the widgets style has been looked up through the rc
mechanism. It does not imply that the widget actually had a style
defined through the rc mechanism.
@GTK_COMPOSITE_CHILD:
Indicates that the widget is a composite child of its parent; see
gtk_widget_push_composite_child(), gtk_widget_pop_composite_child().
@GTK_NO_REPARENT:
Unused since before GTK+ 1.2, will be removed in a future version.
@GTK_APP_PAINTABLE:
Set and unset by gtk_widget_set_app_paintable().
Must be set on widgets whose window the application directly draws on,
in order to keep GTK+ from overwriting the drawn stuff.
@GTK_RECEIVES_DEFAULT:
The widget when focused will receive the default action and have
%GTK_HAS_DEFAULT set even if there is a different widget set as default.
@GTK_DOUBLE_BUFFERED:
Set and unset by gtk_widget_set_double_buffered().
Indicates that exposes done on the widget should be double-buffered.
@GTK_NO_SHOW_ALL:
Gets the type of a widget.
@wid: a #GtkWidget.
Returns the current state of the widget, as a #GtkStateType.
@wid: a #GtkWidget.
Returns the saved state of the widget, as a #GtkStateType.
The saved state will be restored when a widget gets sensitive
again, after it has been made insensitive with gtk_widget_set_state()
or gtk_widget_set_sensitive().
@wid: a #GtkWidget.
Returns the widget flags from @wid.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget is a toplevel widget.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget doesn't have an own #GdkWindow.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget is realized.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget is mapped.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget is visible.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget is mapped and visible.
@wid: a #GtkWidget.
Evaluates to %TRUE if the #GTK_SENSITIVE flag has be set on the widget.
@wid: a #GtkWidget.
Evaluates to %TRUE if the #GTK_PARENT_SENSITIVE flag has be set on the widget.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget is effectively sensitive.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget is able to handle focus grabs.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget has grabbed the focus and no other
widget has done so more recently.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget is allowed to receive the default action
via gtk_widget_grab_default().
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget when focused will receive the default action
even if there is a different widget set as default.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget currently is receiving the default action.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget is in the grab_widgets stack, and will be
the preferred one for receiving events other than ones of cosmetic value.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widgets style has been looked up through the rc
mechanism.
@wid: a #GtkWidget.
Evaluates to %TRUE if the widget is a composite child of its parent.
@wid: a #GtkWidget.
Evaluates to %TRUE if the #GTK_APP_PAINTABLE flag has been set on the widget.
@wid: a #GtkWidget.
Evaluates to %TRUE if the #GTK_DOUBLE_BUFFERED flag has been set on the widget.
@wid: a #GtkWidget.
Turns on certain widget flags.
@wid: a #GtkWidget.
@flag: the flags to set.
Turns off certain widget flags.
@wid: a #GtkWidget.
@flag: the flags to unset.
The type of the callback functions used for e.g. iterating over
the children of a container, see gtk_container_foreach().
@widget: the widget to operate on
@data: user-supplied data
A GtkRequisition represents the desired size of a widget. See
for more information.
@width: the widget's desired width
@height: the widget's desired height
A GtkAllocation of a widget represents region which has been allocated to the
widget by its parent. It is a subregion of its parents allocation. See
for more information.
@x: the X position of the widgets area relative to its parents allocation.
@y: the Y position of the widgets area relative to its parents allocation.
@width: the width of the widgets allocated area.
@height: the height of the widgets allocated area.
@selection:
@target:
@type:
@format:
@data:
@length:
@display:
@x:
@y:
@width:
@height:
@x_set:
@y_set:
@offset_x:
@offset_y:
@shape_mask:
@GTK_WIDGET_HELP_TOOLTIP:
@GTK_WIDGET_HELP_WHATS_THIS:
@type:
@first_property_name:
@Varargs:
@Returns:
@first_arg_name:
@widget:
@Returns:
@widget:
@widget:
@widget:
@widget_pointer:
@widget:
@first_property_name:
@Varargs:
@first_arg_name:
@widget:
@widget:
@widget:
@widget:
@widget:
@widget:
@widget:
@widget:
@widget:
@widget:
@widget:
@widget:
@widget:
@widget:
@area:
@widget:
@requisition:
@widget:
@requisition:
@widget:
@allocation:
@widget:
@accel_signal:
@accel_group:
@accel_key:
@accel_mods:
@accel_flags:
@widget:
@accel_group:
@accel_key:
@accel_mods:
@Returns:
@widget:
@accel_path:
@accel_group:
@widget:
@Returns:
@widget:
@signal_id:
@Returns:
@widget:
@event:
@Returns:
@widget:
@Returns:
@widget:
@new_parent:
@widget:
@area:
@intersection:
@Returns:
@widget:
@Returns:
@widget:
@widget:
@widget:
@name:
@widget:
@Returns:
@widget:
@state:
@widget:
@sensitive:
@widget:
@parent:
@widget:
@parent_window:
@widget:
@Returns:
@widget:
@x:
@y:
@widget:
@width:
@height:
@widget:
@events:
@widget:
@events:
@widget:
@mode:
@widget:
@Returns:
@widget:
@Returns:
@widget:
@widget_type:
@Returns:
@widget:
@Returns:
@widget:
@colormap:
@widget:
@Returns:
@widget:
@Returns:
@widget:
@x:
@y:
@widget:
@ancestor:
@Returns:
@src_widget:
@dest_widget:
@src_x:
@src_y:
@dest_x:
@dest_y:
@Returns:
@widget:
@Returns:
@widget:
@style:
Equivalent to gtk_widget_set_style (widget, NULL).
@widget: a #GtkWidget.
@widget:
@widget:
@Returns:
Equivalent to gtk_widget_set_style (widget, NULL).
@widget: a #GtkWidget.
Reset 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.
This function is not useful for applications.
@widget: a #GtkWidget.
@cmap:
@colormap:
@Returns:
@Returns:
@Returns:
@widget:
@dir:
@GTK_TEXT_DIR_NONE:
@GTK_TEXT_DIR_LTR:
@GTK_TEXT_DIR_RTL:
@widget:
@Returns:
@dir:
@Returns:
@widget:
@shape_mask:
@offset_x:
@offset_y:
@widget:
@path_length:
@path:
@path_reversed:
@widget:
@path_length:
@path:
@path_reversed:
@widget:
@Returns:
@widget:
@style:
@widget:
@Returns:
@widget:
@state:
@color:
@widget:
@state:
@color:
@widget:
@state:
@color:
@widget:
@state:
@color:
@widget:
@font_desc:
@widget:
@Returns:
@widget:
@Returns:
@widget:
@text:
@Returns:
@widget:
@stock_id:
@size:
@detail:
@Returns:
@widget:
@widget:
@x:
@y:
@width:
@height:
@widget:
@x:
@y:
@width:
@height:
@widget:
@widget:
@app_paintable:
@widget:
@double_buffered:
@widget:
@redraw_on_allocate:
@widget:
@name:
@widget:
@hadjustment:
@vadjustment:
@Returns:
@widget:
@group_cycling:
@Returns:
@klass:
@pspec:
@class:
@klass:
@pspec:
@parser:
@class:
@klass:
@property_name:
@Returns:
@class:
@klass:
@n_properties:
@Returns:
@class:
@widget:
@region:
@Returns:
@widget:
@event:
@Returns:
@widget:
@first_property_name:
@Varargs:
@widget:
@property_name:
@value:
@widget:
@first_property_name:
@var_args:
@widget:
@Returns:
@widget:
@direction:
@Returns:
@widget:
@child_property:
@widget:
@widget:
@Returns:
@widget:
@Returns:
@widget:
@Returns:
@widget:
@selection:
@Returns:
@widget:
@Returns:
@widget:
@Returns:
@widget:
@Returns:
@widget:
@Returns:
@widget:
@width:
@height:
This function is deprecated; it does nothing.
This function is deprecated; it does nothing.
@visual:
@widget:
@is_visible:
This function is deprecated; it does nothing.
@visual:
@widget:
@width:
@height:
This function is deprecated; it does nothing.
@widget:
@visual:
@widget:
@widget:
@no_show_all:
@widget:
@Returns:
@widget:
@Returns:
@widget:
@label:
@widget:
@label:
@requisition:
@Returns:
@requisition: