34 |
vob.VobMouseEvent.MOUSE_PRESSED, |
vob.VobMouseEvent.MOUSE_PRESSED, |
35 |
0, 0, 0, vob.VobMouseEvent.CONTROL_MASK, 1)) |
0, 0, 0, vob.VobMouseEvent.CONTROL_MASK, 1)) |
36 |
|
|
37 |
|
|
38 |
|
|
39 |
|
def testClearClickAndDrag(): |
40 |
|
class ListenerAndDrag(vob.mouse.MousePressListener, vob.mouse.MouseDragListener): |
41 |
|
def __init__(self, test): |
42 |
|
self.test = test |
43 |
|
def pressed(self, x,y): return self |
44 |
|
def startDrag(self, x,y): |
45 |
|
pass |
46 |
|
def drag(self, x,y): |
47 |
|
self.test.chg() |
48 |
|
def endDrag(self, x,y): |
49 |
|
self.test.chg() |
50 |
|
class Click(vob.mouse.MouseClickListener): |
51 |
|
def __init__(self, test): self.test = test |
52 |
|
def clicked(self, x,y): self.test.chg() |
53 |
|
|
54 |
|
class Object: |
55 |
|
def __init__(self): self.done = 0 |
56 |
|
def chg(self): self.done = 1 |
57 |
|
|
58 |
|
press = vob.VobMouseEvent( |
59 |
|
vob.VobMouseEvent.MOUSE_PRESSED, |
60 |
|
0, 0, 0, 0, 1) |
61 |
|
drag = vob.VobMouseEvent( |
62 |
|
vob.VobMouseEvent.MOUSE_DRAGGED, |
63 |
|
0, 0, 0, 0, 1) |
64 |
|
click = vob.VobMouseEvent( |
65 |
|
vob.VobMouseEvent.MOUSE_CLICKED, |
66 |
|
0, 0, 0, 0, 1) |
67 |
|
released = vob.VobMouseEvent( |
68 |
|
vob.VobMouseEvent.MOUSE_RELEASED, |
69 |
|
0, 0, 0, 0, 1) |
70 |
|
|
71 |
|
# no drag - test |
72 |
|
clickTest = Object() |
73 |
|
dragTest = Object() |
74 |
|
mul = vob.mouse.MouseMultiplexer() |
75 |
|
mul.setListener(1,0, 'click', Click(clickTest)) |
76 |
|
mul.setListener(1,0, 'drag', ListenerAndDrag(dragTest)) |
77 |
|
|
78 |
|
mul.deliverEvent(press) |
79 |
|
mul.deliverEvent(released) |
80 |
|
assert clickTest.done == 0 |
81 |
|
mul.deliverEvent(click) |
82 |
|
assert clickTest.done == 1 |
83 |
|
assert dragTest.done == 0 |
84 |
|
|
85 |
|
# no click - test |
86 |
|
clickTest = Object() |
87 |
|
dragTest = Object() |
88 |
|
mul = vob.mouse.MouseMultiplexer() |
89 |
|
mul.setListener(1,0, 'click', Click(clickTest)) |
90 |
|
mul.setListener(1,0, 'drag', ListenerAndDrag(dragTest)) |
91 |
|
|
92 |
|
mul.deliverEvent(press) |
93 |
|
assert dragTest.done == 0 |
94 |
|
mul.deliverEvent(drag) |
95 |
|
assert dragTest.done == 1 |
96 |
|
mul.deliverEvent(released) |
97 |
|
assert dragTest.done == 1 |
98 |
|
assert clickTest.done == 0 |
99 |
|
|