Toolbars

Updated

A toolbar is an area on the touch screen that acts independently from the main calibrated video area, as shown below;


Touchscreen covering video with an on-screen toolbar
defined on top of the normal calibrated area

Touchscreen covering video area and extended to
right with four off-screen toolbars defined

A toolbar can be sub divided into areas of equal size which are arranged into a specified number of rows and columns. The system pointer does not move from its current position when a toolbar is touched.

Toolbars are utilised in all manner of pointer device type applications:

  • Toolbars can simply be used to mask off areas of the calibrated video area, so no touch is passed thru to the OS.
  • They can be used to trigger an event via the UPDD API such that application functions can be triggered by touching a toolbar - this is are particularly useful on touch systems whereby the touch screen is larger than the video display with touches outside the video area handled by an external application.
  • A toolbar event can be associated with a UPDD Commander function (coming 2019).

Toolbars can be positioned anywhere on a touch screen as suits requirements. Toolbars that reside outside the main touch screen / video display area are normally referred to as off screen toolbars.

Toolbars can be calibrated individually or, for on screen toolbars, defined such their position is relative to the main video calibration area.

Toolbar Definition

Toolbars are rectangular in shape and can be defined and configured using the UPDD Daemon, toolbar dialog, as per this Windows example:

Individual sections are described below:

Section Function
Device Lists the UPDD supported devices. Select the device on which to create the toolbars
Toolbars Lists the toolbars associated with the device
  Create a toolbar for this device 
  Delete a toolbar from this device 
Position Defines the position of the toolbar
 

On screen: The toolbar is associated to the calibrated screen co-ordinates in the X and Y range 0 - 65535 (this gives 65536 co-ordinates)
The toolbar placement can be defined via the co-ordinate controls or calibrated on the screen using the 'calibrate' option
This option is used to create toolbars that reside on top of the video area

  Off screen: The toolbar is associated to the raw co-ordinate range of the touch device.
The toolbar placement can be defined using the 'Calibrate' option.
This option is used to create toolbars that reside outside the video area
Layout Defines the number of rows and columns within the toolbar, defaults to 1 x 1
Calibrate Invokes a calibration procedure used to define the location of the toolbar on the touch screen
Enabled When selected indicates the toolbar is enabled.
Hold Touch When selected, if a touch starts outside a toolbar and then moves into a toolbar area, the touch remains held. This avoids for example unexpected button presses when touch  moves from a button into a toolbar area. Buttons in GUIs generally act on release, not for example when the mouse is moved off the button so with this option standard behaviour is retained.

When not selected, a liftoff (end of touch) occurs when the point of touch moves into the toolbar area.
Active Active during calibration means that the toolbar is still active during the UPDD Calibration procedure so any touches in the toolbar will be ignored therefore it is important the calibration cross is not under a toolbar.
Toolbar layout (and test)

By default a toolbar inherits 1 row and 1 column.

If using the UPDD API interface to receive toolbar notifications (the application is called when a toolbar is touched) the application will receive details relating to the toolbar including the row and column identifier. Depending on how the toolbar is being used it may be desirable to define a specific number of rows and columns. The layout option is used for this purpose.

In this example the toolbar has 1 column and 5 rows

 

Toolbar test

When a toolbar layout is being shown in the layout screen it also offers visual feedback to show if the toolbar is being touched. This allows you to test that the toolbar exist at the expected location and is being recognised by the driver.

In this example the middle cell of the touchscreen is being physically touched on the touchscreen:

The UPDD command line utility can also be used to list toolbar events as reported on the UPDD API.

Toolbar Placement

Given that Toolbars are rectangular in shape their position can be defined by their upper top left and bottom right corners.

Given that toolbars define an area of the touch screen then their location on the touch screen relates to the physical co-ordinate range of the touch screen, typically 0-1024 or 0-4096. However, in most cases a toolbar is on top of the video area therefore it is more natural to define a toolbar relative to the calibrated co-ordinate range as this relates to the visual monitor display.  The driver's calibrated co-ordinate range is 0 - 65535 (this gives 65536 co-ordinates).

Given the above, there are two ways to define the Toolbar's position: 

Method  Description
 Calibrate For both on-screen and off-screen toolbars you can use the Calibrate option to define the location.
The calibrate function requests that you touch the top left hand corner and bottom right hand corners of the toolbar position.

Touch the requested toolbar corner until the blue circle appears.  
Once both corner touches have been accepted the toolbar placement is complete.
For on-screen toolbars the calibrated co-ordinates are listed and its display location is shown in the display area. The values can be manually adjusted at any time, useful for fine alignment if required:

For off-screen toolbars the raw co-ordinates are listed but will not represent a true position on the display hence there is no visual representation shown in the display area. The raw touch co-ordinates are shown in the co-ord field but do not allow for manual adjustment, they are displayed for information only.

 Manual For on-screen toolbars you can specify the calibrated co-ordinates in the range 0 - 65536.
For example if you wanted to place a toolbar on the right half of the display you can enter the values:

 The co-ordinate field values only change if calibrated or explicitly manually changed.

Toolbar API interface

When a toolbar cell is touched this is notified to any application program that has registered an interest using the UPDD API interface as described here.

Toolbars are multi-touch aware so the API interface also includes the stylus number as shown in this toolbar event example output with two touches in one toolbar cell:

A toolbar calibration can also be invoked from the API interface.

Toolbar examples

A few examples of where you might typically employ toolbar functionality:

Example Description
Screen masking It may be desirable to disable a part of the touch screen that sits over an area of the video display. For example, with an unattended kiosk, there is always the possibility that the application may crash leaving the OS desktop on display. You may wish to mask off the lower left corner on a Windows systems so that the Windows start menu cannot be selected.
  You could, for example, be running a standard  desktop application in full screen mode on a touchscreen system whereby the dialog controls are visible and potentially touchable such that you would like to mask of this area and make it 'non touchable' so that touch users could not close or minimise the application. In this case you would define and calibrate a toolbar over these controls:

Presentation annotation Used in a live TV broadcast for a financial subscription channel. The presenter needed to enable / disable live on screen annotation with an 'invisible' touch.
Toolbars were placed in all four corners so that the annotate function could be invoked from either side, touch in the top enabled annotate, touch in the bottom disabled annotate.
 Whiteboard function bar Many whiteboards utilise function bars on either side of the whiteboard, such as the example below. Placing a touch toolbar over these function bars allow applications to be invoked when they are touched, determine the function selected and act accordingly.
Petrol pump We worked on a petrol pump application where off screen toolbars were used to control the petrol pump application.
Four toolbars were utilised; Left, Right, Keypad and Numpad with row and column defined as required.

Generic touch device Zytronic created a generic touch device that could be utilised with both standard mouse emulation and off screen functions.
The appropriate toolbars were used to add off screen application touch functionality

   
Search