Advertisment

A First look at development with the Tablet PC

author-image
CIOL Bureau
Updated On
New Update

This article talks about a new concept in the history of Windows, which is remarkably a new turning in the chapters of Windows in this decade. The Tablet PC is a new member in the family of Windows and has been here since 2002. When it was released in 2002 it caused a stir in the industry since it was the first operating system to come with full support for ink. i.e. It was possible to use a pen to write on the screen and get the handwriting visible in Windows.

Advertisment







Before starting to have a look at how development is done with the Tablet PC and what can be done let us go back down the lane and see how the Tablet PC has evolved and what were the hurdles that Microsoft had to over come in order to improve the functionality of the Tablet PC.

Microsoft released the first version of the Tablet PC in the fall of 2002. The first version of the Tablet PC was characterised by the fact that it was a superset of Windows XP Professional and hence the users who were already familiar with Windows XP Professional didn't have to learn much to get started with Tablet PC. The main features of a Tablet PC with hardware were.

Digitizer



The digitizer must be able to detect a hovering pen and take samples of the pen's location at least 100 times a second. It must also support a resolution of at least 600 points per inch.

Advertisment

Power state



The Tablet PC must be able to resume from standby in less than two seconds.

Viewing mode



It must support changing between landscape and portrait screen orientations without requiring a reboot.

CTRL+ALT+DEL equivalent functionality



A Tablet without an attached keyboard must have a dedicated hardware button that triggers the secure authentication sequence.





In order to support Tablet PCs, Microsoft created a version of Windows XP with Tablet PC features named Windows XP Tablet PC Edition. This special version of Windows XP, is not available off the shelf but sold directly to hardware manufacturers, contains the following set of software features which is not available in any other version of Windows:

Advertisment

Digital ink applications



Several digital ink applications were written especially for Windows XP Tablet PC Edition. The first of these is Windows Journal, a note-taking application that showcases the world of possibilities afforded by digital ink. Sticky Notes is a handy accessory designed to capture random notes and reminders similar to its physical counterpart. On the lighter side, "InkBall" is a game best played with a pen-the objective is to control the motion of colored balls by crafting the right digital ink strokes.

Tablet Input Panel



Since the Tablet PC is used without a keyboard, there needs to be a way to enter text into standard applications. The tablet input panel fills this role on Tablet PCs by providing a combination of on-screen keyboards and alternative text input methodologies. It supports character-by-character text entry in a style similar to that of Pocket PCs, but it also supports free-form cursive handwriting as a way to input text.





Platform API



The final and most important element of Windows XP Tablet PC Edition is the set of Tablet PC API's. With the release of Tablet PC, Microsoft introduced a set of application programming interfaces (APIs) referred to as the Tablet PC Platform. These APIs are provided for third-party software vendors to exploit the digital ink features made possible by the Tablet PC Platform. By including these binary executables with every copy of Windows XP Tablet PC Edition, third-party software vendors can be assured that their software will be able to leverage special digital ink features when running on Tablet PCs.

Advertisment

Since we are focusing from a developer's point of view, we will not go into detail about the features of the Tablet PC, but focus on the developer's features of the Tablet PC. To cut the long story short we will focus on the latest version of the Tablet PC a.k.a. Tablet PC 2005. This version was released at the time Microsoft released the famous Service Pack 2 for Windows XP. This version has included many changes for the Tablet PC Operating system the most notable feature being the support for ink in all the applications for Windows which was not available in the previous versions.

The Tablet PC Platform SDK has undergone some notable improvements since its debut in 2001, largely driven by constructive feedback from the developer community. The Tablet PC Platform SDK has several major conceptual components, which is listed here.





Managed application programming interfaces (APIs)

The core of the SDK is composed of a set of APIs exposing pen and ink features that can be leveraged by Microsoft .NET applications.

Advertisment

Ink controls



As a way of supporting simple and rapid integration of ink into applications, several .NET and Microsoft ActiveX controls are provided.

Component Object Model (COM) automation APIs



COM is a core Microsoft technology that has been used widely in the world of Windows programming. These APIs are provided as an alternative to the managed APIs, for use with C/C++ and Microsoft Visual Basic 6.

Runtime libraries



To make the development of Tablet PC applications possible on non-Tablet PC editions of Windows, the SDK installs the necessary runtime libraries.

Advertisment

Development on non-Tablet PC Operating Systems.





Although the Tablet PC Platform SDK is designed to create applications targeting Tablet PCs, it can be installed and used on any PC running Windows XP. This allows for development and testing of Tablet PC software on whatever computer is most convenient for you. However, developing Tablet PC applications on a standard PC has certain limitations. Here are several things to consider when developing with the Tablet PC Platform SDK on a standard PC:

Features that rely on the Ink Recognition API will work only on computers running Windows XP Tablet PC Edition. The Ink Recognition API itself will not work, and any other features in the SDK that use the Ink Recognition API (for instance, the InkEdit control's ability to capture and convert ink into text) will be similarly disabled on computers running other versions of Windows.

The Ink controls are severely limited when used on any computer not running Windows XP Tablet PC Edition. Most notably, the Ink controls go into what is essentially a "render-only" mode, where new ink cannot be captured and existing ink cannot be further recognized. Note that this will also severely impact development using the Ink controls on any non-Tablet PC edition of Windows XP. One exception is that InkPicture will capture ink on any computer with the SDK installed.

It may be helpful to have a digitizer pad if you are developing on a desktop computer. Not having a pen-based input device makes ink entry and testing somewhat challenging.

Managed APIs



At the heart of the Tablet PC Platform SDK is a set of managed APIs. A significant part of the Microsoft .NET Framework is the common language runtime (CLR), which controls and supports the execution of .NET-compatible applications written in various languages. The core Tablet PC Platform SDK APIs are "managed" because they are designed to run in, or be managed by, the .NET Framework's common language runtime. Because the managed APIs target the CLR, you can call them from any .NET language. Currently available .NET languages include Microsoft Visual C#, Visual Basic .NET, managed C++, and Microsoft JScript.



The managed APIs are divided into three subsets, each providing a specific portion of essential Tablet PC pen and ink functionality.



The Tablet Input API (Pen API)



This API is targeted at pen-specific features, such as the various buttons on a pen, and also at collecting digital ink and gestures from the movement of the pen.



The Ink Data Management API (Ink API)



Once ink has been collected using the Tablet Input API, manipulation and storage of the ink is done through the Ink Data Management API. The bulk of ink-related features are exposed through this API.



The Ink Recognition API (Recognition API)



This highly specialized API is used to interpret ink intelligently by grouping and recognizing written ink.



Ink Controls



Two Ink controls are included in the Tablet PC Platform SDK to quickly integrate pen and ink functionality into a new or existing application. The controls can be easily dragged onto Windows Forms in languages that support forms-based development, such as C# and Microsoft Visual Basic. Although the Ink controls are presented separately from the managed API and the COM automation APIs, they actually support both. You can use the managed Ink controls from managed code or the ActiveX Ink controls from COM automation code.



InkEdit



This control is an extension of the RichEdit control. It captures and optionally converts ink into text and is ideal in situations where immediate conversion of ink to text is desired.



InkPicture



Meant to capture and display ink over images, this control is an eclectic amalgam of features. Its distinguishing feature is its ability to display an image underneath ink, which is automatically captured and managed by the control.



We have covered a lot and saw the various features of the Tablet PC and also the additional features that the Tablet PC has included for development. In the next article we will focus on how development is done with the Managed API and Ink Controls.

tech-news