Trait gtk::prelude::TreeViewColumnExt
source · [−]pub trait TreeViewColumnExt: 'static {
Show 64 methods
fn cell_get_position(
&self,
cell_renderer: &impl IsA<CellRenderer>
) -> Option<(i32, i32)>;
fn cell_get_size(
&self,
cell_area: Option<&Rectangle>
) -> (i32, i32, i32, i32);
fn cell_is_visible(&self) -> bool;
fn cell_set_cell_data(
&self,
tree_model: &impl IsA<TreeModel>,
iter: &TreeIter,
is_expander: bool,
is_expanded: bool
);
fn clicked(&self);
fn focus_cell(&self, cell: &impl IsA<CellRenderer>);
fn alignment(&self) -> f32;
fn button(&self) -> Option<Widget>;
fn is_clickable(&self) -> bool;
fn expands(&self) -> bool;
fn fixed_width(&self) -> i32;
fn max_width(&self) -> i32;
fn min_width(&self) -> i32;
fn is_reorderable(&self) -> bool;
fn is_resizable(&self) -> bool;
fn sizing(&self) -> TreeViewColumnSizing;
fn sort_column_id(&self) -> i32;
fn is_sort_indicator(&self) -> bool;
fn sort_order(&self) -> SortType;
fn spacing(&self) -> i32;
fn title(&self) -> Option<GString>;
fn tree_view(&self) -> Option<Widget>;
fn is_visible(&self) -> bool;
fn widget(&self) -> Option<Widget>;
fn width(&self) -> i32;
fn x_offset(&self) -> i32;
fn queue_resize(&self);
fn set_alignment(&self, xalign: f32);
fn set_cell_data_func(
&self,
cell_renderer: &impl IsA<CellRenderer>,
func: Option<Box_<dyn Fn(&TreeViewColumn, &CellRenderer, &TreeModel, &TreeIter) + 'static>>
);
fn set_clickable(&self, clickable: bool);
fn set_expand(&self, expand: bool);
fn set_fixed_width(&self, fixed_width: i32);
fn set_max_width(&self, max_width: i32);
fn set_min_width(&self, min_width: i32);
fn set_reorderable(&self, reorderable: bool);
fn set_resizable(&self, resizable: bool);
fn set_sizing(&self, type_: TreeViewColumnSizing);
fn set_sort_column_id(&self, sort_column_id: i32);
fn set_sort_indicator(&self, setting: bool);
fn set_sort_order(&self, order: SortType);
fn set_spacing(&self, spacing: i32);
fn set_title(&self, title: &str);
fn set_visible(&self, visible: bool);
fn set_widget(&self, widget: Option<&impl IsA<Widget>>);
fn cell_area(&self) -> Option<CellArea>;
fn connect_clicked<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
fn connect_alignment_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_clickable_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_expand_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_fixed_width_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_max_width_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_min_width_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_reorderable_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_resizable_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_sizing_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_sort_column_id_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_sort_indicator_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_sort_order_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_spacing_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_title_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_visible_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_widget_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_width_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_x_offset_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
}
Expand description
Required Methods
fn cell_get_position(
&self,
cell_renderer: &impl IsA<CellRenderer>
) -> Option<(i32, i32)>
fn cell_get_position(
&self,
cell_renderer: &impl IsA<CellRenderer>
) -> Option<(i32, i32)>
Obtains the horizontal position and size of a cell in a column. If the
cell is not found in the column, start_pos
and width
are not changed and
false
is returned.
cell_renderer
Returns
true
if cell
belongs to self
.
x_offset
return location for the horizontal
position of cell
within self
, may be None
width
return location for the width of cell
,
may be None
Obtains the width and height needed to render the column. This is used
primarily by the TreeView
.
cell_area
The area a cell in the column will be allocated, or None
Returns
x_offset
location to return x offset of a cell relative to cell_area
, or None
y_offset
location to return y offset of a cell relative to cell_area
, or None
width
location to return width needed to render a cell, or None
height
location to return height needed to render a cell, or None
fn cell_is_visible(&self) -> bool
fn cell_is_visible(&self) -> bool
Returns true
if any of the cells packed into the self
are visible.
For this to be meaningful, you must first initialize the cells with
cell_set_cell_data()
Returns
true
, if any of the cells packed into the self
are currently visible
Sets the cell renderer based on the tree_model
and iter
. That is, for
every attribute mapping in self
, it will get a value from the set
column on the iter
, and use that value to set the attribute on the cell
renderer. This is used primarily by the TreeView
.
tree_model
The TreeModel
to to get the cell renderers attributes from.
iter
The TreeIter
to to get the cell renderer’s attributes from.
is_expander
true
, if the row has children
is_expanded
true
, if the row has visible children
Emits the “clicked” signal on the column. This function will only work if
self
is clickable.
fn focus_cell(&self, cell: &impl IsA<CellRenderer>)
fn focus_cell(&self, cell: &impl IsA<CellRenderer>)
Sets the current keyboard focus to be at cell
, if the column contains
2 or more editable and activatable cells.
cell
Returns the current x alignment of self
. This value can range
between 0.0 and 1.0.
Returns
The current alignent of self
.
fn is_clickable(&self) -> bool
fn is_clickable(&self) -> bool
fn fixed_width(&self) -> i32
fn fixed_width(&self) -> i32
Returns the maximum width in pixels of the self
, or -1 if no maximum
width is set.
Returns
The maximum width of the self
.
Returns the minimum width in pixels of the self
, or -1 if no minimum
width is set.
Returns
The minimum width of the self
.
fn is_reorderable(&self) -> bool
fn is_reorderable(&self) -> bool
fn is_resizable(&self) -> bool
fn is_resizable(&self) -> bool
fn sizing(&self) -> TreeViewColumnSizing
fn sizing(&self) -> TreeViewColumnSizing
fn sort_column_id(&self) -> i32
fn sort_column_id(&self) -> i32
Gets the logical sort_column_id
that the model sorts on when this
column is selected for sorting.
See set_sort_column_id()
.
Returns
the current sort_column_id
for this column, or -1 if
this column can’t be used for sorting.
fn is_sort_indicator(&self) -> bool
fn is_sort_indicator(&self) -> bool
fn sort_order(&self) -> SortType
fn sort_order(&self) -> SortType
Returns the title of the widget.
Returns
the title of the column. This string should not be modified or freed.
fn is_visible(&self) -> bool
fn is_visible(&self) -> bool
fn queue_resize(&self)
fn queue_resize(&self)
Flags the column, and the cell renderers added to this column, to have their sizes renegotiated.
fn set_alignment(&self, xalign: f32)
fn set_alignment(&self, xalign: f32)
Sets the alignment of the title or custom widget inside the column header. The alignment determines its location inside the button – 0.0 for left, 0.5 for center, 1.0 for right.
xalign
The alignment, which is between [0.0 and 1.0] inclusive.
fn set_cell_data_func(
&self,
cell_renderer: &impl IsA<CellRenderer>,
func: Option<Box_<dyn Fn(&TreeViewColumn, &CellRenderer, &TreeModel, &TreeIter) + 'static>>
)
fn set_cell_data_func(
&self,
cell_renderer: &impl IsA<CellRenderer>,
func: Option<Box_<dyn Fn(&TreeViewColumn, &CellRenderer, &TreeModel, &TreeIter) + 'static>>
)
Sets the GtkTreeCellDataFunc
to use for the column. 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 as appropriate. func
may be None
to remove an
older one.
cell_renderer
func
The GtkTreeCellDataFunc
to use.
func_data
The user data for func
.
fn set_clickable(&self, clickable: bool)
fn set_clickable(&self, clickable: bool)
fn set_expand(&self, expand: bool)
fn set_expand(&self, expand: bool)
Sets the column to take available extra space. This space is shared equally
amongst all columns that have the expand set to true
. If no column has this
option set, then the last column gets all extra space. By default, every
column is created with this false
.
Along with “fixed-width”, the “expand” property changes when the column is resized by the user.
expand
true
if the column should expand to fill available space.
fn set_fixed_width(&self, fixed_width: i32)
fn set_fixed_width(&self, fixed_width: i32)
If fixed_width
is not -1, sets the fixed width of self
; otherwise
unsets it. The effective value of fixed_width
is clamped between the
minimum and maximum width of the column; however, the value stored in the
“fixed-width” property is not clamped. If the column sizing is
TreeViewColumnSizing::GrowOnly
or TreeViewColumnSizing::Autosize
, setting
a fixed width overrides the automatically calculated width. Note that
fixed_width
is only a hint to GTK+; the width actually allocated to the
column may be greater or less than requested.
Along with “expand”, the “fixed-width” property changes when the column is resized by the user.
fixed_width
The new fixed width, in pixels, or -1.
fn set_max_width(&self, max_width: i32)
fn set_max_width(&self, max_width: i32)
Sets the maximum width of the self
. If max_width
is -1, then the
maximum width is unset. Note, the column can actually be wider than max
width if it’s the last column in a view. In this case, the column expands to
fill any extra space.
max_width
The maximum width of the column in pixels, or -1.
fn set_min_width(&self, min_width: i32)
fn set_min_width(&self, min_width: i32)
Sets the minimum width of the self
. If min_width
is -1, then the
minimum width is unset.
min_width
The minimum width of the column in pixels, or -1.
fn set_reorderable(&self, reorderable: bool)
fn set_reorderable(&self, reorderable: bool)
If reorderable
is true
, then the column can be reordered by the end user
dragging the header.
reorderable
true
, if the column can be reordered.
fn set_resizable(&self, resizable: bool)
fn set_resizable(&self, resizable: bool)
If resizable
is true
, then the user can explicitly resize the column by
grabbing the outer edge of the column button. If resizable is true
and
sizing mode of the column is TreeViewColumnSizing::Autosize
, then the sizing
mode is changed to TreeViewColumnSizing::GrowOnly
.
resizable
true
, if the column can be resized
fn set_sizing(&self, type_: TreeViewColumnSizing)
fn set_sizing(&self, type_: TreeViewColumnSizing)
fn set_sort_column_id(&self, sort_column_id: i32)
fn set_sort_column_id(&self, sort_column_id: i32)
Sets the logical sort_column_id
that this column sorts on when this column
is selected for sorting. Doing so makes the column header clickable.
sort_column_id
The sort_column_id
of the model to sort on.
fn set_sort_indicator(&self, setting: bool)
fn set_sort_indicator(&self, setting: bool)
Call this function with a setting
of true
to display an arrow in
the header button indicating the column is sorted. Call
set_sort_order()
to change the direction of
the arrow.
setting
true
to display an indicator that the column is sorted
fn set_sort_order(&self, order: SortType)
fn set_sort_order(&self, order: SortType)
Changes the appearance of the sort indicator.
This does not actually sort the model. Use
set_sort_column_id()
if you want automatic sorting
support. This function is primarily for custom sorting behavior, and should
be used in conjunction with TreeSortableExtManual::set_sort_column_id()
to do
that. For custom models, the mechanism will vary.
The sort indicator changes direction to indicate normal sort or reverse sort.
Note that you must have the sort indicator enabled to see anything when
calling this function; see set_sort_indicator()
.
order
sort order that the sort indicator should indicate
fn set_spacing(&self, spacing: i32)
fn set_spacing(&self, spacing: i32)
Sets the spacing field of self
, which is the number of pixels to
place between cell renderers packed into it.
spacing
distance between cell renderers in pixels.
Sets the title of the self
. If a custom widget has been set, then
this value is ignored.
title
The title of the self
.
fn set_visible(&self, visible: bool)
fn set_visible(&self, visible: bool)
fn set_widget(&self, widget: Option<&impl IsA<Widget>>)
fn set_widget(&self, widget: Option<&impl IsA<Widget>>)
The CellArea
used to layout cell renderers for this column.
If no area is specified when creating the tree view column with TreeViewColumn::with_area()
a horizontally oriented CellAreaBox
will be used.