first color editor

This commit is contained in:
Michael Sippel 2021-09-06 00:08:36 +02:00
parent cee6e02a04
commit b86220ae90
Signed by: senvas
GPG key ID: 060F22F65102F95C
4 changed files with 155 additions and 1 deletions
nested/src/integer

View file

@ -6,7 +6,7 @@ use {
crate::{
core::{ViewPort, OuterViewPort, Observer},
singleton::{SingletonView, SingletonBuffer},
sequence::{SequenceView},
sequence::{SequenceView, SequenceViewExt},
vec::VecBuffer,
terminal::{TerminalAtom, TerminalStyle, TerminalView, TerminalEvent, TerminalEditor, TerminalEditorResult},
tree_nav::{TreeNav, TreeNavResult, TerminalTreeEditor, TreeCursor},
@ -102,6 +102,17 @@ impl PosIntEditor {
self.digits_editor.get_data_port()
.filter_map(move |digit_editor| digit_editor.read().unwrap().data.get()?.to_digit(radix))
}
pub fn get_value(&self) -> u32 {
let mut value = 0;
let mut weight = 1;
for digit_value in self.get_data_port().get_view().unwrap().iter() {
value += digit_value * weight;
weight *= self.radix;
}
value
}
}
impl TreeNav for PosIntEditor {