pub struct Shell {Show 19 fields
editor: Rc<RefCell<Editor>>,
library: Rc<Library>,
away: Rc<Cell<bool>>,
pasting: Rc<Cell<Pasting>>,
waiting: Rc<RefCell<Option<Door>>>,
batch: Rc<RefCell<Batch>>,
pacing: Rc<Cell<Pacing>>,
chrome: Signal<Chrome>,
frames: Signal<Option<Metered>>,
reported: Signal<Reported>,
owed: Signal<Owed>,
held: Signal<Vec<Listed>>,
renaming: Signal<u64>,
picker: Signal<Option<Picker>>,
wanted: Signal<Option<Wanted>>,
safe: Signal<Rect>,
palette: Signal<bool>,
section: Signal<Option<Section>>,
token: Token,
}Expand description
The shell, held once behind Rcs so every handler carries a clone.
Fields§
§editor: Rc<RefCell<Editor>>§library: Rc<Library>The documents the origin holds, and every door onto them.
away: Rc<Cell<bool>>Whether a door or the journal is standing between the frame and the document. Every one of them takes the document out of the session for as long as it awaits, so the frame that shares this handle is held off rather than shown a document that is not there.
pasting: Rc<Cell<Pasting>>Whether a paste arriving now is one the user asked for.
waiting: Rc<RefCell<Option<Door>>>The door someone asked for while another was out, which opens when that one is back. The latest ask is the one kept.
batch: Rc<RefCell<Batch>>§pacing: Rc<Cell<Pacing>>§chrome: Signal<Chrome>§frames: Signal<Option<Metered>>The frame-rate readout, kept up only while the session shows it.
reported: Signal<Reported>What the shell itself could not do, which the toast shows.
owed: Signal<Owed>What the storage owes, which the status line’s liveness slot shows.
held: Signal<Vec<Listed>>What the origin holds, which the Diagrams section lists.
renaming: Signal<u64>How many times the menu has asked for the rename box. A count rather than a flag: the box lives on the breadcrumb, which has to tell a fresh ask from the one it has already opened on.
picker: Signal<Option<Picker>>Which picker an effect opened, if any.
wanted: Signal<Option<Wanted>>What an open file pick is for, if one is open.
safe: Signal<Rect>The part of the diagram the chrome leaves clear, which the selection overlay places itself inside.
palette: Signal<bool>Whether the search palette is up. Shell state, not the session’s — which is why the command that asks for it is an effect.
section: Signal<Option<Section>>Which sidebar section is open, if any. Likewise the shell’s: the session has no opinion about what is being browsed.
token: TokenHow this platform writes the command modifier — the whole of §4’s per-platform difference.
Implementations§
Source§impl Shell
impl Shell
Sourcepub fn opening(
prefs: &Preferences,
prefers: Prefers,
opened: Opened,
) -> (Self, Signal<Chrome>)
pub fn opening( prefs: &Preferences, prefers: Prefers, opened: Opened, ) -> (Self, Signal<Chrome>)
A shell over the document the origin was opened on, primed: the first call runs here — dressed as the preferences ask — so the chrome has a bar and a tool cluster before a frame has ever been booked.
Sourcepub fn frames(&self) -> Signal<Option<Metered>>
pub fn frames(&self) -> Signal<Option<Metered>>
What the frame-rate readout shows, once a frame has been metered.
Sourcepub fn reported(&self) -> Signal<Reported>
pub fn reported(&self) -> Signal<Reported>
What the shell itself could not do, which the toast shows.
Sourcepub fn owed(&self) -> Signal<Owed>
pub fn owed(&self) -> Signal<Owed>
What the storage owes, which the status line’s liveness slot shows.
Sourcepub fn picker(&self) -> Signal<Option<Picker>>
pub fn picker(&self) -> Signal<Option<Picker>>
Which picker is open, which the overlay anchors.
Sourcepub fn wanted(&self) -> Signal<Option<Wanted>>
pub fn wanted(&self) -> Signal<Option<Wanted>>
What an open file pick is for, which the hidden input reads.
Sourcepub fn works(&self)
pub fn works(&self)
Only working dismisses the sidebar’s panel: a press on the diagram
or a tool pick is unambiguous intent to edit (docs/cad-ui-spec.md
§8). Nothing inside the panel ever closes it.
Sourcepub fn escaped(&self) -> Escaped
pub fn escaped(&self) -> Escaped
Escape, claimed before anything else reads it: the palette closes first, then the sidebar’s panel, and only a keystroke neither wanted reaches the canvas.
Sourcepub fn theme(&self) -> Theme
pub fn theme(&self) -> Theme
The roles the chrome resolves its own readings of the diagram through, in the palette the diagram is painted in.
Sourcepub fn attributed(&self) -> String
pub fn attributed(&self) -> String
Who this session’s commits are attributed to as it stands.
Sourcepub fn wears(&self, prefs: &Preferences, prefers: Prefers)
pub fn wears(&self, prefs: &Preferences, prefers: Prefers)
Dress the diagram as the preferences ask, and attribute the session to who they name. A preference that did not move changes nothing and books no frame.
Sourcepub fn failed(&self, what: impl Into<String>)
pub fn failed(&self, what: impl Into<String>)
Something the shell was asked to do did not work. It is the shell’s own failure, not the document’s, so it is toasted rather than filed among the session’s notices.
Sourcepub fn raises(&self, act: Act)
pub fn raises(&self, act: Act)
What a control raised: an edit goes into the batch by name, and an effect is performed by whoever owns the flow it belongs to.
Sourcefn performs(&self, effect: &Effect)
fn performs(&self, effect: &Effect)
The doors the chrome opens that the kernel cannot. A door that is not there says so rather than failing silently.
Sourcepub fn held(&self) -> Signal<Vec<Listed>>
pub fn held(&self) -> Signal<Vec<Listed>>
What the origin holds, for the section that lists it. A signal rather than a call, because the answer is a promise and a component cannot await one.
Sourcepub fn asks_to_rename(&self)
pub fn asks_to_rename(&self)
Rename: the box the breadcrumb opens on a double click, asked for from the Diagrams section instead. One gesture, two ways in.
Sourcepub fn renaming(&self) -> Signal<u64>
pub fn renaming(&self) -> Signal<u64>
The count the box watches, so a fresh ask is told from the one it is already open on.
Sourcepub fn deletes(&self)
pub fn deletes(&self)
Delete: the document, gone from the origin, and the session left standing on the next one.
Sourcepub fn exports_archive(&self)
pub fn exports_archive(&self)
Export .bwx.zip: what the origin holds, as the one file a container travels in.
Sourcepub fn exports_named(&self, name: &str)
pub fn exports_named(&self, name: &str)
A listed row’s Export: the diagram it names, as the one file a container travels in.
Sourcepub fn deletes_named(&self, name: &str)
pub fn deletes_named(&self, name: &str)
A listed row’s Delete: the diagram it names, gone from the origin. Any but this tab’s own leaves the session where it stands, and one another tab has open is refused.
Sourcepub fn imports_archive(&self, called: String, archive: Vec<u8>)
pub fn imports_archive(&self, called: String, archive: Vec<u8>)
Import .bwx.zip: a container laid down in the origin under a name nothing stands under, and opened.
Sourcefn opens_a_door(&self, door: Door)
fn opens_a_door(&self, door: Door)
The library’s own doors, each of which awaits the origin — so the document leaves the session for as long as one is open and the frame stands off until it is back.
One at a time and never two: the origin is written in the order the store made its writes, and a second door open across the first would interleave a rev with the row that names it.
Sourceasync fn walks_through(&self, door: Door, doc: Doc) -> (Stood, Option<String>)
async fn walks_through(&self, door: Door, doc: Doc) -> (Stood, Option<String>)
What a door leaves the session standing on, and what it could not do.
Sourceasync fn deletes_this(&self, doc: Doc) -> (Stood, Option<String>)
async fn deletes_this(&self, doc: Doc) -> (Stood, Option<String>)
This tab’s diagram, gone from the origin, and the session left standing on a newborn.
Sourceasync fn exports_this(&self, doc: Doc) -> (Stood, Option<String>)
async fn exports_this(&self, doc: Doc) -> (Stood, Option<String>)
This tab’s diagram, packed and handed to the browser to save.
Sourcepub fn picked(&self, act: Option<Act>)
pub fn picked(&self, act: Option<Act>)
A picker or a file pick ended. What it ended in is an ordinary action; a cancel is nothing at all, because opening the flow changed nothing to put back.
Sourcepub fn provoked(&self)
pub fn provoked(&self)
The middle button went down on the diagram: a paste that follows is
the platform’s, not an ask (Pasting).
Sourcepub fn asked(&self)
pub fn asked(&self)
A key was pressed, so the user is at the keyboard and the next paste is theirs.
Sourcepub fn takes_a_paste(&self) -> bool
pub fn takes_a_paste(&self) -> bool
Whether to take a paste the browser just raised. Asking clears the
provocation, so one middle click refuses one paste.
Sourcepub fn delivers(&self, what: Wanted, name: &str, bytes: Vec<u8>)
pub fn delivers(&self, what: Wanted, name: &str, bytes: Vec<u8>)
The bytes a file pick came back with, delivered to whatever the pick was opened for — so one that took a while still lands where the press that asked for it meant it to.
Sourcepub fn embeds(&self, name: &str, bytes: &[u8])
pub fn embeds(&self, name: &str, bytes: &[u8])
A document dropped on the diagram, embedded as a block of this one.
No door: an embed is a copy of the arriving drawing, so nothing is
laid down in the origin and the session keeps its document throughout.
Filing a document is the Diagrams section’s drop (Self::imports_archive).
Sourceasync fn delivers_archive(&self, named: &Name) -> Result<(), String>
async fn delivers_archive(&self, named: &Name) -> Result<(), String>
The container named, packed and handed to the browser to save.
Sourcefn takes_back(&self, stood: Stood)
fn takes_back(&self, stood: Stood)
Give the document back and let the frame run again.
async fn lists_the_origin(&self)
Sourcepub fn reports(&self, what: impl Into<String>)
pub fn reports(&self, what: impl Into<String>)
A standing fact about the document, which the notices strip carries until it is acknowledged — as the desktop’s library reports one.
Sourcepub fn unpicked(&self)
pub fn unpicked(&self)
A file pick was cancelled. Opening the picker changed nothing, so there is nothing to put back — only the record of the flow to drop.
Sourcepub fn typeface(&self) -> FontChoice
pub fn typeface(&self) -> FontChoice
The face the diagram is drawn in — which the in-place editor types in too, so the draft and what it covers are the same letters.
Sourcepub fn mounted(&self, canvas: HtmlCanvasElement)
pub fn mounted(&self, canvas: HtmlCanvasElement)
The canvas is in the document: take its context, size its backing store, and tell the session how big the diagram is.
Sourcepub fn resized(&self)
pub fn resized(&self)
The canvas changed size: the backing store follows the display, and the session is told the viewport it now paints in.
Sourcepub fn covers(&self, band: Band, at: Rect)
pub fn covers(&self, band: Band, at: Rect)
band lies over the diagram at at, in the canvas’s own coordinates.
Measured by the band itself and re-measured when it moves, never
cached: what a framing has to stay clear of is where the chrome is,
not where it was laid out.
Sourcepub fn origin(&self) -> Option<Pos2>
pub fn origin(&self) -> Option<Pos2>
Where the canvas’s top-left sits in client coordinates, which a pointer event is read against.
Sourcepub fn grabs(&self, pointer: i32)
pub fn grabs(&self, pointer: i32)
Take the pointer for the gesture and the keyboard for the canvas, so a drag that leaves the element still arrives and the keys are read.
Sourcepub fn takes_keyboard(&self)
pub fn takes_keyboard(&self)
The keyboard goes back to the canvas: a field that closes leaves the focus on the page’s body otherwise, where no digit arms a tool.
fn says_the_safe_region(&self, viewport: Rect)
fn books(&self, ask: impl FnOnce(&mut Pacing) -> Schedule)
fn book(&self, schedule: Schedule)
Sourcefn frame(&self)
fn frame(&self)
One frame: what was said, run and shown.
A frame while a door is open would find a document that is not there, so it stands off; what was said keeps until the door closes and books the frame that reads it. The wait is one origin write per owed row, so what it costs at worst is the frame after a commit lands.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Shell
impl !RefUnwindSafe for Shell
impl !Send for Shell
impl !Sync for Shell
impl Unpin for Shell
impl UnsafeUnpin for Shell
impl !UnwindSafe for Shell
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>,
replaced by palette::chromatic_adaptation::AdaptIntoUnclamped
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
replaced by palette::chromatic_adaptation::AdaptIntoUnclamped
Source§impl<T, C> AdaptIntoUnclamped<T> for Cwhere
T: AdaptFromUnclamped<C>,
impl<T, C> AdaptIntoUnclamped<T> for Cwhere
T: AdaptFromUnclamped<C>,
Source§type Scalar = <T as AdaptFromUnclamped<C>>::Scalar
type Scalar = <T as AdaptFromUnclamped<C>>::Scalar
Source§fn adapt_into_unclamped_with<M>(self) -> Twhere
M: LmsToXyz<<C as AdaptIntoUnclamped<T>>::Scalar> + XyzToLms<<C as AdaptIntoUnclamped<T>>::Scalar>,
fn adapt_into_unclamped_with<M>(self) -> Twhere
M: LmsToXyz<<C as AdaptIntoUnclamped<T>>::Scalar> + XyzToLms<<C as AdaptIntoUnclamped<T>>::Scalar>,
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
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
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<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
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
self into C, using the provided parameters.Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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
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
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
other into Self, while performing the appropriate scaling,
rounding and clamping.§impl<T> InitializeFromFunction<T> for T
impl<T> InitializeFromFunction<T> for T
§fn initialize_from_function(f: fn() -> T) -> T
fn initialize_from_function(f: fn() -> T) -> T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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
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
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
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
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
Source§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self into T, while performing the appropriate scaling,
rounding and clamping.§impl<D> OwoColorize for D
impl<D> OwoColorize for D
§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg] or
a color-specific method, such as [OwoColorize::green], Read more§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg] or
a color-specific method, such as [OwoColorize::on_yellow], Read more§fn fg_rgb<const R: u8, const G: u8, const B: u8>(
&self,
) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn fg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
§fn bg_rgb<const R: u8, const G: u8, const B: u8>(
&self,
) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn bg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
§fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
§fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
§impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
§fn super_from(input: T) -> O
fn super_from(input: T) -> O
§impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
§fn super_into(self) -> O
fn super_into(self) -> O
§impl<U, T> ToOwnedObj<U> for Twhere
U: FromObjRef<T>,
impl<U, T> ToOwnedObj<U> for Twhere
U: FromObjRef<T>,
§fn to_owned_obj(&self, data: FontData<'_>) -> U
fn to_owned_obj(&self, data: FontData<'_>) -> U
T, using the provided data to resolve any offsets.§impl<U, T> ToOwnedTable<U> for Twhere
U: FromTableRef<T>,
impl<U, T> ToOwnedTable<U> for Twhere
U: FromTableRef<T>,
fn to_owned_table(&self) -> U
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
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>
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>>
OutOfBounds error is returned which contains
the unclamped color. Read more