Class
GtkFlowBox
since: 4.0
Description [src]
final class Gtk.FlowBox : Gtk.Widget
implements Gtk.Accessible, Gtk.Buildable, Gtk.ConstraintTarget, Gtk.Orientable {
/* No available fields */
}
A GtkFlowBox
puts child widgets in reflowing grid.
For instance, with the horizontal orientation, the widgets will be arranged from left to right, starting a new row under the previous row when necessary. Reducing the width in this case will require more rows, so a larger height will be requested.
Likewise, with the vertical orientation, the widgets will be arranged from top to bottom, starting a new column to the right when necessary. Reducing the height will require more columns, so a larger width will be requested.
The size request of a GtkFlowBox
alone may not be what you expect;
if you need to be able to shrink it along both axes and dynamically
reflow its children, you may have to wrap it in a GtkScrolledWindow
to enable that.
The children of a GtkFlowBox
can be dynamically sorted and filtered.
Although a GtkFlowBox
must have only GtkFlowBoxChild
children, you
can add any kind of widget to it via gtk_flow_box_insert()
, and a
GtkFlowBoxChild
widget will automatically be inserted between the box
and the widget.
Also see GtkListBox
.
CSS nodes
flowbox
├── flowboxchild
│ ╰── <child>
├── flowboxchild
│ ╰── <child>
┊
╰── [rubberband]
GtkFlowBox
uses a single CSS node with name flowbox. GtkFlowBoxChild
uses a single CSS node with name flowboxchild. For rubberband selection,
a subnode with name rubberband is used.
Accessibility
GtkFlowBox
uses the GTK_ACCESSIBLE_ROLE_GRID
role, and GtkFlowBoxChild
uses the GTK_ACCESSIBLE_ROLE_GRID_CELL
role.
Available since: 4.0
Instance methods
gtk_flow_box_get_activate_on_single_click
Returns whether children activate on single clicks.
since: 4.0
gtk_flow_box_select_child
Selects a single child of box
, if the selection
mode allows it.
since: 4.0
gtk_flow_box_set_activate_on_single_click
If single
is TRUE
, children will be activated when you click
on them, otherwise you need to double-click.
since: 4.0
gtk_flow_box_set_filter_func
By setting a filter function on the box
one can decide dynamically
which of the children to show.
since: 4.0
gtk_flow_box_set_homogeneous
Sets whether or not all children of box
are given
equal space in the box.
since: 4.0
gtk_flow_box_set_max_children_per_line
Sets the maximum number of children to request and
allocate space for in box
’s orientation.
since: 4.0
gtk_flow_box_set_min_children_per_line
Sets the minimum number of children to line up
in box
’s orientation before flowing.
since: 4.0
gtk_flow_box_set_sort_func
By setting a sort function on the box
, one can dynamically
reorder the children of the box, based on the contents of
the children.
since: 4.0
gtk_flow_box_unselect_child
Unselects a single child of box
, if the selection
mode allows it.
since: 4.0
Methods inherited from GtkAccessible (18)
gtk_accessible_get_accessible_parent
Retrieves the accessible parent for an accessible object.
since: 4.10
gtk_accessible_get_accessible_role
Retrieves the accessible role of an accessible object.
since: 4.0
gtk_accessible_get_at_context
Retrieves the accessible implementation for the given GtkAccessible
.
since: 4.10
gtk_accessible_get_bounds
Queries the coordinates and dimensions of this accessible.
since: 4.10
gtk_accessible_get_first_accessible_child
Retrieves the first accessible child of an accessible object.
since: 4.10
gtk_accessible_get_next_accessible_sibling
Retrieves the next accessible sibling of an accessible object.
since: 4.10
gtk_accessible_get_platform_state
Query a platform state, such as focus.
since: 4.10
gtk_accessible_reset_property
Resets the accessible property
to its default value.
since: 4.0
gtk_accessible_reset_relation
Resets the accessible relation
to its default value.
since: 4.0
gtk_accessible_reset_state
Resets the accessible state
to its default value.
since: 4.0
gtk_accessible_set_accessible_parent
Sets the parent and sibling of an accessible object.
since: 4.10
gtk_accessible_update_next_accessible_sibling
Updates the next accessible sibling of self
.
since: 4.10
gtk_accessible_update_property
Updates a list of accessible properties.
since: 4.0
gtk_accessible_update_property_value
Updates an array of accessible properties.
since: 4.0
gtk_accessible_update_relation
Updates a list of accessible relations.
since: 4.0
gtk_accessible_update_relation_value
Updates an array of accessible relations.
since: 4.0
gtk_accessible_update_state
Updates a list of accessible states. See the GtkAccessibleState
documentation for the value types of accessible states.
since: 4.0
gtk_accessible_update_state_value
Updates an array of accessible states.
since: 4.0
Methods inherited from GtkBuildable (1)
Methods inherited from GtkOrientable (2)
gtk_orientable_get_orientation
Retrieves the orientation of the orientable
.
since: 4.0
gtk_orientable_set_orientation
Sets the orientation of the orientable
.
since: 4.0
Properties
Gtk.FlowBox:activate-on-single-click
Determines whether children can be activated with a single click, or require a double-click.
since: 4.0
Gtk.FlowBox:homogeneous
Determines whether all children should be allocated the same size.
since: 4.0
Gtk.FlowBox:max-children-per-line
The maximum amount of children to request space for consecutively in the given orientation.
since: 4.0
Gtk.FlowBox:min-children-per-line
The minimum number of children to allocate consecutively in the given orientation.
since: 4.0
Properties inherited from GtkWidget (34)
Gtk.Widget:can-focus
Whether the widget or any of its descendents can accept the input focus.
since: 4.0
Gtk.Widget:can-target
Whether the widget can receive pointer events.
since: 4.0
Gtk.Widget:css-classes
A list of css classes applied to this widget.
since: 4.0
Gtk.Widget:css-name
The name of this widget in the CSS tree.
since: 4.0
Gtk.Widget:cursor
The cursor used by widget
.
since: 4.0
Gtk.Widget:focus-on-click
Whether the widget should grab focus when it is clicked with the mouse.
since: 4.0
Gtk.Widget:focusable
Whether this widget itself will accept the input focus.
since: 4.0
Gtk.Widget:halign
How to distribute horizontal space if widget gets extra space.
since: 4.0
Gtk.Widget:has-default
Whether the widget is the default widget.
since: 4.0
Gtk.Widget:has-focus
Whether the widget has the input focus.
since: 4.0
Gtk.Widget:has-tooltip
Enables or disables the emission of the ::query-tooltip signal on widget
.
since: 4.0
Gtk.Widget:height-request
Override for height request of the widget.
since: 4.0
Gtk.Widget:hexpand
Whether to expand horizontally.
since: 4.0
Gtk.Widget:hexpand-set
Whether to use the hexpand
property.
since: 4.0
Gtk.Widget:layout-manager
The GtkLayoutManager
instance to use to compute the preferred size
of the widget, and allocate its children.
since: 4.0
Gtk.Widget:margin-bottom
Margin on bottom side of widget.
since: 4.0
Gtk.Widget:margin-end
Margin on end of widget, horizontally.
since: 4.0
Gtk.Widget:margin-start
Margin on start of widget, horizontally.
since: 4.0
Gtk.Widget:margin-top
Margin on top side of widget.
since: 4.0
Gtk.Widget:name
The name of the widget.
since: 4.0
Gtk.Widget:opacity
The requested opacity of the widget.
since: 4.0
Gtk.Widget:overflow
How content outside the widget’s content area is treated.
since: 4.0
Gtk.Widget:parent
The parent widget of this widget.
since: 4.0
Gtk.Widget:receives-default
Whether the widget will receive the default action when it is focused.
since: 4.0
Gtk.Widget:root
The GtkRoot
widget of the widget tree containing this widget.
since: 4.0
Gtk.Widget:scale-factor
The scale factor of the widget.
since: 4.0
Gtk.Widget:sensitive
Whether the widget responds to input.
since: 4.0
Gtk.Widget:tooltip-markup
Sets the text of tooltip to be the given string, which is marked up with Pango markup.
since: 4.0
Gtk.Widget:tooltip-text
Sets the text of tooltip to be the given string.
since: 4.0
Gtk.Widget:valign
How to distribute vertical space if widget gets extra space.
since: 4.0
Gtk.Widget:vexpand
Whether to expand vertically.
since: 4.0
Gtk.Widget:vexpand-set
Whether to use the vexpand
property.
since: 4.0
Gtk.Widget:visible
Whether the widget is visible.
since: 4.0
Gtk.Widget:width-request
Override for width request of the widget.
since: 4.0
Properties inherited from GtkAccessible (1)
GtkAccessible:accessible-role
The accessible role of the given GtkAccessible
implementation.
since: 4.0
Properties inherited from GtkOrientable (1)
Signals
Gtk.FlowBox::select-all
Emitted to select all children of the box, if the selection mode permits it.
since: 4.0
Gtk.FlowBox::selected-children-changed
Emitted when the set of selected children changes.
since: 4.0
Gtk.FlowBox::toggle-cursor-child
Emitted to toggle the selection of the child that has the focus.
since: 4.0
Gtk.FlowBox::unselect-all
Emitted to unselect all children of the box, if the selection mode permits it.
since: 4.0
Signals inherited from GtkWidget (13)
GtkWidget::destroy
Signals that all holders of a reference to the widget should release the reference that they hold.
since: 4.0
GtkWidget::direction-changed
Emitted when the text direction of a widget changes.
since: 4.0
GtkWidget::hide
Emitted when widget
is hidden.
since: 4.0
GtkWidget::keynav-failed
Emitted if keyboard navigation fails.
since: 4.0
GtkWidget::map
Emitted when widget
is going to be mapped.
since: 4.0
GtkWidget::mnemonic-activate
Emitted when a widget is activated via a mnemonic.
since: 4.0
GtkWidget::move-focus
Emitted when the focus is moved.
since: 4.0
GtkWidget::query-tooltip
Emitted when the widget’s tooltip is about to be shown.
since: 4.0
GtkWidget::realize
Emitted when widget
is associated with a GdkSurface
.
since: 4.0
GtkWidget::show
Emitted when widget
is shown.
since: 4.0
GtkWidget::state-flags-changed
Emitted when the widget state changes.
since: 4.0
GtkWidget::unmap
Emitted when widget
is going to be unmapped.
since: 4.0
GtkWidget::unrealize
Emitted when the GdkSurface
associated with widget
is destroyed.
since: 4.0
Signals inherited from GObject (1)
GObject::notify
The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.
since: 2.0