Removed redundant events

This commit is contained in:
Eduardo Flores 2024-03-15 01:04:10 -07:00
parent 98835de7f6
commit d64b2261e2
2 changed files with 2 additions and 18 deletions

View file

@ -18,8 +18,6 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
/// Messages that are used specifically by our [`App`]. /// Messages that are used specifically by our [`App`].
#[derive(Clone, Debug)] #[derive(Clone, Debug)]
pub enum Message { pub enum Message {
PrevMonth(NaiveDate),
NextMonth(NaiveDate),
DateSelected(NaiveDate), DateSelected(NaiveDate),
} }
@ -71,12 +69,6 @@ impl cosmic::Application for App {
Message::DateSelected(date) => { Message::DateSelected(date) => {
self.date_selected = date; self.date_selected = date;
} }
Message::PrevMonth(date) => {
self.date_selected = date;
}
Message::NextMonth(date) => {
self.date_selected = date;
}
} }
println!("Date selected: {:?}", self.date_selected); println!("Date selected: {:?}", self.date_selected);
@ -90,8 +82,6 @@ impl cosmic::Application for App {
let calendar = cosmic::widget::calendar( let calendar = cosmic::widget::calendar(
&self.date_selected, &self.date_selected,
|date| Message::PrevMonth(date),
|date| Message::NextMonth(date),
|date| Message::DateSelected(date), |date| Message::DateSelected(date),
); );

View file

@ -10,14 +10,10 @@ use iced::alignment::{Horizontal, Vertical};
pub fn calendar<M>( pub fn calendar<M>(
selected: &NaiveDate, selected: &NaiveDate,
on_prev_month: impl Fn(NaiveDate) -> M + 'static,
on_next_month: impl Fn(NaiveDate) -> M + 'static,
on_select: impl Fn(NaiveDate) -> M + 'static, on_select: impl Fn(NaiveDate) -> M + 'static,
) -> Calendar<M> { ) -> Calendar<M> {
Calendar { Calendar {
selected, selected,
on_prev_month: Box::new(on_prev_month),
on_next_month: Box::new(on_next_month),
on_select: Box::new(on_select), on_select: Box::new(on_select),
} }
} }
@ -54,8 +50,6 @@ pub fn set_next_month(date_selected: NaiveDate) -> NaiveDate {
pub struct Calendar<'a, M> { pub struct Calendar<'a, M> {
selected: &'a NaiveDate, selected: &'a NaiveDate,
on_prev_month: Box<dyn Fn(NaiveDate) -> M>,
on_next_month: Box<dyn Fn(NaiveDate) -> M>,
on_select: Box<dyn Fn(NaiveDate) -> M>, on_select: Box<dyn Fn(NaiveDate) -> M>,
} }
@ -71,12 +65,12 @@ where
.push( .push(
button::icon(icon::from_name("go-previous-symbolic")) button::icon(icon::from_name("go-previous-symbolic"))
.padding([0, 12]) .padding([0, 12])
.on_press((this.on_prev_month)(set_prev_month(this.selected.clone()))), .on_press((this.on_select)(set_prev_month(this.selected.clone()))),
) )
.push( .push(
button::icon(icon::from_name("go-next-symbolic")) button::icon(icon::from_name("go-next-symbolic"))
.padding([0, 12]) .padding([0, 12])
.on_press((this.on_next_month)(set_next_month(this.selected.clone()))), .on_press((this.on_select)(set_next_month(this.selected.clone()))),
); );
// Calender // Calender