diff options
author | 2023-09-18 19:07:41 +0200 | |
---|---|---|
committer | 2023-09-18 19:07:41 +0200 | |
commit | e7326f0af6f16cf2ff04fbac93bf296a044923f4 (patch) | |
tree | 05a309b7faf7a8b6f8c609c128dffa996660f1e4 /core/src/text | |
parent | 8446fe6de52fa68077d23d39f728f79a29b52f00 (diff) | |
download | iced-e7326f0af6f16cf2ff04fbac93bf296a044923f4.tar.gz iced-e7326f0af6f16cf2ff04fbac93bf296a044923f4.tar.bz2 iced-e7326f0af6f16cf2ff04fbac93bf296a044923f4.zip |
Flesh out the `editor` example a bit more
Diffstat (limited to 'core/src/text')
-rw-r--r-- | core/src/text/editor.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/core/src/text/editor.rs b/core/src/text/editor.rs index 2144715f..13bafc3d 100644 --- a/core/src/text/editor.rs +++ b/core/src/text/editor.rs @@ -12,6 +12,8 @@ pub trait Editor: Sized + Default { fn cursor(&self) -> Cursor; + fn cursor_position(&self) -> (usize, usize); + fn selection(&self) -> Option<String>; fn line(&self, index: usize) -> Option<&str>; @@ -52,6 +54,12 @@ pub enum Action { Drag(Point), } +impl Action { + pub fn is_edit(&self) -> bool { + matches!(self, Self::Edit(_)) + } +} + #[derive(Debug, Clone, PartialEq)] pub enum Edit { Insert(char), |