pub struct EditStore { /* private fields */ }Expand description
The retained editors of one window, owned by Core. Reach it through
Ui::text_edit, Core::edit_text and Core::set_edit_text rather
than directly.
Implementations§
Source§impl EditStore
impl EditStore
pub fn focused(&self) -> Option<Key>
pub fn set_focus(&mut self, key: Option<Key>)
Sourcepub fn caret_stamp(&self) -> u64
pub fn caret_stamp(&self) -> u64
See caret_stamp field: compare across frames to restart blink.
Sourcepub fn set_blink_visible(&mut self, visible: bool)
pub fn set_blink_visible(&mut self, visible: bool)
Blink-phase toggle for frame drivers; true draws the caret.
Sourcepub fn blink_visible(&self) -> bool
pub fn blink_visible(&self) -> bool
The phase as last set; true draws the caret.
Sourcepub fn len(&self) -> usize
pub fn len(&self) -> usize
How many states are retained — declared and undeclared together. What a test watches the budget through.
pub fn is_empty(&self) -> bool
pub fn contains(&self, key: Key) -> bool
pub fn origin_of(&self, key: Key) -> Option<OriginId>
Sourcepub fn text(&self, key: Key) -> Option<String>
pub fn text(&self, key: Key) -> Option<String>
The committed text: an in-progress composition is not part of it.
Sourcepub fn set_text(
&mut self,
key: Key,
text: &str,
fs: &mut FontSystem,
res: &Resources,
) -> bool
pub fn set_text( &mut self, key: Key, text: &str, fs: &mut FontSystem, res: &Resources, ) -> bool
Returns whether the text landed in an editor: false says it was
held for the frame that declares the key, so nothing on screen
changed yet and the frame that will change it is the app’s — a
driver that redraws on every write would re-lower the tree that
declares no editor and drop the seed to the warning.
pub fn version(&self, key: Key) -> u64
Sourcepub fn caret_and_selection(
&self,
key: Key,
) -> Option<(usize, Option<(usize, usize)>)>
pub fn caret_and_selection( &self, key: Key, ) -> Option<(usize, Option<(usize, usize)>)>
The caret as a byte offset into the committed text, and the non-empty selection as a byte range, for the access tree.
Sourcepub fn selection_cursors(
&self,
key: Key,
) -> Option<((usize, usize), (usize, usize))>
pub fn selection_cursors( &self, key: Key, ) -> Option<((usize, usize), (usize, usize))>
The selection’s anchor and the caret as (line, byte index) pairs (equal without a selection), for the access tree.
Sourcepub fn set_selection(
&mut self,
key: Key,
anchor: (usize, usize),
focus: (usize, usize),
)
pub fn set_selection( &mut self, key: Key, anchor: (usize, usize), focus: (usize, usize), )
Moves the caret to focus and the selection’s other end to
anchor, both (line, byte index) pairs clamped into the text; equal
pairs clear the selection. What a screen reader’s “select from here
to there” becomes.
Sourcepub fn replace_selection(
&mut self,
key: Key,
text: &str,
fs: &mut FontSystem,
) -> bool
pub fn replace_selection( &mut self, key: Key, text: &str, fs: &mut FontSystem, ) -> bool
Types text over the selection (or at the caret), as one undo
step; true when the content changed.
pub fn copy_selection(&self, key: Key) -> Option<String>
Sourcepub fn has_selection(&self, key: Key) -> bool
pub fn has_selection(&self, key: Key) -> bool
Whether the editor key has a non-empty selection — what
copy_selection would answer, without building the string. A
menu asking whether Copy applies asks this every time it opens.
Sourcepub fn history(&self, key: Key) -> (bool, bool)
pub fn history(&self, key: Key) -> (bool, bool)
Whether the editor key has an edit to undo, and one to redo.
Sourcepub fn delete_selection(&mut self, key: Key, fs: &mut FontSystem) -> bool
pub fn delete_selection(&mut self, key: Key, fs: &mut FontSystem) -> bool
Deletes the selection; returns true if anything was deleted.
Sourcepub fn preedit(&self, key: Key) -> Option<&str>
pub fn preedit(&self, key: Key) -> Option<&str>
The active composition text, if any (for tests and hosts).
pub fn is_multiline(&self, key: Key) -> bool
Trait Implementations§
Auto Trait Implementations§
impl !UnwindSafe for EditStore
impl Freeze for EditStore
impl RefUnwindSafe for EditStore
impl Send for EditStore
impl Sync for EditStore
impl Unpin for EditStore
impl UnsafeUnpin for EditStore
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>
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>
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)
&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)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.