Enum savory_style::box_shadow::BoxShadow[][src]

pub enum BoxShadow {
    One(ShadowValue),
    Multiple(Vec<ShadowValue>),
    Initial(Initial),
    Inherit(Inherit),
    None(None),
    Unset(Unset),
}
use savory_style::{values as val, Style, Color, unit::em};
use palette::rgb::Rgb;

Style::default()
    // for single shadow
    .and_box_shadow(|conf| {
        conf.x(em(0.4))
            .y(em(-0.8))
            // we can pass Rgb, Rgba, Hsl, Hsla
            .color(Rgb::new(0.5, 0.1, 0.1))
            // or we can use HTML colors
            .color(Color::BlueViolet)
            // shadow blur radius
            .blur(em(1.0))
            // spread radius
            .spread(em(2.0))
            // inset shadow
            .inset()
    })
    // for multiple shadows
    .and_box_shadow(|conf| {
        conf
            .add(|conf| {
                conf.x(em(1.0))
                    .y(em(2.0))
                    .color(Color::DimGray)
            })
            .add(|conf| {
                conf.x(em(-2.0))
                    .y(em(-4.0))
                    .color(Color::Red)
            })
    });

Variants

Multiple(Vec<ShadowValue>)
Initial(Initial)
Inherit(Inherit)
None(None)
Unset(Unset)

Implementations

impl BoxShadow[src]

pub fn new() -> Self[src]

pub fn x(self, val: impl Into<Length>) -> Self[src]

pub fn y(self, val: impl Into<Length>) -> Self[src]

pub fn blur(self, val: impl Into<Length>) -> Self[src]

pub fn try_blur(self, val: Option<impl Into<Length>>) -> Self[src]

pub fn spread(self, val: impl Into<Length>) -> Self[src]

pub fn try_spread(self, val: Option<impl Into<Length>>) -> Self[src]

pub fn color(self, val: impl Into<Color>) -> Self[src]

pub fn try_color(self, val: Option<impl Into<Color>>) -> Self[src]

pub fn inset(self) -> Self[src]

pub fn outset(self) -> Self[src]

pub fn add(self, get_val: impl FnOnce(ShadowValue) -> ShadowValue) -> Self[src]

Trait Implementations

impl Clone for BoxShadow[src]

impl Debug for BoxShadow[src]

impl DeclarativeConfig for BoxShadow[src]

impl Default for BoxShadow[src]

impl From<Inherit> for BoxShadow[src]

impl From<Initial> for BoxShadow[src]

impl From<None> for BoxShadow[src]

impl From<ShadowValue> for BoxShadow[src]

impl From<Unset> for BoxShadow[src]

impl From<Vec<ShadowValue, Global>> for BoxShadow[src]

impl PartialEq<BoxShadow> for BoxShadow[src]

impl StructuralPartialEq for BoxShadow[src]

impl UpdateStyleValues for BoxShadow[src]

Auto Trait Implementations

Blanket Implementations

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
    T: Component + Float,
    D: AdaptFrom<S, Swp, Dwp, T>,
    Swp: WhitePoint,
    Dwp: WhitePoint
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T, U> ConvertInto<U> for T where
    U: ConvertFrom<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,