comctl32/monthcal: Rename button navigation helper to better reflect its purpose.

This commit is contained in:
Nikolay Sivov 2010-07-31 13:25:47 +04:00 committed by Alexandre Julliard
parent 8851a4eb1f
commit a35085457e
1 changed files with 14 additions and 8 deletions

View File

@ -150,6 +150,12 @@ static const SYSTEMTIME st_null;
static const SYSTEMTIME max_allowed_date = { .wYear = 9999, .wMonth = 12, .wDay = 31 }; static const SYSTEMTIME max_allowed_date = { .wYear = 9999, .wMonth = 12, .wDay = 31 };
static const SYSTEMTIME min_allowed_date = { .wYear = 1752, .wMonth = 9, .wDay = 14 }; static const SYSTEMTIME min_allowed_date = { .wYear = 1752, .wMonth = 9, .wDay = 14 };
/* Prev/Next buttons */
enum nav_direction
{
DIRECTION_BACKWARD,
DIRECTION_FORWARD
};
#define MONTHCAL_GetInfoPtr(hwnd) ((MONTHCAL_INFO *)GetWindowLongPtrW(hwnd, 0)) #define MONTHCAL_GetInfoPtr(hwnd) ((MONTHCAL_INFO *)GetWindowLongPtrW(hwnd, 0))
@ -1764,13 +1770,13 @@ static void MONTHCAL_NotifyDayState(MONTHCAL_INFO *infoPtr)
} }
} }
static void MONTHCAL_GoToPrevNextMonth(MONTHCAL_INFO *infoPtr, BOOL prev) static void MONTHCAL_GoToMonth(MONTHCAL_INFO *infoPtr, enum nav_direction direction)
{ {
SYSTEMTIME st = infoPtr->curSel; SYSTEMTIME st = infoPtr->curSel;
TRACE("%s\n", prev ? "prev" : "next"); TRACE("%s\n", direction == DIRECTION_BACKWARD ? "back" : "fwd");
if(prev) MONTHCAL_GetPrevMonth(&st); else MONTHCAL_GetNextMonth(&st); if(direction == DIRECTION_BACKWARD) MONTHCAL_GetPrevMonth(&st); else MONTHCAL_GetNextMonth(&st);
if(!MONTHCAL_IsDateInValidRange(infoPtr, &st, FALSE)) return; if(!MONTHCAL_IsDateInValidRange(infoPtr, &st, FALSE)) return;
@ -1781,7 +1787,7 @@ static void MONTHCAL_GoToPrevNextMonth(MONTHCAL_INFO *infoPtr, BOOL prev)
range[0] = infoPtr->minSel; range[0] = infoPtr->minSel;
range[1] = infoPtr->maxSel; range[1] = infoPtr->maxSel;
if(prev) if(direction == DIRECTION_BACKWARD)
{ {
MONTHCAL_GetPrevMonth(&range[0]); MONTHCAL_GetPrevMonth(&range[0]);
MONTHCAL_GetPrevMonth(&range[1]); MONTHCAL_GetPrevMonth(&range[1]);
@ -1939,14 +1945,14 @@ MONTHCAL_LButtonDown(MONTHCAL_INFO *infoPtr, LPARAM lParam)
switch(hit) switch(hit)
{ {
case MCHT_TITLEBTNNEXT: case MCHT_TITLEBTNNEXT:
MONTHCAL_GoToPrevNextMonth(infoPtr, FALSE); MONTHCAL_GoToMonth(infoPtr, DIRECTION_FORWARD);
infoPtr->status = MC_NEXTPRESSED; infoPtr->status = MC_NEXTPRESSED;
SetTimer(infoPtr->hwndSelf, MC_PREVNEXTMONTHTIMER, MC_PREVNEXTMONTHDELAY, 0); SetTimer(infoPtr->hwndSelf, MC_PREVNEXTMONTHTIMER, MC_PREVNEXTMONTHDELAY, 0);
InvalidateRect(infoPtr->hwndSelf, NULL, FALSE); InvalidateRect(infoPtr->hwndSelf, NULL, FALSE);
return 0; return 0;
case MCHT_TITLEBTNPREV: case MCHT_TITLEBTNPREV:
MONTHCAL_GoToPrevNextMonth(infoPtr, TRUE); MONTHCAL_GoToMonth(infoPtr, DIRECTION_BACKWARD);
infoPtr->status = MC_PREVPRESSED; infoPtr->status = MC_PREVPRESSED;
SetTimer(infoPtr->hwndSelf, MC_PREVNEXTMONTHTIMER, MC_PREVNEXTMONTHDELAY, 0); SetTimer(infoPtr->hwndSelf, MC_PREVNEXTMONTHTIMER, MC_PREVNEXTMONTHDELAY, 0);
InvalidateRect(infoPtr->hwndSelf, NULL, FALSE); InvalidateRect(infoPtr->hwndSelf, NULL, FALSE);
@ -2081,8 +2087,8 @@ MONTHCAL_Timer(MONTHCAL_INFO *infoPtr, WPARAM id)
switch(id) { switch(id) {
case MC_PREVNEXTMONTHTIMER: case MC_PREVNEXTMONTHTIMER:
if(infoPtr->status & MC_NEXTPRESSED) MONTHCAL_GoToPrevNextMonth(infoPtr, FALSE); if(infoPtr->status & MC_NEXTPRESSED) MONTHCAL_GoToMonth(infoPtr, DIRECTION_FORWARD);
if(infoPtr->status & MC_PREVPRESSED) MONTHCAL_GoToPrevNextMonth(infoPtr, TRUE); if(infoPtr->status & MC_PREVPRESSED) MONTHCAL_GoToMonth(infoPtr, DIRECTION_BACKWARD);
InvalidateRect(infoPtr->hwndSelf, NULL, FALSE); InvalidateRect(infoPtr->hwndSelf, NULL, FALSE);
break; break;
case MC_TODAYUPDATETIMER: case MC_TODAYUPDATETIMER: