diff options
Diffstat (limited to 'src/habit/count.rs')
-rw-r--r-- | src/habit/count.rs | 25 |
1 files changed, 8 insertions, 17 deletions
diff --git a/src/habit/count.rs b/src/habit/count.rs index d351758..09fd399 100644 --- a/src/habit/count.rs +++ b/src/habit/count.rs @@ -1,11 +1,12 @@ use std::collections::HashMap; +use std::default::Default; use chrono::NaiveDate; use serde::{Deserialize, Serialize}; use crate::habit::prelude::default_auto; use crate::habit::traits::Habit; -use crate::habit::{TrackEvent, ViewMode}; +use crate::habit::{InnerData, TrackEvent}; #[derive(Debug, Serialize, Deserialize)] pub struct Count { @@ -17,10 +18,7 @@ pub struct Count { auto: bool, #[serde(skip)] - view_month_offset: u32, - - #[serde(skip)] - view_mode: ViewMode, + inner_data: InnerData, } impl Count { @@ -30,8 +28,7 @@ impl Count { stats: HashMap::new(), goal, auto, - view_month_offset: 0, - view_mode: ViewMode::Day, + inner_data: Default::default(), }; } } @@ -95,17 +92,11 @@ impl Habit for Count { }; } } - fn set_view_month_offset(&mut self, offset: u32) { - self.view_month_offset = offset; - } - fn view_month_offset(&self) -> u32 { - self.view_month_offset - } - fn set_view_mode(&mut self, mode: ViewMode) { - self.view_mode = mode; + fn inner_data_ref(&self) -> &InnerData { + &self.inner_data } - fn view_mode(&self) -> ViewMode { - self.view_mode + fn inner_data_mut_ref(&mut self) -> &mut InnerData { + &mut self.inner_data } fn is_auto(&self) -> bool { self.auto |