pub struct TextEditor<'a, Message, Renderer = Renderer>where
Renderer: Renderer,{ /* private fields */ }Expand description
A Material 3 outlined multi-line text field.
Implementations§
Source§impl<'a, Message, Renderer> TextEditor<'a, Message, Renderer>where
Message: 'a,
Renderer: Renderer + 'a,
impl<'a, Message, Renderer> TextEditor<'a, Message, Renderer>where
Message: 'a,
Renderer: Renderer + 'a,
pub fn new(content: &'a Content<Renderer>) -> Self
pub fn id(self, id: impl Into<Id>) -> Self
Sourcepub fn placeholder(self, placeholder: impl IntoFragment<'a>) -> Self
pub fn placeholder(self, placeholder: impl IntoFragment<'a>) -> Self
Examples found in repository?
examples/showcase/pages/inputs.rs (line 11)
6pub(super) fn view(state: &Showcase) -> material::Element<'_, Message> {
7 let input = material::widget::text_input::outlined("Write a note", &state.note)
8 .on_input(Message::TextChanged);
9
10 let editor = material::widget::text_editor::outlined_area(&state.editor_content)
11 .placeholder("Write details")
12 .on_action(Message::EditorAction);
13
14 let select_options = ["Assist", "Suggestion", "Filter"];
15 let select = material::widget::select::outlined(
16 select_options,
17 state.select_choice,
18 Message::SelectChanged,
19 )
20 .placeholder("Choose a chip")
21 .label("Chip type");
22
23 let combobox = material::widget::combobox::outlined_with_input(
24 &state.combobox_options,
25 "Search a chip",
26 &state.combobox_input,
27 state.combobox_choice.as_ref(),
28 Message::ComboboxSelected,
29 )
30 .label("Searchable chip")
31 .on_input(Message::ComboboxInputChanged);
32
33 page::sections([
34 page::section("Text fields", page::stack([input.into(), editor.into()])).into(),
35 page::section(
36 "Selection fields",
37 page::stack([select.into(), combobox.into()]),
38 )
39 .into(),
40 page::section("Pickers", pickers(state)).into(),
41 page::section("Search", search_bar(state)).into(),
42 page::section("Dividers", dividers()).into(),
43 ])
44 .into()
45}pub fn width(self, width: impl Into<Pixels>) -> Self
pub fn height(self, height: impl Into<Length>) -> Self
pub fn min_height(self, min_height: impl Into<Pixels>) -> Self
pub fn max_height(self, max_height: impl Into<Pixels>) -> Self
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
Examples found in repository?
examples/showcase/pages/inputs.rs (line 12)
6pub(super) fn view(state: &Showcase) -> material::Element<'_, Message> {
7 let input = material::widget::text_input::outlined("Write a note", &state.note)
8 .on_input(Message::TextChanged);
9
10 let editor = material::widget::text_editor::outlined_area(&state.editor_content)
11 .placeholder("Write details")
12 .on_action(Message::EditorAction);
13
14 let select_options = ["Assist", "Suggestion", "Filter"];
15 let select = material::widget::select::outlined(
16 select_options,
17 state.select_choice,
18 Message::SelectChanged,
19 )
20 .placeholder("Choose a chip")
21 .label("Chip type");
22
23 let combobox = material::widget::combobox::outlined_with_input(
24 &state.combobox_options,
25 "Search a chip",
26 &state.combobox_input,
27 state.combobox_choice.as_ref(),
28 Message::ComboboxSelected,
29 )
30 .label("Searchable chip")
31 .on_input(Message::ComboboxInputChanged);
32
33 page::sections([
34 page::section("Text fields", page::stack([input.into(), editor.into()])).into(),
35 page::section(
36 "Selection fields",
37 page::stack([select.into(), combobox.into()]),
38 )
39 .into(),
40 page::section("Pickers", pickers(state)).into(),
41 page::section("Search", search_bar(state)).into(),
42 page::section("Dividers", dividers()).into(),
43 ])
44 .into()
45}pub fn font(self, font: impl Into<Renderer::Font>) -> Self
pub fn size(self, size: impl Into<Pixels>) -> Self
pub fn line_height(self, line_height: impl Into<LineHeight>) -> Self
pub fn padding(self, padding: impl Into<Padding>) -> Self
pub fn wrapping(self, wrapping: Wrapping) -> Self
pub fn key_binding( self, key_binding: impl Fn(KeyPress) -> Option<Binding<Message>> + 'a, ) -> Self
pub fn style(self, style: impl Fn(&Theme, Status) -> Style + 'a) -> Self
Trait Implementations§
Source§impl<Message, Renderer> Debug for TextEditor<'_, Message, Renderer>where
Renderer: Renderer,
impl<Message, Renderer> Debug for TextEditor<'_, Message, Renderer>where
Renderer: Renderer,
Source§impl<'a, Message, Renderer> From<TextEditor<'a, Message, Renderer>> for Element<'a, Message, Theme, Renderer>where
Message: 'a,
Renderer: Renderer + 'a,
impl<'a, Message, Renderer> From<TextEditor<'a, Message, Renderer>> for Element<'a, Message, Theme, Renderer>where
Message: 'a,
Renderer: Renderer + 'a,
Source§fn from(text_editor: TextEditor<'a, Message, Renderer>) -> Self
fn from(text_editor: TextEditor<'a, Message, Renderer>) -> Self
Converts to this type from the input type.
Source§impl<Message, Renderer> Widget<Message, Theme, Renderer> for TextEditor<'_, Message, Renderer>where
Renderer: Renderer,
impl<Message, Renderer> Widget<Message, Theme, Renderer> for TextEditor<'_, Message, Renderer>where
Renderer: Renderer,
Source§fn operate(
&mut self,
tree: &mut Tree,
layout: Layout<'_>,
renderer: &Renderer,
operation: &mut dyn Operation,
)
fn operate( &mut self, tree: &mut Tree, layout: Layout<'_>, renderer: &Renderer, operation: &mut dyn Operation, )
Source§fn update(
&mut self,
tree: &mut Tree,
event: &Event,
layout: Layout<'_>,
cursor: Cursor,
renderer: &Renderer,
clipboard: &mut dyn Clipboard,
shell: &mut Shell<'_, Message>,
viewport: &Rectangle,
)
fn update( &mut self, tree: &mut Tree, event: &Event, layout: Layout<'_>, cursor: Cursor, renderer: &Renderer, clipboard: &mut dyn Clipboard, shell: &mut Shell<'_, Message>, viewport: &Rectangle, )
Source§fn mouse_interaction(
&self,
tree: &Tree,
layout: Layout<'_>,
cursor: Cursor,
viewport: &Rectangle,
renderer: &Renderer,
) -> Interaction
fn mouse_interaction( &self, tree: &Tree, layout: Layout<'_>, cursor: Cursor, viewport: &Rectangle, renderer: &Renderer, ) -> Interaction
Auto Trait Implementations§
impl<'a, Message, Renderer = Renderer<Renderer, Renderer>> !RefUnwindSafe for TextEditor<'a, Message, Renderer>
impl<'a, Message, Renderer = Renderer<Renderer, Renderer>> !Send for TextEditor<'a, Message, Renderer>
impl<'a, Message, Renderer = Renderer<Renderer, Renderer>> !Sync for TextEditor<'a, Message, Renderer>
impl<'a, Message, Renderer = Renderer<Renderer, Renderer>> !UnwindSafe for TextEditor<'a, Message, Renderer>
impl<'a, Message, Renderer> Freeze for TextEditor<'a, Message, Renderer>
impl<'a, Message, Renderer> Unpin for TextEditor<'a, Message, Renderer>
impl<'a, Message, Renderer> UnsafeUnpin for TextEditor<'a, Message, Renderer>
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
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> 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<State, Message> IntoBoot<State, Message> for State
impl<State, Message> IntoBoot<State, Message> for State
Source§fn into_boot(self) -> (State, Task<Message>)
fn into_boot(self) -> (State, Task<Message>)
Turns some type into the initial state of some
Application.