PictorialLoginCtrl v1.0
 
Introduction
 
PictorialLoginCtrl is an ink-based login control that enables a user to gain access by spot-marking (positionally with small circles or dots) a pre-selected image, which will be checked against his/her own previous registration. A screen shot of a client form containing this control is shown below.



 
The philosophy of pictorial login is that if you can relate the sequence of spot-marking on an image to your own chain of thoughts, it is usually very hard for you to forget the password and for someone else to guess. A good example is that, if you use a map of your local neighbourhood, you can use the sequence of visiting of several places in an unforgettable (either good or bad) day as the sequence you choose to markup this image.

It intends to make use of pen and ink to perform regular tasks such as login without resorting to keyboard, at the same making the "password" easy to remember and difficult for others to comprehend.
 
This control combines the login process and the registration process into one. It is much a pre-fabricated composition of others controls (including InkPicture). The project demonstrates the usefulness of composition in building new controls, and the full source code is included. The projects makes use of several aspects of TabletPC SDK including

All UI elements on this control are quite self-explanatory. There are a few properties that are required to be setup during the initialization of the control, which is given at the end of this document.

The project was written in C#, using Microsoft Visio Studio.NET 2002. Dependences are as follows:

Suggestions and feedback, write to blackinkbottle@hotmail.com.

 

Brief Description of Control

Declaration

[C#]

public class PictorialLoginCtrl : System.Windows.Forms.UserControl

Members

Enumeration

Description

-

-

Event

Description

-

-

Constructor

Description

PictorialLoginCtrl ()

Create a PictorialLoginCtrl control.

Method

Description

-

-

Property

Description

Size RequiredSize

Get the value that specifies the height and width of the control in pixels. 

Picture[] Pictures

Get or set the value that specifies a collection of pictures being used in the control. 

bool ShowInk

Get or set whether the ink is left over when spot-marking on the image.

string UserDbPath

Get or set the value that specifies the absolute path of a xml file that contains the user registration database. There is no encryption or other security measure in the xml file. 


Remarks and Examples

 (1) Sample usage of control in a form

                PictorialLoginCtrl ctrlPictLogin = new PictorialLoginCtrl();

                 Picture[] picts = Picture.FromXML("C:\\Pictures.xml");

ctrlPictLogin.Pictures = picts;

ctrlPictLogin.UserDbPath = "C:\\Users.xml";

ctrlPictLogin.ShowInk = false;

ctrlPictLogin.Size = ctrlPictLogin.RequiredSize;

ctrlPictLogin.Location = new Point(0,0);

(2) Sample "Pictures.xml" (Click to View)

 To create Picture[] required by the control, call

         Picture[] picts = Picture.FromXML("C:\\Pictures.xml");

(3) Sample "Users.xml" (Click to View)