Add helper function to get the GcalRecurrenceFrequency from the widgets

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550>
This commit is contained in:
Federico Mena Quintero
2025-08-27 20:00:17 -03:00
committed by Georges Basile Stavracas Neto
parent 63cf4374e4
commit 2d28a36072
+11 -3
View File
@@ -623,14 +623,22 @@ on_repeat_duration_changed_cb (GtkWidget *widget,
gtk_widget_set_visible (self->until_date_selector, active == 2); gtk_widget_set_visible (self->until_date_selector, active == 2);
} }
static GcalRecurrenceFrequency
get_recurrence_frequency (AdwComboRow *row)
{
guint item = adw_combo_row_get_selected (row);
g_assert (item >= GCAL_RECURRENCE_NO_REPEAT && item <= GCAL_RECURRENCE_OTHER);
return (GcalRecurrenceFrequency) item;
}
static void static void
on_repeat_type_changed_cb (GtkWidget *widget, on_repeat_type_changed_cb (GtkWidget *widget,
GParamSpec *pspec, GParamSpec *pspec,
GcalScheduleSection *self) GcalScheduleSection *self)
{ {
GcalRecurrenceFrequency frequency; GcalRecurrenceFrequency frequency = get_recurrence_frequency (ADW_COMBO_ROW (widget));
frequency = adw_combo_row_get_selected (ADW_COMBO_ROW (widget));
if (frequency == GCAL_RECURRENCE_NO_REPEAT) if (frequency == GCAL_RECURRENCE_NO_REPEAT)
adw_combo_row_set_selected (ADW_COMBO_ROW (self->repeat_duration_combo), GCAL_RECURRENCE_FOREVER); adw_combo_row_set_selected (ADW_COMBO_ROW (self->repeat_duration_combo), GCAL_RECURRENCE_FOREVER);