rat_widget::calendar

Struct MonthState

Source
pub struct MonthState {
    pub area: Rect,
    pub inner: Rect,
    pub area_days: [Rect; 31],
    pub area_weeks: [Rect; 6],
    pub focus: FocusFlag,
    pub mouse: MouseFlagsN,
    pub non_exhaustive: NonExhaustive,
    /* private fields */
}
Expand description

State & event-handling.

Fields§

§area: Rect

Total area. readonly. renewed for each render.

§inner: Rect

Area 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.

§focus: FocusFlag

Focus read+write

§mouse: MouseFlagsN

Mouse flags read+write

§non_exhaustive: NonExhaustive

Implementations§

Source§

impl MonthState

Source

pub fn new() -> Self

Source

pub fn named(name: &str) -> Self

Source

pub fn set_start_date(&mut self, date: NaiveDate) -> bool

Sets the start-date of the calendar. You can set every date, it will always be changed to the first of the month.

Setting this will be useless if the date is set with the Month widget.

Source

pub fn start_date(&self) -> NaiveDate

Start date of this month. Will always be the first.

Source

pub fn clear_selection(&mut self)

Removes all selection.

Source

pub fn select_week(&mut self, n: Option<usize>)

Select a week.

Source

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.

Source

pub fn selected_week(&self) -> Option<usize>

Selected week

Source

pub fn selected_week_as_date(&self) -> Option<NaiveDate>

Selected week

Source

pub fn select_day(&mut self, n: Option<usize>)

Select a day

Source

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.

Source

pub fn selected_day(&self) -> Option<usize>

Selected day

Source

pub fn selected_day_as_date(&self) -> Option<NaiveDate>

Selected day

Source

pub fn prev_day(&mut self, n: usize) -> bool

Select previous day.

Source

pub fn next_day(&mut self, n: usize) -> bool

Select next day.

Source

pub fn prev_week(&mut self, n: usize) -> bool

Select previous week.

Source

pub fn next_week(&mut self, n: usize) -> bool

Select next week.

Source

pub fn week_day(&self, n: usize) -> NaiveDate

Monday of the nth displayed week

Source

pub fn month_day(&self, n: usize) -> NaiveDate

Date of the nth displayed date

Source

pub fn month_day_as_week(&self, n: usize) -> Option<usize>

Week of the nth displayed date

Source

pub fn date_as_week(&self, d: NaiveDate) -> Option<usize>

Week of the given date

Source

pub fn week_len(&self) -> usize

Nr of weeks in this month.

Source

pub fn count_weeks(day: NaiveDate) -> usize

Nr of weeks for the given month

Trait Implementations§

Source§

impl Clone for MonthState

Source§

fn clone(&self) -> Self

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for MonthState

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for MonthState

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl HandleEvent<Event, MouseOnly, CalOutcome> for MonthState

Source§

fn handle(&mut self, event: &Event, _qualifier: MouseOnly) -> CalOutcome

Handle an event. Read more
Source§

impl HandleEvent<Event, Regular, CalOutcome> for MonthState

Source§

fn handle(&mut self, event: &Event, _qualifier: Regular) -> CalOutcome

Handle an event. Read more
Source§

impl HasFocus for MonthState

Source§

fn build(&self, builder: &mut FocusBuilder)

Build the focus-structure for the container.
Source§

fn focus(&self) -> FocusFlag

Access to the flag for the rest.
Source§

fn area(&self) -> Rect

Area for mouse focus. Read more
Source§

fn area_z(&self) -> u16

Z value for the area. Read more
Source§

fn navigable(&self) -> Navigation

Declares how the widget interacts with focus. Read more
Source§

fn is_focused(&self) -> bool

Focused?
Source§

fn lost_focus(&self) -> bool

Just lost focus.
Source§

fn gained_focus(&self) -> bool

Just gained focus.
Source§

impl RelocatableState for MonthState

Source§

fn relocate(&mut self, shift: (i16, i16), clip: Rect)

Relocate the areas in this widgets state.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.