Making the Tablet Pen Work

Making the Tablet Pen Work

Introduction to making the tablet pen work.

To be truly usable, the tablet pen must:

  • Work effectively as a pointing and selecting device.
  • Enable real-time writing and drawing.
  • Empower input capabilities by implementing handwriting and actions.

Pointing and Selecting

Traditional applications respond to the mouse by listening to Microsoft® Windows® mouse messages, also called mouse events. These events are sent for mouse actions such as left-click, right-click, drag, and so on. To be capable of pointing and selecting, the pen must send out these same Windows mouse messages. In addition, newer pen applications will continue to use mouse messages to open user interface (UI) elements such as menus and dialog boxes.

Real-Time Drawing, Handwriting, and Tablet Pen Actions

To make writing and drawing as natural as possible, the pen must send responsive events to applications in real time. Furthermore, the pen must capitalize on attributes of a writing experience such as the angle of the pen, pressure on the writing surface, pen speed, steadiness, in-air movements, and others.

This requires a new architecture for processing input. The traditional Windows infrastructure for mouse messages does not expose or use these pen characteristics. With Windows XP Tablet PC Edition, the infrastructure that makes the pen work consists of a pen service that sends out system or pen events that correspond to pen actions. This architecture is described by the following process:

  1. The device driver sends pen data to a service.
  2. The service determines whether the destination is a pen-enabled application or a mouse-enabled application, or whether the destination is a control or a window within an application.
  3. The service sends a mouse message to the mouse application or control or both mouse and pen messages to a pen-enabled application.
  4. For a pen-enabled application, the InkCollector object receives the pen event and processes it in real time. The InkCollector object also sends events to the application.

For more details about using the pen in applications, see Making Windows Work with a Pen.