| Foreword | p. xiii |
| Acknowledgments | p. xv |
| Introduction | p. xvii |
| Welcome to Windows 7 | p. 1 |
| What Has Changed Since Windows Vista? | p. 1 |
| Seven Ways to Shine on Windows 7 | p. 3 |
| Taskbar | p. 4 |
| Libraries | p. 6 |
| Touch, Multitouch, and Gestures | p. 8 |
| Sensor and Location | p. 9 |
| Ribbon | p. 10 |
| Enhanced Graphics Platform | p. 13 |
| Improved Fundamentals | p. 15 |
| Summary | p. 18 |
| Integrate with the Windows 7 Taskbar: Basic Features | p. 19 |
| Design Goals of the Windows 7 Taskbar | p. 21 |
| A Feature Tour of the Windows 7 Taskbar | p. 21 |
| Jump Lists | p. 22 |
| Taskbar Overlay Icons and Progress Bars | p. 25 |
| Thumbnail Toolbars | p. 26 |
| Live Window Thumbnails | p. 27 |
| Backward Compatibility | p. 29 |
| Integrating with the Windows 7 Taskbar | p. 30 |
| Application ID | p. 30 |
| Taskbar Progress Bars and Overlay Icons | p. 35 |
| Summary | p. 40 |
| Integrate with the Windows 7 Taskbar: Advanced Features | p. 43 |
| Jump Lists | p. 43 |
| Anatomy of a Jump List | p. 44 |
| Recent and Frequent Destinations | p. 45 |
| Custom Destinations | p. 49 |
| User Tasks | p. 53 |
| Thumbnail Toolbars | p. 56 |
| Customizing Thumbnails | p. 59 |
| Thumbnail Clipping | p. 61 |
| Custom Thumbnails | p. 62 |
| Custom Live Previews | p. 65 |
| Window Switchers | p. 66 |
| Summary | p. 71 |
| Organize My Data: Libraries in Windows 7 | p. 73 |
| Windows Explorer | p. 73 |
| Changes Made to Windows Explorer in Windows 7 | p. 75 |
| Welcome to Libraries | p. 77 |
| Libraries under the Hood | p. 79 |
| Working with Libraries | p. 84 |
| Summary | p. 100 |
| Touch Me Now: An Introduction to Multitouch Programming | p. 101 |
| Multitouch in Windows 7 | p. 101 |
| Windows 7 Multitouch Programming Models | p. 104 |
| The Good Model: Supporting Legacy Applications | p. 104 |
| The Better Model: Enhancing the Touch Experience | p. 105 |
| The Best Model: Experience Optimized for Multitouch | p. 106 |
| How Multitouch Works in Windows 7 | p. 106 |
| Architecture Overview: Messages Data Flow | p. 107 |
| Supporting Legacy Applications | p. 108 |
| Working with Gestures | p. 110 |
| Handling the WM.GESTURE Message | p. 111 |
| Use the Pan Gesture to Move an Object | p. 113 |
| Use the Zoom Gesture to Scale an Object | p. 115 |
| Use the Rotate Gesture to Turn an Object | p. 117 |
| Use a Two-Finger Tap to Mimic a Mouse Click | p. 119 |
| Use the Press-and-Tap Gesture to Mimic a Mouse Right-Click | p. 121 |
| Configuring Windows 7 Gestures | p. 121 |
| Summary | p. 124 |
| Touch Me Now: Advanced Multitouch Programming | p. 127 |
| Working with Raw Touch Messages | p. 127 |
| Setting Up Windows for Touch | p. 128 |
| Unpacking WMJOUCH Messages | p. 129 |
| Using the Manipulation and Inertia Engines | p. 135 |
| Multitouch Architecture: The Complete Picture, Part 1 | p. 136 |
| Using Manipulation | p. 138 |
| Using Inertia | p. 144 |
| Multitouch Architecture: The Complete Picture, Part 2 | p. 145 |
| Summary | p. 151 |
| Building Multitouch Applications in Managed Code | p. 153 |
| Building Your First Touch-Sensitive Application | p. 153 |
| Using Windows 7 Touch to Move an Object | p. 155 |
| Using Windows 7 Touch to Scale an Object | p. 158 |
| Using Windows 7 Touch to Rotate an Object | p. 160 |
| Using Inertia with Gestures | p. 161 |
| Extending for Multiple Objects | p. 164 |
| Building a Gesture-Enabled Picture Control | p. 165 |
| Using the Gesture-Enabled Picture Control | p. 168 |
| Classes to Support Touch and Gestures | p. 170 |
| UlElement Additions | p. 171 |
| Summary | p. 172 |
| Using Windows 7 Touch with Silverlight | p. 173 |
| Introducing Silverlight | p. 173 |
| Creating Your First Silverlight Application | p. 176 |
| Building Out-of-Browser Applications in Silverlight | p. 179 |
| Using the Silverlight InkPresenter Control | p. 183 |
| An Example of Ink Annotation in Silverlight | p. 184 |
| Silverlight Ink Classes for JavaScript Programmers | p. 185 |
| Programming for Ink in Silverlight | p. 189 |
| Using the Touch APIs in Silverlight | p. 195 |
| Expanding the Application for Multitouch | p. 196 |
| Summary | p. 200 |
| Introduction to the Sensor and Location Platform | p. 201 |
| Why Sensors? | p. 201 |
| A Word on Security | p. 203 |
| Architecture of the Sensor and Location Platform | p. 204 |
| What Is a Sensor? | p. 205 |
| Working with Sensors | p. 207 |
| Integrating Sensors into Your Application | p. 207 |
| Discovering Sensors | p. 207 |
| Requesting Sensor Permissions | p. 213 |
| Interacting with Sensors | p. 218 |
| Reading Sensor Data Using Managed Code | p. 227 |
| Ambient Light Sensor Application | p. 230 |
| Summary | p. 232 |
| Tell Me Where I Am: Location-Aware Applications | p. 233 |
| Why Location Awareness Is So Important | p. 233 |
| Location Platform Architecture | p. 234 |
| Location Devices Are Regular Windows 7 Sensors | p. 237 |
| Location Information Is Sensitive Information | p. 238 |
| Working with the Location API | p. 239 |
| Understanding How the Location API Works | p. 239 |
| Requesting Location Permissions | p. 242 |
| Interacting with the Location interface | p. 244 |
| Putting It All Together | p. 254 |
| Writing a Location-Aware Application Using .NET | p. 255 |
| Reading Location Reports and Handling Location Events | p. 257 |
| Using the Enhanced Default Location Provider Tool for Testing | p. 259 |
| Summary | p. 260 |
| Develop with the Windows Ribbon, Part 1 | p. 263 |
| History | p. 263 |
| Using the Ribbon | p. 267 |
| Programming with the Windows Ribbon Framework | p. 273 |
| Ribbon Markup | p. 275 |
| Summary | p. 307 |
| Develop with the Windows Ribbon, Part 2 | p. 309 |
| Programming the Ribbon | p. 309 |
| The Minimal Ribbon Revisited | p. 310 |
| Initialization Phase | p. 316 |
| Handling Ribbon Callbacks | p. 318 |
| The Property System | p. 320 |
| Setting Properties Directly or Indirectly | p. 322 |
| Controlling Controls | p. 325 |
| Setting Application Mode, and Showing Contextual Tabs and Pop-Ups | p. 347 |
| Summary | p. 353 |
| Rediscover the Fundamentals: It's All About Performance | p. 355 |
| Instrumentation and Diagnostics | p. 356 |
| Performance Counters | p. 356 |
| Windows Management Instrumentation | p. 362 |
| Event Tracing for Windows | p. 365 |
| Windows Performance Toolkit | p. 365 |
| Troubleshooting Platform | p. 369 |
| Performance and Efficiency | p. 371 |
| Background Services and Trigger Start Services | p. 372 |
| Power Management | p. 378 |
| Summary | p. 382 |
| Index | p. 383 |
| Table of Contents provided by Ingram. All Rights Reserved. |