From 28b54383952e067fc9edbbb469b2ce1b5379d759 Mon Sep 17 00:00:00 2001 From: implicitfield <114500360+implicitfield@users.noreply.github.com> Date: Tue, 20 Jun 2023 19:34:25 +0400 Subject: [PATCH] ClockWidget: Deduplicate logic for updating calendar buttons --- Userland/Services/Taskbar/ClockWidget.cpp | 23 +++++++++++------------ Userland/Services/Taskbar/ClockWidget.h | 2 ++ 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/Userland/Services/Taskbar/ClockWidget.cpp b/Userland/Services/Taskbar/ClockWidget.cpp index e68b23a6ab..615460dd75 100644 --- a/Userland/Services/Taskbar/ClockWidget.cpp +++ b/Userland/Services/Taskbar/ClockWidget.cpp @@ -54,10 +54,7 @@ ClockWidget::ClockWidget() m_prev_date->set_icon(Gfx::Bitmap::load_from_file("/res/icons/16x16/go-back.png"sv).release_value_but_fixme_should_propagate_errors()); m_prev_date->on_click = [&](auto) { m_calendar->show_previous_date(); - if (m_calendar->mode() == GUI::Calendar::Year) - m_selected_calendar_button->set_text(m_calendar->formatted_date(GUI::Calendar::YearOnly).release_value_but_fixme_should_propagate_errors()); - else - m_selected_calendar_button->set_text(m_calendar->formatted_date().release_value_but_fixme_should_propagate_errors()); + update_selected_calendar_button(); }; m_selected_calendar_button = navigation_container.add(); @@ -65,10 +62,7 @@ ClockWidget::ClockWidget() m_selected_calendar_button->set_fixed_height(24); m_selected_calendar_button->on_click = [&](auto) { m_calendar->toggle_mode(); - if (m_calendar->mode() == GUI::Calendar::Year) - m_selected_calendar_button->set_text(m_calendar->formatted_date(GUI::Calendar::YearOnly).release_value_but_fixme_should_propagate_errors()); - else - m_selected_calendar_button->set_text(m_calendar->formatted_date().release_value_but_fixme_should_propagate_errors()); + update_selected_calendar_button(); }; m_next_date = navigation_container.add(); @@ -77,10 +71,7 @@ ClockWidget::ClockWidget() m_next_date->set_icon(Gfx::Bitmap::load_from_file("/res/icons/16x16/go-forward.png"sv).release_value_but_fixme_should_propagate_errors()); m_next_date->on_click = [&](auto) { m_calendar->show_next_date(); - if (m_calendar->mode() == GUI::Calendar::Year) - m_selected_calendar_button->set_text(m_calendar->formatted_date(GUI::Calendar::YearOnly).release_value_but_fixme_should_propagate_errors()); - else - m_selected_calendar_button->set_text(m_calendar->formatted_date().release_value_but_fixme_should_propagate_errors()); + update_selected_calendar_button(); }; auto& separator1 = root_container->add(); @@ -212,4 +203,12 @@ void ClockWidget::jump_to_current_date() m_selected_calendar_button->set_text(m_calendar->formatted_date().release_value_but_fixme_should_propagate_errors()); } +void ClockWidget::update_selected_calendar_button() +{ + if (m_calendar->mode() == GUI::Calendar::Year) + m_selected_calendar_button->set_text(m_calendar->formatted_date(GUI::Calendar::YearOnly).release_value_but_fixme_should_propagate_errors()); + else + m_selected_calendar_button->set_text(m_calendar->formatted_date().release_value_but_fixme_should_propagate_errors()); +} + } diff --git a/Userland/Services/Taskbar/ClockWidget.h b/Userland/Services/Taskbar/ClockWidget.h index fd5d46f253..985b4b2e49 100644 --- a/Userland/Services/Taskbar/ClockWidget.h +++ b/Userland/Services/Taskbar/ClockWidget.h @@ -45,6 +45,8 @@ private: void position_calendar_window(); void jump_to_current_date(); + void update_selected_calendar_button(); + DeprecatedString m_time_format; RefPtr m_calendar_window; RefPtr m_calendar;