pub trait CellLayoutExt: 'static {
    // Required methods
    fn add_attribute(
        &self,
        cell: &impl IsA<CellRenderer>,
        attribute: &str,
        column: i32
    );
    fn clear(&self);
    fn clear_attributes(&self, cell: &impl IsA<CellRenderer>);
    fn area(&self) -> Option<CellArea>;
    fn cells(&self) -> Vec<CellRenderer>;
    fn pack_end(&self, cell: &impl IsA<CellRenderer>, expand: bool);
    fn pack_start(&self, cell: &impl IsA<CellRenderer>, expand: bool);
    fn reorder(&self, cell: &impl IsA<CellRenderer>, position: i32);
    fn set_cell_data_func<P: Fn(&CellLayout, &CellRenderer, &TreeModel, &TreeIter) + 'static>(
        &self,
        cell: &impl IsA<CellRenderer>,
        func: P
    );
}
Expand description

Required Methods§

source

fn add_attribute( &self, cell: &impl IsA<CellRenderer>, attribute: &str, column: i32 )

Adds an attribute mapping to the list in @self.

The @column is the column of the model to get a value from, and the @attribute is the property on @cell to be set from that value. So for example if column 2 of the model contains strings, you could have the “text” attribute of a CellRendererText get its values from column 2. In this context “attribute” and “property” are used interchangeably.

cell

a CellRenderer

attribute

a property on the renderer

column

the column position on the model to get the attribute from

source

fn clear(&self)

Unsets all the mappings on all renderers on @self and removes all renderers from @self.

source

fn clear_attributes(&self, cell: &impl IsA<CellRenderer>)

Clears all existing attributes previously set with gtk_cell_layout_set_attributes().

cell

a CellRenderer to clear the attribute mapping on

source

fn area(&self) -> Option<CellArea>

Returns the underlying CellArea which might be @self if called on a CellArea or might be None if no CellArea is used by @self.

Returns

the cell area used by @self

source

fn cells(&self) -> Vec<CellRenderer>

Returns the cell renderers which have been added to @self.

Returns

a list of cell renderers. The list, but not the renderers has been newly allocated and should be freed with g_list_free() when no longer needed.

source

fn pack_end(&self, cell: &impl IsA<CellRenderer>, expand: bool)

Adds the @cell to the end of @self. If @expand is false, then the @cell is allocated no more space than it needs. Any unused space is divided evenly between cells for which @expand is true.

Note that reusing the same cell renderer is not supported.

cell

a CellRenderer

expand

true if @cell is to be given extra space allocated to @self

source

fn pack_start(&self, cell: &impl IsA<CellRenderer>, expand: bool)

Packs the @cell into the beginning of @self. If @expand is false, then the @cell is allocated no more space than it needs. Any unused space is divided evenly between cells for which @expand is true.

Note that reusing the same cell renderer is not supported.

cell

a CellRenderer

expand

true if @cell is to be given extra space allocated to @self

source

fn reorder(&self, cell: &impl IsA<CellRenderer>, position: i32)

Re-inserts @cell at @position.

Note that @cell has already to be packed into @self for this to function properly.

cell

a CellRenderer to reorder

position

new position to insert @cell at

source

fn set_cell_data_func<P: Fn(&CellLayout, &CellRenderer, &TreeModel, &TreeIter) + 'static>( &self, cell: &impl IsA<CellRenderer>, func: P )

Sets the CellLayoutDataFunc to use for @self.

This function is used instead of the standard attributes mapping for setting the column value, and should set the value of @self’s cell renderer(s) as appropriate.

@func may be None to remove a previously set function.

cell

a CellRenderer

func

the CellLayoutDataFunc to use

func_data

user data for @func

Implementors§