pub struct OptionColor<COL> {
pub color: Option<COL>,
}Expand description
Wrapper for optional color values with style fallback.
This struct provides a convenient way to handle optional color parameters in widgets. When a color is not explicitly set, it falls back to the corresponding color from the global style configuration.
§Type Parameters
COL- The pixel color type implementingPixelColor
§Example
use matrix_gui::prelude::*;
// Create with no color set
let mut color = OptionColor::none();
// Set a specific color
color.set_color(Rgb565::RED);Fields§
§color: Option<COL>The optional color value.
Implementations§
Source§impl<COL: PixelColor> OptionColor<COL>
impl<COL: PixelColor> OptionColor<COL>
Sourcepub const fn none() -> Self
pub const fn none() -> Self
Creates a new OptionColor with no color set.
§Returns
A new OptionColor instance with color set to None.
Sourcepub fn text_color(&self, style: &Style<COL>) -> COL
pub fn text_color(&self, style: &Style<COL>) -> COL
Sourcepub fn background_color(&self, style: &Style<COL>) -> COL
pub fn background_color(&self, style: &Style<COL>) -> COL
Sourcepub fn border_color(&self, style: &Style<COL>) -> COL
pub fn border_color(&self, style: &Style<COL>) -> COL
Trait Implementations§
Source§impl<COL: Debug> Debug for OptionColor<COL>
impl<COL: Debug> Debug for OptionColor<COL>
Source§impl<COL: PixelColor> From<Option<COL>> for OptionColor<COL>
Converts an Option<COL> into an OptionColor<COL>.
impl<COL: PixelColor> From<Option<COL>> for OptionColor<COL>
Converts an Option<COL> into an OptionColor<COL>.
Auto Trait Implementations§
impl<COL> Freeze for OptionColor<COL>where
COL: Freeze,
impl<COL> RefUnwindSafe for OptionColor<COL>where
COL: RefUnwindSafe,
impl<COL> Send for OptionColor<COL>where
COL: Send,
impl<COL> Sync for OptionColor<COL>where
COL: Sync,
impl<COL> Unpin for OptionColor<COL>where
COL: Unpin,
impl<COL> UnsafeUnpin for OptionColor<COL>where
COL: UnsafeUnpin,
impl<COL> UnwindSafe for OptionColor<COL>where
COL: 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
Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Casts the value.
Source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Casts the value.
Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> UnwrappedAs for T
impl<T> UnwrappedAs for T
Source§fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
Source§fn unwrapped_cast_from(src: Src) -> Dst
fn unwrapped_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> WrappingAs for T
impl<T> WrappingAs for T
Source§fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
Source§fn wrapping_cast_from(src: Src) -> Dst
fn wrapping_cast_from(src: Src) -> Dst
Casts the value.