pub struct BitmapCache { /* private fields */ }Expand description
Creates and caches a bitmap representation of a visual.
Implementations§
Source§impl BitmapCache
impl BitmapCache
Source§impl BitmapCache
impl BitmapCache
Sourcepub fn render_at_scale_property() -> &'static StyledProperty<f64>
pub fn render_at_scale_property() -> &'static StyledProperty<f64>
Defines the RenderAtScale property.
Sourcepub fn snaps_to_device_pixels_property() -> &'static StyledProperty<bool>
pub fn snaps_to_device_pixels_property() -> &'static StyledProperty<bool>
Defines the SnapsToDevicePixels property.
Sourcepub fn enable_clear_type_property() -> &'static StyledProperty<bool>
pub fn enable_clear_type_property() -> &'static StyledProperty<bool>
Defines the EnableClearType property.
Source§impl BitmapCache
impl BitmapCache
pub fn new() -> Ref<Self>
Sourcepub fn render_at_scale(&self) -> f64
pub fn render_at_scale(&self) -> f64
The scale that is applied to the bitmap.
pub fn set_render_at_scale(&self, value: f64)
Sourcepub fn snaps_to_device_pixels(&self) -> bool
pub fn snaps_to_device_pixels(&self) -> bool
Whether the bitmap is rendered with pixel snapping.
pub fn set_snaps_to_device_pixels(&self, value: bool)
Sourcepub fn enable_clear_type(&self) -> bool
pub fn enable_clear_type(&self) -> bool
Whether the bitmap is rendered with ClearType activated.
pub fn set_enable_clear_type(&self, value: bool)
Methods from Deref<Target = CacheMode>§
Sourcepub fn get_for_compositor(&self, c: &Rc<Compositor>) -> Rc<CompositionCacheMode>
pub fn get_for_compositor(&self, c: &Rc<Compositor>) -> Rc<CompositionCacheMode>
The composition cache mode that mirrors this cache mode on
compositor c.
Methods from Deref<Target = StyledElement>§
Sourcepub fn get_logical_ancestors(&self) -> LogicalAncestors ⓘ
pub fn get_logical_ancestors(&self) -> LogicalAncestors ⓘ
Enumerates the ancestors of the element in the logical tree, from its parent to the root.
Sourcepub fn get_self_and_logical_ancestors(&self) -> LogicalAncestors ⓘ
pub fn get_self_and_logical_ancestors(&self) -> LogicalAncestors ⓘ
Enumerates the element and its ancestors in the logical tree.
Sourcepub fn find_logical_ancestor_of_type<T: ObjectType>(
&self,
include_self: bool,
) -> Option<Ref<T>>
pub fn find_logical_ancestor_of_type<T: ObjectType>( &self, include_self: bool, ) -> Option<Ref<T>>
Finds the first logical ancestor of class T, optionally starting
with the element itself.
Sourcepub fn get_logical_children(&self) -> Rc<Vec<Ref<StyledElement>>>
pub fn get_logical_children(&self) -> Rc<Vec<Ref<StyledElement>>>
The logical children of the element.
Sourcepub fn get_logical_descendants(&self) -> LogicalDescendants ⓘ
pub fn get_logical_descendants(&self) -> LogicalDescendants ⓘ
Enumerates the descendants of the element in the logical tree, in depth-first pre-order.
Sourcepub fn get_self_and_logical_descendants(&self) -> LogicalDescendants ⓘ
pub fn get_self_and_logical_descendants(&self) -> LogicalDescendants ⓘ
Enumerates the element and its descendants in the logical tree, in depth-first pre-order.
Sourcepub fn find_logical_descendant_of_type<T: ObjectType>(
&self,
include_self: bool,
) -> Option<Ref<T>>
pub fn find_logical_descendant_of_type<T: ObjectType>( &self, include_self: bool, ) -> Option<Ref<T>>
Finds the first logical descendant of class T (depth first),
optionally starting with the element itself.
Sourcepub fn get_logical_parent(&self) -> Option<Ref<StyledElement>>
pub fn get_logical_parent(&self) -> Option<Ref<StyledElement>>
The logical parent of the element.
Sourcepub fn get_logical_parent_of_type<T: ObjectType>(&self) -> Option<Ref<T>>
pub fn get_logical_parent_of_type<T: ObjectType>(&self) -> Option<Ref<T>>
The logical parent of the element, if it is of class T.
Sourcepub fn get_logical_siblings(&self) -> Rc<Vec<Ref<StyledElement>>>
pub fn get_logical_siblings(&self) -> Rc<Vec<Ref<StyledElement>>>
The children of the logical parent of the element, including the element itself; empty when the element has no logical parent.
Sourcepub fn is_logical_ancestor_of(&self, target: Option<&StyledElement>) -> bool
pub fn is_logical_ancestor_of(&self, target: Option<&StyledElement>) -> bool
Whether the element is a logical ancestor of target.
Sourcepub fn to_ref(&self) -> Ref<StyledElement>
pub fn to_ref(&self) -> Ref<StyledElement>
Returns a strong reference to this object.
Sourcepub fn begin_init(&self)
pub fn begin_init(&self)
Signals the beginning of a batch of initialization: styling is
deferred until the matching end_init.
Sourcepub fn try_end_init(&self) -> Result<(), InitializationError>
pub fn try_end_init(&self) -> Result<(), InitializationError>
Signals the end of a batch of initialization: the element is
styled (if it is attached to a rooted logical tree) and
initialized. A style or control theme that cannot be applied (two
setters for the same property) is an error, the counterpart of
the invalid operation EndInit raises in the managed original;
what follows the failure is skipped. This is the overridable
member; end_init is the form that
panics on the error.
Sourcepub fn logical_children_collection_changed(
&self,
e: &NotifyCollectionChangedEventArgs<'_, Ref<StyledElement>>,
)
pub fn logical_children_collection_changed( &self, e: &NotifyCollectionChangedEventArgs<'_, Ref<StyledElement>>, )
Called when the logical children collection changes.
Sourcepub fn on_attached_to_logical_tree(&self, e: &LogicalTreeAttachmentEventArgs)
pub fn on_attached_to_logical_tree(&self, e: &LogicalTreeAttachmentEventArgs)
Called when the styled element is added to a rooted logical tree.
Sourcepub fn on_detached_from_logical_tree(&self, e: &LogicalTreeAttachmentEventArgs)
pub fn on_detached_from_logical_tree(&self, e: &LogicalTreeAttachmentEventArgs)
Called when the styled element is removed from a rooted logical tree.
Sourcepub fn on_data_context_changed(&self)
pub fn on_data_context_changed(&self)
Called when the data context changes.
Sourcepub fn on_data_context_begin_update(&self)
pub fn on_data_context_begin_update(&self)
Called when the data context begins updating.
Sourcepub fn on_data_context_end_update(&self)
pub fn on_data_context_end_update(&self)
Called when the data context finishes updating.
Sourcepub fn on_initialized(&self)
pub fn on_initialized(&self)
Called when the control finishes initialization.
Sourcepub fn style_key_override(&self) -> &'static TypeInfo
pub fn style_key_override(&self) -> &'static TypeInfo
The type by which the element is styled. Defaults to the element’s own type; override to be styled as a base class.
Sourcepub fn on_control_theme_changed(&self)
pub fn on_control_theme_changed(&self)
Called when the control theme changes.
Sourcepub fn on_templated_parent_control_theme_changed(&self)
pub fn on_templated_parent_control_theme_changed(&self)
Called when the templated parent’s control theme changes.
Sourcepub fn invalidate_styles(&self, recurse: bool)
pub fn invalidate_styles(&self, recurse: bool)
Detaches all styles from the element (and optionally from its inheritance children) so that they are re-applied.
Sourcepub fn is_logical_root(&self) -> bool
pub fn is_logical_root(&self) -> bool
Whether the element is the root of a logical tree.
Sourcepub fn styling_parent(&self) -> Option<StyleHostRef>
pub fn styling_parent(&self) -> Option<StyleHostRef>
The parent style host of the element: by default the inheritance parent, when it is a styled element. The root of a tree overrides this to return the host of the global styles.
Sourcepub fn notify_child_resources_changed(&self, e: ResourcesChangedEventArgs)
pub fn notify_child_resources_changed(&self, e: ResourcesChangedEventArgs)
Notifies the children of the element that the resources visible to them have changed. The base method notifies the logical children.
Sourcepub fn child_index_provider(&self) -> Option<Rc<dyn IChildIndexProvider>>
pub fn child_index_provider(&self) -> Option<Rc<dyn IChildIndexProvider>>
The child index provider implemented by the element, if any. Used to match the children of the element by their position.
Sourcepub fn is_theme_variant_root(&self) -> bool
pub fn is_theme_variant_root(&self) -> bool
Whether the element is a root of theme variant resolution: at a root the default theme variant resolves to the variant of the platform instead of being inherited.
Sourcepub fn attached_to_logical_tree(
&self,
handler: impl Fn(&LogicalTreeAttachmentEventArgs) + 'static,
) -> Rc<dyn IDisposable>
pub fn attached_to_logical_tree( &self, handler: impl Fn(&LogicalTreeAttachmentEventArgs) + 'static, ) -> Rc<dyn IDisposable>
Raised when the styled element is attached to a rooted logical tree.
Sourcepub fn detached_from_logical_tree(
&self,
handler: impl Fn(&LogicalTreeAttachmentEventArgs) + 'static,
) -> Rc<dyn IDisposable>
pub fn detached_from_logical_tree( &self, handler: impl Fn(&LogicalTreeAttachmentEventArgs) + 'static, ) -> Rc<dyn IDisposable>
Raised when the styled element is detached from a rooted logical tree.
Sourcepub fn data_context_changed(
&self,
handler: impl Fn() + 'static,
) -> Rc<dyn IDisposable>
pub fn data_context_changed( &self, handler: impl Fn() + 'static, ) -> Rc<dyn IDisposable>
Occurs when the data context property changes.
Sourcepub fn initialized(&self, handler: impl Fn() + 'static) -> Rc<dyn IDisposable>
pub fn initialized(&self, handler: impl Fn() + 'static) -> Rc<dyn IDisposable>
Occurs when the styled element has finished initialization.
Sourcepub fn resources_changed(
&self,
handler: impl Fn(&ResourcesChangedEventArgs) + 'static,
) -> Rc<dyn IDisposable>
pub fn resources_changed( &self, handler: impl Fn(&ResourcesChangedEventArgs) + 'static, ) -> Rc<dyn IDisposable>
Raised when the resources change on the element or an ancestor of the element.
Sourcepub fn actual_theme_variant_changed(
&self,
handler: impl Fn() + 'static,
) -> Rc<dyn IDisposable>
pub fn actual_theme_variant_changed( &self, handler: impl Fn() + 'static, ) -> Rc<dyn IDisposable>
Raised when the theme variant in effect for the element changes.
Sourcepub fn name(&self) -> Option<String>
pub fn name(&self) -> Option<String>
The name of the styled element.
An element’s name is used to uniquely identify it within its name scope. Once the element has been styled its name may not be changed.
pub fn set_name(&self, value: Option<String>)
Sourcepub fn classes(&self) -> Classes
pub fn classes(&self) -> Classes
The styled element’s classes.
The collection is returned by handle: clones refer to the same collection.
Sourcepub fn pseudo_classes(&self) -> &dyn IPseudoClasses
pub fn pseudo_classes(&self) -> &dyn IPseudoClasses
The pseudoclasses of the element, settable by the control itself.
Sourcepub fn data_context(&self) -> Option<BoxedValue>
pub fn data_context(&self) -> Option<BoxedValue>
The control’s data context.
The data context is an inherited property that specifies the default object that will be used for data binding.
pub fn set_data_context(&self, value: Option<BoxedValue>)
Sourcepub fn is_initialized(&self) -> bool
pub fn is_initialized(&self) -> bool
Whether the element has finished initialization.
For more information about when this happens, see the initialized
event.
Sourcepub fn styles(&self) -> Ref<Styles>
pub fn styles(&self) -> Ref<Styles>
The styles for the styled element.
Styles for the entire application are added to the application’s styles collection.
Sourcepub fn is_styles_initialized(&self) -> bool
pub fn is_styles_initialized(&self) -> bool
Whether the styles collection of the element has been created.
Sourcepub fn resources(&self) -> Ref<ResourceDictionary>
pub fn resources(&self) -> Ref<ResourceDictionary>
The styled element’s resource dictionary.
pub fn set_resources(&self, value: Ref<ResourceDictionary>)
Sourcepub fn theme(&self) -> Option<Ref<ControlTheme>>
pub fn theme(&self) -> Option<Ref<ControlTheme>>
The theme to be applied to the element.
By default the theme is looked up as a resource keyed by the element’s style key; setting this property takes precedence over that lookup.
pub fn set_theme(&self, value: impl Into<Nullable<ControlTheme>>)
Sourcepub fn actual_theme_variant(&self) -> Option<ThemeVariant>
pub fn actual_theme_variant(&self) -> Option<ThemeVariant>
The UI theme variant that is currently used by the element, which
might be different than the requested theme variant. None until a
theme variant has been established for the element or an ancestor.
Sourcepub fn has_resources(&self) -> bool
pub fn has_resources(&self) -> bool
Whether the element or its styles have resources.
Sourcepub fn try_get_resource(
&self,
key: &ResourceKey,
theme: Option<&ThemeVariant>,
) -> Option<ResourceValue>
pub fn try_get_resource( &self, key: &ResourceKey, theme: Option<&ThemeVariant>, ) -> Option<ResourceValue>
Tries to find a resource within the element: in its resource dictionary, then in its styles.
Sourcepub fn try_find_resource(
&self,
key: &ResourceKey,
theme: Option<&ThemeVariant>,
) -> Option<ResourceValue>
pub fn try_find_resource( &self, key: &ResourceKey, theme: Option<&ThemeVariant>, ) -> Option<ResourceValue>
Tries to find a resource by searching up the logical tree and then the global styles.
Sourcepub fn find_resource(&self, key: &ResourceKey) -> ResourceValue
pub fn find_resource(&self, key: &ResourceKey) -> ResourceValue
Finds a resource by searching up the logical tree and then the global styles. Returns the unset value marker if it is not found.
Sourcepub fn templated_parent(&self) -> Option<Ref<FerroObject>>
pub fn templated_parent(&self) -> Option<Ref<FerroObject>>
The styled element whose lookless template this element is part of.
Sourcepub fn set_templated_parent(&self, value: impl Into<Nullable<FerroObject>>)
pub fn set_templated_parent(&self, value: impl Into<Nullable<FerroObject>>)
Sets the templated parent. Called by the template that creates the element.
Sourcepub fn logical_children(&self) -> &FerroList<Ref<StyledElement>>
pub fn logical_children(&self) -> &FerroList<Ref<StyledElement>>
The styled element’s logical children.
Sourcepub fn is_attached_to_logical_tree(&self) -> bool
pub fn is_attached_to_logical_tree(&self) -> bool
Whether the element is attached to a rooted logical tree.
Sourcepub fn parent(&self) -> Option<Ref<StyledElement>>
pub fn parent(&self) -> Option<Ref<StyledElement>>
The styled element’s logical parent.
Sourcepub fn apply_styling(&self) -> bool
pub fn apply_styling(&self) -> bool
Applies styling to the control if the control is initialized and styling is not already applied.
The styling system will automatically apply styling when required, so this method need only be called by tests or in rare special cases.
Returns true if styling is applied to the control, false if the control is still initializing.
Sourcepub fn try_apply_styling(&self) -> Result<bool, DuplicateSetterError>
pub fn try_apply_styling(&self) -> Result<bool, DuplicateSetterError>
As apply_styling, reporting a style or
control theme that cannot be applied (two setters for the same
property: the invalid operation of the managed original) instead of
panicking. After an error the styling pass is ended and the element
is not marked as styled, as when the managed original throws.
Sourcepub fn end_init(&self)
pub fn end_init(&self)
Signals the end of a batch of initialization
(try_end_init). A style or control theme that
cannot be applied panics with the message of the error.
Sourcepub fn initialize_if_needed(&self)
pub fn initialize_if_needed(&self)
Marks the element as initialized and raises the initialization notifications, if initialization is complete.
Sourcepub fn set_parent(&self, parent: impl Into<Nullable<StyledElement>>)
pub fn set_parent(&self, parent: impl Into<Nullable<StyledElement>>)
Sets the element’s logical parent.
You should not usually need to call this method: it is called when an element is added to or removed from a logical children collection.
Sourcepub fn notify_attached_to_logical_tree(
&self,
e: &LogicalTreeAttachmentEventArgs,
)
pub fn notify_attached_to_logical_tree( &self, e: &LogicalTreeAttachmentEventArgs, )
Notifies the element that it has been attached to a rooted logical tree. Called by a parent for children that are part of its logical tree without being in its logical children collection (the template child of a templated control).
Sourcepub fn notify_detached_from_logical_tree(
&self,
e: &LogicalTreeAttachmentEventArgs,
)
pub fn notify_detached_from_logical_tree( &self, e: &LogicalTreeAttachmentEventArgs, )
Notifies the element that it has been detached from a rooted logical
tree. See notify_attached_to_logical_tree.
Sourcepub fn get_effective_theme(&self) -> Option<Ref<ControlTheme>>
pub fn get_effective_theme(&self) -> Option<Ref<ControlTheme>>
The theme in effect for the element: the Theme property if set,
otherwise the control theme resource keyed by the element’s style key
that is visible to the element (a resource holding a
Ref<ControlTheme>).
Sourcepub fn styles_added(&self, styles: &[Rc<dyn IStyle>])
pub fn styles_added(&self, styles: &[Rc<dyn IStyle>])
Called when styles are added to the styles collection of the element or a nested styles collection.
Sourcepub fn styles_removed(&self, styles: &[Rc<dyn IStyle>])
pub fn styles_removed(&self, styles: &[Rc<dyn IStyle>])
Called when styles are removed from the styles collection of the element or a nested styles collection.
Sourcepub fn notify_resources_changed(
&self,
e: ResourcesChangedEventArgs,
propagate: bool,
)
pub fn notify_resources_changed( &self, e: ResourcesChangedEventArgs, propagate: bool, )
Notifies the element, and with propagate its children, that the
resources visible to it have changed.
Sourcepub fn set_data_context_with_priority(
&self,
value: Option<BoxedValue>,
priority: BindingPriority,
) -> Option<Rc<dyn IDisposable>>
pub fn set_data_context_with_priority( &self, value: Option<BoxedValue>, priority: BindingPriority, ) -> Option<Rc<dyn IDisposable>>
The priority-aware setter used by templates.
Sourcepub fn bind_class(
&self,
class_name: &str,
source: &dyn BindingBase,
anchor: Option<&Ref<FerroObject>>,
) -> Rc<dyn BindingExpressionBase>
pub fn bind_class( &self, class_name: &str, source: &dyn BindingBase, anchor: Option<&Ref<FerroObject>>, ) -> Rc<dyn BindingExpressionBase>
Binds the presence of the class class_name on this element to
source. anchor provides the context the binding locates its source
with when the element cannot.
Methods from Deref<Target = Animatable>§
Sourcepub fn to_ref(&self) -> Ref<Animatable>
pub fn to_ref(&self) -> Ref<Animatable>
Returns a strong reference to this object.
Sourcepub fn clock(&self) -> Option<Rc<dyn IClock>>
pub fn clock(&self) -> Option<Rc<dyn IClock>>
The clock which controls the animations and transitions on the object and, by inheritance, on its descendants. The global clock is used when there is none.
pub fn set_clock(&self, value: Option<Rc<dyn IClock>>)
Sourcepub fn transitions(&self) -> Option<Transitions>
pub fn transitions(&self) -> Option<Transitions>
The property transitions of the object.
pub fn set_transitions(&self, value: Option<Transitions>)
Sourcepub fn enable_transitions(&self)
pub fn enable_transitions(&self)
Enables transitions for the object.
This is called when the object is attached to the visual tree, so that transitions do not run on its initial property values.
Sourcepub fn disable_transitions(&self)
pub fn disable_transitions(&self)
Disables transitions for the object.
This is called when the object is detached from the visual tree.
Sourcepub fn try_get_transition_instance(
&self,
transition: &Rc<dyn ITransition>,
) -> Option<Rc<TransitionInstance>>
pub fn try_get_transition_instance( &self, transition: &Rc<dyn ITransition>, ) -> Option<Rc<TransitionInstance>>
The progress of the transition that transition is currently
running on this object: the instance created when the transition was
last applied. None when the transition is not one of the object’s
transitions or has not been applied.
Methods from Deref<Target = FerroObject>§
Sourcepub fn dispatcher(&self) -> &Arc<Dispatcher> ⓘ
pub fn dispatcher(&self) -> &Arc<Dispatcher> ⓘ
Returns the Dispatcher that this object is associated with: the
dispatcher of the thread that owns the object.
Sourcepub fn check_access(&self) -> bool
pub fn check_access(&self) -> bool
Returns whether the calling thread is the thread that owns this object.
Sourcepub fn verify_access(&self)
pub fn verify_access(&self)
Sourcepub fn to_ref(&self) -> Ref<FerroObject>
pub fn to_ref(&self) -> Ref<FerroObject>
A strong reference to this object.
Sourcepub fn to_weak(&self) -> WeakRef<FerroObject>
pub fn to_weak(&self) -> WeakRef<FerroObject>
A weak reference to this object.
Sourcepub fn is<T: ObjectType>(&self) -> bool
pub fn is<T: ObjectType>(&self) -> bool
Whether the object is of class T or a class derived from it.
Sourcepub fn downcast_ref<T: ObjectType>(&self) -> Option<&T>
pub fn downcast_ref<T: ObjectType>(&self) -> Option<&T>
Returns the object viewed as class T if it is one.
Sourcepub fn on_property_changed(&self, change: &FerroPropertyChangedEventArgs<'_>)
pub fn on_property_changed(&self, change: &FerroPropertyChangedEventArgs<'_>)
Invokes the on_property_changed virtual member.
Sourcepub fn inheritance_parent(&self) -> Option<Ref<FerroObject>>
pub fn inheritance_parent(&self) -> Option<Ref<FerroObject>>
The parent object that inherited property values are inherited from.
Sourcepub fn set_inheritance_parent(&self, value: impl Into<Nullable<FerroObject>>)
pub fn set_inheritance_parent(&self, value: impl Into<Nullable<FerroObject>>)
Sets the parent object that inherited property values are inherited from.
Sourcepub fn clear_value<T: PropertyValue>(
&self,
property: &'static StyledProperty<T>,
)
pub fn clear_value<T: PropertyValue>( &self, property: &'static StyledProperty<T>, )
Clears a property’s local value.
Sourcepub fn get_value<T: PropertyValue>(
&self,
property: &'static StyledProperty<T>,
) -> T
pub fn get_value<T: PropertyValue>( &self, property: &'static StyledProperty<T>, ) -> T
Gets a property value.
Sourcepub fn get_base_value<T: PropertyValue>(
&self,
property: &'static StyledProperty<T>,
) -> Option<T>
pub fn get_base_value<T: PropertyValue>( &self, property: &'static StyledProperty<T>, ) -> Option<T>
Gets a property’s base value: the value excluding animated values.
Returns None if the value comes from inheritance or the default.
Sourcepub fn is_animating(&self, property: &FerroProperty) -> bool
pub fn is_animating(&self, property: &FerroProperty) -> bool
Checks whether a property is animating.
Sourcepub fn is_set(&self, property: &FerroProperty) -> bool
pub fn is_set(&self, property: &FerroProperty) -> bool
Checks whether a styled property has a value assigned to it or a binding targeting it.
Sourcepub fn set_value<T: PropertyValue>(
&self,
property: &'static StyledProperty<T>,
value: T,
)
pub fn set_value<T: PropertyValue>( &self, property: &'static StyledProperty<T>, value: T, )
Sets a property value with local value priority.
Sourcepub fn set_value_with_priority<T: PropertyValue>(
&self,
property: &'static StyledProperty<T>,
value: T,
priority: BindingPriority,
) -> Option<Rc<dyn IDisposable>>
pub fn set_value_with_priority<T: PropertyValue>( &self, property: &'static StyledProperty<T>, value: T, priority: BindingPriority, ) -> Option<Rc<dyn IDisposable>>
Sets a property value with the given priority. For priorities other than local value, disposing the returned handle removes the value.
Sourcepub fn set_current_value<T: PropertyValue>(
&self,
property: &'static StyledProperty<T>,
value: T,
)
pub fn set_current_value<T: PropertyValue>( &self, property: &'static StyledProperty<T>, value: T, )
Sets the value of a property without changing its value source.
This is used by a component that programmatically sets the value of one of its own properties without disabling an application’s declared use of the property: the effective value changes, but existing bindings and styles continue to work. The new value has the property’s current priority.
Sourcepub fn bind_binding(
&self,
property: &'static FerroProperty,
binding: &dyn BindingBase,
) -> Rc<dyn BindingExpressionBase>
pub fn bind_binding( &self, property: &'static FerroProperty, binding: &dyn BindingBase, ) -> Rc<dyn BindingExpressionBase>
Binds a property to a binding. Returns the binding expression which represents the binding instance on this object.
Sourcepub fn bind_binding_with_anchor(
&self,
property: &'static FerroProperty,
binding: &dyn BindingBase,
anchor: Option<&Ref<FerroObject>>,
) -> Rc<dyn BindingExpressionBase>
pub fn bind_binding_with_anchor( &self, property: &'static FerroProperty, binding: &dyn BindingBase, anchor: Option<&Ref<FerroObject>>, ) -> Rc<dyn BindingExpressionBase>
Binds a property to a binding.
Some bindings need context to locate their source: a data context,
named elements or resources. If this object is not an element, or is
not yet attached to the tree, anchor provides that context.
Sourcepub fn indexer(&self, binding: &IndexerDescriptor) -> IndexerBinding
pub fn indexer(&self, binding: &IndexerDescriptor) -> IndexerBinding
Gets a binding to a property of this object: the indexer taking an
IndexerDescriptor
(source[!Property] is source.indexer(&Property.bind())).
Sourcepub fn bind_indexer(
&self,
binding: &IndexerDescriptor,
value: &dyn BindingBase,
) -> Rc<dyn BindingExpressionBase>
pub fn bind_indexer( &self, binding: &IndexerDescriptor, value: &dyn BindingBase, ) -> Rc<dyn BindingExpressionBase>
Binds the property of an
IndexerDescriptor to a binding:
the setter of the indexer (target[!Property] = binding is
target.bind_indexer(&Property.bind(), &binding)).
Sourcepub fn bind<T: PropertyValue>(
&self,
property: &'static StyledProperty<T>,
source: Rc<dyn IObservable<T>>,
priority: BindingPriority,
) -> Rc<dyn IDisposable>
pub fn bind<T: PropertyValue>( &self, property: &'static StyledProperty<T>, source: Rc<dyn IObservable<T>>, priority: BindingPriority, ) -> Rc<dyn IDisposable>
Binds a property to an observable.
Sourcepub fn bind_value<T: PropertyValue>(
&self,
property: &'static StyledProperty<T>,
source: Rc<dyn IObservable<BindingValue<T>>>,
priority: BindingPriority,
) -> Rc<dyn IDisposable>
pub fn bind_value<T: PropertyValue>( &self, property: &'static StyledProperty<T>, source: Rc<dyn IObservable<BindingValue<T>>>, priority: BindingPriority, ) -> Rc<dyn IDisposable>
Binds a property to an observable of binding values.
Sourcepub fn bind_untyped<T: PropertyValue>(
&self,
property: &'static StyledProperty<T>,
source: Rc<dyn IObservable<BoxedValue>>,
priority: BindingPriority,
) -> Rc<dyn IDisposable>
pub fn bind_untyped<T: PropertyValue>( &self, property: &'static StyledProperty<T>, source: Rc<dyn IObservable<BoxedValue>>, priority: BindingPriority, ) -> Rc<dyn IDisposable>
Binds a property to an observable of untyped values.
Sourcepub fn coerce_value(&self, property: &'static FerroProperty)
pub fn coerce_value(&self, property: &'static FerroProperty)
Coerces the specified property.
Sourcepub fn get_direct_value<T: PropertyValue>(
&self,
property: &'static DirectPropertyBase<T>,
) -> T
pub fn get_direct_value<T: PropertyValue>( &self, property: &'static DirectPropertyBase<T>, ) -> T
Gets a direct property value.
Sourcepub fn set_direct_value<T: PropertyValue>(
&self,
property: &'static DirectPropertyBase<T>,
value: T,
)
pub fn set_direct_value<T: PropertyValue>( &self, property: &'static DirectPropertyBase<T>, value: T, )
Sets a direct property value.
Sourcepub fn clear_direct_value<T: PropertyValue>(
&self,
property: &'static DirectPropertyBase<T>,
)
pub fn clear_direct_value<T: PropertyValue>( &self, property: &'static DirectPropertyBase<T>, )
Resets a direct property to its unset value.
Sourcepub fn bind_direct<T: PropertyValue>(
&self,
property: &'static DirectPropertyBase<T>,
source: Rc<dyn IObservable<T>>,
) -> Rc<dyn IDisposable>
pub fn bind_direct<T: PropertyValue>( &self, property: &'static DirectPropertyBase<T>, source: Rc<dyn IObservable<T>>, ) -> Rc<dyn IDisposable>
Binds a direct property to an observable.
Sourcepub fn bind_direct_value<T: PropertyValue>(
&self,
property: &'static DirectPropertyBase<T>,
source: Rc<dyn IObservable<BindingValue<T>>>,
) -> Rc<dyn IDisposable>
pub fn bind_direct_value<T: PropertyValue>( &self, property: &'static DirectPropertyBase<T>, source: Rc<dyn IObservable<BindingValue<T>>>, ) -> Rc<dyn IDisposable>
Binds a direct property to an observable of binding values.
Sourcepub fn bind_direct_untyped<T: PropertyValue>(
&self,
property: &'static DirectPropertyBase<T>,
source: Rc<dyn IObservable<BoxedValue>>,
) -> Rc<dyn IDisposable>
pub fn bind_direct_untyped<T: PropertyValue>( &self, property: &'static DirectPropertyBase<T>, source: Rc<dyn IObservable<BoxedValue>>, ) -> Rc<dyn IDisposable>
Binds a direct property to an observable of untyped values.
Sourcepub fn set_and_raise<T: PropertyValue>(
&self,
property: &'static DirectPropertyBase<T>,
field: &RefCell<T>,
value: T,
) -> bool
pub fn set_and_raise<T: PropertyValue>( &self, property: &'static DirectPropertyBase<T>, field: &RefCell<T>, value: T, ) -> bool
Sets the backing field of a direct property, raising a change notification if the value changed. Returns true if it changed.
Sourcepub fn set_and_raise_cell<T: PropertyValue + Copy>(
&self,
property: &'static DirectPropertyBase<T>,
field: &Cell<T>,
value: T,
) -> bool
pub fn set_and_raise_cell<T: PropertyValue + Copy>( &self, property: &'static DirectPropertyBase<T>, field: &Cell<T>, value: T, ) -> bool
set_and_raise for Copy values stored in a
Cell.
Sourcepub fn get_value_untyped(&self, property: &'static FerroProperty) -> BoxedValue
pub fn get_value_untyped(&self, property: &'static FerroProperty) -> BoxedValue
Gets a property value as an untyped value.
Sourcepub fn set_value_untyped(
&self,
property: &'static FerroProperty,
value: &dyn Any,
priority: BindingPriority,
) -> Option<Rc<dyn IDisposable>>
pub fn set_value_untyped( &self, property: &'static FerroProperty, value: &dyn Any, priority: BindingPriority, ) -> Option<Rc<dyn IDisposable>>
Sets a property from an untyped value, which must hold exactly the property’s value type or the unset marker.
Sourcepub fn set_current_value_untyped(
&self,
property: &'static FerroProperty,
value: &dyn Any,
)
pub fn set_current_value_untyped( &self, property: &'static FerroProperty, value: &dyn Any, )
set_current_value with an untyped value.
Sourcepub fn clear_value_untyped(&self, property: &'static FerroProperty)
pub fn clear_value_untyped(&self, property: &'static FerroProperty)
Clears a property’s local value.
Sourcepub fn bind_property_untyped(
&self,
property: &'static FerroProperty,
source: Rc<dyn IObservable<BoxedValue>>,
priority: BindingPriority,
) -> Rc<dyn IDisposable>
pub fn bind_property_untyped( &self, property: &'static FerroProperty, source: Rc<dyn IObservable<BoxedValue>>, priority: BindingPriority, ) -> Rc<dyn IDisposable>
Binds a property to an observable of untyped values.
Sourcepub fn property_changed(
&self,
handler: impl Fn(&FerroPropertyChangedEventArgs<'_>) + 'static,
) -> Rc<dyn IDisposable>
pub fn property_changed( &self, handler: impl Fn(&FerroPropertyChangedEventArgs<'_>) + 'static, ) -> Rc<dyn IDisposable>
Subscribes to property changes on this object. Disposing the returned handle unsubscribes.
Sourcepub fn add_property_changed_handler(
&self,
handler: Rc<dyn Fn(&FerroPropertyChangedEventArgs<'_>)>,
) -> u64
pub fn add_property_changed_handler( &self, handler: Rc<dyn Fn(&FerroPropertyChangedEventArgs<'_>)>, ) -> u64
Subscribes handler to property changes on this object and returns
the token that remove_property_changed_handler
takes: property_changed for a subscriber
that keeps the object and the token itself, so that no handle is made.
Sourcepub fn remove_property_changed_handler(&self, token: u64) -> bool
pub fn remove_property_changed_handler(&self, token: u64) -> bool
Ends a subscription of add_property_changed_handler.
Sourcepub fn property_changed_subscriber_count(&self) -> usize
pub fn property_changed_subscriber_count(&self) -> usize
The number of subscribers to property changes on this object (a diagnostics member, used by tests to verify that subscriptions are released).
Sourcepub fn raise_property_changed<T: PropertyValue>(
&self,
property: &'static FerroProperty,
old_value: Option<&T>,
new_value: &T,
priority: BindingPriority,
is_effective_value: bool,
)
pub fn raise_property_changed<T: PropertyValue>( &self, property: &'static FerroProperty, old_value: Option<&T>, new_value: &T, priority: BindingPriority, is_effective_value: bool, )
Raises a property changed notification.
Sourcepub fn raise_direct_property_changed<T: PropertyValue>(
&self,
property: &'static DirectPropertyBase<T>,
old_value: &T,
new_value: &T,
)
pub fn raise_direct_property_changed<T: PropertyValue>( &self, property: &'static DirectPropertyBase<T>, old_value: &T, new_value: &T, )
Raises a property changed notification for a direct property.
Trait Implementations§
Source§impl CacheModeImpl for BitmapCache
impl CacheModeImpl for BitmapCache
Source§fn get_for_compositor(
this: &Self,
c: &Rc<Compositor>,
) -> Rc<CompositionCacheMode>
fn get_for_compositor( this: &Self, c: &Rc<Compositor>, ) -> Rc<CompositionCacheMode>
c.Source§impl Deref for BitmapCache
impl Deref for BitmapCache
Source§impl FerroObjectImpl for BitmapCache
impl FerroObjectImpl for BitmapCache
Source§fn on_property_changed(this: &Self, change: &FerroPropertyChangedEventArgs<'_>)
fn on_property_changed(this: &Self, change: &FerroPropertyChangedEventArgs<'_>)
Source§fn constructed(this: &Self)
fn constructed(this: &Self)
parent_constructed first.Source§fn on_property_changed_core(
this: &Self,
change: &FerroPropertyChangedEventArgs<'_>,
)
fn on_property_changed_core( this: &Self, change: &FerroPropertyChangedEventArgs<'_>, )
on_property_changed instead.Source§fn update_data_validation(
this: &Self,
property: &'static FerroProperty,
state: BindingValueType,
error: Option<&BindingError>,
)
fn update_data_validation( this: &Self, property: &'static FerroProperty, state: BindingValueType, error: Option<&BindingError>, )
Source§impl ObjectType for BitmapCache
impl ObjectType for BitmapCache
Source§impl StaticType for BitmapCache
impl StaticType for BitmapCache
Source§impl StyledElementImpl for BitmapCache
impl StyledElementImpl for BitmapCache
Source§fn begin_init(this: &Self)
fn begin_init(this: &Self)
end_init.Source§fn try_end_init(this: &Self) -> Result<(), InitializationError>
fn try_end_init(this: &Self) -> Result<(), InitializationError>
EndInit raises in the managed original;
what follows the failure is skipped. This is the overridable
member; end_init is the form that
panics on the error.Source§fn logical_children_collection_changed(
this: &Self,
e: &NotifyCollectionChangedEventArgs<'_, Ref<StyledElement>>,
)
fn logical_children_collection_changed( this: &Self, e: &NotifyCollectionChangedEventArgs<'_, Ref<StyledElement>>, )
Source§fn on_attached_to_logical_tree(this: &Self, e: &LogicalTreeAttachmentEventArgs)
fn on_attached_to_logical_tree(this: &Self, e: &LogicalTreeAttachmentEventArgs)
Source§fn on_detached_from_logical_tree(
this: &Self,
e: &LogicalTreeAttachmentEventArgs,
)
fn on_detached_from_logical_tree( this: &Self, e: &LogicalTreeAttachmentEventArgs, )
Source§fn on_data_context_changed(this: &Self)
fn on_data_context_changed(this: &Self)
Source§fn on_data_context_begin_update(this: &Self)
fn on_data_context_begin_update(this: &Self)
Source§fn on_data_context_end_update(this: &Self)
fn on_data_context_end_update(this: &Self)
Source§fn on_initialized(this: &Self)
fn on_initialized(this: &Self)
Source§fn style_key_override(this: &Self) -> &'static TypeInfo
fn style_key_override(this: &Self) -> &'static TypeInfo
Source§fn on_control_theme_changed(this: &Self)
fn on_control_theme_changed(this: &Self)
Source§fn on_templated_parent_control_theme_changed(this: &Self)
fn on_templated_parent_control_theme_changed(this: &Self)
Source§fn invalidate_styles(this: &Self, recurse: bool)
fn invalidate_styles(this: &Self, recurse: bool)
Source§fn is_logical_root(this: &Self) -> bool
fn is_logical_root(this: &Self) -> bool
Source§fn styling_parent(this: &Self) -> Option<StyleHostRef>
fn styling_parent(this: &Self) -> Option<StyleHostRef>
Source§fn notify_child_resources_changed(this: &Self, e: ResourcesChangedEventArgs)
fn notify_child_resources_changed(this: &Self, e: ResourcesChangedEventArgs)
Source§fn child_index_provider(this: &Self) -> Option<Rc<dyn IChildIndexProvider>>
fn child_index_provider(this: &Self) -> Option<Rc<dyn IChildIndexProvider>>
Source§fn is_theme_variant_root(this: &Self) -> bool
fn is_theme_variant_root(this: &Self) -> bool
impl<T> Subclassable<T> for BitmapCachewhere
CacheMode: Subclassable<T>,
Source§impl Upcast<BitmapCache> for BitmapCache
impl Upcast<BitmapCache> for BitmapCache
fn upcast(&self) -> &BitmapCache
Auto Trait Implementations§
impl !Freeze for BitmapCache
impl !RefUnwindSafe for BitmapCache
impl !Send for BitmapCache
impl !Sync for BitmapCache
impl !UnwindSafe for BitmapCache
impl Unpin for BitmapCache
impl UnsafeUnpin for BitmapCache
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CacheModeImplExt for Twhere
T: CacheModeImpl,
impl<T> CacheModeImplExt for Twhere
T: CacheModeImpl,
Source§fn parent_get_for_compositor(
this: &Self,
c: &Rc<Compositor>,
) -> Rc<CompositionCacheMode>
fn parent_get_for_compositor( this: &Self, c: &Rc<Compositor>, ) -> Rc<CompositionCacheMode>
Source§impl<T> ClassDefaults for Twhere
T: ?Sized,
impl<T> ClassDefaults for Twhere
T: ?Sized,
Source§fn static_constructor()
fn static_constructor()
affects_render, metadata
overrides). Read more