ColorInputState

Struct ColorInputState 

Source
pub struct ColorInputState {
    pub area: Rect,
    pub widget_area: Rect,
    pub mode_area: Rect,
    pub label_area: Rect,
    pub value: (f32, f32, f32),
    pub disable_modes: bool,
    pub mode: Mode,
    pub widget: MaskedInputState,
    pub non_exhaustive: NonExhaustive,
}
Expand description

State for the color input.

Fields§

§area: Rect

Area of the widget. read only renewed with each render.

§widget_area: Rect

Area inside the block.

§mode_area: Rect

Area for the mode. read_only renewed with each render.

§label_area: Rect

Area for the mode label. read_only renewed with each render.

§value: (f32, f32, f32)

value as RGB with 0.0..1.0 ranges.

§disable_modes: bool

Disable keys for mode switching. read only

§mode: Mode

read only

§widget: MaskedInputState

read only

§non_exhaustive: NonExhaustive

Implementations§

Source§

impl ColorInputState

Source

pub fn new() -> ColorInputState

Source

pub fn named(name: &str) -> ColorInputState

Source

pub fn set_overwrite(&mut self, overwrite: bool)

The next edit operation will overwrite the current content instead of adding text. Any move operations will cancel this overwrite.

Source

pub fn overwrite(&self) -> bool

Will the next edit operation overwrite the content?

Source§

impl ColorInputState

Source

pub fn set_clipboard(&mut self, clip: Option<impl Clipboard + 'static>)

Clipboard used. Default is to use the global_clipboard.

Source

pub fn clipboard(&self) -> Option<&dyn Clipboard>

Clipboard used. Default is to use the global_clipboard.

Source

pub fn copy_to_clip(&mut self) -> bool

Copy to clipboard

Source

pub fn cut_to_clip(&mut self) -> bool

Cut to clipboard

Source

pub fn paste_from_clip(&mut self) -> bool

Paste from clipboard.

Source§

impl ColorInputState

Source

pub fn set_undo_buffer(&mut self, undo: Option<impl UndoBuffer + 'static>)

Set undo buffer.

Source

pub fn undo_buffer(&self) -> Option<&dyn UndoBuffer>

Undo

Source

pub fn undo_buffer_mut(&mut self) -> Option<&mut dyn UndoBuffer>

Undo

Source

pub fn recent_replay_log(&mut self) -> Vec<UndoEntry>

Get all recent replay recordings.

Source

pub fn replay_log(&mut self, replay: &[UndoEntry])

Apply the replay recording.

Source

pub fn undo(&mut self) -> bool

Undo operation

Source

pub fn redo(&mut self) -> bool

Redo operation

Source§

impl ColorInputState

Source

pub fn set_styles(&mut self, styles: Vec<(Range<usize>, usize)>)

Set and replace all styles.

Source

pub fn add_style(&mut self, range: Range<usize>, style: usize)

Add a style for a byte-range.

Source

pub fn add_range_style( &mut self, range: Range<u32>, style: usize, ) -> Result<(), TextError>

Add a style for a Range<upos_type> . The style-nr refers to one of the styles set with the widget.

Source

pub fn remove_style(&mut self, range: Range<usize>, style: usize)

Remove the exact TextRange and style.

Source

pub fn remove_range_style( &mut self, range: Range<u32>, style: usize, ) -> Result<(), TextError>

Remove the exact Range<upos_type> and style.

Source

pub fn styles_in( &self, range: Range<usize>, buf: &mut Vec<(Range<usize>, usize)>, )

Find all styles that touch the given range.

Source

pub fn styles_at(&self, byte_pos: usize, buf: &mut Vec<(Range<usize>, usize)>)

All styles active at the given position.

Source

pub fn style_match(&self, byte_pos: usize, style: usize) -> Option<Range<usize>>

Check if the given style applies at the position and return the complete range for the style.

Source

pub fn styles(&self) -> Option<impl Iterator<Item = (Range<usize>, usize)>>

List of all styles.

Source§

impl ColorInputState

Source

pub fn offset(&self) -> u32

Offset shown.

Source

pub fn set_offset(&mut self, offset: u32)

Offset shown. This is corrected if the cursor wouldn’t be visible.

Source

pub fn cursor(&self) -> u32

Cursor position

Source

pub fn set_cursor(&mut self, cursor: u32, extend_selection: bool) -> bool

Set the cursor position, reset selection.

Source

pub fn set_default_cursor(&mut self)

Place cursor at some sensible position according to the mask.

Source

pub fn anchor(&self) -> u32

Selection anchor.

Source

pub fn has_selection(&self) -> bool

Selection

Source

pub fn selection(&self) -> Range<u32>

Selection

Source

pub fn set_selection(&mut self, anchor: u32, cursor: u32) -> bool

Selection

Source

pub fn select_all(&mut self)

Select all text.

Source

pub fn selected_text(&self) -> &str

Selection

Source§

impl ColorInputState

Source

pub fn is_empty(&self) -> bool

Empty

Source

pub fn value(&self) -> Color

Value as Color.

Source

pub fn len(&self) -> u32

Length in grapheme count.

Source

pub fn line_width(&self) -> u32

Length as grapheme count.

Source§

impl ColorInputState

Source

pub fn clear(&mut self)

Reset to empty.

Source

pub fn set_value_u32(&mut self, color: u32)

Set the color as u32

Source

pub fn set_value(&mut self, color: Color)

Set the color as Color.

Source

pub fn insert_char(&mut self, c: char) -> bool

Insert a char at the current position.

Source

pub fn delete_range(&mut self, range: Range<u32>) -> bool

Remove the selected range. The text will be replaced with the default value as defined by the mask.

Source

pub fn try_delete_range(&mut self, range: Range<u32>) -> Result<bool, TextError>

Remove the selected range. The text will be replaced with the default value as defined by the mask.

Source§

impl ColorInputState

Source

pub fn increment(&mut self, n: u32) -> bool

Increment the value at the cursor position.

Source

pub fn decrement(&mut self, n: u32) -> bool

Decrement the value at the cursor position.

Source

pub fn set_mode(&mut self, mode: Mode)

Set the color mode.

Source

pub fn next_mode(&mut self)

Switch to next mode.

Source

pub fn prev_mode(&mut self)

Switch to prev mode.

Source

pub fn move_right(&mut self, extend_selection: bool) -> bool

Move to the next char.

Source

pub fn move_left(&mut self, extend_selection: bool) -> bool

Move to the previous char.

Source

pub fn move_to_line_start(&mut self, extend_selection: bool) -> bool

Start of line

Source

pub fn move_to_line_end(&mut self, extend_selection: bool) -> bool

End of line

Source§

impl ColorInputState

Source

pub fn col_to_screen(&self, pos: u32) -> Option<u16>

Converts a grapheme based position to a screen position relative to the widget area.

Source

pub fn screen_to_col(&self, scx: i16) -> u32

Converts from a widget relative screen coordinate to a grapheme index. x is the relative screen position.

Source

pub fn set_screen_cursor(&mut self, cursor: i16, extend_selection: bool) -> bool

Set the cursor position from a screen position relative to the origin of the widget. This value can be negative, which selects a currently not visible position and scrolls to it.

Trait Implementations§

Source§

impl Debug for ColorInputState

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl Default for ColorInputState

Source§

fn default() -> ColorInputState

Returns the “default value” for a type. Read more
Source§

impl HandleEvent<Event, MouseOnly, TextOutcome> for ColorInputState

Source§

fn handle(&mut self, event: &Event, _keymap: MouseOnly) -> TextOutcome

Handle an event. Read more
Source§

impl HandleEvent<Event, ReadOnly, TextOutcome> for ColorInputState

Source§

fn handle(&mut self, event: &Event, _keymap: ReadOnly) -> TextOutcome

Handle an event. Read more
Source§

impl HandleEvent<Event, Regular, TextOutcome> for ColorInputState

Source§

fn handle(&mut self, event: &Event, _keymap: Regular) -> TextOutcome

Handle an event. Read more
Source§

impl HasFocus for ColorInputState

Source§

fn build(&self, builder: &mut FocusBuilder)

Build the focus-structure for the container.
Source§

fn focus(&self) -> FocusFlag

Access to the flag for the rest.
Source§

fn area(&self) -> Rect

Area for mouse focus. Read more
Source§

fn id(&self) -> usize

Provide a unique id for the widget.
Source§

fn area_z(&self) -> u16

Z value for the area. Read more
Source§

fn navigable(&self) -> Navigation

Declares how the widget interacts with focus. Read more
Source§

fn is_focused(&self) -> bool

Focused?
Source§

fn lost_focus(&self) -> bool

Just lost focus.
Source§

fn gained_focus(&self) -> bool

Just gained focus.
Source§

impl HasScreenCursor for ColorInputState

Source§

fn screen_cursor(&self) -> Option<(u16, u16)>

The current text cursor as an absolute screen position.

Source§

impl RelocatableState for ColorInputState

Source§

fn relocate(&mut self, shift: (i16, i16), clip: Rect)

Relocate the areas in this widgets state. Read more
Source§

fn relocate_hidden(&mut self)

Relocate all areas to a clip-rect (0,0+0x0).

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
where 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) -> D
where M: TransformMatrix<T>,

Convert the source color to the destination color using the specified method.
Source§

fn adapt_into(self) -> D

Convert the source color to the destination color using the bradford method by default.
Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T, C> ArraysFrom<C> for T
where C: IntoArrays<T>,

Source§

fn arrays_from(colors: C) -> T

Cast a collection of colors into a collection of arrays.
Source§

impl<T, C> ArraysInto<C> for T
where C: FromArrays<T>,

Source§

fn arrays_into(self) -> C

Cast this collection of arrays into a collection of colors.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for U
where T: FromCam16Unclamped<WpParam, U>,

Source§

type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
Source§

fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T

Converts self into C, using the provided parameters.
Source§

impl<T, C> ComponentsFrom<C> for T
where C: IntoComponents<T>,

Source§

fn components_from(colors: C) -> T

Cast a collection of colors into a collection of color components.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromAngle<T> for T

Source§

fn from_angle(angle: T) -> T

Performs a conversion from angle.
Source§

impl<T, U> FromStimulus<U> for T
where U: IntoStimulus<T>,

Source§

fn from_stimulus(other: U) -> T

Converts other into Self, while performing the appropriate scaling, rounding and clamping.
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> IntoAngle<U> for T
where U: FromAngle<T>,

Source§

fn into_angle(self) -> U

Performs a conversion into T.
Source§

impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for U
where T: Cam16FromUnclamped<WpParam, U>,

Source§

type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
Source§

fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T

Converts self into C, using the provided parameters.
Source§

impl<T, U> IntoColor<U> for T
where U: FromColor<T>,

Source§

fn into_color(self) -> U

Convert into T with values clamped to the color defined bounds Read more
Source§

impl<T, U> IntoColorUnclamped<U> for T
where U: FromColorUnclamped<T>,

Source§

fn into_color_unclamped(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> IntoStimulus<T> for T

Source§

fn into_stimulus(self) -> T

Converts self into T, while performing the appropriate scaling, rounding and clamping.
Source§

impl<T, C> TryComponentsInto<C> for T
where C: TryFromComponents<T>,

Source§

type Error = <C as TryFromComponents<T>>::Error

The error for when try_into_colors fails to cast.
Source§

fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>

Try to cast this collection of color components into a collection of colors. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T, U> TryIntoColor<U> for T
where U: TryFromColor<T>,

Source§

fn try_into_color(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more
Source§

impl<C, U> UintsFrom<C> for U
where C: IntoUints<U>,

Source§

fn uints_from(colors: C) -> U

Cast a collection of colors into a collection of unsigned integers.
Source§

impl<C, U> UintsInto<C> for U
where C: FromUints<U>,

Source§

fn uints_into(self) -> C

Cast this collection of unsigned integers into a collection of colors.