Mercurial > fife-parpg
comparison clients/editor/scripts/gui/mapeditor.py @ 257:f2195628947b
* Cursor will now respect image shift values when drawing the cursor
* Editor now have cursors showing what mode the editor is in
author | cheesesucker@33b003aa-7bff-0310-803a-e67f0ece8222 |
---|---|
date | Mon, 08 Jun 2009 19:56:54 +0000 |
parents | 51cc05d862f2 |
children | a0068e00f076 |
comparison
equal
deleted
inserted
replaced
256:e893afb4963b | 257:f2195628947b |
---|---|
60 | 60 |
61 events.mousePressed.connect(self.mousePressed) | 61 events.mousePressed.connect(self.mousePressed) |
62 events.mouseDragged.connect(self.mouseDragged) | 62 events.mouseDragged.connect(self.mouseDragged) |
63 events.mouseReleased.connect(self.mouseReleased) | 63 events.mouseReleased.connect(self.mouseReleased) |
64 events.mouseMoved.connect(self.mouseMoved) | 64 events.mouseMoved.connect(self.mouseMoved) |
65 events.mouseEntered.connect(self.mouseEntered) | |
66 events.mouseExited.connect(self.mouseExited) | |
65 events.mouseWheelMovedUp.connect(self.mouseWheelMovedUp) | 67 events.mouseWheelMovedUp.connect(self.mouseWheelMovedUp) |
66 events.mouseWheelMovedDown.connect(self.mouseWheelMovedDown) | 68 events.mouseWheelMovedDown.connect(self.mouseWheelMovedDown) |
67 events.mouseExited.connect(self.mouseExited) | |
68 events.onPump.connect(self.pump) | 69 events.onPump.connect(self.pump) |
69 | 70 |
70 def _clear(self): | 71 def _clear(self): |
71 self._clearToolbarButtons() | 72 self._clearToolbarButtons() |
72 | 73 |
75 | 76 |
76 events.mousePressed.disconnect(self.mousePressed) | 77 events.mousePressed.disconnect(self.mousePressed) |
77 events.mouseDragged.disconnect(self.mouseDragged) | 78 events.mouseDragged.disconnect(self.mouseDragged) |
78 events.mouseReleased.disconnect(self.mouseReleased) | 79 events.mouseReleased.disconnect(self.mouseReleased) |
79 events.mouseMoved.disconnect(self.mouseMoved) | 80 events.mouseMoved.disconnect(self.mouseMoved) |
81 events.mouseExited.disconnect(self.mouseExited) | |
82 events.mouseEntered.disconnect(self.mouseEntered) | |
80 events.mouseWheelMovedUp.disconnect(self.mouseWheelMovedUp) | 83 events.mouseWheelMovedUp.disconnect(self.mouseWheelMovedUp) |
81 events.mouseWheelMovedDown.disconnect(self.mouseWheelMovedDown) | 84 events.mouseWheelMovedDown.disconnect(self.mouseWheelMovedDown) |
82 events.mouseExited.disconnect(self.mouseExited) | |
83 events.onPump.disconnect(self.pump) | 85 events.onPump.disconnect(self.pump) |
84 | 86 |
85 def _mapChanged(self, sender, mapview): | 87 def _mapChanged(self, sender, mapview): |
86 self.setController(mapview.getController()) | 88 self.setController(mapview.getController()) |
89 | |
90 def _setCursor(self): | |
91 engine = self._editor.getEngine() | |
92 cursor = engine.getCursor() | |
93 | |
94 id = -1 | |
95 if self._mode == SELECTING: | |
96 id = engine.getImagePool().addResourceFromFile("gui/icons/select_instance.png") | |
97 image = engine.getImagePool().getImage(id) | |
98 image.setXShift(-16) | |
99 image.setYShift(-15) | |
100 elif self._mode == INSERTING: | |
101 id = engine.getImagePool().addResourceFromFile("gui/icons/add_instance.png") | |
102 image = engine.getImagePool().getImage(id) | |
103 image.setXShift(-2) | |
104 image.setYShift(-20) | |
105 elif self._mode == REMOVING: | |
106 id = engine.getImagePool().addResourceFromFile("gui/icons/erase_instance.png") | |
107 image = engine.getImagePool().getImage(id) | |
108 image.setXShift(-2) | |
109 image.setYShift(-19) | |
110 elif self._mode == MOVING: | |
111 id = engine.getImagePool().addResourceFromFile("gui/icons/move_instance.png") | |
112 image = engine.getImagePool().getImage(id) | |
113 image.setXShift(-11) | |
114 image.setYShift(-11) | |
115 elif self._mode == OBJECTPICKER: | |
116 id = engine.getImagePool().addResourceFromFile("gui/icons/objectpicker.png") | |
117 image = engine.getImagePool().getImage(id) | |
118 image.setXShift(-0) | |
119 image.setYShift(-22) | |
120 | |
121 if id < 0: | |
122 self._resetCursor() | |
123 else: | |
124 cursor.set(fife.CURSOR_IMAGE, id) | |
125 | |
126 def _resetCursor(self): | |
127 cursor = self._editor.getEngine().getCursor() | |
128 cursor.set(fife.CURSOR_NATIVE, fife.NC_ARROW) | |
87 | 129 |
88 def setObject(self, object): | 130 def setObject(self, object): |
89 self._object = object | 131 self._object = object |
90 | 132 |
91 def setController(self, controller): | 133 def setController(self, controller): |
178 self._ignoreToggles = False | 220 self._ignoreToggles = False |
179 | 221 |
180 self._mode = mode | 222 self._mode = mode |
181 print "Entered mode " + mode | 223 print "Entered mode " + mode |
182 self._statusbar.setText(mode.replace('_', ' ').capitalize()) | 224 self._statusbar.setText(mode.replace('_', ' ').capitalize()) |
225 self._setCursor() | |
183 | 226 |
184 def _buttonToggled(self, sender, toggled): | 227 def _buttonToggled(self, sender, toggled): |
185 if self._controller is None: return | 228 if self._controller is None: return |
186 if self._ignoreToggles is True: return | 229 if self._ignoreToggles is True: return |
187 | 230 |
199 elif sender == self._objectpickerAction: | 242 elif sender == self._objectpickerAction: |
200 mode = OBJECTPICKER | 243 mode = OBJECTPICKER |
201 | 244 |
202 self._setMode(mode) | 245 self._setMode(mode) |
203 | 246 |
204 def mouseExited(self, sender, event): | |
205 pass | |
206 | |
207 | |
208 def mousePressed(self, sender, event): | 247 def mousePressed(self, sender, event): |
209 if event.isConsumedByWidgets(): | 248 if event.isConsumedByWidgets(): |
210 return | 249 return |
211 | 250 |
212 realCoords = self._getRealCoords(sender, event) | 251 realCoords = self._getRealCoords(sender, event) |
358 self._dragx = NOT_INITIALIZED | 397 self._dragx = NOT_INITIALIZED |
359 self._dragy = NOT_INITIALIZED | 398 self._dragy = NOT_INITIALIZED |
360 | 399 |
361 def mouseMoved(self, sender, event): | 400 def mouseMoved(self, sender, event): |
362 pass | 401 pass |
402 | |
403 def mouseEntered(self, sender, event): | |
404 self._setCursor() | |
405 | |
406 def mouseExited(self, sender, event): | |
407 self._resetCursor() | |
363 | 408 |
364 def mouseWheelMovedUp(self, event): | 409 def mouseWheelMovedUp(self, event): |
365 if self._eventlistener.controlPressed and self._controller._camera: | 410 if self._eventlistener.controlPressed and self._controller._camera: |
366 self._controller._camera.setZoom(self._controller._camera.getZoom() * 1.10) | 411 self._controller._camera.setZoom(self._controller._camera.getZoom() * 1.10) |
367 | 412 |