Wednesday, December 21, 2005 11:01 AM
Michael S. Kaplan
New in Windows Vista: updates to clock and calendar
It was almost nine months ago since I pointed out that The WinForms DateTimePicker and MonthCalendar do not support culture settings.
And there was also the time I talked about Calendars in other languages.
I tried to point out that WinForms was merely wrapping the Shell common controls, which do not support other calendars. So there is nothing to be done.
More recently I posted about how The calendar applet limps along.
I received 17 email responses to these two posts from various people on my team here in Redmond, in Ireland, and from the folks on the Shell team who wondered if I was aware of the efforts to support things a bit more effectively in Vista.
I was! It is just that it was to early to talk about it yet. And the blog entry was about the problem someone was having back then.
Now yesterday, Adam Nathan posted some screenshots from the December CTP on Windows Vista here and he included that little clock/calendar applet, so I thought it might make sense to show one of the exciting capabilities that is in the December CTP build. I suspect Paul Thurrott will be getting to them eventually, too (with the other five pages of screenshots and exhaustive reviews). :-)
If you have access to that build then you can play with the stuff below and enjoy yourself -- if no, perhaps Paul will be covering it in a future set of screenshots on the winsupersite. :-)
There is of course the standard new cool calendar and clock you get when you doublesingle-click on the time as Adam indicated:
UPDATE 12:28pm -- As I just learned from John Murphy (one of those guys in Ireland!), you only need to SINGLE-click to get the flyout to fly out, not a double click....

Now what happens if you change your default user locale to Arabic (Saudi Arabia)?

Wow, it is supporting non-Gregorian calendars! And this is not a fluke, you can try changing to Thai, the Japanese Emporer calendar, or even the Hebrew calendar:

And more!
Clearly the problems described in The calendar applet limps along have been fixed, and they were fixed by making use of the Shell controls, and of course making the Shell controls understand other calendars. In essence, the MonthCal and DateTimePicker controls in the Windows Shell now can support many other calenders -- an awesome feature done with the cross-group work of our team (a little in Redmond and a lot in Ireland -- you folks rock!) and the Shell folks. A much cooler international story, all the way around. :-)
Now does this mean the problems described in The WinForms DateTimePicker and MonthCalendar do not support culture settings are fixed? Well, if you think about it, they may or may not be. Especially when you consider that the WinForms code was written before this feature even existed, it is unclear whether WinForms will be taking the appropriate steps as a control host to change the setting. Definitely something to try on your Vista machine! And something that I can cover later as well.
There is obviously a lot more to this feature and what has been done with it and what can be done with it in Vista, that I will cover another time. There are even other features tucked away and waiting for the explanation in upcoming blog entries.
I may even see if I can get someone (maybe a "guest blogger"?) to say a few words about what it was like to move some of the algorithms that were done in managed code back into the unmanaged world.
But for now, I just wanted to make sure all the people looking at Adam's blog would not wonder whether Microsoft had fixed the "international thing" with that clock/calendar applet -- we did!
In future posts I'll talk about the interactions with the managed controls, some of the other new features, and even more exciting Vista stuff.
And if you have the December CTP build, then start playing with it -- many exciting new features are in there....
This post brought to you by "ฟ" (U+0e1f, THAI CHARACTER FO FAN)