pub struct WidgetAction {
pub data: Option<Arc<dyn ActionTrait>>,
pub action: Box<dyn WidgetActionTrait>,
pub widgets: SmallVec<[WidgetRef; 4]>,
pub widget_uid: WidgetUid,
pub path: HeapLiveIdPath,
pub group: Option<WidgetActionGroup>,
}
Expand description
An action emitted by another widget via the widget_action()
method.
Fields§
§data: Option<Arc<dyn ActionTrait>>
Extra data that can be stored on a widget at draw time, and then cheaply cloned to be emitted as part of an action.
To attach data to a widget action, use the widget_action_with_data()
method.
action: Box<dyn WidgetActionTrait>
The emitted action object itself, which acts as a dyn Any-like.
widgets: SmallVec<[WidgetRef; 4]>
The complete list of widgets this action bubbles up from. You can use this to explore the UI tree of the widget that emitted the action.
widget_uid: WidgetUid
The UID of the widget that emitted this action.
path: HeapLiveIdPath
The path-list of the widgets this action bubbles up from (if any).
group: Option<WidgetActionGroup>
Used by list-like widgets (e.g., PortalList) to mark a group-uid around item-actions.
Implementations§
Source§impl WidgetAction
impl WidgetAction
pub fn widget(&self) -> &WidgetRef
pub fn widget_nth(&self, n: usize) -> &WidgetRef
pub fn cast<T>(&self) -> T
pub fn cast_ref<T: WidgetActionTrait + 'static + Send + ActionDefaultRef>( &self, ) -> &T
pub fn downcast_ref<T: WidgetActionTrait + Send + ActionDefaultRef>( &self, ) -> Option<&T>
Trait Implementations§
Source§impl Clone for WidgetAction
impl Clone for WidgetAction
Source§fn clone(&self) -> WidgetAction
fn clone(&self) -> WidgetAction
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl Freeze for WidgetAction
impl !RefUnwindSafe for WidgetAction
impl !Send for WidgetAction
impl !Sync for WidgetAction
impl Unpin for WidgetAction
impl !UnwindSafe for WidgetAction
Blanket Implementations§
Source§impl<T> ActionTrait for T
impl<T> ActionTrait for T
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
Mutably borrows from an owned value. Read more