Hilo: Windows 7 development walk-throughs


Windows 7 introduced a number of new end-user features that make using applications easier, and since then, developers have asked us for more prescriptive guidance on “How do I use those in my applications?”

“Hilo” is an effort by the team to provide just that.

“Hilo” provides a set of articles and samples that will arrive over the coming weeks and describe the design and implementation of a set of touch-enabled Windows applications that allow you to browse, select, and work with photos and images.  Below is the Hilo Browser’s image carousel and media pane:

Here, you can see the image contents of a folder.

The articles will cover key Windows 7 technologies, describe how they are used together to create a compelling user experience, and will detail the design and implementation of the applications themselves.

The Hilo articles are applicable to both managed and native developers.  They provide written guidance that will help you design and develop compelling, touch-enabled Windows applications of your own. The sample code is in C++ and freely available and shows how to use the APIs in the context of a real application.

Check out the first article on the “Hilo Browser” here.

Namaste!

Comments (7)

  1. J. Daniel Smith says:

    Why is the user interface created using Direct2D instead of WPF?

  2. phuff says:

    J. Daniel Smith-

    While you could build the Hilo UIs with WPF, the goal of the Hilo project is to supply source code for C++/native programming for Windows 7.  Sometimes it can be hard to find C++ source code for Windows 7 applications, so Hilo attempts to provide guidance and patterns for native developers.

    Polita Paulus

    Microsoft

  3. J. Daniel Smith says:

    @Polita: but the text above says "The Hilo articles are applicable to both managed and native developers".  Of course "applicable" can certainly be construed very broadly…

  4. Tony Goodhew says:

    J. Daniel Smith –

    By applicable we mean how you would use the Windows 7 features in an application. Yes the source is in C++ and the API calls are directly to things like Direct2D but what they do show is how you can use things like Windows Animation in an application to provide a better interface.

    For example "Chapter 4: Designing the Hilo User Experience" from the walkthrough is a great example of how anyone, regardless of the development technology they're using, can design a compelling touch based Windows 7 user interface.

    Hopefully this explains what we mean by "applicable". You'll see more of this as we continue to build out the sample set (again even though the focus in the source & APIs is C++).

    Tony Goodhew – Microsoft Corp

  5. pmf@live.com says:

    Are the Hilo guidances still considered as best-practices for Windows 8-non metro apps?

    Or – more precisely – are these guidances the recommended way to develop a native Windows 8 desktop app?

  6. rasharm_msft says:

    @Pierre Morel-Fourrier:

    The apps that you have written for Windows 7 (including Hilo) will continue to work fine as non-Metro style apps on Windows 8.  However as you know Hilo made use of some Windows technologies like Direct2D, Windows Animation Manager, Ribbon, Jumplist, Taskbar etc.  In Windows 8, there may be specific changes/improvements to certain parts of these technologies.  Based on that there may be some tweaks but overall Hilo guidance still represents a great way to develop a native desktop app.

    Thanks

    Raman Sharma, Visual C++

  7. rasharm_msft says:

    @Pierre Morel-Fourrier:

    The apps that you have written for Windows 7 (including Hilo) will continue to work fine as non-Metro style apps on Windows 8.  However as you know Hilo made use of some Windows technologies like Direct2D, Windows Animation Manager, Ribbon, Jumplist, Taskbar etc.  In Windows 8, there may be specific changes/improvements to certain parts of these technologies.  Based on that there may be some tweaks but overall Hilo guidance still represents a great way to develop a native desktop app.

    Thanks

    Raman Sharma, Visual C++