Struct dmat_components::components::dock_overlay::DockOverlayProps
source · pub struct DockOverlayProps<Tunderlying_viewSignal: Signal<Item = Option<Dom>> = Always<Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)> = Always<(DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool> = Always<bool>, Tshow_overlaySignal: Signal<Item = bool> = Always<bool>, TOnScrimClick: Fn(Click) = fn(_: Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement> = fn(_: DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> {
pub underlying_view: Tunderlying_viewSignal,
pub overlay_views: Toverlay_viewsSignal,
pub show_scrim: Tshow_scrimSignal,
pub show_overlay: Tshow_overlaySignal,
pub on_scrim_click: TOnScrimClick,
pub apply: Option<TApplyFn>,
}
Expand description
Renders an overlay with 9 of dock points for UI elements Elements in the dock positions will hover over the inner view. This can be used to represent dialogs, FABs, status messages etc.
Examples
use dmat_components::components::layouts::dock_overlay::*;
use futures_signals::signal::always;
use futures_signals::signal::Mutable;
let show_overlay = Mutable::new(true);
dock_overlay!({
.underlying_view(Some(underlying_view))
.overlay_views(vec![
(DockPoint::MiddleLeft, card!({.child(text!("Middle Left Dialog!"))})),
(DockPoint::MiddleCenter, middle_center_dialog(show_overlay.clone())),
(DockPoint::MiddleRight, html!("span", {.text("Middle Right Dialog!")})),
(DockPoint::TopLeft, html!("span", {.text("Top Left Dialog!")})),
(DockPoint::TopCenter, html!("span", {.text("Top Center Dialog!")})),
(DockPoint::TopRight, html!("span", {.text("Top Right Dialog!")})),
(DockPoint::BottomLeft, html!("span", {.text("Bottom Left Dialog!")})),
(DockPoint::BottomCenter, html!("span", {.text("Bottom Center Dialog!")})),
(DockPoint::BottomRight, html!("span", {.text("Bottom Right Dialog!")})),
])
.show_scrim(true)
.show_overlay_signal(show_overlay.signal())
})
Fields§
§underlying_view: Tunderlying_viewSignal
§overlay_views: Toverlay_viewsSignal
§show_scrim: Tshow_scrimSignal
§show_overlay: Tshow_overlaySignal
§on_scrim_click: TOnScrimClick
§apply: Option<TApplyFn>
Implementations§
source§impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
pub fn underlying_view( self, v: Option<Dom> ) -> DockOverlayProps<Always<Option<Dom>>, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
pub fn underlying_view_signal<Tunderlying_viewSignalNew: Signal<Item = Option<Dom>>>( self, v: Tunderlying_viewSignalNew ) -> DockOverlayProps<Tunderlying_viewSignalNew, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
source§impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
pub fn overlay_views( self, v: impl Into<Vec<(DockPoint, Dom)>> ) -> DockOverlayProps<Tunderlying_viewSignal, Always<(DockPoint, Dom)>, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
pub fn overlay_views_signal_vec<Toverlay_viewsSignalNew: SignalVec<Item = (DockPoint, Dom)>>( self, v: Toverlay_viewsSignalNew ) -> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignalNew, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
source§impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
pub fn show_scrim( self, v: bool ) -> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Always<bool>, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
pub fn show_scrim_signal<Tshow_scrimSignalNew: Signal<Item = bool>>( self, v: Tshow_scrimSignalNew ) -> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignalNew, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
source§impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
pub fn show_overlay( self, v: bool ) -> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Always<bool>, TOnScrimClick, TApplyFn>
pub fn show_overlay_signal<Tshow_overlaySignalNew: Signal<Item = bool>>( self, v: Tshow_overlaySignalNew ) -> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignalNew, TOnScrimClick, TApplyFn>
source§impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
pub fn on_scrim_click<TOnScrimClickNew: Fn(Click)>( self, v: TOnScrimClickNew ) -> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClickNew, TApplyFn>
source§impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
pub fn apply<TApplyFnNew: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>>( self, v: TApplyFnNew ) -> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFnNew>
Trait Implementations§
source§impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayPropsTrait for DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
impl<Tunderlying_viewSignal: Signal<Item = Option<Dom>>, Toverlay_viewsSignal: SignalVec<Item = (DockPoint, Dom)>, Tshow_scrimSignal: Signal<Item = bool>, Tshow_overlaySignal: Signal<Item = bool>, TOnScrimClick: Fn(Click), TApplyFn: FnOnce(DomBuilder<HtmlElement>) -> DomBuilder<HtmlElement>> DockOverlayPropsTrait for DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
type Tunderlying_viewSignal = Tunderlying_viewSignal
type Toverlay_viewsSignal = Toverlay_viewsSignal
type Tshow_scrimSignal = Tshow_scrimSignal
type Tshow_overlaySignal = Tshow_overlaySignal
type TOnScrimClick = TOnScrimClick
type TApplyFn = TApplyFn
fn take( self ) -> DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>
Auto Trait Implementations§
impl<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn> RefUnwindSafe for DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>where TApplyFn: RefUnwindSafe, TOnScrimClick: RefUnwindSafe, Toverlay_viewsSignal: RefUnwindSafe, Tshow_overlaySignal: RefUnwindSafe, Tshow_scrimSignal: RefUnwindSafe, Tunderlying_viewSignal: RefUnwindSafe,
impl<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn> Send for DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>where TApplyFn: Send, TOnScrimClick: Send, Toverlay_viewsSignal: Send, Tshow_overlaySignal: Send, Tshow_scrimSignal: Send, Tunderlying_viewSignal: Send,
impl<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn> Sync for DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>where TApplyFn: Sync, TOnScrimClick: Sync, Toverlay_viewsSignal: Sync, Tshow_overlaySignal: Sync, Tshow_scrimSignal: Sync, Tunderlying_viewSignal: Sync,
impl<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn> Unpin for DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>where TApplyFn: Unpin, TOnScrimClick: Unpin, Toverlay_viewsSignal: Unpin, Tshow_overlaySignal: Unpin, Tshow_scrimSignal: Unpin, Tunderlying_viewSignal: Unpin,
impl<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn> UnwindSafe for DockOverlayProps<Tunderlying_viewSignal, Toverlay_viewsSignal, Tshow_scrimSignal, Tshow_overlaySignal, TOnScrimClick, TApplyFn>where TApplyFn: UnwindSafe, TOnScrimClick: UnwindSafe, Toverlay_viewsSignal: UnwindSafe, Tshow_overlaySignal: UnwindSafe, Tshow_scrimSignal: UnwindSafe, Tunderlying_viewSignal: UnwindSafe,
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
Mutably borrows from an owned value. Read more