Commit dc0b42349fb8d88cf5406c143656eb5c65f5df8e

Authored by Paulo Henrique Junqueira Amorim
1 parent 5ba96ad2

ENH: Close project with default selected in the slice menu

invesalius/data/slice_.py
@@ -114,6 +114,7 @@ class Slice(object): @@ -114,6 +114,7 @@ class Slice(object):
114 def CloseProject(self): 114 def CloseProject(self):
115 self.imagedata = None 115 self.imagedata = None
116 self.current_mask = None 116 self.current_mask = None
  117 + ps.Publisher().sendMessage('Select first item from slice menu')
117 #self.blend_filter = None 118 #self.blend_filter = None
118 #self.blend_filter = None 119 #self.blend_filter = None
119 #self.num_gradient = 0 120 #self.num_gradient = 0
invesalius/gui/widgets/slice_menu.py
@@ -34,7 +34,7 @@ class SliceMenu(wx.Menu): @@ -34,7 +34,7 @@ class SliceMenu(wx.Menu):
34 submenu_wl = wx.Menu() 34 submenu_wl = wx.Menu()
35 35
36 #Window and level from DICOM 36 #Window and level from DICOM
37 - new_id = wx.NewId() 37 + new_id = self.id_wl_first = wx.NewId()
38 wl_item = wx.MenuItem(submenu_wl, new_id,\ 38 wl_item = wx.MenuItem(submenu_wl, new_id,\
39 _('Default'), kind=wx.ITEM_RADIO) 39 _('Default'), kind=wx.ITEM_RADIO)
40 submenu_wl.AppendItem(wl_item) 40 submenu_wl.AppendItem(wl_item)
@@ -71,7 +71,7 @@ class SliceMenu(wx.Menu): @@ -71,7 +71,7 @@ class SliceMenu(wx.Menu):
71 71
72 #------------ Sub menu of the pseudo colors ---------------- 72 #------------ Sub menu of the pseudo colors ----------------
73 submenu_pseudo_colours = wx.Menu() 73 submenu_pseudo_colours = wx.Menu()
74 - new_id = wx.NewId() 74 + new_id = self.id_pseudo_first = wx.NewId()
75 color_item = wx.MenuItem(submenu_pseudo_colours, new_id,\ 75 color_item = wx.MenuItem(submenu_pseudo_colours, new_id,\
76 _("Default "), kind=wx.ITEM_RADIO) 76 _("Default "), kind=wx.ITEM_RADIO)
77 submenu_pseudo_colours.AppendItem(color_item) 77 submenu_pseudo_colours.AppendItem(color_item)
@@ -84,7 +84,8 @@ class SliceMenu(wx.Menu): @@ -84,7 +84,8 @@ class SliceMenu(wx.Menu):
84 name, kind=wx.ITEM_RADIO) 84 name, kind=wx.ITEM_RADIO)
85 submenu_pseudo_colours.AppendItem(color_item) 85 submenu_pseudo_colours.AppendItem(color_item)
86 self.ID_TO_TOOL_ITEM[new_id] = color_item 86 self.ID_TO_TOOL_ITEM[new_id] = color_item
87 - 87 +
  88 + flag_tiling = False
88 #------------ Sub menu of the image tiling --------------- 89 #------------ Sub menu of the image tiling ---------------
89 submenu_image_tiling = wx.Menu() 90 submenu_image_tiling = wx.Menu()
90 for name in sorted(const.IMAGE_TILING): 91 for name in sorted(const.IMAGE_TILING):
@@ -93,8 +94,11 @@ class SliceMenu(wx.Menu): @@ -93,8 +94,11 @@ class SliceMenu(wx.Menu):
93 name, kind=wx.ITEM_RADIO) 94 name, kind=wx.ITEM_RADIO)
94 submenu_image_tiling.AppendItem(image_tiling_item) 95 submenu_image_tiling.AppendItem(image_tiling_item)
95 self.ID_TO_TOOL_ITEM[new_id] = image_tiling_item 96 self.ID_TO_TOOL_ITEM[new_id] = image_tiling_item
96 -  
97 - 97 +
  98 + #Save first id item
  99 + if not(flag_tiling):
  100 + self.id_tiling_first = new_id
  101 + flag_tiling = True
98 102
99 # Add sub itens in the menu 103 # Add sub itens in the menu
100 self.AppendMenu(-1, _("Window Width and Level"), submenu_wl) 104 self.AppendMenu(-1, _("Window Width and Level"), submenu_wl)
@@ -113,7 +117,19 @@ class SliceMenu(wx.Menu): @@ -113,7 +117,19 @@ class SliceMenu(wx.Menu):
113 117
114 def __bind_events(self): 118 def __bind_events(self):
115 ps.Publisher().subscribe(self.CheckWindowLevelOther, 'Check window and level other') 119 ps.Publisher().subscribe(self.CheckWindowLevelOther, 'Check window and level other')
116 - 120 + ps.Publisher().subscribe(self.FirstItemSelect, 'Select first item from slice menu')
  121 +
  122 + def FirstItemSelect(self, pusub_evt):
  123 +
  124 + item = self.ID_TO_TOOL_ITEM[self.id_wl_first]
  125 + item.Check(1)
  126 +
  127 + item = self.ID_TO_TOOL_ITEM[self.id_pseudo_first]
  128 + item.Check(1)
  129 +
  130 + item = self.ID_TO_TOOL_ITEM[self.id_tiling_first]
  131 + item.Check(1)
  132 +
117 def CheckWindowLevelOther(self, pubsub_evt): 133 def CheckWindowLevelOther(self, pubsub_evt):
118 item = self.ID_TO_TOOL_ITEM[self.other_wl_id] 134 item = self.ID_TO_TOOL_ITEM[self.other_wl_id]
119 item.Check() 135 item.Check()