|
Iris UIX: The Zune Software v2 Platform |
|
Written by Kostas Tzounopoulos
|
|
Thursday, 15 November 2007 |
What is the UIX? According to IStartedSomething its the technology used in the new Zune Software. Its an XML-based language, an extension of the 3rd party developers language offered to Media Center Developers, MCML, and contains the data which then render to buttons, menus and effects in the Zune Software v2...
From IStartedSomething : The whole application, top-to-bottom and inside-out, is powered by a Microsoft framework no one has ever heard of before. It has several names, simply “UIX” or the “Microsoft Iris UI Framework”. [...] Looking a little deeper, all of the presentation markup files are actually embedded in a resource file called ZuneShellResources.dll (also the same file the images are in). In here we find each component of the UI defined in a separate .UIX file. There are literally hundreds of these. For example there is a “AboutDialog.UIX”, “Button.UIX”, “GalleryView.UIX” and “Tooltip.UIX”. The UIX markup language is distinctively XML-based. Here is a snippet from “AboutDialog.UIX”.

After a little more researching together with the reference to Media Center before, it appears UIX is an extension to Media Center Markup Language (MCML), the presentation markup language used in Windows Media Center to third-party developers. In particular they share a lot of the same namespaces, for example and . However they are not identical besides UIX being a 2007 schema whilst MCML is 2006. The biggest difference in UIX is the inclusion of scripting logic. For example here is a snippet from “Scrollbar.UIX”.

Here they are defining some of the very simple logic behind a scrollbar. This also gives the impression UIX is a very low-level framework as simple controls like buttons, checkboxes and scrollbars are all user-defined and not built-in to the framework itself. The advantage being they can really fine-tune exactly how controls function as they intend it to. Explains why the buttons in the Zune software looks so good. Together, they can pretty much mimic most if not all of the common user interface available in Windows with UIX. Very cool but it causes problems to a few people who have contacted me. I hope there is a solution for them too:
|
|
Last Updated ( Thursday, 15 November 2007 )
|