Skip to main content

TextInputData

Struct TextInputData 

Source
pub struct TextInputData {
    pub editor: Box<PlainEditor<TextBrush>>,
    pub is_multiline: bool,
    pub scroll_offset: f32,
}

Fields§

§editor: Box<PlainEditor<TextBrush>>

A parley TextEditor instance

§is_multiline: bool

Whether the input is a singleline or multiline input

§scroll_offset: f32

The scroll offset of the text content within the input, in CSS (unscaled) pixels.

For single-line inputs this is a horizontal offset; for multi-line inputs it is a vertical offset. It is kept up to date so that the caret remains visible within the input’s content box.

Implementations§

Source§

impl TextInputData

Source

pub fn new(is_multiline: bool) -> Self

Source

pub fn set_text( &mut self, font_ctx: &mut FontContext, layout_ctx: &mut LayoutContext<TextBrush>, text: &str, )

Source

pub fn clamp_scroll_offset( &mut self, content_box_width: f32, content_box_height: f32, )

Recompute Self::scroll_offset so that the caret stays visible within the input’s content box.

content_box_width and content_box_height are the dimensions of the input’s content box in CSS (unscaled) pixels.

Source

pub fn max_scroll_offset( &self, content_box_width: f32, content_box_height: f32, ) -> f32

The maximum valid value of Self::scroll_offset (in CSS pixels) given the input’s content box, i.e. the extent by which the text content overflows the content box along the input’s scroll axis.

content_box_width and content_box_height are the dimensions of the input’s content box in CSS (unscaled) pixels.

Source

pub fn scroll_by( &mut self, delta: f32, content_box_width: f32, content_box_height: f32, ) -> f32

Scroll the input’s text content by delta CSS pixels along its scroll axis (horizontal for single-line inputs, vertical for multi-line inputs), clamping to the scrollable range.

Returns the portion of delta that could not be consumed (because the input was already scrolled to its limit), so the caller can bubble it up to an ancestor scroller.

Trait Implementations§

Source§

impl Clone for TextInputData

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more

Auto Trait Implementations§

Blanket Implementations§

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> 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<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> ErasedDestructor for T
where T: 'static,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> 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> MaybeBoxed<Box<T>> for T

Source§

fn maybe_boxed(self) -> Box<T>

Convert
Source§

impl<T> MaybeBoxed<T> for T

Source§

fn maybe_boxed(self) -> T

Convert
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
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, 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> WasmNotSend for T
where T: Send,

Source§

impl<T> WasmNotSendSync for T

Source§

impl<T> WasmNotSync for T
where T: Sync,