Struct gtk::builders::LabelBuilder
source · [−]pub struct LabelBuilder { /* private fields */ }
Expand description
A builder-pattern type to construct Label
objects.
Implementations
sourceimpl LabelBuilder
impl LabelBuilder
sourcepub fn new() -> Self
pub fn new() -> Self
Create a new LabelBuilder
.
sourcepub fn angle(self, angle: f64) -> Self
pub fn angle(self, angle: f64) -> Self
The angle that the baseline of the label makes with the horizontal, in degrees, measured counterclockwise. An angle of 90 reads from from bottom to top, an angle of 270, from top to bottom. Ignored if the label is selectable.
pub fn attributes(self, attributes: &AttrList) -> Self
sourcepub fn ellipsize(self, ellipsize: EllipsizeMode) -> Self
pub fn ellipsize(self, ellipsize: EllipsizeMode) -> Self
The preferred place to ellipsize the string, if the label does
not have enough room to display the entire string, specified as a
pango::EllipsizeMode
.
Note that setting this property to a value other than
pango::EllipsizeMode::None
has the side-effect that the label requests
only enough space to display the ellipsis “…”. In particular, this
means that ellipsizing labels do not work well in notebook tabs, unless
the Notebook
tab-expand child property is set to true
. Other ways
to set a label’s width are WidgetExt::set_size_request()
and
LabelExt::set_width_chars()
.
pub fn justify(self, justify: Justification) -> Self
sourcepub fn label(self, label: &str) -> Self
pub fn label(self, label: &str) -> Self
The contents of the label.
If the string contains [Pango XML markup][PangoMarkupFormat], you will
have to set the property::Label::use-markup
property to true
in order for the
label to display the markup attributes. See also LabelExt::set_markup()
for a convenience function that sets both this property and the
property::Label::use-markup
property at the same time.
If the string contains underlines acting as mnemonics, you will have to
set the property::Label::use-underline
property to true
in order for the label
to display them.
sourcepub fn lines(self, lines: i32) -> Self
pub fn lines(self, lines: i32) -> Self
The number of lines to which an ellipsized, wrapping label should be limited. This property has no effect if the label is not wrapping or ellipsized. Set this property to -1 if you don’t want to limit the number of lines.
sourcepub fn max_width_chars(self, max_width_chars: i32) -> Self
pub fn max_width_chars(self, max_width_chars: i32) -> Self
The desired maximum width of the label, in characters. If this property is set to -1, the width will be calculated automatically.
See the section on [text layout][label-text-layout]
for details of how property::Label::width-chars
and property::Label::max-width-chars
determine the width of ellipsized and wrapped labels.
pub fn mnemonic_widget(self, mnemonic_widget: &impl IsA<Widget>) -> Self
pub fn pattern(self, pattern: &str) -> Self
pub fn selectable(self, selectable: bool) -> Self
sourcepub fn single_line_mode(self, single_line_mode: bool) -> Self
pub fn single_line_mode(self, single_line_mode: bool) -> Self
Whether the label is in single line mode. In single line mode, the height of the label does not depend on the actual text, it is always set to ascent + descent of the font. This can be an advantage in situations where resizing the label because of text changes would be distracting, e.g. in a statusbar.
sourcepub fn track_visited_links(self, track_visited_links: bool) -> Self
pub fn track_visited_links(self, track_visited_links: bool) -> Self
Set this property to true
to make the label track which links
have been visited. It will then apply the StateFlags::VISITED
when rendering this link, in addition to StateFlags::LINK
.
pub fn use_markup(self, use_markup: bool) -> Self
pub fn use_underline(self, use_underline: bool) -> Self
sourcepub fn width_chars(self, width_chars: i32) -> Self
pub fn width_chars(self, width_chars: i32) -> Self
The desired width of the label, in characters. If this property is set to -1, the width will be calculated automatically.
See the section on [text layout][label-text-layout]
for details of how property::Label::width-chars
and property::Label::max-width-chars
determine the width of ellipsized and wrapped labels.
pub fn wrap(self, wrap: bool) -> Self
sourcepub fn wrap_mode(self, wrap_mode: WrapMode) -> Self
pub fn wrap_mode(self, wrap_mode: WrapMode) -> Self
If line wrapping is on (see the property::Label::wrap
property) this controls
how the line wrapping is done. The default is pango::WrapMode::Word
, which
means wrap on word boundaries.
sourcepub fn xalign(self, xalign: f32) -> Self
pub fn xalign(self, xalign: f32) -> Self
The xalign property determines the horizontal aligment of the label text
inside the labels size allocation. Compare this to property::Widget::halign
,
which determines how the labels size allocation is positioned in the
space available for the label.
sourcepub fn yalign(self, yalign: f32) -> Self
pub fn yalign(self, yalign: f32) -> Self
The yalign property determines the vertical aligment of the label text
inside the labels size allocation. Compare this to property::Widget::valign
,
which determines how the labels size allocation is positioned in the
space available for the label.
pub fn app_paintable(self, app_paintable: bool) -> Self
pub fn can_default(self, can_default: bool) -> Self
pub fn can_focus(self, can_focus: bool) -> Self
pub fn events(self, events: EventMask) -> Self
sourcepub fn expand(self, expand: bool) -> Self
pub fn expand(self, expand: bool) -> Self
Whether to expand in both directions. Setting this sets both property::Widget::hexpand
and property::Widget::vexpand
sourcepub fn focus_on_click(self, focus_on_click: bool) -> Self
pub fn focus_on_click(self, focus_on_click: bool) -> Self
Whether the widget should grab focus when it is clicked with the mouse.
This property is only relevant for widgets that can take focus.
Before 3.20, several widgets (GtkButton, GtkFileChooserButton, GtkComboBox) implemented this property individually.
sourcepub fn halign(self, halign: Align) -> Self
pub fn halign(self, halign: Align) -> Self
How to distribute horizontal space if widget gets extra space, see Align
pub fn has_default(self, has_default: bool) -> Self
pub fn has_focus(self, has_focus: bool) -> Self
sourcepub fn has_tooltip(self, has_tooltip: bool) -> Self
pub fn has_tooltip(self, has_tooltip: bool) -> Self
Enables or disables the emission of signal::Widget::query-tooltip
on widget
.
A value of true
indicates that widget
can have a tooltip, in this case
the widget will be queried using signal::Widget::query-tooltip
to determine
whether it will provide a tooltip or not.
Note that setting this property to true
for the first time will change
the event masks of the GdkWindows of this widget to include leave-notify
and motion-notify events. This cannot and will not be undone when the
property is set to false
again.
pub fn height_request(self, height_request: i32) -> Self
sourcepub fn hexpand(self, hexpand: bool) -> Self
pub fn hexpand(self, hexpand: bool) -> Self
Whether to expand horizontally. See WidgetExt::set_hexpand()
.
sourcepub fn hexpand_set(self, hexpand_set: bool) -> Self
pub fn hexpand_set(self, hexpand_set: bool) -> Self
Whether to use the property::Widget::hexpand
property. See WidgetExt::is_hexpand_set()
.
pub fn is_focus(self, is_focus: bool) -> Self
sourcepub fn margin(self, margin: i32) -> Self
pub fn margin(self, margin: i32) -> Self
Sets all four sides’ margin at once. If read, returns max margin on any side.
sourcepub fn margin_bottom(self, margin_bottom: i32) -> Self
pub fn margin_bottom(self, margin_bottom: i32) -> Self
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.
sourcepub fn margin_end(self, margin_end: i32) -> Self
pub fn margin_end(self, margin_end: i32) -> Self
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.
sourcepub fn margin_start(self, margin_start: i32) -> Self
pub fn margin_start(self, margin_start: i32) -> Self
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.
sourcepub fn margin_top(self, margin_top: i32) -> Self
pub fn margin_top(self, margin_top: i32) -> Self
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.
pub fn name(self, name: &str) -> Self
pub fn no_show_all(self, no_show_all: bool) -> Self
sourcepub fn opacity(self, opacity: f64) -> Self
pub fn opacity(self, opacity: f64) -> Self
The requested opacity of the widget. See WidgetExt::set_opacity()
for
more details about window opacity.
Before 3.8 this was only available in GtkWindow
pub fn parent(self, parent: &impl IsA<Container>) -> Self
pub fn receives_default(self, receives_default: bool) -> Self
pub fn sensitive(self, sensitive: bool) -> Self
sourcepub fn tooltip_markup(self, tooltip_markup: &str) -> Self
pub fn tooltip_markup(self, tooltip_markup: &str) -> Self
Sets the text of tooltip to be the given string, which is marked up
with the [Pango text markup language][PangoMarkupFormat].
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
: property::Widget::has-tooltip
will automatically be set to true
and there will be taken care of
signal::Widget::query-tooltip
in the default signal handler.
Note that if both property::Widget::tooltip-text
and property::Widget::tooltip-markup
are set, the last one wins.
sourcepub fn tooltip_text(self, tooltip_text: &str) -> Self
pub fn tooltip_text(self, tooltip_text: &str) -> Self
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
: property::Widget::has-tooltip
will automatically be set to true
and there will be taken care of
signal::Widget::query-tooltip
in the default signal handler.
Note that if both property::Widget::tooltip-text
and property::Widget::tooltip-markup
are set, the last one wins.
sourcepub fn valign(self, valign: Align) -> Self
pub fn valign(self, valign: Align) -> Self
How to distribute vertical space if widget gets extra space, see Align
sourcepub fn vexpand(self, vexpand: bool) -> Self
pub fn vexpand(self, vexpand: bool) -> Self
Whether to expand vertically. See WidgetExt::set_vexpand()
.
sourcepub fn vexpand_set(self, vexpand_set: bool) -> Self
pub fn vexpand_set(self, vexpand_set: bool) -> Self
Whether to use the property::Widget::vexpand
property. See WidgetExt::is_vexpand_set()
.
pub fn visible(self, visible: bool) -> Self
pub fn width_request(self, width_request: i32) -> Self
Trait Implementations
sourceimpl Clone for LabelBuilder
impl Clone for LabelBuilder
sourcefn clone(&self) -> LabelBuilder
fn clone(&self) -> LabelBuilder
1.0.0 · sourceconst fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source
. Read more