1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
use crate::update::UpdateStep;
use crate::interface::TTYInterface;
use crate::result::Result;
#[derive(Copy, Clone, Eq, PartialEq)]
pub struct CursorPosition {
pub x: u16,
pub y: u16,
}
impl CursorPosition {
pub(crate) fn init(x: u16, y: u16) -> CursorPosition {
CursorPosition { x, y }
}
}
pub(crate) struct UpdateCursorStep {
pub(crate) new_cursor: CursorPosition,
}
impl UpdateStep for UpdateCursorStep {
fn do_update(&mut self, interface: &mut TTYInterface, _update_cursor: &mut CursorPosition) -> Result<()> {
interface.state.cursor = self.new_cursor;
Ok(())
}
}