Key mapping on the iGesture numpad

Comments specifically about typing on TS keyboards, and about key layouts.

Moderator: The00Dustin

Key mapping on the iGesture numpad

Postby barbara » 07 Oct 2005, 23:55

Thanks for the thought ivanw,

But is a bit beyond my capabilities....I don't really want to remap any of the existing keys as I use them all....but if it was possible I would like to map the blank space between 'up arrow' and '1' as a double 00 key (similar to the factory mapping of the blank space between the 'delete key' and 'left arrow' as a backspace).

If anyone knows if this can be done, a little help (a lot would be more accurate :wink: )would be appreciated.


From my post on a different topic - can anyone tell me
a) if this can be done
b) if yes, how to do it in absolute beginners language
barbara
Familiar
 
Posts: 23
Joined: 12 Jun 2005, 01:20
Location: Brisbane, Australia

Postby Rqyteqto » 08 Oct 2005, 00:29

a) yes it can.

b) Check out the manual/tutorial at
bin/view/Main/XmlManual

What you want to do is save iff a copy of your current XML file.

Then find the code for the "00" key in the library (I hope its there as it was apparently used at sometime in the past).

Nest, identify the coordinates for the position you want the key to go, you will see a mapping ivanw did. Basically, '0,0' is at the lower left corner of the left hand TS board (or any iGesture pad).

Then you insert the code for that keying and location, using the code ivanw modeled in the tutorial.

At this point, it would probably be best to get a hold of Torben or ivanw for real help.

Please post your efforts and (hopefully) success, both here in the forum and in the tutorial.

Good Luck. k
Invent the Future
Rqyteqto
Grizzled Veteran
 
Posts: 200
Joined: 13 Jun 2005, 01:40
Location: Kahalu'u, Oahu, Hawaii

Postby barbara » 08 Oct 2005, 07:50

I am on a steep learning curve here. Firstly to test mapping a key on the iGesture numpad, I opened the FW retro numpad file to see how they wrote the code. An example for the number 4 is:
<TapArea xcenter="6.1" ycenter="3.9" isRectangular="true" width="1.9" height="1.9"
macro_name=" 4 " layoutContext="NumLock ScrollLock">
<KeyEvent keyCode="Numpad4" />
</TapArea>


Next I tried to replicate this in my xml file, initially trying to map the number 4 in the space to the left of number 1 and 4. I tried mapping a regular number to see if I was on the right track before trying for a double 0.

My attempt:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE MTS_config>
<MTS_config MTS_config_version="1.60" min_firmware_version="1.46">
<RequireLib name="FW_main" />
<MacroLibrary>
<SpeedParamTemplate sensitivity="130.00" accelThresh="10.00" accelPower="0.25" macro_name="Mouse Pointing Speed" lib="user" user_selectable="false" />
<SpeedParamTemplate sensitivity="115.00" accelThresh="10.00" accelPower="0.25" macro_name="Mouse Dragging Speed" lib="user" user_selectable="false" />
</MacroLibrary>
<UserOptions driverContext=" win qwerty" layoutContext=" numlock" toggle_numlock_internally="true" enable_pinky_gamebutton="true" hand_size="90" tap_timeout_ms="512" typematic_hold_ms="640">
<EnabledRighthandGestures list=" scroll_mouse fivefinger_mouse onefinger_mouse clipboard_op file_op window_op text_nav pengrip_op tap_range_chord weird_chords search_edit" />
<EnabledLefthandGestures list="" />
<EnabledBimanualGestures list="" />
</UserOptions>
<TapArea xcenter="3.9" ycenter="2.45" isRectangular="true" width="1.9" height="3.8"
macro_name=" 4 " layoutContext="NumLock ScrollLock">
<KeyEvent keyCode="Numpad4" />
</TapArea>

</MTS_config>

my added lines are shown in bold - however this does nothing. I think I am having trouble with the x y coordinates - I interpolated what they should be from the values in the FW file as a second try after using 0,0 as the bottom left corner of the pad (which didn't work either).

Any help would be appreciated. Also when I look in the FW multitouch utilities, something happened:

There is a cyan cirle with 4 in the centre in the position I described (the space to the left of number 1 and 4) showing up under the TS surface keys

PS There is a double space after 4 in macro_name=" 4 " - the forum editor seems to remove extra spaces.
barbara
Familiar
 
Posts: 23
Joined: 12 Jun 2005, 01:20
Location: Brisbane, Australia

Postby TorbenGB » 08 Oct 2005, 09:18

Hi Barbara!
As one of the contributors to the XmlManual, I'll try to give you some input. I'm studying your needs just now and will post a reply soon.
User avatar
TorbenGB
Site Admin
 
Posts: 517
Joined: 26 Apr 2005, 00:07
Location: Vienna, Austria

Postby barbara » 08 Oct 2005, 10:07

Thanks TorbenGB - your help is very much appreciated.

It's Saturday evening here now in Australia, and I won't be back on line until Sunday morning, so if you find an answer in the next 10 hours or so, you won't hear back from me straight away.

Barbara
barbara
Familiar
 
Posts: 23
Joined: 12 Jun 2005, 01:20
Location: Brisbane, Australia

Postby TorbenGB » 08 Oct 2005, 10:10

Try replacing your key with the following:
Code: Select all
<MTS_config>
...
  <TapArea xcenter="5.5" ycenter="4.5" isRectangular="true" width="1.9" height="1.9" layoutContext="NumLock ScrollLock">
        <MacroRefEvent macro_ref="barbara" />
  </TapArea>
...
</MTS_config>

This should create a TapArea in roughly the right place. I took the measurements from the image on the FW website, so it may not be accurate at all! As you can see, this TapArea doesn't refer to a built-in KeyEvent but instead it refers to a Macro event which we will also add. The name of the macro being referred to is "barbara", just to point out that it's not a built-in reference. You can call it anything, but it must match the value of "macro_name" in the MacroLibrary.

Next the Macro is defined, and by the "..." I just mean that you should place this block where it fits in the config file. If there isn't any MacroLibrary section already, place it just after the line with the MTS_config tag, before the TapArea and UserOptions parts.
Code: Select all
<MTS_config>
  <MacroLibrary>
...
    <EventMacro lib="user" tree_folder="Barbaras additions" macro_name="barbara" description="bar00">
      <KeyEvent keyCode="NumPad0" />
      <KeyEvent keyCode="NumPad0" />
    </EventMacro>
...
  </MacroLibrary>
...
</MTS_config>

This code ought to fire the NumPad0 key twice. The macro is named "barbara" as mentioned above, and the TapArea in the editor should be labeled "bar00". Again, "bar00" is just to point out that it's not a built-in name; you can use anything you like. Finally, I've indicated that this is a user library (lib="user"), and that the Editor should put this macro in a folder named "Barbaras additions".

Finally, I am not sure this will work because I have not tested it myself, and I don't own a iGesture Numpad. I hope this helps you to understand the basic idea in the XML file, and you might want to experiment on your own from here, or post again. Best of luck :)
User avatar
TorbenGB
Site Admin
 
Posts: 517
Joined: 26 Apr 2005, 00:07
Location: Vienna, Austria

Postby ivanw » 08 Oct 2005, 13:26

Here is another configuration you can pick from. The only difference with Torben's is about how the key area shape and position are specified.
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE MTS_config>
<MTS_config xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation = "file:///mtsConfig.xsd">
    <RequireLib name="FW_main" />

    <MacroLibrary>
        <EventMacro lib="user"
            tree_folder="Barbaras additions"
            macro_name="barbara"
            description="bar00"
        >
            <KeyEvent keyCode="NumPad0" />
            <KeyEvent keyCode="NumPad0" />
        </EventMacro>
    </MacroLibrary>

    <TapArea
        xcenter="4.0" ycenter="2.0"
        xmin   ="3.0" ymin   ="1.0"
        xmax   ="5.0" ymax   ="3.75"
        isRectangular="true"
        layoutContext="NumLock ScrollLock"
        description  ="00"
        tree_label   ="00"
        >
        <MacroRefEvent macro_ref="barbara" />
    </TapArea>

<!-- SURROUNDING KEYS -->
<TapArea macro_name=" Right "
 xcenter="4.0" ycenter="0.1"
 isRectangular="true" xmin="3.0" ymin="-1.1" xmax="5.00" ymax="1.7"
>
 <KeyEvent keyCode="Right" />
</TapArea>

<TapArea macro_name=" Up  "
 xcenter="2.0" ycenter="2.0"
 isRectangular="true" xmin="1.0" ymin="1.0" xmax="3.0" ymax="3.75"
>
 <KeyEvent keyCode="Up" />
</TapArea>

<TapArea macro_name=" 1  "
 xcenter="6.1" ycenter="2.0"
 isRectangular="true" width="1.9" height="1.9"
 layoutContext="NumLock ScrollLock"
>
 <KeyEvent keyCode="Numpad1" />
</TapArea>

</MTS_config>

The "SURROUNDING KEYS" come from the default internal settings, I used them to figure out a sensible geometry for the new key.

This file displays the expected configuration all right. You should see a new key labeled Insert/0 between Up and End/1 under Mygesture Editor - Surface Key entry. (don't care the labeling)

I found another a bigger image on the FW website.
User avatar
ivanw
Zealot
 
Posts: 390
Joined: 29 Jul 2005, 12:32
Location: Paris, France

mapping on numpad

Postby barbara » 20 Oct 2005, 03:03

I've been away for a while so this is a bit belated. Just wanted to thank TorbenGB and ivanw for their efforts in trying to help me map a
double 0 on my numpad.

I tried both methods and still could not get it to work...... my 'real' work is keeping me too busy to play around any more at this stage but I will keep watching future posts to see if anyone else has success. I noticed advisor is going to attempt to map keys on iGesture pads.... so I'll keep watching......
barbara
Familiar
 
Posts: 23
Joined: 12 Jun 2005, 01:20
Location: Brisbane, Australia


Return to Typing and Layouts

Who is online

Users browsing this forum: No registered users and 1 guest

cron