improv(calendar): make visible public

This commit is contained in:
Tony4dev 2025-01-19 14:37:07 +00:00 committed by GitHub
parent 00a4042c40
commit def11c6c96
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -45,7 +45,7 @@ pub fn set_day(date_selected: NaiveDate, day: u32) -> NaiveDate {
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Debug, Hash)]
pub struct CalendarModel {
pub selected: NaiveDate,
visible: NaiveDate,
pub visible: NaiveDate,
}
impl CalendarModel {
@ -58,11 +58,8 @@ impl CalendarModel {
}
}
pub fn new(selected: NaiveDate) -> Self {
CalendarModel {
selected,
visible: selected.clone(),
}
pub fn new(selected: NaiveDate, visible: NaiveDate) -> Self {
CalendarModel { selected, visible }
}
pub fn show_prev_month(&mut self) {
@ -94,6 +91,11 @@ impl CalendarModel {
self.show_next_month();
self.selected = self.visible.clone();
}
pub fn set_selected_visible(&mut self, selected: NaiveDate) {
self.selected = selected;
self.visible = self.selected.clone();
}
}
pub struct Calendar<'a, M> {