From d971d7aa352a47d2a6e8043125033ceacb99deab Mon Sep 17 00:00:00 2001 From: Lukas Fleischer Date: Mon, 19 May 2014 10:24:59 +0200 Subject: Fix calendar centering Adjust the positions of the weekly and monthly views inside the calendar panel. Signed-off-by: Lukas Fleischer --- src/ui-calendar.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) (limited to 'src') diff --git a/src/ui-calendar.c b/src/ui-calendar.c index 5fa8741..b24d555 100644 --- a/src/ui-calendar.c +++ b/src/ui-calendar.c @@ -283,18 +283,16 @@ draw_monthly_view(struct scrollwin *sw, struct date *current_day, struct date check_day; int c_day, c_day_1, day_1_sav, numdays, j; unsigned yr, mo; - int OFFY, OFFX, SBAR_WIDTH, ofs_x, ofs_y; + int w, ofs_x, ofs_y; int item_this_day = 0; mo = slctd_day.mm; yr = slctd_day.yyyy; /* offset for centering calendar in window */ - SBAR_WIDTH = wins_sbar_width(); - OFFY = 0; - OFFX = (SBAR_WIDTH - 27) / 2; - ofs_y = OFFY; - ofs_x = OFFX; + w = wins_sbar_width() - 2; + ofs_y = 0; + ofs_x = (w - 27) / 2; /* checking the number of days in february */ numdays = days[mo - 1]; @@ -313,7 +311,7 @@ draw_monthly_view(struct scrollwin *sw, struct date *current_day, WINS_CALENDAR_LOCK; custom_apply_attr(sw->inner, ATTR_HIGHEST); mvwprintw(sw->inner, ofs_y, - (SBAR_WIDTH - (strlen(_(monthnames[mo - 1])) + 5)) / 2, + (w - (strlen(_(monthnames[mo - 1])) + 5)) / 2, "%s %d", _(monthnames[mo - 1]), slctd_day.yyyy); custom_remove_attr(sw->inner, ATTR_HIGHEST); ++ofs_y; @@ -351,7 +349,7 @@ draw_monthly_view(struct scrollwin *sw, struct date *current_day, /* Go to next line, the week is over. */ if (!c_day_1 && 1 != c_day) { ofs_y++; - ofs_x = OFFX - day_1_sav - 4 * c_day; + ofs_x = (w - 27) / 2 - day_1_sav - 4 * c_day; } WINS_CALENDAR_LOCK; @@ -469,12 +467,12 @@ draw_weekly_view(struct scrollwin *sw, struct date *current_day, unsigned sunday_first) { #define DAYSLICESNO 6 - const int WCALWIDTH = 30; + const int WCALWIDTH = 28; struct tm t; int OFFY, OFFX, j, c_wday, days_to_remove, weeknum; OFFY = 0; - OFFX = (wins_sbar_width() - WCALWIDTH) / 2 + 1; + OFFX = (wins_sbar_width() - 2 - WCALWIDTH) / 2; /* Fill in a tm structure with the first day of the selected week. */ c_wday = ui_calendar_get_wday(&slctd_day); @@ -584,7 +582,7 @@ draw_weekly_view(struct scrollwin *sw, struct date *current_day, custom_apply_attr(sw->inner, ATTR_HIGHEST); mvwhline(sw->inner, OFFY + 1 + DAYSLICESNO / 2, OFFX, ACS_S9, 1); mvwhline(sw->inner, OFFY + 1 + DAYSLICESNO / 2, - OFFX + WCALWIDTH - 3, ACS_S9, 1); + OFFX + WCALWIDTH - 1, ACS_S9, 1); custom_remove_attr(sw->inner, ATTR_HIGHEST); WINS_CALENDAR_UNLOCK; -- cgit v1.2.3-70-g09d2