#[repr(transparent)]pub struct FileInfo { /* private fields */ }
Expand description
Functionality for manipulating basic metadata for files. FileInfo
implements methods for getting information that all files should
contain, and allows for manipulation of extended attributes.
See [GFileAttribute][gio-GFileAttribute] for more information on how GIO handles file attributes.
To obtain a FileInfo
for a File
, use FileExt::query_info()
(or its
async variant). To obtain a FileInfo
for a file input or output
stream, use FileInputStreamExt::query_info()
or
FileOutputStreamExt::query_info()
(or their async variants).
To change the actual attributes of a file, you should then set the
attribute in the FileInfo
and call FileExt::set_attributes_from_info()
or FileExt::set_attributes_async()
on a GFile.
However, not all attributes can be changed in the file. For instance,
the actual size of a file cannot be changed via set_size()
.
You may call FileExt::query_settable_attributes()
and
FileExt::query_writable_namespaces()
to discover the settable attributes
of a particular file at runtime.
The direct accessors, such as name()
, are slightly more
optimized than the generic attribute accessors, such as
attribute_byte_string()
.This optimization will matter
only if calling the API in a tight loop.
FileAttributeMatcher
allows for searching through a FileInfo
for
attributes.
Implements
Implementations
sourceimpl FileInfo
impl FileInfo
sourcepub fn modification_time(&self) -> SystemTime
pub fn modification_time(&self) -> SystemTime
Gets the modification time of the current self
and sets it
in result
.
Deprecated since 2.62
Use modification_date_time()
instead, as
GTimeVal
is deprecated due to the year 2038 problem.
Returns
result
a GTimeVal
.
sourcepub fn set_modification_time(&self, mtime: SystemTime)
pub fn set_modification_time(&self, mtime: SystemTime)
Sets the FILE_ATTRIBUTE_TIME_MODIFIED
and
FILE_ATTRIBUTE_TIME_MODIFIED_USEC
attributes in the file info to the
given time value.
Deprecated since 2.62
Use set_modification_date_time()
instead, as
GTimeVal
is deprecated due to the year 2038 problem.
mtime
a GTimeVal
.
sourceimpl FileInfo
impl FileInfo
sourcepub fn clear_status(&self)
pub fn clear_status(&self)
Clears the status information from self
.
sourcepub fn copy_into(&self, dest_info: &FileInfo)
pub fn copy_into(&self, dest_info: &FileInfo)
First clears all of the [GFileAttribute][gio-GFileAttribute] of dest_info
,
and then copies all of the file attributes from self
to dest_info
.
dest_info
destination to copy attributes to.
sourcepub fn access_date_time(&self) -> Option<DateTime>
Available on crate feature v2_70
only.
pub fn access_date_time(&self) -> Option<DateTime>
v2_70
only.Gets the access time of the current self
and returns it as a
glib::DateTime
.
This requires the FILE_ATTRIBUTE_TIME_ACCESS
attribute. If
FILE_ATTRIBUTE_TIME_ACCESS_USEC
is provided, the resulting glib::DateTime
will have microsecond precision.
Returns
access time, or None
if unknown
sourcepub fn attribute_as_string(&self, attribute: &str) -> Option<GString>
pub fn attribute_as_string(&self, attribute: &str) -> Option<GString>
Gets the value of a attribute, formatted as a string. This escapes things as needed to make the string valid UTF-8.
attribute
a file attribute key.
Returns
a UTF-8 string associated with the given attribute
, or
None
if the attribute wasn’t set.
When you’re done with the string it must be freed with g_free()
.
sourcepub fn attribute_byte_string(&self, attribute: &str) -> Option<GString>
pub fn attribute_byte_string(&self, attribute: &str) -> Option<GString>
sourcepub fn attribute_int32(&self, attribute: &str) -> i32
pub fn attribute_int32(&self, attribute: &str) -> i32
sourcepub fn attribute_int64(&self, attribute: &str) -> i64
pub fn attribute_int64(&self, attribute: &str) -> i64
sourcepub fn attribute_object(&self, attribute: &str) -> Option<Object>
pub fn attribute_object(&self, attribute: &str) -> Option<Object>
Gets the value of a glib::Object
attribute. If the attribute does
not contain a glib::Object
, None
will be returned.
attribute
a file attribute key.
Returns
a glib::Object
associated with the given attribute
,
or None
otherwise.
sourcepub fn attribute_status(&self, attribute: &str) -> FileAttributeStatus
pub fn attribute_status(&self, attribute: &str) -> FileAttributeStatus
Gets the attribute status for an attribute key.
attribute
a file attribute key
Returns
a FileAttributeStatus
for the given attribute
, or
FileAttributeStatus::Unset
if the key is invalid.
sourcepub fn attribute_string(&self, attribute: &str) -> Option<GString>
pub fn attribute_string(&self, attribute: &str) -> Option<GString>
sourcepub fn attribute_stringv(&self, attribute: &str) -> Vec<GString>
pub fn attribute_stringv(&self, attribute: &str) -> Vec<GString>
sourcepub fn attribute_type(&self, attribute: &str) -> FileAttributeType
pub fn attribute_type(&self, attribute: &str) -> FileAttributeType
Gets the attribute type for an attribute key.
attribute
a file attribute key.
Returns
a FileAttributeType
for the given attribute
, or
FileAttributeType::Invalid
if the key is not set.
sourcepub fn attribute_uint32(&self, attribute: &str) -> u32
pub fn attribute_uint32(&self, attribute: &str) -> u32
sourcepub fn attribute_uint64(&self, attribute: &str) -> u64
pub fn attribute_uint64(&self, attribute: &str) -> u64
sourcepub fn content_type(&self) -> Option<GString>
pub fn content_type(&self) -> Option<GString>
sourcepub fn creation_date_time(&self) -> Option<DateTime>
Available on crate feature v2_70
only.
pub fn creation_date_time(&self) -> Option<DateTime>
v2_70
only.Gets the creation time of the current self
and returns it as a
glib::DateTime
.
This requires the FILE_ATTRIBUTE_TIME_CREATED
attribute. If
FILE_ATTRIBUTE_TIME_CREATED_USEC
is provided, the resulting glib::DateTime
will have microsecond precision.
Returns
creation time, or None
if unknown
sourcepub fn deletion_date(&self) -> Option<DateTime>
pub fn deletion_date(&self) -> Option<DateTime>
Returns the glib::DateTime
representing the deletion date of the file, as
available in G_FILE_ATTRIBUTE_TRASH_DELETION_DATE. If the
G_FILE_ATTRIBUTE_TRASH_DELETION_DATE attribute is unset, None
is returned.
Returns
a glib::DateTime
, or None
.
sourcepub fn display_name(&self) -> GString
pub fn display_name(&self) -> GString
Gets a display name for a file. This is guaranteed to always be set.
Returns
a string containing the display name.
sourcepub fn etag(&self) -> Option<GString>
pub fn etag(&self) -> Option<GString>
Gets the [entity tag][gfile-etag] for a given
FileInfo
. See FILE_ATTRIBUTE_ETAG_VALUE
.
Returns
a string containing the value of the “etag:value” attribute.
sourcepub fn file_type(&self) -> FileType
pub fn file_type(&self) -> FileType
Gets a file’s type (whether it is a regular file, symlink, etc).
This is different from the file’s content type, see content_type()
.
Returns
a FileType
for the given file.
sourcepub fn is_symlink(&self) -> bool
pub fn is_symlink(&self) -> bool
sourcepub fn modification_date_time(&self) -> Option<DateTime>
Available on crate feature v2_62
only.
pub fn modification_date_time(&self) -> Option<DateTime>
v2_62
only.Gets the modification time of the current self
and returns it as a
glib::DateTime
.
This requires the FILE_ATTRIBUTE_TIME_MODIFIED
attribute. If
FILE_ATTRIBUTE_TIME_MODIFIED_USEC
is provided, the resulting glib::DateTime
will have microsecond precision.
Returns
modification time, or None
if unknown
sourcepub fn name(&self) -> PathBuf
pub fn name(&self) -> PathBuf
Gets the name for a file. This is guaranteed to always be set.
Returns
a string containing the file name.
sourcepub fn size(&self) -> i64
pub fn size(&self) -> i64
Gets the file’s size (in bytes). The size is retrieved through the value of
the FILE_ATTRIBUTE_STANDARD_SIZE
attribute and is converted
from guint64
to goffset
before returning the result.
Returns
a goffset
containing the file’s size (in bytes).
sourcepub fn sort_order(&self) -> i32
pub fn sort_order(&self) -> i32
Gets the value of the sort_order attribute from the FileInfo
.
See FILE_ATTRIBUTE_STANDARD_SORT_ORDER
.
Returns
a gint32
containing the value of the “standard::sort_order” attribute.
sourcepub fn symbolic_icon(&self) -> Option<Icon>
pub fn symbolic_icon(&self) -> Option<Icon>
sourcepub fn symlink_target(&self) -> Option<GString>
pub fn symlink_target(&self) -> Option<GString>
sourcepub fn has_attribute(&self, attribute: &str) -> bool
pub fn has_attribute(&self, attribute: &str) -> bool
sourcepub fn has_namespace(&self, name_space: &str) -> bool
pub fn has_namespace(&self, name_space: &str) -> bool
Checks if a file info structure has an attribute in the
specified name_space
.
name_space
a file attribute namespace.
Returns
true
if self
has an attribute in name_space
,
false
otherwise.
sourcepub fn list_attributes(&self, name_space: Option<&str>) -> Vec<GString>
pub fn list_attributes(&self, name_space: Option<&str>) -> Vec<GString>
Lists the file info structure’s attributes.
name_space
a file attribute key’s namespace, or None
to list
all attributes.
Returns
a
null-terminated array of strings of all of the possible attribute
types for the given name_space
, or None
on error.
sourcepub fn remove_attribute(&self, attribute: &str)
pub fn remove_attribute(&self, attribute: &str)
sourcepub fn set_access_date_time(&self, atime: &DateTime)
Available on crate feature v2_70
only.
pub fn set_access_date_time(&self, atime: &DateTime)
v2_70
only.Sets the FILE_ATTRIBUTE_TIME_ACCESS
and
FILE_ATTRIBUTE_TIME_ACCESS_USEC
attributes in the file info to the
given date/time value.
atime
sourcepub fn set_attribute_boolean(&self, attribute: &str, attr_value: bool)
pub fn set_attribute_boolean(&self, attribute: &str, attr_value: bool)
Sets the attribute
to contain the given attr_value
,
if possible.
attribute
a file attribute key.
attr_value
a boolean value.
sourcepub fn set_attribute_byte_string(&self, attribute: &str, attr_value: &str)
pub fn set_attribute_byte_string(&self, attribute: &str, attr_value: &str)
Sets the attribute
to contain the given attr_value
,
if possible.
attribute
a file attribute key.
attr_value
a byte string.
sourcepub fn set_attribute_int32(&self, attribute: &str, attr_value: i32)
pub fn set_attribute_int32(&self, attribute: &str, attr_value: i32)
Sets the attribute
to contain the given attr_value
,
if possible.
attribute
a file attribute key.
attr_value
a signed 32-bit integer
sourcepub fn set_attribute_int64(&self, attribute: &str, attr_value: i64)
pub fn set_attribute_int64(&self, attribute: &str, attr_value: i64)
Sets the attribute
to contain the given attr_value
,
if possible.
attribute
attribute name to set.
attr_value
int64 value to set attribute to.
sourcepub fn set_attribute_mask(&self, mask: &FileAttributeMatcher)
pub fn set_attribute_mask(&self, mask: &FileAttributeMatcher)
sourcepub fn set_attribute_object(
&self,
attribute: &str,
attr_value: &impl IsA<Object>
)
pub fn set_attribute_object(
&self,
attribute: &str,
attr_value: &impl IsA<Object>
)
Sets the attribute
to contain the given attr_value
,
if possible.
attribute
a file attribute key.
attr_value
a glib::Object
.
sourcepub fn set_attribute_status(
&self,
attribute: &str,
status: FileAttributeStatus
) -> bool
pub fn set_attribute_status(
&self,
attribute: &str,
status: FileAttributeStatus
) -> bool
Sets the attribute status for an attribute key. This is only
needed by external code that implement FileExt::set_attributes_from_info()
or similar functions.
The attribute must exist in self
for this to work. Otherwise false
is returned and self
is unchanged.
attribute
a file attribute key
status
Returns
true
if the status was changed, false
if the key was not set.
sourcepub fn set_attribute_string(&self, attribute: &str, attr_value: &str)
pub fn set_attribute_string(&self, attribute: &str, attr_value: &str)
Sets the attribute
to contain the given attr_value
,
if possible.
attribute
a file attribute key.
attr_value
a UTF-8 string.
sourcepub fn set_attribute_stringv(&self, attribute: &str, attr_value: &[&str])
pub fn set_attribute_stringv(&self, attribute: &str, attr_value: &[&str])
Sets the attribute
to contain the given attr_value
,
if possible.
Sinze: 2.22
attribute
a file attribute key
attr_value
a None
terminated array of UTF-8 strings.
sourcepub fn set_attribute_uint32(&self, attribute: &str, attr_value: u32)
pub fn set_attribute_uint32(&self, attribute: &str, attr_value: u32)
Sets the attribute
to contain the given attr_value
,
if possible.
attribute
a file attribute key.
attr_value
an unsigned 32-bit integer.
sourcepub fn set_attribute_uint64(&self, attribute: &str, attr_value: u64)
pub fn set_attribute_uint64(&self, attribute: &str, attr_value: u64)
Sets the attribute
to contain the given attr_value
,
if possible.
attribute
a file attribute key.
attr_value
an unsigned 64-bit integer.
sourcepub fn set_content_type(&self, content_type: &str)
pub fn set_content_type(&self, content_type: &str)
Sets the content type attribute for a given FileInfo
.
See FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE
.
content_type
a content type. See [GContentType][gio-GContentType]
sourcepub fn set_creation_date_time(&self, creation_time: &DateTime)
Available on crate feature v2_70
only.
pub fn set_creation_date_time(&self, creation_time: &DateTime)
v2_70
only.Sets the FILE_ATTRIBUTE_TIME_CREATED
and
FILE_ATTRIBUTE_TIME_CREATED_USEC
attributes in the file info to the
given date/time value.
creation_time
sourcepub fn set_display_name(&self, display_name: &str)
pub fn set_display_name(&self, display_name: &str)
Sets the display name for the current FileInfo
.
See FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME
.
display_name
a string containing a display name.
sourcepub fn set_edit_name(&self, edit_name: &str)
pub fn set_edit_name(&self, edit_name: &str)
Sets the edit name for the current file.
See FILE_ATTRIBUTE_STANDARD_EDIT_NAME
.
edit_name
a string containing an edit name.
sourcepub fn set_file_type(&self, type_: FileType)
pub fn set_file_type(&self, type_: FileType)
Sets the “is_hidden” attribute in a FileInfo
according to is_hidden
.
See FILE_ATTRIBUTE_STANDARD_IS_HIDDEN
.
is_hidden
a gboolean
.
sourcepub fn set_is_symlink(&self, is_symlink: bool)
pub fn set_is_symlink(&self, is_symlink: bool)
Sets the “is_symlink” attribute in a FileInfo
according to is_symlink
.
See FILE_ATTRIBUTE_STANDARD_IS_SYMLINK
.
is_symlink
a gboolean
.
sourcepub fn set_modification_date_time(&self, mtime: &DateTime)
Available on crate feature v2_62
only.
pub fn set_modification_date_time(&self, mtime: &DateTime)
v2_62
only.Sets the FILE_ATTRIBUTE_TIME_MODIFIED
and
FILE_ATTRIBUTE_TIME_MODIFIED_USEC
attributes in the file info to the
given date/time value.
mtime
sourcepub fn set_name(&self, name: impl AsRef<Path>)
pub fn set_name(&self, name: impl AsRef<Path>)
Sets the name attribute for the current FileInfo
.
See FILE_ATTRIBUTE_STANDARD_NAME
.
name
a string containing a name.
sourcepub fn set_size(&self, size: i64)
pub fn set_size(&self, size: i64)
Sets the FILE_ATTRIBUTE_STANDARD_SIZE
attribute in the file info
to the given size.
size
a goffset
containing the file’s size.
sourcepub fn set_sort_order(&self, sort_order: i32)
pub fn set_sort_order(&self, sort_order: i32)
Sets the sort order attribute in the file info structure. See
FILE_ATTRIBUTE_STANDARD_SORT_ORDER
.
sort_order
a sort order integer.
sourcepub fn set_symbolic_icon(&self, icon: &impl IsA<Icon>)
pub fn set_symbolic_icon(&self, icon: &impl IsA<Icon>)
Sets the symbolic icon for a given FileInfo
.
See FILE_ATTRIBUTE_STANDARD_SYMBOLIC_ICON
.
icon
a Icon
.
sourcepub fn set_symlink_target(&self, symlink_target: &str)
pub fn set_symlink_target(&self, symlink_target: &str)
Sets the FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET
attribute in the file info
to the given symlink target.
symlink_target
a static string containing a path to a symlink target.
sourcepub fn unset_attribute_mask(&self)
pub fn unset_attribute_mask(&self)
Unsets a mask set by set_attribute_mask()
, if one
is set.
Trait Implementations
sourceimpl Ord for FileInfo
impl Ord for FileInfo
sourceimpl ParentClassIs for FileInfo
impl ParentClassIs for FileInfo
sourceimpl<OT: ObjectType> PartialEq<OT> for FileInfo
impl<OT: ObjectType> PartialEq<OT> for FileInfo
sourceimpl<OT: ObjectType> PartialOrd<OT> for FileInfo
impl<OT: ObjectType> PartialOrd<OT> for FileInfo
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 FileInfo
impl StaticType for FileInfo
sourcefn static_type() -> Type
fn static_type() -> Type
Returns the type identifier of Self
.
impl Eq for FileInfo
Auto Trait Implementations
impl RefUnwindSafe for FileInfo
impl !Send for FileInfo
impl !Sync for FileInfo
impl Unpin for FileInfo
impl UnwindSafe for FileInfo
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