Skip to main content

IBANInputState

Struct IBANInputState 

Source
pub struct IBANInputState {
    pub area: Rect,
    pub inner: Rect,
    pub widget: MaskedInputState,
    pub country: String,
    pub non_exhaustive: NonExhaustive,
}
Available on crate feature iban only.
Expand description

Widget state.

Fields§

§area: Rect

read only renewed with each render.

§inner: Rect

read only renewed with each render.

§widget: MaskedInputState

read+write

§country: String

read only Current country mask.

§non_exhaustive: NonExhaustive

Implementations§

Source§

impl IBANInputState

Source

pub fn is_empty(&self) -> bool

Empty

Source

pub fn len(&self) -> upos_type

Length in grapheme count.

Source

pub fn line_width(&self) -> upos_type

Length as grapheme count.

Source

pub fn set_invalid(&mut self, invalid: bool)

Renders the widget in invalid style.

Source

pub fn get_invalid(&self) -> bool

Renders the widget in invalid style.

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 IBANInputState

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 IBANInputState

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 IBANInputState

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<upos_type>, 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<upos_type>, 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 IBANInputState

Source

pub fn offset(&self) -> upos_type

Offset shown.

Source

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

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

Source

pub fn cursor(&self) -> upos_type

Cursor position

Source

pub fn set_cursor(&mut self, cursor: upos_type, 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) -> upos_type

Selection anchor.

Source

pub fn has_selection(&self) -> bool

Selection

Source

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

Selection

Source

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

Selection

Source

pub fn select_all(&mut self)

Select all text.

Source

pub fn selected_text(&self) -> &str

Selection

Source§

impl IBANInputState

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<upos_type>) -> 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<upos_type>, ) -> Result<bool, TextError>

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

Source

pub fn delete_next_char(&mut self) -> bool

Source

pub fn delete_prev_char(&mut self) -> bool

Delete the char before the cursor.

Source§

impl IBANInputState

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 IBANInputState

Source

pub fn col_to_screen(&self, pos: upos_type) -> 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) -> upos_type

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.

Source§

impl IBANInputState

Source

pub fn new() -> Self

New state.

Source

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

Source

pub fn clear(&mut self)

Reset to empty.

Source

pub fn validate(&mut self) -> Result<bool, TextError>

Validate the IBAN. Sets the invalid flag. Returns true if the IBAN is valid.

Source

pub fn set_value(&mut self, iban: impl AsRef<str>)

Set the IBAN.

Invalid IBANs are acceptable, but they will be truncated to 35 characters. If an invalid IBAN is set the widget will immediately set the invalid flag too.

Source

pub fn value(&self) -> String

Get the IBAN.

This will return invalid IBANs too.

Source

pub fn valid_value(&self) -> Result<String, TextError>

Get the IBAN.

This will only return valid IBANs or empty strings.

Trait Implementations§

Source§

impl Clone for IBANInputState

Source§

fn clone(&self) -> IBANInputState

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for IBANInputState

Source§

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

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

impl Default for IBANInputState

Source§

fn default() -> Self

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

impl HandleEvent<Event, MouseOnly, TextOutcome> for IBANInputState

Source§

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

Handle an event. Read more
Source§

impl HandleEvent<Event, ReadOnly, TextOutcome> for IBANInputState

Source§

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

Handle an event. Read more
Source§

impl HandleEvent<Event, Regular, TextOutcome> for IBANInputState

Source§

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

Handle an event. Read more
Source§

impl HasFocus for IBANInputState

Source§

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

Build the focus-structure for the container/widget.
Source§

fn focus(&self) -> FocusFlag

Access to the focus flag.
Source§

fn area(&self) -> Rect

Area for mouse focus. Read more
Source§

fn navigable(&self) -> Navigation

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

fn build_nav(&self, navigable: Navigation, builder: &mut FocusBuilder)

Build the focus-structure for the container/widget. 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 is_focused(&self) -> bool

Does this widget have the focus. Or, if the flag is used for a container, does any of widget inside the container have the focus. Read more
Source§

fn lost_focus(&self) -> bool

This widget just lost the focus. This flag is set by [Focus::handle] if there is a focus transfer, and will be reset by the next call to [Focus::handle]. Read more
Source§

fn gained_focus(&self) -> bool

This widget just gained the focus. This flag is set by [Focus::handle] if there is a focus transfer, and will be reset by the next call to [Focus::handle]. Read more
Source§

fn has_mouse_focus(&self) -> bool

This flag is set by [Focus::handle], if a mouse-event matches one of the areas associated with a widget. Read more
Source§

impl HasScreenCursor for IBANInputState

Source§

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

The current text cursor as an absolute screen position.

Source§

impl RelocatableState for IBANInputState

Source§

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

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

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

Relocate only popup areas. As rendering the popups is a separate render, this has to be separate too.
Source§

fn relocate_popup_hidden(&mut self)

Relocate all popup areas to a clip-rect (0,0+0x0).
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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
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> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.