From cd03d732b1f0df6c020a94135db2db4b690a4937 Mon Sep 17 00:00:00 2001 From: Akshay Date: Mon, 25 Jan 2021 14:54:51 +0530 Subject: handle cursor events and entry --- src/habit/count.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/habit/count.rs') diff --git a/src/habit/count.rs b/src/habit/count.rs index d351758..b14354c 100644 --- a/src/habit/count.rs +++ b/src/habit/count.rs @@ -1,8 +1,10 @@ use std::collections::HashMap; use chrono::NaiveDate; +use cursive::direction::Absolute; use serde::{Deserialize, Serialize}; +use crate::app::Cursor; use crate::habit::prelude::default_auto; use crate::habit::traits::Habit; use crate::habit::{TrackEvent, ViewMode}; @@ -19,6 +21,9 @@ pub struct Count { #[serde(skip)] view_month_offset: u32, + #[serde(skip)] + cursor: Cursor, + #[serde(skip)] view_mode: ViewMode, } @@ -31,6 +36,7 @@ impl Count { goal, auto, view_month_offset: 0, + cursor: Cursor::new(), view_mode: ViewMode::Day, }; } @@ -101,6 +107,12 @@ impl Habit for Count { fn view_month_offset(&self) -> u32 { self.view_month_offset } + fn move_cursor(&mut self, d: Absolute) { + self.cursor.do_move(d); + } + fn cursor(&self) -> Cursor { + self.cursor + } fn set_view_mode(&mut self, mode: ViewMode) { self.view_mode = mode; } -- cgit v1.2.3