pub struct ContextMenu { /* private fields */ }Implementations§
Source§impl ContextMenu
impl ContextMenu
pub fn new( window: &mut Window, cx: &mut Context<'_, Self>, f: impl FnOnce(Self, &mut Window, &mut Context<'_, Self>) -> Self, ) -> Self
pub fn build( window: &mut Window, cx: &mut App, f: impl FnOnce(Self, &mut Window, &mut Context<'_, Self>) -> Self, ) -> Entity<Self>
Sourcepub fn build_persistent(
window: &mut Window,
cx: &mut App,
builder: impl Fn(Self, &mut Window, &mut Context<'_, Self>) -> Self + 'static,
) -> Entity<Self>
pub fn build_persistent( window: &mut Window, cx: &mut App, builder: impl Fn(Self, &mut Window, &mut Context<'_, Self>) -> Self + 'static, ) -> Entity<Self>
Builds a ContextMenu that will stay open when making changes instead of closing after each confirmation.
The main difference from ContextMenu::build is the type of the builder, as we need to be able to hold onto
it to call it again.
Sourcepub fn rebuild(&mut self, window: &mut Window, cx: &mut Context<'_, Self>)
pub fn rebuild(&mut self, window: &mut Window, cx: &mut Context<'_, Self>)
Rebuilds the menu.
This is used to refresh the menu entries when entries are toggled when the menu is configured with
keep_open_on_confirm = true.
This only works if the ContextMenu was constructed using ContextMenu::build_persistent. Otherwise it is
a no-op.
pub fn context(self, focus: FocusHandle) -> Self
pub fn header(self, title: impl Into<SharedString>) -> Self
pub fn header_with_link( self, title: impl Into<SharedString>, link_label: impl Into<SharedString>, link_url: impl Into<SharedString>, ) -> Self
pub fn separator(self) -> Self
pub fn extend<I: Into<ContextMenuItem>>( self, items: impl IntoIterator<Item = I>, ) -> Self
pub fn item(self, item: impl Into<ContextMenuItem>) -> Self
pub fn push_item(&mut self, item: impl Into<ContextMenuItem>)
pub fn entry( self, label: impl Into<SharedString>, action: Option<Box<dyn Action>>, handler: impl Fn(&mut Window, &mut App) + 'static, ) -> Self
pub fn entry_with_end_slot( self, label: impl Into<SharedString>, action: Option<Box<dyn Action>>, handler: impl Fn(&mut Window, &mut App) + 'static, end_slot_icon: IconName, end_slot_title: SharedString, end_slot_handler: impl Fn(&mut Window, &mut App) + 'static, ) -> Self
pub fn entry_with_end_slot_on_hover( self, label: impl Into<SharedString>, action: Option<Box<dyn Action>>, handler: impl Fn(&mut Window, &mut App) + 'static, end_slot_icon: IconName, end_slot_title: SharedString, end_slot_handler: impl Fn(&mut Window, &mut App) + 'static, ) -> Self
pub fn toggleable_entry( self, label: impl Into<SharedString>, toggled: bool, position: IconPosition, action: Option<Box<dyn Action>>, handler: impl Fn(&mut Window, &mut App) + 'static, ) -> Self
pub fn custom_row( self, entry_render: impl Fn(&mut Window, &mut App) -> AnyElement + 'static, ) -> Self
pub fn custom_entry( self, entry_render: impl Fn(&mut Window, &mut App) -> AnyElement + 'static, handler: impl Fn(&mut Window, &mut App) + 'static, ) -> Self
pub fn custom_entry_with_docs( self, entry_render: impl Fn(&mut Window, &mut App) -> AnyElement + 'static, handler: impl Fn(&mut Window, &mut App) + 'static, documentation_aside: Option<DocumentationAside>, ) -> Self
pub fn selectable(self, selectable: bool) -> Self
pub fn label(self, label: impl Into<SharedString>) -> Self
pub fn action( self, label: impl Into<SharedString>, action: Box<dyn Action>, ) -> Self
pub fn action_checked( self, label: impl Into<SharedString>, action: Box<dyn Action>, checked: bool, ) -> Self
pub fn action_checked_with_disabled( self, label: impl Into<SharedString>, action: Box<dyn Action>, checked: bool, disabled: bool, ) -> Self
pub fn action_disabled_when( self, disabled: bool, label: impl Into<SharedString>, action: Box<dyn Action>, ) -> Self
pub fn link( self, label: impl Into<SharedString>, action: Box<dyn Action>, ) -> Self
pub fn link_with_handler( self, label: impl Into<SharedString>, action: Box<dyn Action>, handler: impl Fn(&mut Window, &mut App) + 'static, ) -> Self
pub fn keep_open_on_confirm(self, keep_open: bool) -> Self
pub fn trigger_end_slot_handler( &mut self, window: &mut Window, cx: &mut Context<'_, Self>, )
pub fn fixed_width(self, width: DefiniteLength) -> Self
pub fn end_slot_action(self, action: Box<dyn Action>) -> Self
pub fn key_context(self, context: impl Into<SharedString>) -> Self
pub fn selected_index(&self) -> Option<usize>
pub fn confirm( &mut self, _: &Confirm, window: &mut Window, cx: &mut Context<'_, Self>, )
pub fn secondary_confirm( &mut self, _: &SecondaryConfirm, window: &mut Window, cx: &mut Context<'_, Self>, )
pub fn cancel( &mut self, _: &Cancel, window: &mut Window, cx: &mut Context<'_, Self>, )
pub fn end_slot( &mut self, _: &dyn Action, window: &mut Window, cx: &mut Context<'_, Self>, )
pub fn clear_selected(&mut self)
pub fn select_first( &mut self, _: &SelectFirst, window: &mut Window, cx: &mut Context<'_, Self>, )
pub fn select_last( &mut self, window: &mut Window, cx: &mut Context<'_, Self>, ) -> Option<usize>
pub fn select_next( &mut self, _: &SelectNext, window: &mut Window, cx: &mut Context<'_, Self>, )
pub fn select_previous( &mut self, _: &SelectPrevious, window: &mut Window, cx: &mut Context<'_, Self>, )
pub fn on_action_dispatch( &mut self, dispatched: &dyn Action, window: &mut Window, cx: &mut Context<'_, Self>, )
pub fn on_blur_subscription(self, new_subscription: Subscription) -> Self
Trait Implementations§
impl EventEmitter<DismissEvent> for ContextMenu
Source§impl FluentBuilder for ContextMenu
impl FluentBuilder for ContextMenu
Source§fn map<U>(self, f: impl FnOnce(Self) -> U) -> Uwhere
Self: Sized,
fn map<U>(self, f: impl FnOnce(Self) -> U) -> Uwhere
Self: Sized,
Imperatively modify self with the given closure.
Source§fn when(self, condition: bool, then: impl FnOnce(Self) -> Self) -> Selfwhere
Self: Sized,
fn when(self, condition: bool, then: impl FnOnce(Self) -> Self) -> Selfwhere
Self: Sized,
Conditionally modify self with the given closure.
Source§fn when_else(
self,
condition: bool,
then: impl FnOnce(Self) -> Self,
else_fn: impl FnOnce(Self) -> Self,
) -> Selfwhere
Self: Sized,
fn when_else(
self,
condition: bool,
then: impl FnOnce(Self) -> Self,
else_fn: impl FnOnce(Self) -> Self,
) -> Selfwhere
Self: Sized,
Conditionally modify self with the given closure.
Source§impl Focusable for ContextMenu
impl Focusable for ContextMenu
Source§fn focus_handle(&self, _cx: &App) -> FocusHandle
fn focus_handle(&self, _cx: &App) -> FocusHandle
Returns the focus handle associated with this view.
Source§impl Render for ContextMenu
impl Render for ContextMenu
Auto Trait Implementations§
impl !RefUnwindSafe for ContextMenu
impl !Send for ContextMenu
impl !Sync for ContextMenu
impl !UnwindSafe for ContextMenu
impl Freeze for ContextMenu
impl Unpin for ContextMenu
impl UnsafeUnpin for ContextMenu
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
Source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
Convert the source color to the destination color using the specified
method.
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
Convert the source color to the destination color using the bradford
method by default.
Source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
Source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Cast a collection of colors into a collection of arrays.
Source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
Source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
Cast this collection of arrays into a collection of colors.
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
Source§impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
Source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
The number type that’s used in
parameters when converting.Source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
Converts
self into C, using the provided parameters.impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
Source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
Cast a collection of colors into a collection of color components.
Source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
Source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
Performs a conversion from
angle.Source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
Source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
Converts
other into Self, while performing the appropriate scaling,
rounding and clamping.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
Source§fn into_angle(self) -> U
fn into_angle(self) -> U
Performs a conversion into
T.Source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
Source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
The number type that’s used in
parameters when converting.Source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
Converts
self into C, using the provided parameters.Source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
Source§fn into_color(self) -> U
fn into_color(self) -> U
Convert into T with values clamped to the color defined bounds Read more
Source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
Source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Convert into T. The resulting color might be invalid in its color space Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
Converts
self into T, while performing the appropriate scaling,
rounding and clamping.impl<M> ManagedView for M
Source§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
Source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
The error for when
try_into_colors fails to cast.Source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
Try to cast this collection of color components into a collection of
colors. Read more
Source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
Source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
Convert into T, returning ok if the color is inside of its defined
range, otherwise an
OutOfBounds error is returned which contains
the unclamped color. Read moreSource§impl<C, U> UintsFrom<C> for Uwhere
C: IntoUints<U>,
impl<C, U> UintsFrom<C> for Uwhere
C: IntoUints<U>,
Source§fn uints_from(colors: C) -> U
fn uints_from(colors: C) -> U
Cast a collection of colors into a collection of unsigned integers.
Source§impl<C, U> UintsInto<C> for Uwhere
C: FromUints<U>,
impl<C, U> UintsInto<C> for Uwhere
C: FromUints<U>,
Source§fn uints_into(self) -> C
fn uints_into(self) -> C
Cast this collection of unsigned integers into a collection of colors.