pub struct Trigger { /* private fields */ }Expand description
Implementations§
Source§impl Trigger
impl Trigger
Sourcepub fn actions_property() -> &'static DirectProperty<Trigger, ActionCollection>
pub fn actions_property() -> &'static DirectProperty<Trigger, ActionCollection>
Identifies the Actions property.
Source§impl Trigger
impl Trigger
Sourcepub fn construct() -> Self
pub fn construct() -> Self
Creates the class data; see FerroObject::construct.
Sourcepub fn actions(&self) -> ActionCollection
pub fn actions(&self) -> ActionCollection
Gets the collection of actions associated with the behavior. This is a property of the object model.
Methods from Deref<Target = Behavior>§
Sourcepub fn on_attached(&self)
pub fn on_attached(&self)
Called after the behavior is attached to the associated object.
Override this to hook up functionality to the associated object.
Sourcepub fn on_detaching(&self)
pub fn on_detaching(&self)
Called when the behavior is being detached from its associated object.
Override this to unhook functionality from the associated object.
Sourcepub fn on_attached_to_visual_tree(&self)
pub fn on_attached_to_visual_tree(&self)
Called after the associated object is attached to the visual tree.
Invoked only when the associated object is a visual.
Sourcepub fn on_detached_from_visual_tree(&self)
pub fn on_detached_from_visual_tree(&self)
Called when the associated object is being detached from the visual tree.
Invoked only when the associated object is a visual.
Sourcepub fn on_attached_to_logical_tree_event(&self)
pub fn on_attached_to_logical_tree_event(&self)
Called after the associated object is attached to the logical tree
(OnAttachedToLogicalTree).
Invoked only when the associated object is a styled element.
Sourcepub fn on_detached_from_logical_tree_event(&self)
pub fn on_detached_from_logical_tree_event(&self)
Called when the associated object is being detached from the logical tree
(OnDetachedFromLogicalTree).
Invoked only when the associated object is a styled element.
Sourcepub fn on_loaded(&self)
pub fn on_loaded(&self)
Called after the associated object is loaded.
Invoked only when the associated object is a control.
Sourcepub fn on_unloaded(&self)
pub fn on_unloaded(&self)
Called when the associated object is unloaded.
Invoked only when the associated object is a control.
Sourcepub fn on_initialized_event(&self)
pub fn on_initialized_event(&self)
Called when the associated object is initialized.
Invoked only when the associated object is a styled element.
Sourcepub fn on_data_context_changed_event(&self)
pub fn on_data_context_changed_event(&self)
Called when the data context of the associated object changed.
Invoked only when the associated object is a styled element.
Sourcepub fn on_resources_changed_event(&self)
pub fn on_resources_changed_event(&self)
Called when the resources of the associated object changed.
Invoked only when the associated object is a styled element.
Sourcepub fn on_actual_theme_variant_changed_event(&self)
pub fn on_actual_theme_variant_changed_event(&self)
Called when the actual theme variant of the associated object changed.
Invoked only when the associated object is a styled element.
Sourcepub fn associated_object(&self) -> Option<Ref<FerroObject>>
pub fn associated_object(&self) -> Option<Ref<FerroObject>>
Gets the object to which the behavior is attached.
Sourcepub fn is_enabled(&self) -> bool
pub fn is_enabled(&self) -> bool
Gets or sets a value indicating whether this instance is enabled.
pub fn set_is_enabled(&self, value: bool)
Sourcepub fn attach(&self, associated_object: impl Into<Nullable<FerroObject>>)
pub fn attach(&self, associated_object: impl Into<Nullable<FerroObject>>)
Attaches the behavior to the specified object.
§Panics
Panics if the behavior is attached to another object.
Sourcepub fn detach(&self)
pub fn detach(&self)
Detaches the behaviors from the associated_object.
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>(&self) -> boolwhere
T: ObjectType,
pub fn is<T>(&self) -> boolwhere
T: ObjectType,
Whether the object is of class T or a class derived from it.
Sourcepub fn downcast_ref<T>(&self) -> Option<&T>where
T: ObjectType,
pub fn downcast_ref<T>(&self) -> Option<&T>where
T: ObjectType,
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>(&self, property: &'static StyledProperty<T>)where
T: PropertyValue,
pub fn clear_value<T>(&self, property: &'static StyledProperty<T>)where
T: PropertyValue,
Clears a property’s local value.
Sourcepub fn get_value<T>(&self, property: &'static StyledProperty<T>) -> Twhere
T: PropertyValue,
pub fn get_value<T>(&self, property: &'static StyledProperty<T>) -> Twhere
T: PropertyValue,
Gets a property value.
Sourcepub fn get_base_value<T>(
&self,
property: &'static StyledProperty<T>,
) -> Option<T>where
T: PropertyValue,
pub fn get_base_value<T>(
&self,
property: &'static StyledProperty<T>,
) -> Option<T>where
T: PropertyValue,
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 has_local_value_binding(&self, property: &FerroProperty) -> bool
pub fn has_local_value_binding(&self, property: &FerroProperty) -> bool
Whether a local-value binding targets this property, including direct
properties and observable bindings. Unlike is_set, this does not rely
on a styled property’s effective-value entry. It does not inspect bindings
at style/template priorities.
Sourcepub fn set_value<T>(&self, property: &'static StyledProperty<T>, value: T)where
T: PropertyValue,
pub fn set_value<T>(&self, property: &'static StyledProperty<T>, value: T)where
T: PropertyValue,
Sets a property value with local value priority.
Sourcepub fn set_value_with_priority<T>(
&self,
property: &'static StyledProperty<T>,
value: T,
priority: BindingPriority,
) -> Option<Rc<dyn IDisposable>>where
T: PropertyValue,
pub fn set_value_with_priority<T>(
&self,
property: &'static StyledProperty<T>,
value: T,
priority: BindingPriority,
) -> Option<Rc<dyn IDisposable>>where
T: PropertyValue,
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>(
&self,
property: &'static StyledProperty<T>,
value: T,
)where
T: PropertyValue,
pub fn set_current_value<T>(
&self,
property: &'static StyledProperty<T>,
value: T,
)where
T: PropertyValue,
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 bind_binding_with_priority(
&self,
property: &'static FerroProperty,
binding: &dyn BindingBase,
priority: BindingPriority,
anchor: Option<&Ref<FerroObject>>,
) -> Rc<dyn BindingExpressionBase>
pub fn bind_binding_with_priority( &self, property: &'static FerroProperty, binding: &dyn BindingBase, priority: BindingPriority, anchor: Option<&Ref<FerroObject>>, ) -> Rc<dyn BindingExpressionBase>
Binds a property to a binding at the given priority, whatever the default priority of the binding is. Disposing the returned expression removes the binding.
An addition (no upstream counterpart): the values of WinUI’s visual
states are bound at BindingPriority::Animation.
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>(
&self,
property: &'static StyledProperty<T>,
source: Rc<dyn IObservable<T>>,
priority: BindingPriority,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
pub fn bind<T>(
&self,
property: &'static StyledProperty<T>,
source: Rc<dyn IObservable<T>>,
priority: BindingPriority,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
Binds a property to an observable.
Sourcepub fn bind_value<T>(
&self,
property: &'static StyledProperty<T>,
source: Rc<dyn IObservable<BindingValue<T>>>,
priority: BindingPriority,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
pub fn bind_value<T>(
&self,
property: &'static StyledProperty<T>,
source: Rc<dyn IObservable<BindingValue<T>>>,
priority: BindingPriority,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
Binds a property to an observable of binding values.
Sourcepub fn bind_untyped<T>(
&self,
property: &'static StyledProperty<T>,
source: Rc<dyn IObservable<Rc<dyn AnyValue>>>,
priority: BindingPriority,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
pub fn bind_untyped<T>(
&self,
property: &'static StyledProperty<T>,
source: Rc<dyn IObservable<Rc<dyn AnyValue>>>,
priority: BindingPriority,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
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>(&self, property: &'static DirectPropertyBase<T>) -> Twhere
T: PropertyValue,
pub fn get_direct_value<T>(&self, property: &'static DirectPropertyBase<T>) -> Twhere
T: PropertyValue,
Gets a direct property value.
Sourcepub fn set_direct_value<T>(
&self,
property: &'static DirectPropertyBase<T>,
value: T,
)where
T: PropertyValue,
pub fn set_direct_value<T>(
&self,
property: &'static DirectPropertyBase<T>,
value: T,
)where
T: PropertyValue,
Sets a direct property value.
Sourcepub fn clear_direct_value<T>(&self, property: &'static DirectPropertyBase<T>)where
T: PropertyValue,
pub fn clear_direct_value<T>(&self, property: &'static DirectPropertyBase<T>)where
T: PropertyValue,
Resets a direct property to its unset value.
Sourcepub fn bind_direct<T>(
&self,
property: &'static DirectPropertyBase<T>,
source: Rc<dyn IObservable<T>>,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
pub fn bind_direct<T>(
&self,
property: &'static DirectPropertyBase<T>,
source: Rc<dyn IObservable<T>>,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
Binds a direct property to an observable.
Sourcepub fn bind_direct_value<T>(
&self,
property: &'static DirectPropertyBase<T>,
source: Rc<dyn IObservable<BindingValue<T>>>,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
pub fn bind_direct_value<T>(
&self,
property: &'static DirectPropertyBase<T>,
source: Rc<dyn IObservable<BindingValue<T>>>,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
Binds a direct property to an observable of binding values.
Sourcepub fn bind_direct_untyped<T>(
&self,
property: &'static DirectPropertyBase<T>,
source: Rc<dyn IObservable<Rc<dyn AnyValue>>>,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
pub fn bind_direct_untyped<T>(
&self,
property: &'static DirectPropertyBase<T>,
source: Rc<dyn IObservable<Rc<dyn AnyValue>>>,
) -> Rc<dyn IDisposable>where
T: PropertyValue,
Binds a direct property to an observable of untyped values.
Sourcepub fn set_and_raise<T>(
&self,
property: &'static DirectPropertyBase<T>,
field: &RefCell<T>,
value: T,
) -> boolwhere
T: PropertyValue,
pub fn set_and_raise<T>(
&self,
property: &'static DirectPropertyBase<T>,
field: &RefCell<T>,
value: T,
) -> boolwhere
T: PropertyValue,
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>(
&self,
property: &'static DirectPropertyBase<T>,
field: &Cell<T>,
value: T,
) -> boolwhere
T: PropertyValue + Copy,
pub fn set_and_raise_cell<T>(
&self,
property: &'static DirectPropertyBase<T>,
field: &Cell<T>,
value: T,
) -> boolwhere
T: PropertyValue + Copy,
set_and_raise for Copy values stored in a
Cell.
Sourcepub fn get_value_untyped(
&self,
property: &'static FerroProperty,
) -> Rc<dyn AnyValue>
pub fn get_value_untyped( &self, property: &'static FerroProperty, ) -> Rc<dyn AnyValue>
Gets a property value as an untyped value.
Sourcepub fn set_value_untyped(
&self,
property: &'static FerroProperty,
value: &(dyn Any + 'static),
priority: BindingPriority,
) -> Option<Rc<dyn IDisposable>>
pub fn set_value_untyped( &self, property: &'static FerroProperty, value: &(dyn Any + 'static), 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 + 'static),
)
pub fn set_current_value_untyped( &self, property: &'static FerroProperty, value: &(dyn Any + 'static), )
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<Rc<dyn AnyValue>>>,
priority: BindingPriority,
) -> Rc<dyn IDisposable>
pub fn bind_property_untyped( &self, property: &'static FerroProperty, source: Rc<dyn IObservable<Rc<dyn AnyValue>>>, 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>(
&self,
property: &'static FerroProperty,
old_value: Option<&T>,
new_value: &T,
priority: BindingPriority,
is_effective_value: bool,
)where
T: PropertyValue,
pub fn raise_property_changed<T>(
&self,
property: &'static FerroProperty,
old_value: Option<&T>,
new_value: &T,
priority: BindingPriority,
is_effective_value: bool,
)where
T: PropertyValue,
Raises a property changed notification.
Sourcepub fn raise_direct_property_changed<T>(
&self,
property: &'static DirectPropertyBase<T>,
old_value: &T,
new_value: &T,
)where
T: PropertyValue,
pub fn raise_direct_property_changed<T>(
&self,
property: &'static DirectPropertyBase<T>,
old_value: &T,
new_value: &T,
)where
T: PropertyValue,
Raises a property changed notification for a direct property.
Trait Implementations§
Source§impl BehaviorImpl for Trigger
impl BehaviorImpl for Trigger
Source§fn on_attached(this: &Self)
fn on_attached(this: &Self)
Source§fn on_detaching(this: &Self)
fn on_detaching(this: &Self)
Source§fn on_attached_to_visual_tree(this: &Self)
fn on_attached_to_visual_tree(this: &Self)
Source§fn on_detached_from_visual_tree(this: &Self)
fn on_detached_from_visual_tree(this: &Self)
Source§fn on_attached_to_logical_tree_event(this: &Self)
fn on_attached_to_logical_tree_event(this: &Self)
OnAttachedToLogicalTree). Read moreSource§fn on_detached_from_logical_tree_event(this: &Self)
fn on_detached_from_logical_tree_event(this: &Self)
OnDetachedFromLogicalTree). Read moreSource§fn on_unloaded(this: &Self)
fn on_unloaded(this: &Self)
Source§fn on_initialized_event(this: &Self)
fn on_initialized_event(this: &Self)
Source§fn on_data_context_changed_event(this: &Self)
fn on_data_context_changed_event(this: &Self)
Source§fn on_resources_changed_event(this: &Self)
fn on_resources_changed_event(this: &Self)
Source§fn on_actual_theme_variant_changed_event(this: &Self)
fn on_actual_theme_variant_changed_event(this: &Self)
Source§impl FerroObjectImpl for Trigger
impl FerroObjectImpl for Trigger
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 on_property_changed(this: &Self, change: &FerroPropertyChangedEventArgs<'_>)
fn on_property_changed(this: &Self, change: &FerroPropertyChangedEventArgs<'_>)
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 IBehavior for Trigger
impl IBehavior for Trigger
Source§fn associated_object(&self) -> Option<Ref<FerroObject>>
fn associated_object(&self) -> Option<Ref<FerroObject>>
Source§impl ITrigger for Trigger
impl ITrigger for Trigger
Source§fn actions(&self) -> Option<ActionCollection>
fn actions(&self) -> Option<ActionCollection>
Source§impl ObjectType for Trigger
impl ObjectType for Trigger
impl<T> Subclassable<T> for Triggerwhere
Behavior: Subclassable<T>,
Auto Trait Implementations§
impl !Freeze for Trigger
impl !RefUnwindSafe for Trigger
impl !Send for Trigger
impl !Sync for Trigger
impl !UnwindSafe for Trigger
impl Unpin for Trigger
impl UnsafeUnpin for Trigger
Blanket Implementations§
Source§impl<T> BehaviorImplExt for Twhere
T: BehaviorImpl,
impl<T> BehaviorImplExt for Twhere
T: BehaviorImpl,
Source§fn parent_on_attached(this: &Self)
fn parent_on_attached(this: &Self)
Source§fn parent_on_detaching(this: &Self)
fn parent_on_detaching(this: &Self)
Source§fn parent_on_attached_to_visual_tree(this: &Self)
fn parent_on_attached_to_visual_tree(this: &Self)
Source§fn parent_on_detached_from_visual_tree(this: &Self)
fn parent_on_detached_from_visual_tree(this: &Self)
Source§fn parent_on_attached_to_logical_tree_event(this: &Self)
fn parent_on_attached_to_logical_tree_event(this: &Self)
Source§fn parent_on_detached_from_logical_tree_event(this: &Self)
fn parent_on_detached_from_logical_tree_event(this: &Self)
Source§fn parent_on_loaded(this: &Self)
fn parent_on_loaded(this: &Self)
Source§fn parent_on_unloaded(this: &Self)
fn parent_on_unloaded(this: &Self)
Source§fn parent_on_initialized_event(this: &Self)
fn parent_on_initialized_event(this: &Self)
Source§fn parent_on_data_context_changed_event(this: &Self)
fn parent_on_data_context_changed_event(this: &Self)
Source§fn parent_on_resources_changed_event(this: &Self)
fn parent_on_resources_changed_event(this: &Self)
Source§fn parent_on_actual_theme_variant_changed_event(this: &Self)
fn parent_on_actual_theme_variant_changed_event(this: &Self)
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> 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