utils: Align GcalWeekDay enum with ISO 8601
Start the enum from Monday-Sunday (1-7). Adapt code that references the `is_workday()` utility method, which in turn uses the GcalWeekDay enum to combine pairs of days by bitwise or-ing. Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/822>
This commit is contained in:
+7
-7
@@ -51,13 +51,13 @@ typedef enum
|
|||||||
typedef enum
|
typedef enum
|
||||||
{
|
{
|
||||||
GCAL_WEEK_DAY_INVALID = 0,
|
GCAL_WEEK_DAY_INVALID = 0,
|
||||||
GCAL_WEEK_DAY_SUNDAY = 1 << 0,
|
GCAL_WEEK_DAY_MONDAY = 1 << 0,
|
||||||
GCAL_WEEK_DAY_MONDAY = 1 << 1,
|
GCAL_WEEK_DAY_TUESDAY = 1 << 1,
|
||||||
GCAL_WEEK_DAY_TUESDAY = 1 << 2,
|
GCAL_WEEK_DAY_WEDNESDAY = 1 << 2,
|
||||||
GCAL_WEEK_DAY_WEDNESDAY = 1 << 3,
|
GCAL_WEEK_DAY_THURSDAY = 1 << 3,
|
||||||
GCAL_WEEK_DAY_THURSDAY = 1 << 4,
|
GCAL_WEEK_DAY_FRIDAY = 1 << 4,
|
||||||
GCAL_WEEK_DAY_FRIDAY = 1 << 5,
|
GCAL_WEEK_DAY_SATURDAY = 1 << 5,
|
||||||
GCAL_WEEK_DAY_SATURDAY = 1 << 6
|
GCAL_WEEK_DAY_SUNDAY = 1 << 6
|
||||||
} GcalWeekDay;
|
} GcalWeekDay;
|
||||||
|
|
||||||
typedef enum
|
typedef enum
|
||||||
|
|||||||
@@ -199,7 +199,7 @@ gcal_date_chooser_day_set_date (GcalDateChooserDay *self,
|
|||||||
|
|
||||||
now = g_date_time_new_now (g_date_time_get_timezone (date));
|
now = g_date_time_new_now (g_date_time_get_timezone (date));
|
||||||
today = gcal_date_time_compare_date (date, now) == 0;
|
today = gcal_date_time_compare_date (date, now) == 0;
|
||||||
weekday = g_date_time_get_day_of_week (date) % GCAL_N_WEEKDAYS;
|
weekday = g_date_time_get_day_of_week (date);
|
||||||
|
|
||||||
if (G_UNLIKELY (today))
|
if (G_UNLIKELY (today))
|
||||||
gtk_widget_add_css_class (widget, "today");
|
gtk_widget_add_css_class (widget, "today");
|
||||||
|
|||||||
@@ -549,7 +549,7 @@ struct
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* gcal_util_is_workday:
|
* gcal_util_is_workday:
|
||||||
* @day: a guint representing the day of a week (0…Sunday, 6…Saturday)
|
* @day: a guint representing the ISO 8601 day of a week (1…Monday, 7…Sunday)
|
||||||
*
|
*
|
||||||
* Checks whether @day is workday or not based on the Territory part of Locale.
|
* Checks whether @day is workday or not based on the Territory part of Locale.
|
||||||
*
|
*
|
||||||
@@ -563,7 +563,7 @@ gcal_util_is_workday (guint day)
|
|||||||
gchar territory[3] = { 0, };
|
gchar territory[3] = { 0, };
|
||||||
guint i;
|
guint i;
|
||||||
|
|
||||||
if (day > GCAL_N_WEEKDAYS - 1)
|
if (day < 1 || day > GCAL_N_WEEKDAYS)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
no_work_days = GCAL_WEEK_DAY_SATURDAY | GCAL_WEEK_DAY_SUNDAY;
|
no_work_days = GCAL_WEEK_DAY_SATURDAY | GCAL_WEEK_DAY_SUNDAY;
|
||||||
|
|||||||
Reference in New Issue
Block a user