Struct ColorSwatchFace
pub struct ColorSwatchFace { /* private fields */ }Expand description
An immediate-mode swatch: paint, hit-test, tooltip and accessibility from one declaration.
Implementations§
§impl ColorSwatchFace
impl ColorSwatchFace
pub fn new( rect: Rect, color: AlphaColor<Srgb>, name: impl Into<String>, ) -> ColorSwatchFace
pub fn of(rect: Rect, swatch: &ColorSwatch) -> ColorSwatchFace
pub fn of(rect: Rect, swatch: &ColorSwatch) -> ColorSwatchFace
The face of a ColorSwatch.
pub fn marker(self, marker: impl Into<String>) -> ColorSwatchFace
pub fn marker(self, marker: impl Into<String>) -> ColorSwatchFace
A short mark painted on the swatch (a letter for “automatic”).
pub fn selected(self, selected: bool) -> ColorSwatchFace
pub fn hovered(self, hovered: bool) -> ColorSwatchFace
pub fn focused(self, focused: bool) -> ColorSwatchFace
pub fn focused(self, focused: bool) -> ColorSwatchFace
Keyboard focus: the ring in your colour.
pub fn target_rect(self, target_rect: Rect) -> ColorSwatchFace
pub fn target_rect(self, target_rect: Rect) -> ColorSwatchFace
A pointer target larger than the painted swatch.
pub fn hit_test(&self, point: Point) -> bool
pub fn tooltip_target(&self, point: Point) -> Option<(Rect, String)>
pub fn accessibility(&self, action_target: impl Into<String>) -> AccessNode
pub fn paint( &self, scene: &mut Scene, transform: Affine, text: &mut TextRenderer, theme: &Theme, )
pub fn paint_ring(&self, scene: &mut Scene, transform: Affine, theme: &Theme)
pub fn paint_ring(&self, scene: &mut Scene, transform: Affine, theme: &Theme)
The swatch’s edge and mark over a sample the host painted in its rect instead of the flat colour: an edge derived from the colour, and the chosen, focused or hovered ring as on a flat swatch.
Auto Trait Implementations§
impl Freeze for ColorSwatchFace
impl RefUnwindSafe for ColorSwatchFace
impl Send for ColorSwatchFace
impl Sync for ColorSwatchFace
impl Unpin for ColorSwatchFace
impl UnsafeUnpin for ColorSwatchFace
impl UnwindSafe for ColorSwatchFace
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for 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> 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 more