Struct gtk4::IconView

source ·
#[repr(transparent)]
pub struct IconView { /* private fields */ }
Expand description

Use GridView instead IconView is a widget which displays data in a grid of icons.

IconView provides an alternative view on a TreeModel. It displays the model as a grid of icons with labels. Like TreeView, it allows to select one or multiple items (depending on the selection mode, see set_selection_mode()). In addition to selection with the arrow keys, IconView supports rubberband selection, which is controlled by dragging the pointer.

Note that if the tree model is backed by an actual tree store (as opposed to a flat list where the mapping to icons is obvious), IconView will only display the first level of the tree and ignore the tree’s branches.

CSS nodes

iconview.view
╰── [rubberband]

IconView has a single CSS node with name iconview and style class .view. For rubberband selection, a subnode with name rubberband is used.

Properties

activate-on-single-click

The activate-on-single-click property specifies whether the “item-activated” signal will be emitted after a single click.

Readable | Writeable

cell-area

The CellArea used to layout cell renderers for this view.

If no area is specified when creating the icon view with gtk_icon_view_new_with_area() a CellAreaBox will be used.

Readable | Writeable | Construct Only

column-spacing

The column-spacing property specifies the space which is inserted between the columns of the icon view.

Readable | Writeable

columns

The columns property contains the number of the columns in which the items should be displayed. If it is -1, the number of columns will be chosen automatically to fill the available area.

Readable | Writeable

item-orientation

The item-orientation property specifies how the cells (i.e. the icon and the text) of the item are positioned relative to each other.

Readable | Writeable

item-padding

The item-padding property specifies the padding around each of the icon view’s item.

Readable | Writeable

item-width

The item-width property specifies the width to use for each item. If it is set to -1, the icon view will automatically determine a suitable item size.

Readable | Writeable

margin

The margin property specifies the space which is inserted at the edges of the icon view.

Readable | Writeable

markup-column

The ::markup-column property contains the number of the model column containing markup information to be displayed. The markup column must be of type G_TYPE_STRING. If this property and the :text-column property are both set to column numbers, it overrides the text column. If both are set to -1, no texts are displayed.

Readable | Writeable

model

Readable | Writeable

pixbuf-column

The ::pixbuf-column property contains the number of the model column containing the pixbufs which are displayed. The pixbuf column must be of type GDK_TYPE_PIXBUF. Setting this property to -1 turns off the display of pixbufs.

Readable | Writeable

reorderable

The reorderable property specifies if the items can be reordered by DND.

Readable | Writeable

row-spacing

The row-spacing property specifies the space which is inserted between the rows of the icon view.

Readable | Writeable

selection-mode

The ::selection-mode property specifies the selection mode of icon view. If the mode is SelectionMode::Multiple, rubberband selection is enabled, for the other modes, only keyboard selection is possible.

Readable | Writeable

spacing

The spacing property specifies the space which is inserted between the cells (i.e. the icon and the text) of an item.

Readable | Writeable

text-column

The ::text-column property contains the number of the model column containing the texts which are displayed. The text column must be of type G_TYPE_STRING. If this property and the :markup-column property are both set to -1, no texts are displayed.

Readable | Writeable

tooltip-column

Readable | Writeable

Widget

can-focus

Whether the widget or any of its descendents can accept the input focus.

This property is meant to be set by widget implementations, typically in their instance init function.

Readable | Writeable

can-target

Whether the widget can receive pointer events.

Readable | Writeable

css-classes

A list of css classes applied to this widget.

Readable | Writeable

css-name

The name of this widget in the CSS tree.

This property is meant to be set by widget implementations, typically in their instance init function.

Readable | Writeable | Construct Only

cursor

The cursor used by @widget.

Readable | Writeable

focus-on-click

Whether the widget should grab focus when it is clicked with the mouse.

This property is only relevant for widgets that can take focus.

Readable | Writeable

focusable

Whether this widget itself will accept the input focus.

Readable | Writeable

halign

How to distribute horizontal space if widget gets extra space.

Readable | Writeable

has-default

Whether the widget is the default widget.

Readable

has-focus

Whether the widget has the input focus.

Readable

has-tooltip

Enables or disables the emission of the ::query-tooltip signal on @widget.

A value of true indicates that @widget can have a tooltip, in this case the widget will be queried using query-tooltip to determine whether it will provide a tooltip or not.

Readable | Writeable

height-request

Override for height request of the widget.

If this is -1, the natural request will be used.

Readable | Writeable

hexpand

Whether to expand horizontally.

Readable | Writeable

hexpand-set

Whether to use the hexpand property.

Readable | Writeable

layout-manager

The LayoutManager instance to use to compute the preferred size of the widget, and allocate its children.

This property is meant to be set by widget implementations, typically in their instance init function.

Readable | Writeable

margin-bottom

Margin on bottom side of widget.

This property adds margin outside of the widget’s normal size request, the margin will be added in addition to the size from WidgetExt::set_size_request() for example.

Readable | Writeable

margin-end

Margin on end of widget, horizontally.

This property supports left-to-right and right-to-left text directions.

This property adds margin outside of the widget’s normal size request, the margin will be added in addition to the size from WidgetExt::set_size_request() for example.

Readable | Writeable

margin-start

Margin on start of widget, horizontally.

This property supports left-to-right and right-to-left text directions.

This property adds margin outside of the widget’s normal size request, the margin will be added in addition to the size from WidgetExt::set_size_request() for example.

Readable | Writeable

margin-top

Margin on top side of widget.

This property adds margin outside of the widget’s normal size request, the margin will be added in addition to the size from WidgetExt::set_size_request() for example.

Readable | Writeable

name

The name of the widget.

Readable | Writeable

opacity

The requested opacity of the widget.

Readable | Writeable

overflow

How content outside the widget’s content area is treated.

This property is meant to be set by widget implementations, typically in their instance init function.

Readable | Writeable

parent

The parent widget of this widget.

Readable

receives-default

Whether the widget will receive the default action when it is focused.

Readable | Writeable

root

The Root widget of the widget tree containing this widget.

This will be None if the widget is not contained in a root widget.

Readable

scale-factor

The scale factor of the widget.

Readable

sensitive

Whether the widget responds to input.

Readable | Writeable

tooltip-markup

Sets the text of tooltip to be the given string, which is marked up with Pango markup.

Also see Tooltip::set_markup().

This is a convenience property which will take care of getting the tooltip shown if the given string is not None: has-tooltip will automatically be set to true and there will be taken care of query-tooltip in the default signal handler.

Note that if both tooltip-text and tooltip-markup are set, the last one wins.

Readable | Writeable

tooltip-text

Sets the text of tooltip to be the given string.

Also see Tooltip::set_text().

This is a convenience property which will take care of getting the tooltip shown if the given string is not None: has-tooltip will automatically be set to true and there will be taken care of query-tooltip in the default signal handler.

Note that if both tooltip-text and tooltip-markup are set, the last one wins.

Readable | Writeable

valign

How to distribute vertical space if widget gets extra space.

Readable | Writeable

vexpand

Whether to expand vertically.

Readable | Writeable

vexpand-set

Whether to use the vexpand property.

Readable | Writeable

visible

Whether the widget is visible.

Readable | Writeable

width-request

Override for width request of the widget.

If this is -1, the natural request will be used.

Readable | Writeable

Accessible

accessible-role

The accessible role of the given Accessible implementation.

The accessible role cannot be changed once set.

Readable | Writeable

Scrollable

hadjustment

Horizontal Adjustment of the scrollable widget.

This adjustment is shared between the scrollable widget and its parent.

Readable | Writeable | Construct

hscroll-policy

Determines when horizontal scrolling should start.

Readable | Writeable

vadjustment

Vertical Adjustment of the scrollable widget.

This adjustment is shared between the scrollable widget and its parent.

Readable | Writeable | Construct

vscroll-policy

Determines when vertical scrolling should start.

Readable | Writeable

Signals

activate-cursor-item

A [keybinding signal]SignalAction which gets emitted when the user activates the currently focused item.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control activation programmatically.

The default bindings for this signal are Space, Return and Enter.

Action

item-activated

The ::item-activated signal is emitted when the method gtk_icon_view_item_activated() is called, when the user double clicks an item with the “activate-on-single-click” property set to false, or when the user single clicks an item when the “activate-on-single-click” property set to true. It is also emitted when a non-editable item is selected and one of the keys: Space, Return or Enter is pressed.

move-cursor

The ::move-cursor signal is a [keybinding signal]SignalAction which gets emitted when the user initiates a cursor movement.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control the cursor programmatically.

The default bindings for this signal include

  • Arrow keys which move by individual steps
  • Home/End keys which move to the first/last item
  • PageUp/PageDown which move by “pages” All of these will extend the selection when combined with the Shift modifier.

Action

select-all

A [keybinding signal]SignalAction which gets emitted when the user selects all items.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control selection programmatically.

The default binding for this signal is Ctrl-a.

Action

select-cursor-item

A [keybinding signal]SignalAction which gets emitted when the user selects the item that is currently focused.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control selection programmatically.

There is no default binding for this signal.

Action

selection-changed

The ::selection-changed signal is emitted when the selection (i.e. the set of selected items) changes.

toggle-cursor-item

A [keybinding signal]SignalAction which gets emitted when the user toggles whether the currently focused item is selected or not. The exact effect of this depend on the selection mode.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control selection programmatically.

There is no default binding for this signal is Ctrl-Space.

Action

unselect-all

A [keybinding signal]SignalAction which gets emitted when the user unselects all items.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control selection programmatically.

The default binding for this signal is Ctrl-Shift-a.

Action

Widget

destroy

Signals that all holders of a reference to the widget should release the reference that they hold.

May result in finalization of the widget if all references are released.

This signal is not suitable for saving widget state.

direction-changed

Emitted when the text direction of a widget changes.

hide

Emitted when @widget is hidden.

keynav-failed

Emitted if keyboard navigation fails.

See WidgetExt::keynav_failed() for details.

map

Emitted when @widget is going to be mapped.

A widget is mapped when the widget is visible (which is controlled with visible) and all its parents up to the toplevel widget are also visible.

The ::map signal can be used to determine whether a widget will be drawn, for instance it can resume an animation that was stopped during the emission of unmap.

mnemonic-activate

Emitted when a widget is activated via a mnemonic.

The default handler for this signal activates @widget if @group_cycling is false, or just makes @widget grab focus if @group_cycling is true.

move-focus

Emitted when the focus is moved.

Action

query-tooltip

Emitted when the widgets tooltip is about to be shown.

This happens when the has-tooltip property is true and the hover timeout has expired with the cursor hovering “above” @widget; or emitted when @widget got focus in keyboard mode.

Using the given coordinates, the signal handler should determine whether a tooltip should be shown for @widget. If this is the case true should be returned, false otherwise. Note that if @keyboard_mode is true, the values of @x and @y are undefined and should not be used.

The signal handler is free to manipulate @tooltip with the therefore destined function calls.

realize

Emitted when @widget is associated with a gdk::Surface.

This means that WidgetExt::realize() has been called or the widget has been mapped (that is, it is going to be drawn).

show

Emitted when @widget is shown.

state-flags-changed

Emitted when the widget state changes.

See WidgetExt::state_flags().

unmap

Emitted when @widget is going to be unmapped.

A widget is unmapped when either it or any of its parents up to the toplevel widget have been set as hidden.

As ::unmap indicates that a widget will not be shown any longer, it can be used to, for example, stop an animation on the widget.

unrealize

Emitted when the gdk::Surface associated with @widget is destroyed.

This means that WidgetExt::unrealize() has been called or the widget has been unmapped (that is, it is going to be hidden).

Implements

WidgetExt, glib::ObjectExt, AccessibleExt, BuildableExt, ConstraintTargetExt, CellLayoutExt, ScrollableExt, WidgetExtManual, AccessibleExtManual, CellLayoutExtManual

Implementations§

source§

impl IconView

source

pub fn new() -> IconView

Creates a new IconView widget

Deprecated since 4.10

Use GridView instead

Returns

A newly created IconView widget

source

pub fn with_area(area: &impl IsA<CellArea>) -> IconView

Creates a new IconView widget using the specified @area to layout cells inside the icons.

Deprecated since 4.10

Use GridView instead

area

the CellArea to use to layout cells

Returns

A newly created IconView widget

source

pub fn with_model(model: &impl IsA<TreeModel>) -> IconView

Creates a new IconView widget with the model @model.

Deprecated since 4.10

Use GridView instead

model

The model.

Returns

A newly created IconView widget.

source

pub fn builder() -> IconViewBuilder

Creates a new builder-pattern struct instance to construct IconView objects.

This method returns an instance of IconViewBuilder which can be used to create IconView objects.

source

pub fn create_drag_icon(&self, path: &TreePath) -> Option<Paintable>

Creates a gdk::Paintable representation of the item at @path. This image is used for a drag icon.

Deprecated since 4.10

Use GridView instead

path

a TreePath in @self

Returns

a newly-allocated gdk::Paintable of the drag icon.

source

pub fn enable_model_drag_dest( &self, formats: &ContentFormats, actions: DragAction )

Turns @self into a drop destination for automatic DND. Calling this method sets IconView:reorderable to false.

Deprecated since 4.10

Use GridView instead

formats

the formats that the drag will support

actions

the bitmask of possible actions for a drag to this widget

source

pub fn enable_model_drag_source( &self, start_button_mask: ModifierType, formats: &ContentFormats, actions: DragAction )

Turns @self into a drag source for automatic DND. Calling this method sets IconView:reorderable to false.

Deprecated since 4.10

Use GridView instead

start_button_mask

Mask of allowed buttons to start drag

formats

the formats that the drag will support

actions

the bitmask of possible actions for a drag from this widget

source

pub fn activates_on_single_click(&self) -> bool

Gets the setting set by gtk_icon_view_set_activate_on_single_click().

Deprecated since 4.10

Use GridView instead

Returns

true if item-activated will be emitted on a single click

source

pub fn cell_rect( &self, path: &TreePath, cell: Option<&impl IsA<CellRenderer>> ) -> Option<Rectangle>

Fills the bounding rectangle in widget coordinates for the cell specified by @path and @cell. If @cell is None the main cell area is used.

This function is only valid if @self is realized.

Deprecated since 4.10

Use GridView instead

path

a TreePath

cell

a CellRenderer

Returns

false if there is no such item, true otherwise

rect

rectangle to fill with cell rect

source

pub fn column_spacing(&self) -> i32

Returns the value of the ::column-spacing property.

Deprecated since 4.10

Use GridView instead

Returns

the space between columns

source

pub fn columns(&self) -> i32

Returns the value of the ::columns property.

Deprecated since 4.10

Use GridView instead

Returns

the number of columns, or -1

source

pub fn cursor(&self) -> Option<(TreePath, CellRenderer)>

Fills in @path and @cell with the current cursor path and cell. If the cursor isn’t currently set, then *@path will be None. If no cell currently has focus, then *@cell will be None.

The returned TreePath must be freed with gtk_tree_path_free().

Deprecated since 4.10

Use GridView instead

Returns

true if the cursor is set.

path

Return location for the current cursor path

cell

Return location the current focus cell

source

pub fn dest_item_at_pos( &self, drag_x: i32, drag_y: i32 ) -> Option<(TreePath, IconViewDropPosition)>

Determines the destination item for a given position.

Deprecated since 4.10

Use GridView instead

drag_x

the position to determine the destination item for

drag_y

the position to determine the destination item for

Returns

whether there is an item at the given position.

path

Return location for the path of the item

pos

Return location for the drop position

source

pub fn drag_dest_item(&self) -> (Option<TreePath>, IconViewDropPosition)

Gets information about the item that is highlighted for feedback.

Deprecated since 4.10

Use GridView instead

Returns
path

Return location for the path of the highlighted item

pos

Return location for the drop position

source

pub fn item_at_pos(&self, x: i32, y: i32) -> Option<(TreePath, CellRenderer)>

Gets the path and cell for the icon at the given position.

Deprecated since 4.10

Use GridView instead

x

The x position to be identified

y

The y position to be identified

Returns

true if an item exists at the specified position

path

Return location for the path

cell

Return location for the renderer responsible for the cell at (@x, @y)

source

pub fn item_column(&self, path: &TreePath) -> i32

Gets the column in which the item @path is currently displayed. Column numbers start at 0.

Deprecated since 4.10

Use GridView instead

path

the TreePath of the item

Returns

The column in which the item is displayed

source

pub fn item_orientation(&self) -> Orientation

Returns the value of the ::item-orientation property which determines whether the labels are drawn beside the icons instead of below.

Deprecated since 4.10

Use GridView instead

Returns

the relative position of texts and icons

source

pub fn item_padding(&self) -> i32

Returns the value of the ::item-padding property.

Deprecated since 4.10

Use GridView instead

Returns

the padding around items

source

pub fn item_row(&self, path: &TreePath) -> i32

Gets the row in which the item @path is currently displayed. Row numbers start at 0.

Deprecated since 4.10

Use GridView instead

path

the TreePath of the item

Returns

The row in which the item is displayed

source

pub fn item_width(&self) -> i32

Returns the value of the ::item-width property.

Deprecated since 4.10

Use GridView instead

Returns

the width of a single item, or -1

source

pub fn margin(&self) -> i32

Returns the value of the ::margin property.

Deprecated since 4.10

Use GridView instead

Returns

the space at the borders

source

pub fn markup_column(&self) -> i32

Returns the column with markup text for @self.

Deprecated since 4.10

Use GridView instead

Returns

the markup column, or -1 if it’s unset.

source

pub fn model(&self) -> Option<TreeModel>

Returns the model the IconView is based on. Returns None if the model is unset.

Deprecated since 4.10

Use GridView instead

Returns

The currently used TreeModel

source

pub fn path_at_pos(&self, x: i32, y: i32) -> Option<TreePath>

Gets the path for the icon at the given position.

Deprecated since 4.10

Use GridView instead

x

The x position to be identified

y

The y position to be identified

Returns

The TreePath corresponding to the icon or None if no icon exists at that position.

source

pub fn pixbuf_column(&self) -> i32

Returns the column with pixbufs for @self.

Deprecated since 4.10

Use GridView instead

Returns

the pixbuf column, or -1 if it’s unset.

source

pub fn is_reorderable(&self) -> bool

Retrieves whether the user can reorder the list via drag-and-drop. See gtk_icon_view_set_reorderable().

Deprecated since 4.10

Use GridView instead

Returns

true if the list can be reordered.

source

pub fn row_spacing(&self) -> i32

Returns the value of the ::row-spacing property.

Deprecated since 4.10

Use GridView instead

Returns

the space between rows

source

pub fn selected_items(&self) -> Vec<TreePath>

Creates a list of paths of all selected items. Additionally, if you are planning on modifying the model after calling this function, you may want to convert the returned list into a list of GtkTreeRowReferences. To do this, you can use gtk_tree_row_reference_new().

To free the return value, use g_list_free_full:

⚠️ The following code is in C ⚠️

GtkWidget *icon_view = gtk_icon_view_new ();
// Use icon_view

GList *list = gtk_icon_view_get_selected_items (GTK_ICON_VIEW (icon_view));

// use list

g_list_free_full (list, (GDestroyNotify) gtk_tree_path_free);
Deprecated since 4.10

Use GridView instead

Returns

A GList containing a TreePath for each selected row.

source

pub fn selection_mode(&self) -> SelectionMode

Gets the selection mode of the @self.

Deprecated since 4.10

Use GridView instead

Returns

the current selection mode

source

pub fn spacing(&self) -> i32

Returns the value of the ::spacing property.

Deprecated since 4.10

Use GridView instead

Returns

the space between cells

source

pub fn text_column(&self) -> i32

Returns the column with text for @self.

Deprecated since 4.10

Use GridView instead

Returns

the text column, or -1 if it’s unset.

source

pub fn tooltip_column(&self) -> i32

Returns the column of @self’s model which is being used for displaying tooltips on @self’s rows.

Deprecated since 4.10

Use GridView instead

Returns

the index of the tooltip column that is currently being used, or -1 if this is disabled.

source

pub fn tooltip_context( &self, x: i32, y: i32, keyboard_tip: bool ) -> Option<(TreeModel, TreePath, TreeIter)>

This function is supposed to be used in a GtkWidget::query-tooltip signal handler for IconView. The @x, @y and @keyboard_tip values which are received in the signal handler, should be passed to this function without modification.

The return value indicates whether there is an icon view item at the given coordinates (true) or not (false) for mouse tooltips. For keyboard tooltips the item returned will be the cursor item. When true, then any of @model, @path and @iter which have been provided will be set to point to that row and the corresponding model.

Deprecated since 4.10

Use GridView instead

x

the x coordinate (relative to widget coordinates)

y

the y coordinate (relative to widget coordinates)

keyboard_tip

whether this is a keyboard tooltip or not

Returns

whether or not the given tooltip context points to an item

model

a pointer to receive a TreeModel

path

a pointer to receive a TreePath

iter

a pointer to receive a TreeIter

source

pub fn visible_range(&self) -> Option<(TreePath, TreePath)>

Sets @start_path and @end_path to be the first and last visible path. Note that there may be invisible paths in between.

Both paths should be freed with gtk_tree_path_free() after use.

Deprecated since 4.10

Use GridView instead

Returns

true, if valid paths were placed in @start_path and @end_path

start_path

Return location for start of region

end_path

Return location for end of region

source

pub fn item_activated(&self, path: &TreePath)

Activates the item determined by @path.

Deprecated since 4.10

Use GridView instead

path

The TreePath to be activated

source

pub fn path_is_selected(&self, path: &TreePath) -> bool

Returns true if the icon pointed to by @path is currently selected. If @path does not point to a valid location, false is returned.

Deprecated since 4.10

Use GridView instead

path

A TreePath to check selection on.

Returns

true if @path is selected.

source

pub fn scroll_to_path( &self, path: &TreePath, use_align: bool, row_align: f32, col_align: f32 )

Moves the alignments of @self to the position specified by @path. @row_align determines where the row is placed, and @col_align determines where @column is placed. Both are expected to be between 0.0 and 1.0. 0.0 means left/top alignment, 1.0 means right/bottom alignment, 0.5 means center.

If @use_align is false, then the alignment arguments are ignored, and the tree does the minimum amount of work to scroll the item onto the screen. This means that the item will be scrolled to the edge closest to its current position. If the item is currently visible on the screen, nothing is done.

This function only works if the model is set, and @path is a valid row on the model. If the model changes before the @self is realized, the centered path will be modified to reflect this change.

Deprecated since 4.10

Use GridView instead

path

The path of the item to move to.

use_align

whether to use alignment arguments, or false.

row_align

The vertical alignment of the item specified by @path.

col_align

The horizontal alignment of the item specified by @path.

source

pub fn select_all(&self)

Selects all the icons. @self must has its selection mode set to SelectionMode::Multiple.

Deprecated since 4.10

Use GridView instead

source

pub fn select_path(&self, path: &TreePath)

Selects the row at @path.

Deprecated since 4.10

Use GridView instead

path

The TreePath to be selected.

source

pub fn selected_foreach<P: FnMut(&IconView, &TreePath)>(&self, func: P)

Calls a function for each selected icon. Note that the model or selection cannot be modified from within this function.

Deprecated since 4.10

Use GridView instead

func

The function to call for each selected icon.

source

pub fn set_activate_on_single_click(&self, single: bool)

Causes the IconView::item-activated signal to be emitted on a single click instead of a double click.

Deprecated since 4.10

Use GridView instead

single

true to emit item-activated on a single click

source

pub fn set_column_spacing(&self, column_spacing: i32)

Sets the ::column-spacing property which specifies the space which is inserted between the columns of the icon view.

Deprecated since 4.10

Use GridView instead

column_spacing

the column spacing

source

pub fn set_columns(&self, columns: i32)

Sets the ::columns property which determines in how many columns the icons are arranged. If @columns is -1, the number of columns will be chosen automatically to fill the available area.

Deprecated since 4.10

Use GridView instead

columns

the number of columns

source

pub fn set_cursor( &self, path: &TreePath, cell: Option<&impl IsA<CellRenderer>>, start_editing: bool )

Sets the current keyboard focus to be at @path, and selects it. This is useful when you want to focus the user’s attention on a particular item. If @cell is not None, then focus is given to the cell specified by it. Additionally, if @start_editing is true, then editing should be started in the specified cell.

This function is often followed by gtk_widget_grab_focus (icon_view) in order to give keyboard focus to the widget. Please note that editing can only happen when the widget is realized.

Deprecated since 4.10

Use GridView instead

path

A TreePath

cell

One of the cell renderers of @self

start_editing

true if the specified cell should start being edited.

source

pub fn set_drag_dest_item( &self, path: Option<&TreePath>, pos: IconViewDropPosition )

Sets the item that is highlighted for feedback.

Deprecated since 4.10

Use GridView instead

path

The path of the item to highlight

pos

Specifies where to drop, relative to the item

source

pub fn set_item_orientation(&self, orientation: Orientation)

Sets the ::item-orientation property which determines whether the labels are drawn beside the icons instead of below.

Deprecated since 4.10

Use GridView instead

orientation

the relative position of texts and icons

source

pub fn set_item_padding(&self, item_padding: i32)

Sets the IconView:item-padding property which specifies the padding around each of the icon view’s items.

Deprecated since 4.10

Use GridView instead

item_padding

the item padding

source

pub fn set_item_width(&self, item_width: i32)

Sets the ::item-width property which specifies the width to use for each item. If it is set to -1, the icon view will automatically determine a suitable item size.

Deprecated since 4.10

Use GridView instead

item_width

the width for each item

source

pub fn set_margin(&self, margin: i32)

Sets the ::margin property which specifies the space which is inserted at the top, bottom, left and right of the icon view.

Deprecated since 4.10

Use GridView instead

margin

the margin

source

pub fn set_markup_column(&self, column: i32)

Sets the column with markup information for @self to be @column. The markup column must be of type G_TYPE_STRING. If the markup column is set to something, it overrides the text column set by gtk_icon_view_set_text_column().

Deprecated since 4.10

Use GridView instead

column

A column in the currently used model, or -1 to display no text

source

pub fn set_model(&self, model: Option<&impl IsA<TreeModel>>)

Sets the model for a IconView. If the @self already has a model set, it will remove it before setting the new model. If @model is None, then it will unset the old model.

Deprecated since 4.10

Use GridView instead

model

The model.

source

pub fn set_pixbuf_column(&self, column: i32)

Sets the column with pixbufs for @self to be @column. The pixbuf column must be of type GDK_TYPE_PIXBUF

Deprecated since 4.10

Use GridView instead

column

A column in the currently used model, or -1 to disable

source

pub fn set_reorderable(&self, reorderable: bool)

This function is a convenience function to allow you to reorder models that support the GtkTreeDragSourceIface and the GtkTreeDragDestIface. Both TreeStore and ListStore support these. If @reorderable is true, then the user can reorder the model by dragging and dropping rows. The developer can listen to these changes by connecting to the model’s row_inserted and row_deleted signals. The reordering is implemented by setting up the icon view as a drag source and destination. Therefore, drag and drop can not be used in a reorderable view for any other purpose.

This function does not give you any degree of control over the order – any reordering is allowed. If more control is needed, you should probably handle drag and drop manually.

Deprecated since 4.10

Use GridView instead

reorderable

true, if the list of items can be reordered.

source

pub fn set_row_spacing(&self, row_spacing: i32)

Sets the ::row-spacing property which specifies the space which is inserted between the rows of the icon view.

Deprecated since 4.10

Use GridView instead

row_spacing

the row spacing

source

pub fn set_selection_mode(&self, mode: SelectionMode)

Sets the selection mode of the @self.

Deprecated since 4.10

Use GridView instead

mode

The selection mode

source

pub fn set_spacing(&self, spacing: i32)

Sets the ::spacing property which specifies the space which is inserted between the cells (i.e. the icon and the text) of an item.

Deprecated since 4.10

Use GridView instead

spacing

the spacing

source

pub fn set_text_column(&self, column: i32)

Sets the column with text for @self to be @column. The text column must be of type G_TYPE_STRING.

Deprecated since 4.10

Use GridView instead

column

A column in the currently used model, or -1 to display no text

source

pub fn set_tooltip_cell( &self, tooltip: &Tooltip, path: &TreePath, cell: Option<&impl IsA<CellRenderer>> )

Sets the tip area of @tooltip to the area which @cell occupies in the item pointed to by @path. See also gtk_tooltip_set_tip_area().

See also gtk_icon_view_set_tooltip_column() for a simpler alternative.

Deprecated since 4.10

Use GridView instead

tooltip

a Tooltip

path

a TreePath

cell

a CellRenderer

source

pub fn set_tooltip_column(&self, column: i32)

If you only plan to have simple (text-only) tooltips on full items, you can use this function to have IconView handle these automatically for you. @column should be set to the column in @self’s model containing the tooltip texts, or -1 to disable this feature.

When enabled, GtkWidget:has-tooltip will be set to true and @self will connect a GtkWidget::query-tooltip signal handler.

Note that the signal handler sets the text with gtk_tooltip_set_markup(), so &, <, etc have to be escaped in the text.

Deprecated since 4.10

Use GridView instead

column

an integer, which is a valid column number for @self’s model

source

pub fn set_tooltip_item(&self, tooltip: &Tooltip, path: &TreePath)

Sets the tip area of @tooltip to be the area covered by the item at @path. See also gtk_icon_view_set_tooltip_column() for a simpler alternative. See also gtk_tooltip_set_tip_area().

Deprecated since 4.10

Use GridView instead

tooltip

a Tooltip

path

a TreePath

source

pub fn unselect_all(&self)

Unselects all the icons.

Deprecated since 4.10

Use GridView instead

source

pub fn unselect_path(&self, path: &TreePath)

Unselects the row at @path.

Deprecated since 4.10

Use GridView instead

path

The TreePath to be unselected.

source

pub fn unset_model_drag_dest(&self)

Undoes the effect of gtk_icon_view_enable_model_drag_dest(). Calling this method sets IconView:reorderable to false.

Deprecated since 4.10

Use GridView instead

source

pub fn unset_model_drag_source(&self)

Undoes the effect of gtk_icon_view_enable_model_drag_source(). Calling this method sets IconView:reorderable to false.

Deprecated since 4.10

Use GridView instead

source

pub fn cell_area(&self) -> Option<CellArea>

The CellArea used to layout cell renderers for this view.

If no area is specified when creating the icon view with gtk_icon_view_new_with_area() a CellAreaBox will be used.

source

pub fn connect_activate_cursor_item<F: Fn(&Self) -> bool + 'static>( &self, f: F ) -> SignalHandlerId

A [keybinding signal]SignalAction which gets emitted when the user activates the currently focused item.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control activation programmatically.

The default bindings for this signal are Space, Return and Enter.

source

pub fn emit_activate_cursor_item(&self) -> bool

source

pub fn connect_item_activated<F: Fn(&Self, &TreePath) + 'static>( &self, f: F ) -> SignalHandlerId

The ::item-activated signal is emitted when the method gtk_icon_view_item_activated() is called, when the user double clicks an item with the “activate-on-single-click” property set to false, or when the user single clicks an item when the “activate-on-single-click” property set to true. It is also emitted when a non-editable item is selected and one of the keys: Space, Return or Enter is pressed.

path

the TreePath for the activated item

source

pub fn connect_move_cursor<F: Fn(&Self, MovementStep, i32, bool, bool) -> bool + 'static>( &self, f: F ) -> SignalHandlerId

The ::move-cursor signal is a [keybinding signal]SignalAction which gets emitted when the user initiates a cursor movement.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control the cursor programmatically.

The default bindings for this signal include

  • Arrow keys which move by individual steps
  • Home/End keys which move to the first/last item
  • PageUp/PageDown which move by “pages” All of these will extend the selection when combined with the Shift modifier.
step

the granularity of the move, as a MovementStep

count

the number of @step units to move

extend

whether to extend the selection

modify

whether to modify the selection

source

pub fn emit_move_cursor( &self, step: MovementStep, count: i32, extend: bool, modify: bool ) -> bool

source

pub fn connect_select_all<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

A [keybinding signal]SignalAction which gets emitted when the user selects all items.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control selection programmatically.

The default binding for this signal is Ctrl-a.

source

pub fn emit_select_all(&self)

source

pub fn connect_select_cursor_item<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

A [keybinding signal]SignalAction which gets emitted when the user selects the item that is currently focused.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control selection programmatically.

There is no default binding for this signal.

source

pub fn emit_select_cursor_item(&self)

source

pub fn connect_selection_changed<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

The ::selection-changed signal is emitted when the selection (i.e. the set of selected items) changes.

source

pub fn connect_toggle_cursor_item<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

A [keybinding signal]SignalAction which gets emitted when the user toggles whether the currently focused item is selected or not. The exact effect of this depend on the selection mode.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control selection programmatically.

There is no default binding for this signal is Ctrl-Space.

source

pub fn emit_toggle_cursor_item(&self)

source

pub fn connect_unselect_all<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

A [keybinding signal]SignalAction which gets emitted when the user unselects all items.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control selection programmatically.

The default binding for this signal is Ctrl-Shift-a.

source

pub fn emit_unselect_all(&self)

source

pub fn connect_activate_on_single_click_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_column_spacing_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_columns_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_item_orientation_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_item_padding_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_item_width_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_margin_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_markup_column_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_model_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_pixbuf_column_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_reorderable_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_row_spacing_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_selection_mode_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_spacing_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_text_column_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

pub fn connect_tooltip_column_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

Trait Implementations§

source§

impl Clone for IconView

source§

fn clone(&self) -> Self

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for IconView

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for IconView

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Display for IconView

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl HasParamSpec for IconView

§

type ParamSpec = ParamSpecObject

§

type SetValue = IconView

Preferred value to be used as setter for the associated ParamSpec.
§

type BuilderFn = fn(_: &str) -> ParamSpecObjectBuilder<'_, IconView>

source§

fn param_spec_builder() -> Self::BuilderFn

source§

impl Hash for IconView

source§

fn hash<H>(&self, state: &mut H)where H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Ord for IconView

source§

fn cmp(&self, other: &Self) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Selfwhere Self: Sized + PartialOrd<Self>,

Restrict a value to a certain interval. Read more
source§

impl ParentClassIs for IconView

source§

impl<OT: ObjectType> PartialEq<OT> for IconView

source§

fn eq(&self, other: &OT) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl<OT: ObjectType> PartialOrd<OT> for IconView

source§

fn partial_cmp(&self, other: &OT) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl StaticType for IconView

source§

fn static_type() -> Type

Returns the type identifier of Self.
source§

impl Eq for IconView

source§

impl IsA<Accessible> for IconView

source§

impl IsA<Buildable> for IconView

source§

impl IsA<CellLayout> for IconView

source§

impl IsA<ConstraintTarget> for IconView

source§

impl IsA<Scrollable> for IconView

source§

impl IsA<Widget> for IconView

Auto Trait Implementations§

Blanket Implementations§

source§

impl<O> AccessibleExtManual for Owhere O: IsA<Accessible>,

source§

fn update_property(&self, properties: &[Property<'_>])

Updates an array of accessible properties. Read more
source§

fn update_relation(&self, relations: &[Relation<'_>])

Updates an array of accessible relations. Read more
source§

fn update_state(&self, states: &[State])

Updates an array of accessible states. Read more
source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> Cast for Twhere T: ObjectType,

source§

fn upcast<T>(self) -> Twhere T: ObjectType, Self: IsA<T>,

Upcasts an object to a superclass or interface T. Read more
source§

fn upcast_ref<T>(&self) -> &Twhere T: ObjectType, Self: IsA<T>,

Upcasts an object to a reference of its superclass or interface T. Read more
source§

fn downcast<T>(self) -> Result<T, Self>where T: ObjectType, Self: CanDowncast<T>,

Tries to downcast to a subclass or interface implementor T. Read more
source§

fn downcast_ref<T>(&self) -> Option<&T>where T: ObjectType, Self: CanDowncast<T>,

Tries to downcast to a reference of its subclass or interface implementor T. Read more
source§

fn dynamic_cast<T>(self) -> Result<T, Self>where T: ObjectType,

Tries to cast to an object of type T. This handles upcasting, downcasting and casting between interface and interface implementors. All checks are performed at runtime, while upcast will do many checks at compile-time already. downcast will perform the same checks at runtime as dynamic_cast, but will also ensure some amount of compile-time safety. Read more
source§

fn dynamic_cast_ref<T>(&self) -> Option<&T>where T: ObjectType,

Tries to cast to reference to an object of type T. This handles upcasting, downcasting and casting between interface and interface implementors. All checks are performed at runtime, while downcast and upcast will do many checks at compile-time already. Read more
source§

unsafe fn unsafe_cast<T>(self) -> Twhere T: ObjectType,

Casts to T unconditionally. Read more
source§

unsafe fn unsafe_cast_ref<T>(&self) -> &Twhere T: ObjectType,

Casts to &T unconditionally. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GList> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GPtrArray> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

unsafe fn from_glib_none_num_as_vec( ptr: *const GPtrArray, num: usize ) -> Vec<T, Global>

source§

unsafe fn from_glib_container_num_as_vec( _: *const GPtrArray, _: usize ) -> Vec<T, Global>

source§

unsafe fn from_glib_full_num_as_vec( _: *const GPtrArray, _: usize ) -> Vec<T, Global>

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GSList> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

unsafe fn from_glib_none_num_as_vec( ptr: *const GSList, num: usize ) -> Vec<T, Global>

source§

unsafe fn from_glib_container_num_as_vec( _: *const GSList, _: usize ) -> Vec<T, Global>

source§

unsafe fn from_glib_full_num_as_vec( _: *const GSList, _: usize ) -> Vec<T, Global>

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GList> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

unsafe fn from_glib_none_num_as_vec( ptr: *mut GList, num: usize ) -> Vec<T, Global>

source§

unsafe fn from_glib_container_num_as_vec( ptr: *mut GList, num: usize ) -> Vec<T, Global>

source§

unsafe fn from_glib_full_num_as_vec( ptr: *mut GList, num: usize ) -> Vec<T, Global>

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GPtrArray> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

unsafe fn from_glib_none_num_as_vec( ptr: *mut GPtrArray, num: usize ) -> Vec<T, Global>

source§

unsafe fn from_glib_container_num_as_vec( ptr: *mut GPtrArray, num: usize ) -> Vec<T, Global>

source§

unsafe fn from_glib_full_num_as_vec( ptr: *mut GPtrArray, num: usize ) -> Vec<T, Global>

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GSList> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

unsafe fn from_glib_none_num_as_vec( ptr: *mut GSList, num: usize ) -> Vec<T, Global>

source§

unsafe fn from_glib_container_num_as_vec( ptr: *mut GSList, num: usize ) -> Vec<T, Global>

source§

unsafe fn from_glib_full_num_as_vec( ptr: *mut GSList, num: usize ) -> Vec<T, Global>

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GList> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GPtrArray> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

unsafe fn from_glib_none_as_vec(ptr: *const GPtrArray) -> Vec<T, Global>

source§

unsafe fn from_glib_container_as_vec(_: *const GPtrArray) -> Vec<T, Global>

source§

unsafe fn from_glib_full_as_vec(_: *const GPtrArray) -> Vec<T, Global>

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GSList> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GList> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

unsafe fn from_glib_none_as_vec(ptr: *mut GList) -> Vec<T, Global>

source§

unsafe fn from_glib_container_as_vec(ptr: *mut GList) -> Vec<T, Global>

source§

unsafe fn from_glib_full_as_vec(ptr: *mut GList) -> Vec<T, Global>

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GPtrArray> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

unsafe fn from_glib_none_as_vec(ptr: *mut GPtrArray) -> Vec<T, Global>

source§

unsafe fn from_glib_container_as_vec(ptr: *mut GPtrArray) -> Vec<T, Global>

source§

unsafe fn from_glib_full_as_vec(ptr: *mut GPtrArray) -> Vec<T, Global>

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GSList> for Twhere T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,

source§

unsafe fn from_glib_none_as_vec(ptr: *mut GSList) -> Vec<T, Global>

source§

unsafe fn from_glib_container_as_vec(ptr: *mut GSList) -> Vec<T, Global>

source§

unsafe fn from_glib_full_as_vec(ptr: *mut GSList) -> Vec<T, Global>

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoClosureReturnValue for Twhere T: Into<Value>,

source§

impl<U> IsSubclassableExt for Uwhere U: IsClass + ParentClassIs,

source§

impl<T> ObjectExt for Twhere T: ObjectType,

source§

fn is<U>(&self) -> boolwhere U: StaticType,

Returns true if the object is an instance of (can be cast to) T.
source§

fn type_(&self) -> Type

Returns the type of the object.
source§

fn object_class(&self) -> &Class<Object>

Returns the ObjectClass of the object. Read more
source§

fn class(&self) -> &Class<T>where T: IsClass,

Returns the class of the object.
source§

fn class_of<U>(&self) -> Option<&Class<U>>where U: IsClass,

Returns the class of the object in the given type T. Read more
source§

fn interface<U>(&self) -> Option<InterfaceRef<'_, U>>where U: IsInterface,

Returns the interface T of the object. Read more
source§

fn set_property(&self, property_name: &str, value: impl Into<Value>)

Sets the property property_name of the object to value value. Read more
source§

fn set_property_from_value(&self, property_name: &str, value: &Value)

Sets the property property_name of the object to value value. Read more
source§

fn set_properties(&self, property_values: &[(&str, &dyn ToValue)])

Sets multiple properties of the object at once. Read more
source§

fn set_properties_from_value(&self, property_values: &[(&str, Value)])

Sets multiple properties of the object at once. Read more
source§

fn property<V>(&self, property_name: &str) -> Vwhere V: for<'b> FromValue<'b> + 'static,

Gets the property property_name of the object and cast it to the type V. Read more
source§

fn property_value(&self, property_name: &str) -> Value

Gets the property property_name of the object. Read more
source§

fn has_property(&self, property_name: &str, type_: Option<Type>) -> bool

Check if the object has a property property_name of the given type_. Read more
source§

fn property_type(&self, property_name: &str) -> Option<Type>

Get the type of the property property_name of this object. Read more
source§

fn find_property(&self, property_name: &str) -> Option<ParamSpec>

Get the ParamSpec of the property property_name of this object.
source§

fn list_properties(&self) -> PtrSlice<ParamSpec>

Return all ParamSpec of the properties of this object.
source§

fn freeze_notify(&self) -> PropertyNotificationFreezeGuard

Freeze all property notifications until the return guard object is dropped. Read more
source§

unsafe fn set_qdata<QD>(&self, key: Quark, value: QD)where QD: 'static,

Set arbitrary data on this object with the given key. Read more
source§

unsafe fn qdata<QD>(&self, key: Quark) -> Option<NonNull<QD>>where QD: 'static,

Return previously set arbitrary data of this object with the given key. Read more
source§

unsafe fn steal_qdata<QD>(&self, key: Quark) -> Option<QD>where QD: 'static,

Retrieve previously set arbitrary data of this object with the given key. Read more
source§

unsafe fn set_data<QD>(&self, key: &str, value: QD)where QD: 'static,

Set arbitrary data on this object with the given key. Read more
source§

unsafe fn data<QD>(&self, key: &str) -> Option<NonNull<QD>>where QD: 'static,

Return previously set arbitrary data of this object with the given key. Read more
source§

unsafe fn steal_data<QD>(&self, key: &str) -> Option<QD>where QD: 'static,

Retrieve previously set arbitrary data of this object with the given key. Read more
source§

fn block_signal(&self, handler_id: &SignalHandlerId)

Block a given signal handler. Read more
source§

fn unblock_signal(&self, handler_id: &SignalHandlerId)

Unblock a given signal handler.
source§

fn stop_signal_emission(&self, signal_id: SignalId, detail: Option<Quark>)

Stop emission of the currently emitted signal.
source§

fn stop_signal_emission_by_name(&self, signal_name: &str)

Stop emission of the currently emitted signal by the (possibly detailed) signal name.
source§

fn connect<F>( &self, signal_name: &str, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value> + Send + Sync + 'static,

Connect to the signal signal_name on this object. Read more
source§

fn connect_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value> + Send + Sync + 'static,

Connect to the signal signal_id on this object. Read more
source§

fn connect_local<F>( &self, signal_name: &str, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value> + 'static,

Connect to the signal signal_name on this object. Read more
source§

fn connect_local_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value> + 'static,

Connect to the signal signal_id on this object. Read more
source§

unsafe fn connect_unsafe<F>( &self, signal_name: &str, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value>,

Connect to the signal signal_name on this object. Read more
source§

unsafe fn connect_unsafe_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value>,

Connect to the signal signal_id on this object. Read more
source§

fn connect_closure( &self, signal_name: &str, after: bool, closure: RustClosure ) -> SignalHandlerId

Connect a closure to the signal signal_name on this object. Read more
source§

fn connect_closure_id( &self, signal_id: SignalId, details: Option<Quark>, after: bool, closure: RustClosure ) -> SignalHandlerId

Connect a closure to the signal signal_id on this object. Read more
source§

fn watch_closure(&self, closure: &impl AsRef<Closure>)

Limits the lifetime of closure to the lifetime of the object. When the object’s reference count drops to zero, the closure will be invalidated. An invalidated closure will ignore any calls to invoke_with_values, or invoke when using Rust closures.
source§

fn emit<R>(&self, signal_id: SignalId, args: &[&dyn ToValue]) -> Rwhere R: TryFromClosureReturnValue,

Emit signal by signal id. Read more
source§

fn emit_with_values(&self, signal_id: SignalId, args: &[Value]) -> Option<Value>

Same as Self::emit but takes Value for the arguments.
source§

fn emit_by_name<R>(&self, signal_name: &str, args: &[&dyn ToValue]) -> Rwhere R: TryFromClosureReturnValue,

Emit signal by its name. Read more
source§

fn emit_by_name_with_values( &self, signal_name: &str, args: &[Value] ) -> Option<Value>

Emit signal by its name. Read more
source§

fn emit_by_name_with_details<R>( &self, signal_name: &str, details: Quark, args: &[&dyn ToValue] ) -> Rwhere R: TryFromClosureReturnValue,

Emit signal by its name with details. Read more
source§

fn emit_by_name_with_details_and_values( &self, signal_name: &str, details: Quark, args: &[Value] ) -> Option<Value>

Emit signal by its name with details. Read more
source§

fn emit_with_details<R>( &self, signal_id: SignalId, details: Quark, args: &[&dyn ToValue] ) -> Rwhere R: TryFromClosureReturnValue,

Emit signal by signal id with details. Read more
source§

fn emit_with_details_and_values( &self, signal_id: SignalId, details: Quark, args: &[Value] ) -> Option<Value>

Emit signal by signal id with details. Read more
source§

fn disconnect(&self, handler_id: SignalHandlerId)

Disconnect a previously connected signal handler.
source§

fn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerIdwhere F: Fn(&T, &ParamSpec) + Send + Sync + 'static,

Connect to the notify signal of the object. Read more
source§

fn connect_notify_local<F>(&self, name: Option<&str>, f: F) -> SignalHandlerIdwhere F: Fn(&T, &ParamSpec) + 'static,

Connect to the notify signal of the object. Read more
source§

unsafe fn connect_notify_unsafe<F>( &self, name: Option<&str>, f: F ) -> SignalHandlerIdwhere F: Fn(&T, &ParamSpec),

Connect to the notify signal of the object. Read more
source§

fn notify(&self, property_name: &str)

Notify that the given property has changed its value. Read more
source§

fn notify_by_pspec(&self, pspec: &ParamSpec)

Notify that the given property has changed its value. Read more
source§

fn downgrade(&self) -> WeakRef<T>

Downgrade this object to a weak reference.
source§

fn add_weak_ref_notify<F>(&self, f: F) -> WeakRefNotify<T>where F: FnOnce() + Send + 'static,

Add a callback to be notified when the Object is disposed.
source§

fn add_weak_ref_notify_local<F>(&self, f: F) -> WeakRefNotify<T>where F: FnOnce() + 'static,

Add a callback to be notified when the Object is disposed. Read more
source§

fn bind_property<'f, 't, O, 'a>( &'a self, source_property: &'a str, target: &'a O, target_property: &'a str ) -> BindingBuilder<'a, 'f, 't>where O: ObjectType,

Bind property source_property on this object to the target_property on the target object. Read more
source§

fn ref_count(&self) -> u32

Returns the strong reference count of this object.
source§

unsafe fn run_dispose(&self)

Runs the dispose mechanism of the object. Read more
source§

impl<T> Property for Twhere T: HasParamSpec,

§

type Value = T

source§

impl<T> PropertyGet for Twhere T: HasParamSpec,

§

type Value = T

source§

fn get<R, F>(&self, f: F) -> Rwhere F: Fn(&<T as PropertyGet>::Value) -> R,

source§

impl<T> StaticTypeExt for Twhere T: StaticType,

source§

fn ensure_type()

Ensures that the type has been registered with the type system.
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for Twhere T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T> TransparentType for Twhere T: TransparentPtrType,

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T> TryFromClosureReturnValue for Twhere T: for<'a> FromValue<'a> + StaticType + 'static,

source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<Super, Sub> CanDowncast<Sub> for Superwhere Super: IsA<Super>, Sub: IsA<Super>,

source§

impl<'a, T, C, E> FromValueOptional<'a> for Twhere T: FromValue<'a, Checker = C>, C: ValueTypeChecker<Error = ValueTypeMismatchOrNoneError<E>>, E: Error + Send + 'static,