We also discussed in depth the design considerations and application programming interfaces (APIs) for programming application IDs, taskbar overlay icons, and progress bars. In this article, we’ll examine the more advanced features of the Windows 7 taskbar:
In our discussion of these features, we’ll again look at the design considerations pertinent to integrating an application with the Windows 7 taskbar and the Windows 7 user experience guidelines, and we’ll look at the native and managed APIs that make this integration possible.
The Windows Vista Start menu revolutionized the accessibility of applications and documents by giving us the amazing search box, which can enhance productivity in countless ways. However, in spite of these improvements, the Start menu which is a global, system-wide location can’t provide us with access to tasks and documents that are specific to a single application. When the application is running, the Start menu can display a menu or surface common tasks in its notification area icon but when the application is not running, the only thing the user can do is start the application up.
With the consolidation and revolution of launch surfaces that is integral to the Windows 7 desktop, every application now has a Start menu. This Start menu, known as the Jump List, gives every application a place for categorized destinations and tasks that are specific to that application. Windows 7 desktop has two manifestations of the Jump List: one is part of the traditional Start menu, and another is a popup menu from the application’s taskbar button.
The following screen shot depicts the typical Jump List of a Windows 7 application, shown after right-clicking the application’s taskbar button. It’s divided into three functionally different areas, which we’ll review from the bottom of the screen shot to the top:

Taskbar tasks: The three items on the bottom of the menu are the taskbar tasks, which are present in the Jump List of every application, even if it has absolutely no integration with the Windows 7 taskbar. The first task (from the top) allows you to launch the application or launch another instance of it if it’s already running. The second task allows you to pin the application to the taskbar (which means its taskbar button will be shown even if the application isn’t running) or unpin it from the taskbar if it is already pinned. Finally, the third task allows you to close the application’s window (but only if it is already running).
User tasks: The section above the taskbar tasks in the menu contains user tasks, which might contain additional separators to group related tasks together. Despite their name, it is the application not the user that populates the Jump List with these tasks. Typical tasks are shortcuts to additional functionality that is related to the application and that can be used even if the application is not currently running (in contrast to thumbnail toolbars, which are displayed only when the application is running). For example, Windows Media Player provides the Resume Previous List and Play All Music user tasks. The application in the screen shot provides the Launch Notepad and Launch Calculator user tasks. User tasks are phrased as verbs that are related to the application.
Categorized destinations: The topmost section in the menu contains categorized destinations, which are usually documents the application can handle and open. Destinations are nouns, and users usually expect them to open in the same application. (Even if the application does not have a well-defined file type or is not the primary handler for a specific file type, virtual destinations in the application’s Jump List might still redirect the user to specific functionality.) The system provides applications with the Recent and Frequent categories although it usually makes sense to include only one of them in the Jump List. However, applications might add more categories of destinations to the Jump List for example, an e-mail application might have Inbox and Follow-up categories, a Web browser might have a Favorites category, and so on. Finally, the system also provides a Pinned category, which contains items explicitly pinned by the user. These items cannot be programmatically controlled, and it’s up to the user’s discretion what gets pinned here. (Users can pin an item by right-clicking on the destination once the jump list is open.)
Applications control the contents of the Jump List using the COM ITaskbarList3 interface (implemented by the Windows 7 taskbar and obtained by co-creating the CLSID_TaskbarList COM object), which can be used as soon as the application’s taskbar button is created. The managed equivalent of ITaskbarList3 is the TaskbarManager class in the Windows API Code Pack.
More Info The Windows API Code Pack is an open-source managed library for interacting with the new Windows 7 features. It is not an official part of the .NET Framework, but it will give you a head start with your managed applications on Windows 7. It can be downloaded for free from http://code.msdn.microsoft.com/WindowsAPICodePack, where you’ll always find the latest version. The Windows API Code Pack was still under development while this article was written; this means that some APIs covered in the article might have changed in the final release of the library.
Our website is not responsible for the information contained by this article. Articleinput.com is a free articles resource thus practically any visitor can submit an article. However if you notice any copyrighted material, please contact us and we will remove the article(s) in discussion right away.
Note: This article was sent to us by: Michael Donovan at 01282010
1. Why is Linux such an incredible piece of sowtware
All articles are property of their respective authors. Please read our Privacy Policy!
© 2009 ArticleInput.com.