Commit 285bc1047c766537617f84d1630080fa16616625

Authored by tatiana
1 parent 7298b429

FIX: Check item on surface list ctrl on notebook

Showing 1 changed file with 17 additions and 11 deletions   Show diff stats
invesalius/gui/data_notebook.py
... ... @@ -255,11 +255,9 @@ class MasksListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin):
255 255 def OnEditLabel(self, evt):
256 256 ps.Publisher().sendMessage('Change mask name', (evt.GetIndex(), evt.GetLabel()))
257 257 evt.Skip()
258   -
  258 +
259 259 def OnItemActivated(self, evt):
260 260 self.ToggleItem(evt.m_itemIndex)
261   -
262   -
263 261  
264 262 def OnCheckItem(self, index, flag):
265 263 if flag:
... ... @@ -344,7 +342,8 @@ class MasksListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin):
344 342 new_dict[i-1] = old_dict[i]
345 343 self.mask_list_index = new_dict
346 344 self.DeleteItem(index)
347   -
  345 +
  346 +#-------------------------------------------------
348 347 class SurfacesListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin):
349 348  
350 349 def __init__(self, parent, ID=-1, pos=wx.DefaultPosition,
... ... @@ -373,20 +372,24 @@ class SurfacesListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin):
373 372 'Set surface colour')
374 373 ps.Publisher().subscribe(self.OnCloseProject, 'Close project data')
375 374  
  375 + def __bind_events_wx(self):
  376 + self.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnItemActivated)
  377 + self.Bind(wx.EVT_LIST_END_LABEL_EDIT, self.OnEditLabel)
  378 + self.Bind(wx.EVT_LIST_ITEM_SELECTED, self.OnItemSelected_)
  379 +
376 380 def OnCloseProject(self, pubsub_evt):
377 381 self.DeleteAllItems()
378 382 self.surface_list_index = {}
379 383 self.surface_bmp_idx_to_name = {}
380 384  
381   - def __bind_events_wx(self):
382   - self.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnItemActivated)
383   - self.Bind(wx.EVT_LIST_END_LABEL_EDIT, self.OnEditLabel)
384   - self.Bind(wx.EVT_LIST_ITEM_SELECTED, self.OnItemSelected)
385   -
386   - def OnItemSelected(self, evt):
  385 + def OnItemSelected_(self, evt):
  386 + # Note: DON'T rename to OnItemSelected!!!
  387 + # Otherwise the parent's method will be overwritten and other
  388 + # things will stop working, e.g.: OnCheckItem
387 389 last_surface_index = evt.m_itemIndex
388 390 ps.Publisher().sendMessage('Change surface selected',
389 391 last_surface_index)
  392 + evt.Skip()
390 393  
391 394 def __init_columns(self):
392 395  
... ... @@ -427,9 +430,11 @@ class SurfacesListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin):
427 430 def OnItemActivated(self, evt):
428 431 self.ToggleItem(evt.m_itemIndex)
429 432 #ps.Publisher().sendMessage('Change surface selected',index)
  433 + evt.Skip()
  434 +
430 435  
431 436 def OnCheckItem(self, index, flag):
432   - ps.Publisher().sendMessage('Show surface', (index, flag))
  437 + ps.Publisher().sendMessage('Show surface', (index, flag))
433 438  
434 439 def AddSurface(self, pubsub_evt):
435 440  
... ... @@ -510,6 +515,7 @@ class SurfacesListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin):
510 515 self.imagelist.Replace(image_index, image)
511 516 self.Refresh()
512 517  
  518 +#-------------------------------------------------
513 519  
514 520 class MeasuresListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin):
515 521 # TODO: Change edimixin to affect third column also
... ...