Index: third_party/twisted_8_1/twisted/protocols/mice/mouseman.py |
diff --git a/third_party/twisted_8_1/twisted/protocols/mice/mouseman.py b/third_party/twisted_8_1/twisted/protocols/mice/mouseman.py |
deleted file mode 100644 |
index d22c48a66e599d11218f74ea020801067aaf2cdd..0000000000000000000000000000000000000000 |
--- a/third_party/twisted_8_1/twisted/protocols/mice/mouseman.py |
+++ /dev/null |
@@ -1,127 +0,0 @@ |
-# Copyright (c) 2001-2004 Twisted Matrix Laboratories. |
-# See LICENSE for details. |
- |
-# |
-"""Logictech MouseMan serial protocol. |
- |
-http://www.softnco.demon.co.uk/SerialMouse.txt |
-""" |
- |
-from twisted.internet import protocol |
- |
-class MouseMan(protocol.Protocol): |
- """ |
- |
- Parser for Logitech MouseMan serial mouse protocol (compatible |
- with Microsoft Serial Mouse). |
- |
- """ |
- |
- state = 'initial' |
- |
- leftbutton=None |
- rightbutton=None |
- middlebutton=None |
- |
- leftold=None |
- rightold=None |
- middleold=None |
- |
- horiz=None |
- vert=None |
- horizold=None |
- vertold=None |
- |
- def down_left(self): |
- pass |
- |
- def up_left(self): |
- pass |
- |
- def down_middle(self): |
- pass |
- |
- def up_middle(self): |
- pass |
- |
- def down_right(self): |
- pass |
- |
- def up_right(self): |
- pass |
- |
- def move(self, x, y): |
- pass |
- |
- horiz=None |
- vert=None |
- |
- def state_initial(self, byte): |
- if byte & 1<<6: |
- self.word1=byte |
- self.leftbutton = byte & 1<<5 |
- self.rightbutton = byte & 1<<4 |
- return 'horiz' |
- else: |
- return 'initial' |
- |
- def state_horiz(self, byte): |
- if byte & 1<<6: |
- return self.state_initial(byte) |
- else: |
- x=(self.word1 & 0x03)<<6 | (byte & 0x3f) |
- if x>=128: |
- x=-256+x |
- self.horiz = x |
- return 'vert' |
- |
- def state_vert(self, byte): |
- if byte & 1<<6: |
- # short packet |
- return self.state_initial(byte) |
- else: |
- x = (self.word1 & 0x0c)<<4 | (byte & 0x3f) |
- if x>=128: |
- x=-256+x |
- self.vert = x |
- self.snapshot() |
- return 'maybemiddle' |
- |
- def state_maybemiddle(self, byte): |
- if byte & 1<<6: |
- self.snapshot() |
- return self.state_initial(byte) |
- else: |
- self.middlebutton=byte & 1<<5 |
- self.snapshot() |
- return 'initial' |
- |
- def snapshot(self): |
- if self.leftbutton and not self.leftold: |
- self.down_left() |
- self.leftold=1 |
- if not self.leftbutton and self.leftold: |
- self.up_left() |
- self.leftold=0 |
- |
- if self.middlebutton and not self.middleold: |
- self.down_middle() |
- self.middleold=1 |
- if not self.middlebutton and self.middleold: |
- self.up_middle() |
- self.middleold=0 |
- |
- if self.rightbutton and not self.rightold: |
- self.down_right() |
- self.rightold=1 |
- if not self.rightbutton and self.rightold: |
- self.up_right() |
- self.rightold=0 |
- |
- if self.horiz or self.vert: |
- self.move(self.horiz, self.vert) |
- |
- def dataReceived(self, data): |
- for c in data: |
- byte = ord(c) |
- self.state = getattr(self, 'state_'+self.state)(byte) |