#[repr(transparent)]pub struct Label { /* private fields */ }
Expand description
The Label
widget displays a small amount of text. As the name
implies, most labels are used to label another widget such as a
Button
, a MenuItem
, or a ComboBox
.
CSS nodes
⚠️ The following code is in plain ⚠️
label
├── [selection]
├── [link]
┊
╰── [link]
GtkLabel has a single CSS node with the name label. A wide variety
of style classes may be applied to labels, such as .title, .subtitle,
.dim-label, etc. In the ShortcutsWindow
, labels are used wth the
.keycap style class.
If the label has a selection, it gets a subnode with name selection.
If the label has links, there is one subnode per link. These subnodes carry the link or visited state depending on whether they have been visited.
GtkLabel as GtkBuildable
The GtkLabel implementation of the GtkBuildable interface supports a
custom <attributes>
element, which supports any number of <attribute>
elements. The <attribute>
element has attributes named “name“, “value“,
“start“ and “end“ and allows you to specify PangoAttribute
values for
this label.
An example of a UI definition fragment specifying Pango attributes:
⚠️ The following code is in xml ⚠️
<object class="GtkLabel">
<attributes>
<attribute name="weight" value="PANGO_WEIGHT_BOLD"/>
<attribute name="background" value="red" start="5" end="10"/>
</attributes>
</object>
The start and end attributes specify the range of characters to which the Pango attribute applies. If start and end are not specified, the attribute is applied to the whole text. Note that specifying ranges does not make much sense with translatable attributes. Use markup embedded in the translatable content instead.
Mnemonics
Labels may contain “mnemonics”. Mnemonics are
underlined characters in the label, used for keyboard navigation.
Mnemonics are created by providing a string with an underscore before
the mnemonic character, such as "_File"
, to the
functions with_mnemonic()
or
LabelExt::set_text_with_mnemonic()
.
Mnemonics automatically activate any activatable widget the label is
inside, such as a Button
; if the label is not inside the
mnemonic’s target widget, you have to tell the label about the target
using LabelExt::set_mnemonic_widget()
. Here’s a simple example where
the label is inside a button:
⚠️ The following code is in C ⚠️
// Pressing Alt+H will activate this button
GtkWidget *button = gtk_button_new ();
GtkWidget *label = gtk_label_new_with_mnemonic ("_Hello");
gtk_container_add (GTK_CONTAINER (button), label);
There’s a convenience function to create buttons with a mnemonic label already inside:
⚠️ The following code is in C ⚠️
// Pressing Alt+H will activate this button
GtkWidget *button = gtk_button_new_with_mnemonic ("_Hello");
To create a mnemonic for a widget alongside the label, such as a
Entry
, you have to point the label at the entry with
LabelExt::set_mnemonic_widget()
:
⚠️ The following code is in C ⚠️
// Pressing Alt+H will focus the entry
GtkWidget *entry = gtk_entry_new ();
GtkWidget *label = gtk_label_new_with_mnemonic ("_Hello");
gtk_label_set_mnemonic_widget (GTK_LABEL (label), entry);
Markup (styled text)
To make it easy to format text in a label (changing colors, fonts, etc.), label text can be provided in a simple [markup format][PangoMarkupFormat].
Here’s how to create a label with a small font:
⚠️ The following code is in C ⚠️
GtkWidget *label = gtk_label_new (NULL);
gtk_label_set_markup (GTK_LABEL (label), "<small>Small text</small>");
(See [complete documentation][PangoMarkupFormat] of available tags in the Pango manual.)
The markup passed to LabelExt::set_markup()
must be valid; for example,
literal <, > and & characters must be escaped as <, >, and &.
If you pass text obtained from the user, file, or a network to
LabelExt::set_markup()
, you’ll want to escape it with
g_markup_escape_text()
or g_markup_printf_escaped()
.
Markup strings are just a convenient way to set the pango::AttrList
on
a label; LabelExt::set_attributes()
may be a simpler way to set
attributes in some cases. Be careful though; pango::AttrList
tends to
cause internationalization problems, unless you’re applying attributes
to the entire string (i.e. unless you set the range of each attribute
to [0, G_MAXINT
)). The reason is that specifying the start_index and
end_index for a PangoAttribute
requires knowledge of the exact string
being displayed, so translations will cause problems.
Selectable labels
Labels can be made selectable with LabelExt::set_selectable()
.
Selectable labels allow the user to copy the label contents to
the clipboard. Only labels that contain useful-to-copy information
— such as error messages — should be made selectable.
Text layout # {label
-text-layout}
A label can contain any number of paragraphs, but will have performance problems if it contains more than a small number. Paragraphs are separated by newlines or other paragraph separators understood by Pango.
Labels can automatically wrap text if you call
LabelExt::set_line_wrap()
.
LabelExt::set_justify()
sets how the lines in a label align
with one another. If you want to set how the label as a whole
aligns in its available space, see the property::Widget::halign
and
property::Widget::valign
properties.
The property::Label::width-chars
and property::Label::max-width-chars
properties
can be used to control the size allocation of ellipsized or wrapped
labels. For ellipsizing labels, if either is specified (and less
than the actual text size), it is used as the minimum width, and the actual
text size is used as the natural width of the label. For wrapping labels,
width-chars is used as the minimum width, if specified, and max-width-chars
is used as the natural width. Even if max-width-chars specified, wrapping
labels will be rewrapped to use all of the available width.
Note that the interpretation of property::Label::width-chars
and
property::Label::max-width-chars
has changed a bit with the introduction of
[width-for-height geometry management.][geometry-management]
Links
Since 2.18, GTK+ supports markup for clickable hyperlinks in addition
to regular Pango markup. The markup for links is borrowed from HTML,
using the <a>
with “href“ and “title“ attributes. GTK+ renders links
similar to the way they appear in web browsers, with colored, underlined
text. The “title“ attribute is displayed as a tooltip on the link.
An example looks like this:
⚠️ The following code is in C ⚠️
const gchar *text =
"Go to the"
"<a href=\"http://www.gtk.org title=\"<i>Our</i> website\">"
"GTK+ website</a> for more...";
GtkWidget *label = gtk_label_new (NULL);
gtk_label_set_markup (GTK_LABEL (label), text);
It is possible to implement custom handling for links and their tooltips with
the signal::Label::activate-link
signal and the LabelExt::current_uri()
function.
Implements
LabelExt
, [MiscExt
][trait@crate::prelude::MiscExt], WidgetExt
, glib::ObjectExt
, BuildableExt
, WidgetExtManual
, BuildableExtManual
Implementations
sourceimpl Label
impl Label
pub const NONE: Option<&'static Label> = None
sourcepub fn with_mnemonic(str: &str) -> Label
pub fn with_mnemonic(str: &str) -> Label
Creates a new Label
, containing the text in str
.
If characters in str
are preceded by an underscore, they are
underlined. If you need a literal underscore character in a label, use
‘__’ (two underscores). The first underlined character represents a
keyboard accelerator called a mnemonic. The mnemonic key can be used
to activate another widget, chosen automatically, or explicitly using
LabelExt::set_mnemonic_widget()
.
If LabelExt::set_mnemonic_widget()
is not called, then the first
activatable ancestor of the Label
will be chosen as the mnemonic
widget. For instance, if the label is inside a button or menu item,
the button or menu item will automatically become the mnemonic widget
and be activated by the mnemonic.
str
The text of the label, with an underscore in front of the mnemonic character
Returns
the new Label
sourcepub fn builder() -> LabelBuilder
pub fn builder() -> LabelBuilder
Creates a new builder-pattern struct instance to construct Label
objects.
This method returns an instance of LabelBuilder
which can be used to create Label
objects.
Trait Implementations
sourceimpl Ord for Label
impl Ord for Label
sourceimpl ParentClassIs for Label
impl ParentClassIs for Label
sourceimpl<OT: ObjectType> PartialEq<OT> for Label
impl<OT: ObjectType> PartialEq<OT> for Label
sourceimpl<OT: ObjectType> PartialOrd<OT> for Label
impl<OT: ObjectType> PartialOrd<OT> for Label
sourcefn partial_cmp(&self, other: &OT) -> Option<Ordering>
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 · sourcefn lt(&self, other: &Rhs) -> bool
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 · sourcefn le(&self, other: &Rhs) -> bool
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
sourceimpl StaticType for Label
impl StaticType for Label
sourcefn static_type() -> Type
fn static_type() -> Type
Returns the type identifier of Self
.
impl Eq for Label
impl IsA<Buildable> for Label
impl IsA<Label> for AccelLabel
impl IsA<Misc> for Label
impl IsA<Widget> for Label
Auto Trait Implementations
impl RefUnwindSafe for Label
impl !Send for Label
impl !Sync for Label
impl Unpin for Label
impl UnwindSafe for Label
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Cast for T where
T: ObjectType,
impl<T> Cast for T where
T: ObjectType,
sourcefn upcast<T>(self) -> T where
T: ObjectType,
Self: IsA<T>,
fn upcast<T>(self) -> T where
T: ObjectType,
Self: IsA<T>,
Upcasts an object to a superclass or interface T
. Read more
sourcefn upcast_ref<T>(&self) -> &T where
T: ObjectType,
Self: IsA<T>,
fn upcast_ref<T>(&self) -> &T where
T: ObjectType,
Self: IsA<T>,
Upcasts an object to a reference of its superclass or interface T
. Read more
sourcefn downcast<T>(self) -> Result<T, Self> where
T: ObjectType,
Self: CanDowncast<T>,
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
sourcefn downcast_ref<T>(&self) -> Option<&T> where
T: ObjectType,
Self: CanDowncast<T>,
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
sourcefn dynamic_cast<T>(self) -> Result<T, Self> where
T: ObjectType,
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 downcast
and upcast
will do many checks at compile-time already. Read more
sourcefn dynamic_cast_ref<T>(&self) -> Option<&T> where
T: ObjectType,
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
sourceunsafe fn unsafe_cast<T>(self) -> T where
T: ObjectType,
unsafe fn unsafe_cast<T>(self) -> T where
T: ObjectType,
Casts to T
unconditionally. Read more
sourceunsafe fn unsafe_cast_ref<T>(&self) -> &T where
T: ObjectType,
unsafe fn unsafe_cast_ref<T>(&self) -> &T where
T: ObjectType,
Casts to &T
unconditionally. Read more
sourceimpl<U> IsSubclassableExt for U where
U: IsClass + ParentClassIs,
impl<U> IsSubclassableExt for U where
U: IsClass + ParentClassIs,
fn parent_class_init<T>(class: &mut Class<U>) where
T: ObjectSubclass,
<U as ParentClassIs>::Parent: IsSubclassable<T>,
fn parent_instance_init<T>(instance: &mut InitializingObject<T>) where
T: ObjectSubclass,
<U as ParentClassIs>::Parent: IsSubclassable<T>,
sourceimpl<T> ObjectExt for T where
T: ObjectType,
impl<T> ObjectExt for T where
T: ObjectType,
sourcefn is<U>(&self) -> bool where
U: StaticType,
fn is<U>(&self) -> bool where
U: StaticType,
Returns true
if the object is an instance of (can be cast to) T
.
sourcefn object_class(&self) -> &Class<Object>
fn object_class(&self) -> &Class<Object>
Returns the ObjectClass
of the object. Read more
sourcefn class_of<U>(&self) -> Option<&Class<U>> where
U: IsClass,
fn class_of<U>(&self) -> Option<&Class<U>> where
U: IsClass,
Returns the class of the object in the given type T
. Read more
sourcefn interface<U>(&self) -> Option<InterfaceRef<'_, U>> where
U: IsInterface,
fn interface<U>(&self) -> Option<InterfaceRef<'_, U>> where
U: IsInterface,
Returns the interface T
of the object. Read more
sourcefn try_set_property<V>(
&self,
property_name: &str,
value: V
) -> Result<(), BoolError> where
V: ToValue,
fn try_set_property<V>(
&self,
property_name: &str,
value: V
) -> Result<(), BoolError> where
V: ToValue,
Similar to Self::set_property
but fails instead of panicking.
sourcefn set_property<V>(&self, property_name: &str, value: V) where
V: ToValue,
fn set_property<V>(&self, property_name: &str, value: V) where
V: ToValue,
Sets the property property_name
of the object to value value
. Read more
sourcefn try_set_property_from_value(
&self,
property_name: &str,
value: &Value
) -> Result<(), BoolError>
fn try_set_property_from_value(
&self,
property_name: &str,
value: &Value
) -> Result<(), BoolError>
Similar to Self::set_property
but fails instead of panicking.
sourcefn set_property_from_value(&self, property_name: &str, value: &Value)
fn set_property_from_value(&self, property_name: &str, value: &Value)
Sets the property property_name
of the object to value value
. Read more
sourcefn try_set_properties(
&self,
property_values: &[(&str, &dyn ToValue)]
) -> Result<(), BoolError>
fn try_set_properties(
&self,
property_values: &[(&str, &dyn ToValue)]
) -> Result<(), BoolError>
Similar to Self::set_properties
but fails instead of panicking.
sourcefn set_properties(&self, property_values: &[(&str, &dyn ToValue)])
fn set_properties(&self, property_values: &[(&str, &dyn ToValue)])
Sets multiple properties of the object at once. Read more
sourcefn try_set_properties_from_value(
&self,
property_values: &[(&str, Value)]
) -> Result<(), BoolError>
fn try_set_properties_from_value(
&self,
property_values: &[(&str, Value)]
) -> Result<(), BoolError>
Similar to Self::set_properties_from_value
but fails instead of panicking.
sourcefn set_properties_from_value(&self, property_values: &[(&str, Value)])
fn set_properties_from_value(&self, property_values: &[(&str, Value)])
Sets multiple properties of the object at once. Read more
sourcefn try_property<V>(&self, property_name: &str) -> Result<V, BoolError> where
V: 'static + for<'b> FromValue<'b>,
fn try_property<V>(&self, property_name: &str) -> Result<V, BoolError> where
V: 'static + for<'b> FromValue<'b>,
Similar to Self::property
but fails instead of panicking.
sourcefn property<V>(&self, property_name: &str) -> V where
V: 'static + for<'b> FromValue<'b>,
fn property<V>(&self, property_name: &str) -> V where
V: 'static + for<'b> FromValue<'b>,
Gets the property property_name
of the object and cast it to the type V. Read more
sourcefn try_property_value(&self, property_name: &str) -> Result<Value, BoolError>
fn try_property_value(&self, property_name: &str) -> Result<Value, BoolError>
Similar to Self::property_value
but fails instead of panicking.
sourcefn property_value(&self, property_name: &str) -> Value
fn property_value(&self, property_name: &str) -> Value
Gets the property property_name
of the object. Read more
sourcefn has_property(&self, property_name: &str, type_: Option<Type>) -> bool
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
sourcefn property_type(&self, property_name: &str) -> Option<Type>
fn property_type(&self, property_name: &str) -> Option<Type>
Get the type of the property property_name
of this object. Read more
sourcefn find_property(&self, property_name: &str) -> Option<ParamSpec>
fn find_property(&self, property_name: &str) -> Option<ParamSpec>
Get the ParamSpec
of the property property_name
of this object.
sourcefn list_properties(&self) -> PtrSlice<ParamSpec>
fn list_properties(&self) -> PtrSlice<ParamSpec>
Return all ParamSpec
of the properties of this object.
sourcefn freeze_notify(&self) -> PropertyNotificationFreezeGuard
fn freeze_notify(&self) -> PropertyNotificationFreezeGuard
Freeze all property notifications until the return guard object is dropped. Read more
sourceunsafe fn set_qdata<QD>(&self, key: Quark, value: QD) where
QD: 'static,
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
sourceunsafe fn qdata<QD>(&self, key: Quark) -> Option<NonNull<QD>> where
QD: 'static,
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
sourceunsafe fn steal_qdata<QD>(&self, key: Quark) -> Option<QD> where
QD: 'static,
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
sourceunsafe fn set_data<QD>(&self, key: &str, value: QD) where
QD: 'static,
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
sourceunsafe fn data<QD>(&self, key: &str) -> Option<NonNull<QD>> where
QD: 'static,
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
sourceunsafe fn steal_data<QD>(&self, key: &str) -> Option<QD> where
QD: 'static,
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
sourcefn block_signal(&self, handler_id: &SignalHandlerId)
fn block_signal(&self, handler_id: &SignalHandlerId)
Block a given signal handler. Read more
sourcefn unblock_signal(&self, handler_id: &SignalHandlerId)
fn unblock_signal(&self, handler_id: &SignalHandlerId)
Unblock a given signal handler.
sourcefn stop_signal_emission(&self, signal_id: SignalId, detail: Option<Quark>)
fn stop_signal_emission(&self, signal_id: SignalId, detail: Option<Quark>)
Stop emission of the currently emitted signal.
sourcefn stop_signal_emission_by_name(&self, signal_name: &str)
fn stop_signal_emission_by_name(&self, signal_name: &str)
Stop emission of the currently emitted signal by the (possibly detailed) signal name.
sourcefn try_connect<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
fn try_connect<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
Similar to Self::connect
but fails instead of panicking.
sourcefn connect<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> SignalHandlerId where
F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
fn connect<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> SignalHandlerId where
F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
Connect to the signal signal_name
on this object. Read more
sourcefn try_connect_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
fn try_connect_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
Similar to Self::connect_id
but fails instead of panicking.
sourcefn connect_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> SignalHandlerId where
F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
fn connect_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> SignalHandlerId where
F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
Connect to the signal signal_id
on this object. Read more
sourcefn try_connect_local<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: 'static + Fn(&[Value]) -> Option<Value>,
fn try_connect_local<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: 'static + Fn(&[Value]) -> Option<Value>,
Similar to Self::connect_local
but fails instead of panicking.
sourcefn connect_local<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> SignalHandlerId where
F: 'static + Fn(&[Value]) -> Option<Value>,
fn connect_local<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> SignalHandlerId where
F: 'static + Fn(&[Value]) -> Option<Value>,
Connect to the signal signal_name
on this object. Read more
sourcefn try_connect_local_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: 'static + Fn(&[Value]) -> Option<Value>,
fn try_connect_local_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: 'static + Fn(&[Value]) -> Option<Value>,
Similar to Self::connect_local_id
but fails instead of panicking.
sourcefn connect_local_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> SignalHandlerId where
F: 'static + Fn(&[Value]) -> Option<Value>,
fn connect_local_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> SignalHandlerId where
F: 'static + Fn(&[Value]) -> Option<Value>,
Connect to the signal signal_id
on this object. Read more
sourceunsafe fn try_connect_unsafe<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value>,
unsafe fn try_connect_unsafe<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value>,
Similar to Self::connect_unsafe
but fails instead of panicking.
sourceunsafe fn connect_unsafe<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> SignalHandlerId where
F: Fn(&[Value]) -> Option<Value>,
unsafe fn connect_unsafe<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> SignalHandlerId where
F: Fn(&[Value]) -> Option<Value>,
Connect to the signal signal_name
on this object. Read more
sourceunsafe fn try_connect_unsafe_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value>,
unsafe fn try_connect_unsafe_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value>,
Similar to Self::connect_unsafe_id
but fails instead of panicking.
sourcefn try_connect_closure(
&self,
signal_name: &str,
after: bool,
closure: RustClosure
) -> Result<SignalHandlerId, BoolError>
fn try_connect_closure(
&self,
signal_name: &str,
after: bool,
closure: RustClosure
) -> Result<SignalHandlerId, BoolError>
Similar to Self::connect_closure
but fails instead of panicking.
sourcefn connect_closure(
&self,
signal_name: &str,
after: bool,
closure: RustClosure
) -> SignalHandlerId
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
sourcefn try_connect_closure_id(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
closure: RustClosure
) -> Result<SignalHandlerId, BoolError>
fn try_connect_closure_id(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
closure: RustClosure
) -> Result<SignalHandlerId, BoolError>
Similar to Self::connect_closure_id
but fails instead of panicking.
sourcefn connect_closure_id(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
closure: RustClosure
) -> SignalHandlerId
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
sourcefn watch_closure(&self, closure: &impl AsRef<Closure>)
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
Closure::invoke
. Read more
sourceunsafe fn connect_unsafe_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> SignalHandlerId where
F: Fn(&[Value]) -> Option<Value>,
unsafe fn connect_unsafe_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> SignalHandlerId where
F: Fn(&[Value]) -> Option<Value>,
Connect to the signal signal_id
on this object. Read more
sourcefn try_emit<R>(
&self,
signal_id: SignalId,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
fn try_emit<R>(
&self,
signal_id: SignalId,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
Similar to Self::emit
but fails instead of panicking.
sourcefn emit<R>(&self, signal_id: SignalId, args: &[&dyn ToValue]) -> R where
R: TryFromClosureReturnValue,
fn emit<R>(&self, signal_id: SignalId, args: &[&dyn ToValue]) -> R where
R: TryFromClosureReturnValue,
Emit signal by signal id. Read more
sourcefn try_emit_with_values(
&self,
signal_id: SignalId,
args: &[Value]
) -> Result<Option<Value>, BoolError>
fn try_emit_with_values(
&self,
signal_id: SignalId,
args: &[Value]
) -> Result<Option<Value>, BoolError>
Similar to Self::emit_with_values
but fails instead of panicking.
sourcefn emit_with_values(&self, signal_id: SignalId, args: &[Value]) -> Option<Value>
fn emit_with_values(&self, signal_id: SignalId, args: &[Value]) -> Option<Value>
Same as Self::emit
but takes Value
for the arguments.
sourcefn try_emit_by_name<R>(
&self,
signal_name: &str,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
fn try_emit_by_name<R>(
&self,
signal_name: &str,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
Similar to Self::emit_by_name
but fails instead of panicking.
sourcefn emit_by_name<R>(&self, signal_name: &str, args: &[&dyn ToValue]) -> R where
R: TryFromClosureReturnValue,
fn emit_by_name<R>(&self, signal_name: &str, args: &[&dyn ToValue]) -> R where
R: TryFromClosureReturnValue,
Emit signal by its name. Read more
sourcefn try_emit_by_name_with_values(
&self,
signal_name: &str,
args: &[Value]
) -> Result<Option<Value>, BoolError>
fn try_emit_by_name_with_values(
&self,
signal_name: &str,
args: &[Value]
) -> Result<Option<Value>, BoolError>
Similar to Self::emit_by_name_with_values
but fails instead of panicking.
sourcefn emit_by_name_with_values(
&self,
signal_name: &str,
args: &[Value]
) -> Option<Value>
fn emit_by_name_with_values(
&self,
signal_name: &str,
args: &[Value]
) -> Option<Value>
Emit signal by its name. Read more
sourcefn try_emit_with_details<R>(
&self,
signal_id: SignalId,
details: Quark,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
fn try_emit_with_details<R>(
&self,
signal_id: SignalId,
details: Quark,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
Similar to Self::emit_with_details
but fails instead of panicking.
sourcefn emit_with_details<R>(
&self,
signal_id: SignalId,
details: Quark,
args: &[&dyn ToValue]
) -> R where
R: TryFromClosureReturnValue,
fn emit_with_details<R>(
&self,
signal_id: SignalId,
details: Quark,
args: &[&dyn ToValue]
) -> R where
R: TryFromClosureReturnValue,
Emit signal by signal id with details. Read more
sourcefn try_emit_with_details_and_values(
&self,
signal_id: SignalId,
details: Quark,
args: &[Value]
) -> Result<Option<Value>, BoolError>
fn try_emit_with_details_and_values(
&self,
signal_id: SignalId,
details: Quark,
args: &[Value]
) -> Result<Option<Value>, BoolError>
Similar to Self::emit_with_details_and_values
but fails instead of panicking.
sourcefn emit_with_details_and_values(
&self,
signal_id: SignalId,
details: Quark,
args: &[Value]
) -> Option<Value>
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
sourcefn disconnect(&self, handler_id: SignalHandlerId)
fn disconnect(&self, handler_id: SignalHandlerId)
Disconnect a previously connected signal handler.
sourcefn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId where
F: 'static + Fn(&T, &ParamSpec) + Send + Sync,
fn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId where
F: 'static + Fn(&T, &ParamSpec) + Send + Sync,
Connect to the notify
signal of the object. Read more
sourcefn connect_notify_local<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId where
F: 'static + Fn(&T, &ParamSpec),
fn connect_notify_local<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId where
F: 'static + Fn(&T, &ParamSpec),
Connect to the notify
signal of the object. Read more
sourceunsafe fn connect_notify_unsafe<F>(
&self,
name: Option<&str>,
f: F
) -> SignalHandlerId where
F: Fn(&T, &ParamSpec),
unsafe fn connect_notify_unsafe<F>(
&self,
name: Option<&str>,
f: F
) -> SignalHandlerId where
F: Fn(&T, &ParamSpec),
Connect to the notify
signal of the object. Read more
sourcefn notify(&self, property_name: &str)
fn notify(&self, property_name: &str)
Notify that the given property has changed its value. Read more
sourcefn notify_by_pspec(&self, pspec: &ParamSpec)
fn notify_by_pspec(&self, pspec: &ParamSpec)
Notify that the given property has changed its value. Read more
sourcefn bind_property<O>(
&'a self,
source_property: &'a str,
target: &'a O,
target_property: &'a str
) -> BindingBuilder<'a> where
O: ObjectType,
fn bind_property<O>(
&'a self,
source_property: &'a str,
target: &'a O,
target_property: &'a str
) -> BindingBuilder<'a> where
O: ObjectType,
Bind property source_property
on this object to the target_property
on the target
object. Read more
sourceimpl<T> StaticTypeExt for T where
T: StaticType,
impl<T> StaticTypeExt for T where
T: StaticType,
sourcefn ensure_type()
fn ensure_type()
Ensures that the type has been registered with the type system.
sourceimpl<T> ToClosureReturnValue for T where
T: ToValue,
impl<T> ToClosureReturnValue for T where
T: ToValue,
fn to_closure_return_value(&self) -> Option<Value>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more