# HG changeset patch # User Neil Muller # Date 1378200103 -7200 # Node ID bb297f3f99f479e0d4e76082f46ac1b64080b73e # Parent f73aba2e46bd0beaad0c8265eeecf2bf5d5e5e13 Allow using right mouse button to drag level display diff -r f73aba2e46bd -r bb297f3f99f4 tools/area_editor.py --- a/tools/area_editor.py Tue Sep 03 11:21:11 2013 +0200 +++ b/tools/area_editor.py Tue Sep 03 11:21:43 2013 +0200 @@ -153,6 +153,7 @@ self.filled_mode = False self.mouse_pos = None self.cur_poly = None + self._mouse_drag = False def _level_coordinates(self, pos): # Move positions to level values @@ -221,6 +222,15 @@ if self.cur_poly and old_pos != self.mouse_pos: self.invalidate() + def mouse_drag(self, ev): + if self._mouse_drag: + old_pos = self.mouse_pos + self.mouse_pos = ev.pos + diff = (-self.mouse_pos[0] + old_pos[0], + -self.mouse_pos[1] + old_pos[1]) + self._move_view(diff) + self.invalidate() + def mouse_down(self, ev): if ev.button == 4: # Scroll up self._move_view((0, -10)) @@ -230,10 +240,16 @@ self._move_view((-10, 0)) elif ev.button == 7: # Scroll right self._move_view((10, 0)) - elif self.cur_poly: + elif self.cur_poly and ev.button == 1: # Add a point self.level.add_point(self.cur_poly, self._level_coordinates(ev.pos)) + elif ev.button == 3: + self._mouse_drag = True + + def mouse_up(self, ev): + if ev.button == 3: + self._mouse_drag = False def close_poly(self): if self.cur_poly is None: