Class: Gtk::CellView

Inherits:
Widget
  • Object
show all
Extended by:
GLib::Deprecatable
Defined in:
lib/gtk4/deprecated.rb

Overview

A widget displaying a single row of a GtkTreeModel

A GtkCellView displays a single row of a GtkTreeModel using a GtkCellArea
and GtkCellAreaContext. A GtkCellAreaContext can be provided to the
GtkCellView at construction time in order to keep the cellview in context
of a group of cell views, this ensures that the renderers displayed will
be properly aligned with each other (like the aligned cells in the menus
of GtkComboBox).

GtkCellView is GtkOrientable in order to decide in which orientation
the underlying GtkCellAreaContext should be allocated. Taking the GtkComboBox
menu as an example, cellviews should be oriented horizontally if the menus are
listed top-to-bottom and thus all share the same width but may have separate
individual heights (left-to-right menus should be allocated vertically since
they all share the same height but may have variable widths).

CSS nodes

GtkCellView has a single CSS node with name cellview.

Instance Method Summary collapse

Methods inherited from Widget

#accessible_role, #accessible_role=, #action_set_enabled, #activate, #activate_action, #activate_action_variant, #activate_default, #activate_signal, #activate_signal=, #activate_signal_from_name=, #add_binding, #add_binding_action, #add_binding_signal, #add_controller, #add_css_class, #add_mnemonic_label, #add_shortcut, #add_tick_callback, #allocate, #allocated_baseline, #allocated_height, #allocated_width, #baseline, #bind_template_callback_full, #bind_template_child, #bind_template_child_full, #can_focus, #can_focus=, #can_focus?, #can_target, #can_target=, #can_target?, #child_focus, #child_visible, #child_visible=, #children, #clipboard, #compute_bounds, #compute_expand, #compute_point, #compute_transform, #contains, #create_pango_context, #create_pango_layout, #css_classes, #css_classes=, #css_name, #css_name=, #cursor, #cursor=, #cursor_from_name=, default_direction, default_direction=, #direction, #direction=, #display, #dispose_template, #drag_check_threshold, #error_bell, #first_child, #focus_child, #focus_child=, #focus_on_click, #focus_on_click=, #focus_on_click?, #focusable, #focusable=, #focusable?, #font_map, #font_map=, #font_options, #font_options=, #frame_clock, #get_allocation, #get_ancestor, #get_color, #get_preferred_size, #get_size, #get_size_request, #get_template_child, #grab_focus, #halign, #halign=, #has_css_class, #has_default, #has_default=, #has_default?, #has_focus, #has_focus=, #has_focus?, #has_tooltip, #has_tooltip=, #has_tooltip?, #has_visible_focus, have_template?, #height, #height_request, #height_request=, #hexpand, #hexpand=, #hexpand?, #hexpand_set, #hexpand_set=, #hexpand_set?, #hide, #in_destruction, #init_template, #insert_action_group, #insert_action_group_raw, #insert_after, #insert_before, #install_action, #install_property_action, #is_ancestor, #is_drawable, #is_focus, #is_sensitive, #is_visible, #keynav_failed, #last_child, #layout_manager, #layout_manager=, #layout_manager_type, #layout_manager_type=, #list_mnemonic_labels, #map, #mapped, #margin_bottom, #margin_bottom=, #margin_end, #margin_end=, #margin_start, #margin_start=, #margin_top, #margin_top=, #measure, #mnemonic_activate, #name, #name=, #native, #next_sibling, #observe_children, #observe_controllers, #opacity, #opacity=, #overflow, #overflow=, #pango_context, #parent, #parent=, #pick, #prev_sibling, #primary_clipboard, #query_action, #queue_allocate, #queue_draw, #queue_resize, #realize, #realized, #receives_default, #receives_default=, #receives_default?, #remove_controller, #remove_css_class, #remove_mnemonic_label, #remove_tick_callback, #request_mode, #root, #root=, #scale_factor, #scale_factor=, #sensitive, #sensitive=, #sensitive?, #set_size_request, #set_size_request_raw, #set_state_flags, #set_template, #set_template_raw, #settings, #should_layout, #show, #size_allocate, #snapshot_child, #state_flags, #style_context, #style_context_raw, #template=, template_children, #template_from_resource=, #template_scope=, #tooltip_markup, #tooltip_markup=, #tooltip_text, #tooltip_text=, #translate_coordinates, #translate_coordinates_raw, #trigger_tooltip_query, #unmap, #unparent, #unrealize, #unset_state_flags, #valign, #valign=, #vexpand, #vexpand=, #vexpand?, #vexpand_set, #vexpand_set=, #vexpand_set?, #visible, #visible=, #visible?, #width, #width_request, #width_request=

Constructor Details

#initialize(texture) ⇒ Gtk::Widget

Creates a new GtkCellView widget, adds a GtkCellRendererPixbuf
to it, and makes it show texture.

Parameters:

  • texture (Gdk::Texture)

    the image to display in the cell view

Instance Method Details

#cell_areaGtk::CellArea

The GtkCellArea rendering cells

If no area is specified when creating the cell view with gtk_cell_view_new_with_context()
a horizontally oriented GtkCellAreaBox will be used.

since 3.0

Returns:

#cell_area=(cell_area) ⇒ Gtk::CellArea

The GtkCellArea rendering cells

If no area is specified when creating the cell view with gtk_cell_view_new_with_context()
a horizontally oriented GtkCellAreaBox will be used.

since 3.0

Parameters:

Returns:

#cell_area_contextGtk::CellAreaContext

The GtkCellAreaContext used to compute the geometry of the cell view.

A group of cell views can be assigned the same context in order to
ensure the sizes and cell alignments match across all the views with
the same context.

GtkComboBox menus uses this to assign the same context to all cell views
in the menu items for a single menu (each submenu creates its own
context since the size of each submenu does not depend on parent
or sibling menus).

since 3.0

Returns:

#cell_area_context=(cell_area_context) ⇒ Gtk::CellAreaContext

The GtkCellAreaContext used to compute the geometry of the cell view.

A group of cell views can be assigned the same context in order to
ensure the sizes and cell alignments match across all the views with
the same context.

GtkComboBox menus uses this to assign the same context to all cell views
in the menu items for a single menu (each submenu creates its own
context since the size of each submenu does not depend on parent
or sibling menus).

since 3.0

Parameters:

Returns:

#displayed_rowGtk::TreePath

Returns a GtkTreePath referring to the currently
displayed row. If no row is currently displayed,
nil is returned.

Returns:

#displayed_row=(path) ⇒ nil

Sets the row of the model that is currently displayed
by the GtkCellView. If the path is unset, then the
contents of the cellview “stick” at their last value;
this is not normally a desired result, but may be
a needed intermediate state if say, the model for
the GtkCellView becomes temporarily empty.

Parameters:

Returns:

  • (nil)

#draw_sensitiveBoolean

Gets whether cell_view is configured to draw all of its
cells in a sensitive state.
cells in a sensitive state

Returns:

  • (Boolean)

    whether cell_view draws all of its

#draw_sensitive=(draw_sensitive) ⇒ Boolean

Whether all cells should be draw as sensitive for this view regardless
of the actual cell properties (used to make menus with submenus appear
sensitive when the items in submenus might be insensitive).

since 3.0

Parameters:

  • draw_sensitive (Boolean)

Returns:

  • (Boolean)

    draw-sensitive

  • (Boolean)

    draw-sensitive

#draw_sensitive?Boolean

Whether all cells should be draw as sensitive for this view regardless
of the actual cell properties (used to make menus with submenus appear
sensitive when the items in submenus might be insensitive).

since 3.0

Returns:

  • (Boolean)

    draw-sensitive

#fit_modelBoolean

Gets whether cell_view is configured to request space
to fit the entire GtkTreeModel.
the entire GtkTreeModel.

Returns:

  • (Boolean)

    whether cell_view requests space to fit

#fit_model=(fit_model) ⇒ Boolean

Whether the view should request enough space to always fit
the size of every row in the model (used by the combo box to
ensure the combo box size doesn't change when different items
are selected).

since 3.0

Parameters:

  • fit_model (Boolean)

Returns:

  • (Boolean)

    fit-model

  • (Boolean)

    fit-model

#fit_model?Boolean

Whether the view should request enough space to always fit
the size of every row in the model (used by the combo box to
ensure the combo box size doesn't change when different items
are selected).

since 3.0

Returns:

  • (Boolean)

    fit-model

#modelGtk::TreeModel

The model for cell view

since 2.10

Returns:

#model=(model) ⇒ Gtk::TreeModel

The model for cell view

since 2.10

Parameters:

Returns: