Commit 8f166c91090e5e314237d9da11898b7851ca2457
Committed by
Thiago Franco de Moraes
1 parent
4773dbbf
Exists in
master
and in
7 other branches
Avoided external trigger bugs (#78)
* Disable trigger checkbox when navigation is on * Marker creation optimization * Standardization
Showing
2 changed files
with
15 additions
and
2 deletions
Show diff stats
invesalius/data/viewer_volume.py
@@ -403,8 +403,9 @@ class Viewer(wx.Panel): | @@ -403,8 +403,9 @@ class Viewer(wx.Panel): | ||
403 | 403 | ||
404 | self.ren.AddActor(self.staticballs[self.ball_id]) | 404 | self.ren.AddActor(self.staticballs[self.ball_id]) |
405 | self.ball_id = self.ball_id + 1 | 405 | self.ball_id = self.ball_id + 1 |
406 | - self.UpdateRender() | ||
407 | - | 406 | + #self.UpdateRender() |
407 | + self.Refresh() | ||
408 | + | ||
408 | def HideAllMarkers(self, pubsub_evt): | 409 | def HideAllMarkers(self, pubsub_evt): |
409 | ballid = pubsub_evt.data | 410 | ballid = pubsub_evt.data |
410 | for i in range(0, ballid): | 411 | for i in range(0, ballid): |
invesalius/gui/task_navigator.py
@@ -107,6 +107,7 @@ class InnerFoldPanel(wx.Panel): | @@ -107,6 +107,7 @@ class InnerFoldPanel(wx.Panel): | ||
107 | default_colour = wx.SystemSettings_GetColour(wx.SYS_COLOUR_MENUBAR) | 107 | default_colour = wx.SystemSettings_GetColour(wx.SYS_COLOUR_MENUBAR) |
108 | self.SetBackgroundColour(default_colour) | 108 | self.SetBackgroundColour(default_colour) |
109 | 109 | ||
110 | + self.__bind_events() | ||
110 | # Fold panel and its style settings | 111 | # Fold panel and its style settings |
111 | # FIXME: If we dont insert a value in size or if we set wx.DefaultSize, | 112 | # FIXME: If we dont insert a value in size or if we set wx.DefaultSize, |
112 | # the fold_panel doesnt show. This means that, for some reason, Sizer | 113 | # the fold_panel doesnt show. This means that, for some reason, Sizer |
@@ -154,6 +155,7 @@ class InnerFoldPanel(wx.Panel): | @@ -154,6 +155,7 @@ class InnerFoldPanel(wx.Panel): | ||
154 | checktrigger.SetToolTip(tooltip) | 155 | checktrigger.SetToolTip(tooltip) |
155 | checktrigger.SetValue(False) | 156 | checktrigger.SetValue(False) |
156 | checktrigger.Bind(wx.EVT_CHECKBOX, partial(self.UpdateExternalTrigger, ctrl=checktrigger)) | 157 | checktrigger.Bind(wx.EVT_CHECKBOX, partial(self.UpdateExternalTrigger, ctrl=checktrigger)) |
158 | + self.checktrigger = checktrigger | ||
157 | 159 | ||
158 | if sys.platform != 'win32': | 160 | if sys.platform != 'win32': |
159 | checkcamera.SetWindowVariant(wx.WINDOW_VARIANT_SMALL) | 161 | checkcamera.SetWindowVariant(wx.WINDOW_VARIANT_SMALL) |
@@ -173,6 +175,16 @@ class InnerFoldPanel(wx.Panel): | @@ -173,6 +175,16 @@ class InnerFoldPanel(wx.Panel): | ||
173 | self.SetSizer(sizer) | 175 | self.SetSizer(sizer) |
174 | self.Update() | 176 | self.Update() |
175 | self.SetAutoLayout(1) | 177 | self.SetAutoLayout(1) |
178 | + | ||
179 | + def __bind_events(self): | ||
180 | + Publisher.subscribe(self.OnTrigger, 'Navigation Status') | ||
181 | + | ||
182 | + def OnTrigger(self, pubsub_evt): | ||
183 | + status = pubsub_evt.data | ||
184 | + if status: | ||
185 | + self.checktrigger.Enable(False) | ||
186 | + else: | ||
187 | + self.checktrigger.Enable(True) | ||
176 | 188 | ||
177 | def UpdateExternalTrigger(self, evt, ctrl): | 189 | def UpdateExternalTrigger(self, evt, ctrl): |
178 | Publisher.sendMessage('Update trigger state', ctrl.GetValue()) | 190 | Publisher.sendMessage('Update trigger state', ctrl.GetValue()) |