Hi,
I am trying to fix visual bug in comctl monthcalendar control. When I am using the control spy v2.0 for comctl5.0, I can see that current date is highled with grey background on windows xp. (similar to when we click a day in the calendar) But on wine its not happening. I am trying to find out, how we draw that highlighting. And also how we draw the default calendar.
Thanks, VJ
Vijay Kiran Kamuju wrote:
Hi,
I am trying to fix visual bug in comctl monthcalendar control. When I am using the control spy v2.0 for comctl5.0, I can see that current date is highled with grey background on windows xp. (similar to when we click a day in the calendar) But on wine its not happening. I am trying to find out, how we draw that highlighting. And also how we draw the default calendar.
In general, drawing is done by the function "Paint"; in the case of the monthcal, by MONTHCAL_Paint. The default date is set in MONTHCAL_Create, with the call GetLocalTime(&infoPtr->todaysDate); The decoration of the day, including highlighting, is done in MONTHCAL_DrawDay. The highlighting would be the calls hbr = GetSysColorBrush(COLOR_GRAYTEXT); hrgn = CreateEllipticRgn(r.left, r.top, r.right, r.bottom); FillRgn(hdc, hrgn, hbr);
Hi,
I am trying to figure why its not highlighting the current date (It should be greyed), but its not. Well I am trying to figure out. I think somehow it indirectly sends the MCN_SELECT for the current date. We need to incorporate that in the ode calling default case. I need some help, which function would be called if we send MCN_SELECT and MCN_RELEASED messages
Thanks, VJ
On 12/23/06, Duane Clark dclark@akamail.com wrote:
Vijay Kiran Kamuju wrote:
Hi,
I am trying to fix visual bug in comctl monthcalendar control. When I am using the control spy v2.0 for comctl5.0, I can see that current date is highled with grey background on windows xp. (similar to when we click a day in the calendar) But on wine its not happening. I am trying to find out, how we draw that highlighting. And also how we draw the default calendar.
In general, drawing is done by the function "Paint"; in the case of the monthcal, by MONTHCAL_Paint. The default date is set in MONTHCAL_Create, with the call GetLocalTime(&infoPtr->todaysDate); The decoration of the day, including highlighting, is done in MONTHCAL_DrawDay. The highlighting would be the calls hbr = GetSysColorBrush(COLOR_GRAYTEXT); hrgn = CreateEllipticRgn(r.left, r.top, r.right, r.bottom); FillRgn(hdc, hrgn, hbr);