OSDN Git Service

baum driver: Add support for braille input. Untested, as I don't have a unit with...
authorJames Teh <jamie@jantrid.net>
Thu, 10 Jan 2013 04:39:29 +0000 (14:39 +1000)
committerJames Teh <jamie@jantrid.net>
Thu, 10 Jan 2013 04:39:29 +0000 (14:39 +1000)
source/brailleDisplayDrivers/baum.py

index 906ca89..2bdf78d 100644 (file)
@@ -12,6 +12,7 @@ import hwPortUtils
 import braille\r
 import inputCore\r
 from logHandler import log\r
+import brailleInput\r
 \r
 TIMEOUT = 0.2\r
 BAUD_RATE = 19200\r
@@ -252,7 +253,7 @@ class BrailleDisplayDriver(braille.BrailleDisplayDriver):
                },\r
        })\r
 \r
-class InputGesture(braille.BrailleDisplayGesture):\r
+class InputGesture(braille.BrailleDisplayGesture, brailleInput.BrailleInputGesture):\r
 \r
        source = BrailleDisplayDriver.name\r
 \r
@@ -262,6 +263,10 @@ class InputGesture(braille.BrailleDisplayGesture):
 \r
                self.keyNames = names = set()\r
                for group, groupKeysDown in keysDown.iteritems():\r
+                       if group == BAUM_BRAILLE_KEYS and len(keysDown) == 1 and not groupKeysDown & 0xfc:\r
+                               # This is braille input.\r
+                               self.dots = groupKeysDown >> 8\r
+                               self.space = groupKeysDown & 0x3\r
                        if group == BAUM_ROUTING_KEYS:\r
                                for index in xrange(braille.handler.display.numCells):\r
                                        if groupKeysDown & (1 << index):\r