ECTkeyboard - Creating personalized virtual keyboard
Creating personalized virtual keyboard
ECTkeyboard provides incredibly flexible settings features. For example, the user can create their own virtual keyboard with any amount or position of buttons, including adding customized captions and an image or sound for each buttons. In order to do so, the user has to create a keyboard file with button captions and full paths to images or sounds. It's also required to set up the program to work with such a file.
Keyboard files are text files with parameters written using a special separating symbol (default value is #). Each string in the file corresponds to a button on the virtual keyboard, e.g. if a virtual keyboard has nine buttons, the file of the keyboard should have nine independent strings.
Let's look at an example of the virtual keyboard file (see fig. 23).
This keyboard was created especially for medical and rehabilitation centers, and its main task is to establish the very first initial contact with a patient that can't speak or write. The keyboard contains just nine buttons: 'Eat', 'Drink', 'Toilet', 'Hot', 'Cold', 'Sleep', 'Good', 'Bad', 'Pain'.
This example shows how each string of the file is used to set various parameters. In order to make it clearer, the file content can be divided into several columns.
The keyboard file structure can be compared with a table, where each row corresponds to a button on the virtual keyboard, while each column corresponds to a different parameter of the button.
Column numbers start at 0. In the mentioned example:
- The zero column contains button captions.
- The first column is empty (because there's no need to perform commands during its operation and it's only required to show text in the output window).
- The second column contains full paths to the image files of the keyboard buttons.
- The third column contains full paths to the additional image files of the keyboard buttons, which are used to highlight a selected button.
- The fourth column contains full paths to the audio files of the keyboard buttons, which are used to announce the texts on each button.
- The fifth and all following columns can be used to set additional parameters.
Setting the program to work with a keyboard file
It's not enough to create a keyboard file to operate the program. The user has to set up ECTkeyboard in order to provide the proper functionality of the program. In order to do that, the user has to change the following parameters in the settings window of the program:
- Parameter 28. Defines columns that contain keyboard button captions and executed commands. In the file mentioned above, button captions are saved in column 0, while commands are saved in the first column. Thus, the user has to change the value of parameter 28 to 0#1.
- Parameter 29. Defines columns that contain button sounds. In the file mentioned above, sounds were saved in column 4. Thus the user has to change the value of the parameter 29 to 4.
- Parameter 30. Defines columns that contain images for various button states (an inactive button, a button under the cursor, a button row is selected, a selected button, a pressed button). The mentioned simple keyboard requires only two different states, i.e. active and inactive. Icons for the inactive buttons are stored in the second column, while icons for active are stored in the third. Thus, the user has to change the value of parameter 30 to 2#3#3#3#3. This value defines that all other states will use images from the third column of the keyboard file.
- Parameter 172 allows the user to select a thumbnail for the currently selected symbol window. In the mentioned example, the program will also use value 3.
- Parameters 46 and 47 allow the user to select the horizontal and vertical number of buttons on the keyboard. The most convenient layout for the keyboard with 9 buttons is 3x3. Thus the user has to select 3 for both parameters.
After saving all the changes in the program, the user has to choose a proper working mode of the selector. The program is ready to work (see fig. 25). The most convenient way of work for such a keyboard is the second method, i.e. the horizontal scanning mode.
Initial versions of ECTkeyboard had the possibility to select separate files for virtual keyboard captions, images, and sounds (parameters 6, 7, 8 of the settings window of the program). But after the release of the latest version, all mentioned parameters were united into keyboard files. Thus parameters 7 and 8 are hidden from the settings window of the program.
Each button of the virtual keyboard can be assigned a caption, up to 5 different images (inactive state, a button under the cursor, button row selection, button selection, pressed button) and a sound file, which is played when the button is highlighted. All mentioned parameters are not obligatory, e.g. the user can select only sounds and icons for one group of buttons, and only captions for another group. Even if there's no parameter for a button, ECTkeyboard will still work properly, only that particular button won't create any action. Such an approach provides great flexibility in the program setting process.
All the images (icons) of the virtual keyboard are loaded into RAM and rendered in accordance with a selected scale of the buttons (Parameter 56) and the currently selected symbol window (Parameter 173). When a keyboard includes a high amount of buttons or heavy image files, this rendering process can take significant time. Full re-rendering happens after every change in the settings window of the program, new profile loading or changes of the ECTkeyboard main window size. This effect is more noticeable when each state of the keyboard buttons has its own image, or such images have high resolution. Thus, only the PRO version of the program supports keyboard icons, because the user must have a proper understanding of all the parameters and settings that are used in the program.
Unlike keyboard icons, sound files are loaded from the storage device at the moment of announcement. In order to improve the speed of the program, it's recommended to launch it from a hard drive or any fast external storage device (USB 2.0 or 3.0). When the user launches ECTkeyboard from a storage device connected via a USB 1.0 port or the reading speed of such a device is too low, sounds of the program may be played with delays, while the program won't provide maximum efficiency and operating speed.
The current keyboard file structure allows the user to add additional parameters, e.g. new localizations, very quickly (see fig. 26). In order to work with an additional localization, the user needs to just change the value of parameter 28 in the settings window of the program to 5#1, because additional captions are added into the fifth column of the keyboard file. One keyboard file may contain several different localizations, saved in different columns with the # separator. If necessary, the user can also add specific sets of sounds or icons for the keyboard. The incredible ease of this process makes ECTkeyboard a really universal program.