pub struct TextInputVisualRepresentation {
pub text: String,
pub preedit_range: Range<usize>,
pub selection_range: Range<usize>,
pub cursor_position: Option<usize>,
pub text_color: Brush,
pub cursor_color: Color,
/* private fields */
}
Expand description
This struct holds the fields needed for rendering a TextInput item after applying any on-going composition. This way the renderer’s don’t have to duplicate the code for extracting and applying the pre-edit text, cursor placement within, etc.
Fields§
§text: String
The text to be rendered including any pre-edit string
preedit_range: Range<usize>
If set, this field specifies the range as byte offsets within the text field where the composition is in progress. Renderers typically provide visual feedback for the currently composed text, such as by using underlines.
selection_range: Range<usize>
If set, specifies the range as byte offsets within the text where to draw the selection.
cursor_position: Option<usize>
The position where to draw the cursor, as byte offset within the text.
text_color: Brush
The color of the (unselected) text
cursor_color: Color
The color of the blinking cursor
Implementations§
Source§impl TextInputVisualRepresentation
impl TextInputVisualRepresentation
Sourcepub fn map_byte_offset_from_byte_offset_in_visual_text(
&self,
byte_offset: usize,
) -> usize
pub fn map_byte_offset_from_byte_offset_in_visual_text( &self, byte_offset: usize, ) -> usize
Use this function to make a byte offset in the text used for rendering back to a byte offset in the TextInput’s text. The offsets might differ for example for password text input fields.