Commit 18b9f8194c41fbe9a554d9f8c2433a4a4921adab
1 parent
e43c949b
Exists in
master
and in
68 other branches
ENH: Add UnZoom
Showing
1 changed file
with
23 additions
and
12 deletions
Show diff stats
invesalius/data/viewer_slice.py
@@ -132,8 +132,12 @@ class Viewer(wx.Panel): | @@ -132,8 +132,12 @@ class Viewer(wx.Panel): | ||
132 | 'ZOOM':{ | 132 | 'ZOOM':{ |
133 | "MouseMoveEvent": self.OnZoomMove, | 133 | "MouseMoveEvent": self.OnZoomMove, |
134 | "LeftButtonPressEvent": self.OnZoomClick, | 134 | "LeftButtonPressEvent": self.OnZoomClick, |
135 | - "LeftButtonReleaseEvent": self.OnReleaseModes | ||
136 | - } | 135 | + "LeftButtonReleaseEvent": self.OnReleaseModes, |
136 | + "RightButtonReleaseEvent":self.OnUnZoom | ||
137 | + }, | ||
138 | + 'ZOOMSELECT':{ | ||
139 | + "RightButtonReleaseEvent":self.OnUnZoom | ||
140 | + } | ||
137 | } | 141 | } |
138 | 142 | ||
139 | # Bind method according to current mode | 143 | # Bind method according to current mode |
@@ -142,13 +146,13 @@ class Viewer(wx.Panel): | @@ -142,13 +146,13 @@ class Viewer(wx.Panel): | ||
142 | else: | 146 | else: |
143 | style = vtk.vtkInteractorStyleImage() | 147 | style = vtk.vtkInteractorStyleImage() |
144 | 148 | ||
145 | - # Check all modes set by user | ||
146 | - for mode in self.modes: | ||
147 | - # Check each event available for each mode | ||
148 | - for event in action[mode]: | ||
149 | - # Bind event | ||
150 | - style.AddObserver(event, | ||
151 | - action[mode][event]) | 149 | + # Check all modes set by user |
150 | + for mode in self.modes: | ||
151 | + # Check each event available for each mode | ||
152 | + for event in action[mode]: | ||
153 | + # Bind event | ||
154 | + style.AddObserver(event, | ||
155 | + action[mode][event]) | ||
152 | self.style = style | 156 | self.style = style |
153 | self.interactor.SetInteractorStyle(style) | 157 | self.interactor.SetInteractorStyle(style) |
154 | 158 | ||
@@ -165,7 +169,8 @@ class Viewer(wx.Panel): | @@ -165,7 +169,8 @@ class Viewer(wx.Panel): | ||
165 | def ChangeZoomMode(self, pubsub_evt): | 169 | def ChangeZoomMode(self, pubsub_evt): |
166 | self.append_mode('ZOOM') | 170 | self.append_mode('ZOOM') |
167 | self.mouse_pressed = 0 | 171 | self.mouse_pressed = 0 |
168 | - self.interactor.SetCursor(wx.StockCursor(wx.CURSOR_SIZENS)) | 172 | + ICON_IMAGE = wx.Image("../icons/tool_zoom.png",wx.BITMAP_TYPE_PNG) |
173 | + self.interactor.SetCursor(wx.CursorFromImage(ICON_IMAGE)) | ||
169 | 174 | ||
170 | def ChangePanMode(self, pubsub_evt): | 175 | def ChangePanMode(self, pubsub_evt): |
171 | self.append_mode('PAN') | 176 | self.append_mode('PAN') |
@@ -174,7 +179,8 @@ class Viewer(wx.Panel): | @@ -174,7 +179,8 @@ class Viewer(wx.Panel): | ||
174 | 179 | ||
175 | def ChangeZoomSelectMode(self, pubsub_evt): | 180 | def ChangeZoomSelectMode(self, pubsub_evt): |
176 | self.append_mode('ZOOMSELECT') | 181 | self.append_mode('ZOOMSELECT') |
177 | - self.mouse_pressed = 0 | 182 | + ICON_IMAGE = wx.Image("../icons/tool_zoom.png",wx.BITMAP_TYPE_PNG) |
183 | + self.interactor.SetCursor(wx.CursorFromImage(ICON_IMAGE)) | ||
178 | 184 | ||
179 | def OnPanMove(self, evt, obj): | 185 | def OnPanMove(self, evt, obj): |
180 | if (self.mouse_pressed): | 186 | if (self.mouse_pressed): |
@@ -193,7 +199,12 @@ class Viewer(wx.Panel): | @@ -193,7 +199,12 @@ class Viewer(wx.Panel): | ||
193 | def OnZoomClick(self, evt, obj): | 199 | def OnZoomClick(self, evt, obj): |
194 | self.mouse_pressed = 1 | 200 | self.mouse_pressed = 1 |
195 | evt.StartDolly() | 201 | evt.StartDolly() |
196 | - | 202 | + |
203 | + def OnUnZoom(self, evt, obj): | ||
204 | + self.ren.ResetCamera() | ||
205 | + self.ren.ResetCameraClippingRange() | ||
206 | + self.interactor.Render() | ||
207 | + | ||
197 | def OnSpinMove(self, evt, obj): | 208 | def OnSpinMove(self, evt, obj): |
198 | if (self.mouse_pressed): | 209 | if (self.mouse_pressed): |
199 | evt.Spin() | 210 | evt.Spin() |