RGtk2 (version 2.20.31)

gtkWidgetChildFocus: gtkWidgetChildFocus

Description

This function is used by custom widget implementations; if you're writing an app, you'd use gtkWidgetGrabFocus to move the focus to a particular widget, and gtkContainerSetFocusChain to change the focus tab order. So you may want to investigate those functions instead.

Usage

gtkWidgetChildFocus(object, direction)

Arguments

object
direction
direction of focus movement

Value

TRUE if focus ended up inside widget

Details

gtkWidgetChildFocus is called by containers as the user moves around the window using keyboard shortcuts. direction indicates what kind of motion is taking place (up, down, left, right, tab forward, tab backward). gtkWidgetChildFocus emits the "focus" signal; widgets override the default handler for this signal in order to implement appropriate focus behavior. The default ::focus handler for a widget should return TRUE if moving in direction left the focus on a focusable location inside that widget, and FALSE if moving in direction moved the focus outside the widget. If returning TRUE, widgets normally call gtkWidgetGrabFocus to place the focus accordingly; if returning FALSE, they don't modify the current focus location. This function replaces gtkContainerFocus() from GTK+ 1.2. It was necessary to check that the child was visible, sensitive, and focusable before calling gtkContainerFocus(). gtkWidgetChildFocus returns FALSE if the widget is not currently in a focusable state, so there's no need for those checks.