Go to content Go to navigation

Multi-Edit Keyboards

24 March 2011, 06:44 by Chad Reynoldson

Updated (with good news)

More investigating revealed that multi-edit keyboards with pre-loaded values are possible. Here’s the text field properties to use:

Original post on 09 April 2010


AMX touch panel keyboards and keypads allow editing of a single item. You can customize a system page template to allow editing of multiple items, such as a telephone speed-dial entry for a person’s name and number. It works, but with some drawbacks.

AMX Touch Panel Keyboard

GUI Tweaks

First off, open up the system page template and copy the __keyboard popup into your touch panel file. You will want to rename it (otherwise any @AKB or AKEYB command will use the new multiple edit keyboard). I’ll rename the new popup to ‘kbSpdDialEditor’.

Open up the new popup and select the prompt at the top. We’ll need to change this to a static text label, say ‘Enter new name and number’. Unfortunately, we won’t be able to use the @AKB command.

Open up the new popup and select the text area button. Resize it, allowing room for a label next to it, like ‘Name:’. Reselect the text area again. It will have a variable text assignment as setup:multi-line text area.

With the button, we will assign the channel number for setup:text entry and modify the ON border color. This will enable highlighting of the current item being edited.

Next, we’ll modify the OFF text value to ‘KB_NAME’. The touch panel will use this value as the header with the value once the user presses DONE (i.e. KB_NAME-Chad Reynoldson).

Copy the label/button pair and paste it below. Rename the label and the OFF text value to ‘KB_NUMBER’.

Implementation

You can use either a send command (i.e. @PPN) or a pageflip assignment from a touch panel button to bring up the new kbSpdDialEditor popup. Each time the fields will be reset.

When the user presses DONE, you’ll see a string event with ‘KB_NAME-value’ and another with ‘KB_NUMBER-value’.

Drawbacks

It works well and moves this functionality into the touch panel file, which is where I prefer to off-load as much work as possible. Unfortunately it won’t allow us to pre-load the editable name and number with something we may have stored in netlinx code, something @AKB allows us to do. This presents a huge problem for the end-user.

We could overcome this with netlinx code, but that breaks the simplicity of off-loading the heavy lifting to the touch panel.

So this seems like an exercise to prove that it works. Unfortunately it has some drawbacks that takes us right back to where we started.

Share This Article

Comments

Comments are turned off for this article.