129 |
Tool.MouseUp(self, event) |
Tool.MouseUp(self, event) |
130 |
sx, sy = self.start |
sx, sy = self.start |
131 |
cx, cy = self.current |
cx, cy = self.current |
132 |
if sx == cx and sy == cy: |
if sx == cx or sy == cy: |
133 |
# Just a mouse click. Simply zoom in by a factor of two |
# Just a mouse click or a degenerate rectangle. Simply |
134 |
|
# zoom in by a factor of two |
135 |
|
# FIXME: For a click this is the desired behavior but should we |
136 |
|
# really do this for degenrate rectagles as well or |
137 |
|
# should we ignore them? |
138 |
self.view.ZoomFactor(2, center = (cx, cy)) |
self.view.ZoomFactor(2, center = (cx, cy)) |
139 |
else: |
else: |
140 |
# A drag. Zoom in to the rectangle |
# A drag. Zoom in to the rectangle |
153 |
Tool.MouseUp(self, event) |
Tool.MouseUp(self, event) |
154 |
sx, sy = self.start |
sx, sy = self.start |
155 |
cx, cy = self.current |
cx, cy = self.current |
156 |
if sx == cx and sy == cy: |
if sx == cx or sy == cy: |
157 |
# Just a mouse click. Simply zoom out by a factor of two |
# Just a mouse click or a degenerate rectangle. Simply |
158 |
|
# zoom out by a factor of two. |
159 |
|
# FIXME: For a click this is the desired behavior but should we |
160 |
|
# really do this for degenrate rectagles as well or |
161 |
|
# should we ignore them? |
162 |
self.view.ZoomFactor(0.5, center = (cx, cy)) |
self.view.ZoomFactor(0.5, center = (cx, cy)) |
163 |
else: |
else: |
164 |
# A drag. Zoom out to the rectangle |
# A drag. Zoom out to the rectangle |
562 |
self.dragging = 1 |
self.dragging = 1 |
563 |
|
|
564 |
def OnLeftUp(self, event): |
def OnLeftUp(self, event): |
|
self.ReleaseMouse() |
|
565 |
self.set_current_position(event) |
self.set_current_position(event) |
566 |
if self.dragging: |
if self.dragging: |
567 |
|
self.ReleaseMouse() |
568 |
self.tool.Hide(self.drag_dc) |
self.tool.Hide(self.drag_dc) |
569 |
self.tool.MouseUp(event) |
self.tool.MouseUp(event) |
570 |
self.drag_dc = None |
self.drag_dc = None |