This topic has not yet been rated Rate this topic

Contacts

Surface 1.0 SP1

The main component of Microsoft Surface applications is touch and contact-enabled controls, events, and gestures. These elements enable you to develop applications that create natural and intuitive user experiences.

Contact Types and Events

The Microsoft Surface SDK recognizes three distinct kinds of contacts:

  • Finger: One or more fingers are placed on, moved along, or lifted up from the Microsoft Surface screen.

  • Blob: Any object is placed on, moved along, or lifted up from the Microsoft Surface screen.

  • Tagged Objects: Any object that has an attached tag is placed on, moved along, or lifted up from the Microsoft Surface screen.

Gestures

Gestures are user interactions that applications recognize without the context of what user interface elements they occur over. Typically, gestures are interactions that do not involve changes in the {X, Y} position of the user input. The Microsoft Surface SDK exposes events for two gestures:

  • Tap

  • Press-and-hold

Manipulations

Manipulations are user interactions that an application can properly interpret only in the context of user interface elements. For example, an application could interpret two fingers that are moving away from each other as a "stretch" manipulation, as two separate "move" manipulations, or as several other actions. The actual interpretation depends on what user interface elements appear beneath the interactions. The Microsoft Surface SDK exposes manipulations, in the form of controls, that respond to specific manipulations:

If you develop your application in the Core layer, you must create all of these contact-enabled elements yourself. The Presentation layer enables you to create versatile and graphically rich experiences with the scroll viewer and scatter view controls.

Manipulations and Inertia Processors

A manipulations processor provides functionality to handle groups of contacts as a single composite. An inertia processor provides functionality for implementing real-world properties like movement and friction as users move virtual objects around on a Microsoft Surface unit. These processors are implemented in the Microsoft.Surface.Core.Manipulations and Microsoft.Surface.Presentation.Manipulations namespaces. For more information, see Using Manipulations and Inertia.

Contact Visualizations

Microsoft Surface WPF controls provide visual cues to users regarding contacts. These contact visualizations help users understand how the system interprets a contact. Contact visualizations are implemented in the Microsoft.Surface.Presentation.Controls.ContactVisualizations namespace. For more information, see Contact Visualizations.

Did you find this helpful?
(2000 characters remaining)
Community Content Add
Annotations FAQ