pub struct MonthState {
pub area: Rect,
pub inner: Rect,
pub area_days: [Rect; 31],
pub area_weeks: [Rect; 6],
pub start_date: NaiveDate,
pub selected_week: Option<usize>,
pub selected_day: Option<usize>,
pub focus: FocusFlag,
pub mouse: MouseFlagsN,
pub non_exhaustive: NonExhaustive,
/* private fields */
}Expand description
State & event-handling.
Fields§
§area: RectTotal area. readonly. renewed for each render.
inner: RectArea inside the border. readonly. renewed for each render.
area_days: [Rect; 31]Area for the days of the month. readonly. renewed for each render.
area_weeks: [Rect; 6]Area for the week numbers. readonly. renewed for each render.
start_date: NaiveDateStartdate readonly. renewed for each render.
selected_week: Option<usize>Selected week
selected_day: Option<usize>Selected day
focus: FocusFlagFocus read+write
mouse: MouseFlagsNMouse flags read+write
non_exhaustive: NonExhaustiveImplementations§
Source§impl MonthState
impl MonthState
pub fn new() -> Self
pub fn named(name: &str) -> Self
Sourcepub fn clear_selection(&mut self)
pub fn clear_selection(&mut self)
Removes all selection.
Sourcepub fn select_week(&mut self, n: Option<usize>)
pub fn select_week(&mut self, n: Option<usize>)
Select a week.
Sourcepub fn select_week_by_date(&mut self, d: Option<NaiveDate>) -> bool
pub fn select_week_by_date(&mut self, d: Option<NaiveDate>) -> bool
Select a week by date Returns true if the date is valid for this month. If false it doesn’t change the selection.
Sourcepub fn selected_week(&mut self) -> Option<usize>
pub fn selected_week(&mut self) -> Option<usize>
Selected week
Sourcepub fn selected_week_as_date(&mut self) -> Option<NaiveDate>
pub fn selected_week_as_date(&mut self) -> Option<NaiveDate>
Selected week
Sourcepub fn select_day(&mut self, n: Option<usize>)
pub fn select_day(&mut self, n: Option<usize>)
Select a day
Sourcepub fn select_date(&mut self, d: Option<NaiveDate>) -> bool
pub fn select_date(&mut self, d: Option<NaiveDate>) -> bool
Select by date. Returns true if the date is valid for this month. If false it doesn’t change the selection.
Sourcepub fn selected_day(&mut self) -> Option<usize>
pub fn selected_day(&mut self) -> Option<usize>
Selected day
Sourcepub fn selected_day_as_date(&mut self) -> Option<NaiveDate>
pub fn selected_day_as_date(&mut self) -> Option<NaiveDate>
Selected day
Sourcepub fn month_day_as_week(&self, n: usize) -> Option<usize>
pub fn month_day_as_week(&self, n: usize) -> Option<usize>
Week of the nth displayed date
Sourcepub fn date_as_week(&self, d: NaiveDate) -> Option<usize>
pub fn date_as_week(&self, d: NaiveDate) -> Option<usize>
Week of the given date
Sourcepub fn count_weeks(day: NaiveDate) -> usize
pub fn count_weeks(day: NaiveDate) -> usize
Nr of weeks for the given month
Trait Implementations§
Source§impl Clone for MonthState
impl Clone for MonthState
Source§impl Debug for MonthState
impl Debug for MonthState
Source§impl Default for MonthState
impl Default for MonthState
Source§impl HandleEvent<Event, MouseOnly, CalOutcome> for MonthState
impl HandleEvent<Event, MouseOnly, CalOutcome> for MonthState
Source§impl HandleEvent<Event, Regular, CalOutcome> for MonthState
impl HandleEvent<Event, Regular, CalOutcome> for MonthState
Source§impl HasFocus for MonthState
impl HasFocus for MonthState
Source§fn build(&self, builder: &mut FocusBuilder)
fn build(&self, builder: &mut FocusBuilder)
Source§fn is_focused(&self) -> bool
fn is_focused(&self) -> bool
Source§fn lost_focus(&self) -> bool
fn lost_focus(&self) -> bool
Source§fn gained_focus(&self) -> bool
fn gained_focus(&self) -> bool
Source§impl RelocatableState for MonthState
impl RelocatableState for MonthState
Auto Trait Implementations§
impl !Freeze for MonthState
impl !RefUnwindSafe for MonthState
impl !Send for MonthState
impl !Sync for MonthState
impl Unpin for MonthState
impl !UnwindSafe for MonthState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more