pub struct TextEditor<'a, Highlighter, Message, Theme = Theme, Renderer = Renderer>{ /* private fields */ }Expand description
A multi-line text input.
§Example
use iced::widget::text_editor;
struct State {
content: text_editor::Content,
}
#[derive(Debug, Clone)]
enum Message {
Edit(text_editor::Action)
}
fn view(state: &State) -> Element<'_, Message> {
text_editor(&state.content)
.placeholder("Type something here...")
.on_action(Message::Edit)
.into()
}
fn update(state: &mut State, message: Message) {
match message {
Message::Edit(action) => {
state.content.perform(action);
}
}
}Implementations§
Source§impl<'a, Message, Theme, Renderer> TextEditor<'a, PlainText, Message, Theme, Renderer>
impl<'a, Message, Theme, Renderer> TextEditor<'a, PlainText, Message, Theme, Renderer>
Source§impl<'a, Highlighter, Message, Theme, Renderer> TextEditor<'a, Highlighter, Message, Theme, Renderer>
impl<'a, Highlighter, Message, Theme, Renderer> TextEditor<'a, Highlighter, Message, Theme, Renderer>
Sourcepub fn placeholder(self, placeholder: impl IntoFragment<'a>) -> Self
pub fn placeholder(self, placeholder: impl IntoFragment<'a>) -> Self
Sets the placeholder of the TextEditor.
Sourcepub fn height(self, height: impl Into<Length>) -> Self
pub fn height(self, height: impl Into<Length>) -> Self
Sets the height of the TextEditor.
Sourcepub fn width(self, width: impl Into<Pixels>) -> Self
pub fn width(self, width: impl Into<Pixels>) -> Self
Sets the width of the TextEditor.
Sourcepub fn on_action(self, on_edit: impl Fn(Action) -> Message + 'a) -> Self
pub fn on_action(self, on_edit: impl Fn(Action) -> Message + 'a) -> Self
Sets the message that should be produced when some action is performed in
the TextEditor.
If this method is not called, the TextEditor will be disabled.
Sourcepub fn size(self, size: impl Into<Pixels>) -> Self
pub fn size(self, size: impl Into<Pixels>) -> Self
Sets the text size of the TextEditor.
Sourcepub fn line_height(self, line_height: impl Into<LineHeight>) -> Self
pub fn line_height(self, line_height: impl Into<LineHeight>) -> Self
Sets the text::LineHeight of the TextEditor.
Sourcepub fn wrapping(self, wrapping: Wrapping) -> Self
pub fn wrapping(self, wrapping: Wrapping) -> Self
Sets the Wrapping strategy of the TextEditor.
Sourcepub fn highlight_with<H: Highlighter>(
self,
settings: H::Settings,
to_format: fn(&H::Highlight, &Theme) -> Format<Renderer::Font>,
) -> TextEditor<'a, H, Message, Theme, Renderer>
pub fn highlight_with<H: Highlighter>( self, settings: H::Settings, to_format: fn(&H::Highlight, &Theme) -> Format<Renderer::Font>, ) -> TextEditor<'a, H, Message, Theme, Renderer>
Highlights the TextEditor with the given Highlighter and
a strategy to turn its highlights into some text format.
Sourcepub fn key_binding(
self,
key_binding: impl Fn(KeyPress) -> Option<Binding<Message>> + 'a,
) -> Self
pub fn key_binding( self, key_binding: impl Fn(KeyPress) -> Option<Binding<Message>> + 'a, ) -> Self
Sets the closure to produce key bindings on key presses.
See Binding for the list of available bindings.
Sourcepub fn style(self, style: impl Fn(&Theme, Status) -> Style + 'a) -> Self
pub fn style(self, style: impl Fn(&Theme, Status) -> Style + 'a) -> Self
Sets the style of the TextEditor.
Sourcepub fn class(self, class: impl Into<Theme::Class<'a>>) -> Self
pub fn class(self, class: impl Into<Theme::Class<'a>>) -> Self
Sets the style class of the TextEditor.
Trait Implementations§
Source§impl<'a, Highlighter, Message, Theme, Renderer> From<TextEditor<'a, Highlighter, Message, Theme, Renderer>> for Element<'a, Message, Theme, Renderer>
impl<'a, Highlighter, Message, Theme, Renderer> From<TextEditor<'a, Highlighter, Message, Theme, Renderer>> for Element<'a, Message, Theme, Renderer>
Source§fn from(
text_editor: TextEditor<'a, Highlighter, Message, Theme, Renderer>,
) -> Self
fn from( text_editor: TextEditor<'a, Highlighter, Message, Theme, Renderer>, ) -> Self
Converts to this type from the input type.
Source§impl<'a, Highlighter, Message, Theme, Renderer> Widget<Message, Theme, Renderer> for TextEditor<'a, Highlighter, Message, Theme, Renderer>
impl<'a, Highlighter, Message, Theme, Renderer> Widget<Message, Theme, Renderer> for TextEditor<'a, Highlighter, Message, Theme, Renderer>
Source§fn on_event(
&mut self,
tree: &mut Tree,
event: Event,
layout: Layout<'_>,
cursor: Cursor,
_renderer: &Renderer,
clipboard: &mut dyn Clipboard,
shell: &mut Shell<'_, Message>,
_viewport: &Rectangle,
) -> Status
fn on_event( &mut self, tree: &mut Tree, event: Event, layout: Layout<'_>, cursor: Cursor, _renderer: &Renderer, clipboard: &mut dyn Clipboard, shell: &mut Shell<'_, Message>, _viewport: &Rectangle, ) -> Status
Source§fn draw(
&self,
tree: &Tree,
renderer: &mut Renderer,
theme: &Theme,
_defaults: &Style,
layout: Layout<'_>,
cursor: Cursor,
_viewport: &Rectangle,
)
fn draw( &self, tree: &Tree, renderer: &mut Renderer, theme: &Theme, _defaults: &Style, layout: Layout<'_>, cursor: Cursor, _viewport: &Rectangle, )
Draws the
Widget using the associated Renderer.Source§fn mouse_interaction(
&self,
_state: &Tree,
layout: Layout<'_>,
cursor: Cursor,
_viewport: &Rectangle,
_renderer: &Renderer,
) -> Interaction
fn mouse_interaction( &self, _state: &Tree, layout: Layout<'_>, cursor: Cursor, _viewport: &Rectangle, _renderer: &Renderer, ) -> Interaction
Source§fn operate(
&self,
tree: &mut Tree,
_layout: Layout<'_>,
_renderer: &Renderer,
operation: &mut dyn Operation,
)
fn operate( &self, tree: &mut Tree, _layout: Layout<'_>, _renderer: &Renderer, operation: &mut dyn Operation, )
Source§fn set_id(&mut self, id: Id)
fn set_id(&mut self, id: Id)
Sets the id of the widget
This may be called while diffing the widget tree
Source§fn overlay<'a>(
&'a mut self,
_state: &'a mut Tree,
_layout: Layout<'_>,
_renderer: &Renderer,
_translation: Vector,
) -> Option<Element<'a, Message, Theme, Renderer>>
fn overlay<'a>( &'a mut self, _state: &'a mut Tree, _layout: Layout<'_>, _renderer: &Renderer, _translation: Vector, ) -> Option<Element<'a, Message, Theme, Renderer>>
Returns the overlay of the
Widget, if there is any.Source§fn a11y_nodes(
&self,
_layout: Layout<'_>,
_state: &Tree,
_cursor: Cursor,
) -> A11yTree
fn a11y_nodes( &self, _layout: Layout<'_>, _state: &Tree, _cursor: Cursor, ) -> A11yTree
get the a11y nodes for the widget and its children
Source§fn drag_destinations(
&self,
_state: &Tree,
_layout: Layout<'_>,
_renderer: &Renderer,
_dnd_rectangles: &mut DndDestinationRectangles,
)
fn drag_destinations( &self, _state: &Tree, _layout: Layout<'_>, _renderer: &Renderer, _dnd_rectangles: &mut DndDestinationRectangles, )
Adds the drag destination rectangles of the widget.
Runs after the layout phase for each widget in the tree.
Auto Trait Implementations§
impl<'a, Highlighter, Message, Theme, Renderer> Freeze for TextEditor<'a, Highlighter, Message, Theme, Renderer>
impl<'a, Highlighter, Message, Theme = Theme, Renderer = Renderer> !RefUnwindSafe for TextEditor<'a, Highlighter, Message, Theme, Renderer>
impl<'a, Highlighter, Message, Theme = Theme, Renderer = Renderer> !Send for TextEditor<'a, Highlighter, Message, Theme, Renderer>
impl<'a, Highlighter, Message, Theme = Theme, Renderer = Renderer> !Sync for TextEditor<'a, Highlighter, Message, Theme, Renderer>
impl<'a, Highlighter, Message, Theme, Renderer> Unpin for TextEditor<'a, Highlighter, Message, Theme, Renderer>
impl<'a, Highlighter, Message, Theme = Theme, Renderer = Renderer> !UnwindSafe for TextEditor<'a, Highlighter, Message, Theme, Renderer>
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
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) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
Convert the source color to the destination color using the specified
method.
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
Convert the source color to the destination color using the bradford
method by default.
Source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
Source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Cast a collection of colors into a collection of arrays.
Source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
Source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
Cast this collection of arrays into a collection of colors.
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
Source§impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
Source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
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
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 Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
Source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
Cast a collection of colors into a collection of color components.
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§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.Source§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.Source§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.Source§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.Source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
Source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
Performs a conversion from
angle.Source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
Source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
Converts
other into Self, while performing the appropriate scaling,
rounding and clamping.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
Source§fn into_angle(self) -> U
fn into_angle(self) -> U
Performs a conversion into
T.Source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
Source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
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
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 Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
Source§fn into_color(self) -> U
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 Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
Source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Convert into T. The resulting color might be invalid in its color space Read more
Source§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
Converts
self into T, while performing the appropriate scaling,
rounding and clamping.Source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
Source§type Error = <C as TryFromComponents<T>>::Error
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>
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> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
Source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
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 moreSource§impl<C, U> UintsFrom<C> for Uwhere
C: IntoUints<U>,
impl<C, U> UintsFrom<C> for Uwhere
C: IntoUints<U>,
Source§fn uints_from(colors: C) -> U
fn uints_from(colors: C) -> U
Cast a collection of colors into a collection of unsigned integers.
Source§impl<C, U> UintsInto<C> for Uwhere
C: FromUints<U>,
impl<C, U> UintsInto<C> for Uwhere
C: FromUints<U>,
Source§fn uints_into(self) -> C
fn uints_into(self) -> C
Cast this collection of unsigned integers into a collection of colors.