Zipped Images viewer for MCE
this is just a quick little add-in i threw together for Vista MCE, for viewing images in zip archives. Vista MCE provides 2 new methods for developing applications : MCML and WPF XBAP. both are XML markup languages for declarative UI. i've written XBAP apps for the desktop, but not specifically for MCE, so i chose to use XBAP for this app. the application is just a simple image viewer. the only difference is that it works with zip archives. needed this behavior because i store all my pictures in zip files, instead of individual image files. hopefully a later version of MCE will support this out of the box.
the app starts up displaying a user's initial image directories. these directories are specified in the app.config file. the user can select a directory by using the 'arrow keys' on the remote control, and press 'ok' to select that directory. pressing the 'back' key will exit the app.
the next view will show directories (red), zip files (green), and images (blue). if a user selects a zip file, then the next view will show a list of image names within the zip file. the user can navigate with the 'arrow' keys, the 'back' key to return to a parent directory or zip file, and 'ok' to select.
when a user selects an image on the file system or within a zip file, then the image will be displayed. in this view, the user can press the 'right arrow' to go to the next image, 'left arrow' for the previous image, and 'ok' to jump to a random image. by pressing 'back' the view will return to show a zip file or directory.
so XBAP is a big improvement for developing UIs for Media Center. but there is still room for improvement. first, using Vista RTM with VS 2005 SP1, i was not able to debug in Media Center because my breakpoints were not being hit. to get around this i had a stand-alone XBAP project that i could debug using IE as the host. and XBAP apps are always painful to debug because of how they get cached. it gets annoying having to manually run 'mage -cc' all the time. finally, XBAP apps render over remote desktop to an XBox 360. this only renders about 3 or 4 frames per second, which is no good for animation. WPF is designed to support rendering remotely, so a WPF renderer needs to be created for the XBox 360.
will have to try MCML at some point, but the next article is probably something to do with XNA. later