Commit aad7db1b6d6adcdf7a534dcc7496dd88036bf99d

Authored by tatiana
1 parent 3cc92fdc

ENH: Text toolbar item (changed from toggle to bitmap) (#88)

Showing 1 changed file with 39 additions and 26 deletions   Show diff stats
invesalius/gui/frame.py
@@ -704,15 +704,14 @@ class ObjectToolBar(wx.ToolBar): @@ -704,15 +704,14 @@ class ObjectToolBar(wx.ToolBar):
704 else: 704 else:
705 self.SetStateProjectClose() 705 self.SetStateProjectClose()
706 706
707 -  
708 -  
709 def SetStateProjectOpen(self): 707 def SetStateProjectOpen(self):
710 for tool in self.enable_items: 708 for tool in self.enable_items:
711 self.EnableTool(tool, True) 709 self.EnableTool(tool, True)
712 710
713 def SetStateProjectClose(self): 711 def SetStateProjectClose(self):
714 for tool in self.enable_items: 712 for tool in self.enable_items:
715 - self.EnableTool(tool, False) 713 + self.EnableTool(tool, False)
  714 + self.UntoggleAllItems()
716 715
717 716
718 def __bind_events_wx(self): 717 def __bind_events_wx(self):
@@ -797,7 +796,7 @@ class SliceToolBar(wx.ToolBar): @@ -797,7 +796,7 @@ class SliceToolBar(wx.ToolBar):
797 self.Bind(wx.EVT_TOOL, self.OnClick) 796 self.Bind(wx.EVT_TOOL, self.OnClick)
798 797
799 def __bind_events(self): 798 def __bind_events(self):
800 - ps.Publisher().subscribe(self.UntoggleAllItem, 799 + ps.Publisher().subscribe(self.UntoggleAllItems,
801 'Untoggle slice toolbar items') 800 'Untoggle slice toolbar items')
802 ps.Publisher().subscribe(self.OnEnableState, "Enable state project") 801 ps.Publisher().subscribe(self.OnEnableState, "Enable state project")
803 802
@@ -807,6 +806,7 @@ class SliceToolBar(wx.ToolBar): @@ -807,6 +806,7 @@ class SliceToolBar(wx.ToolBar):
807 self.SetStateProjectOpen() 806 self.SetStateProjectOpen()
808 else: 807 else:
809 self.SetStateProjectClose() 808 self.SetStateProjectClose()
  809 + self.UntoggleAllItems()
810 810
811 811
812 def OnClick(self, evt): 812 def OnClick(self, evt):
@@ -827,7 +827,7 @@ class SliceToolBar(wx.ToolBar): @@ -827,7 +827,7 @@ class SliceToolBar(wx.ToolBar):
827 evt.Skip() 827 evt.Skip()
828 828
829 829
830 - def UntoggleAllItem(self, pubsub_evt): 830 + def UntoggleAllItems(self, pubsub_evt=None):
831 for id in const.TOOL_SLICE_STATES: 831 for id in const.TOOL_SLICE_STATES:
832 state = self.GetToolState(id) 832 state = self.GetToolState(id)
833 if state: 833 if state:
@@ -850,7 +850,8 @@ class LayoutToolBar(wx.ToolBar): @@ -850,7 +850,8 @@ class LayoutToolBar(wx.ToolBar):
850 self.__init_items() 850 self.__init_items()
851 self.__bind_events_wx() 851 self.__bind_events_wx()
852 self.__bind_events() 852 self.__bind_events()
853 - self.ontool = False 853 + self.ontool_layout = False
  854 + self.ontool_text = True
854 855
855 def __init_items(self): 856 def __init_items(self):
856 857
@@ -863,7 +864,10 @@ class LayoutToolBar(wx.ToolBar): @@ -863,7 +864,10 @@ class LayoutToolBar(wx.ToolBar):
863 "layout_full_original.gif"), 864 "layout_full_original.gif"),
864 wx.BITMAP_TYPE_GIF) 865 wx.BITMAP_TYPE_GIF)
865 866
866 - BMP_TEXT = wx.Bitmap(os.path.join(const.ICON_DIR,"text_original.png")) 867 + self.BMP_WITHOUT_TEXT =\
  868 + wx.Bitmap(os.path.join(const.ICON_DIR,"text_inverted_original.png"))
  869 +
  870 + self.BMP_WITH_TEXT = wx.Bitmap(os.path.join(const.ICON_DIR,"text_original.png"))
867 871
868 else: 872 else:
869 self.BMP_WITHOUT_MENU = wx.Bitmap(os.path.join(const.ICON_DIR, 873 self.BMP_WITHOUT_MENU = wx.Bitmap(os.path.join(const.ICON_DIR,
@@ -872,27 +876,30 @@ class LayoutToolBar(wx.ToolBar): @@ -872,27 +876,30 @@ class LayoutToolBar(wx.ToolBar):
872 self.BMP_WITH_MENU = wx.Bitmap(os.path.join(const.ICON_DIR, 876 self.BMP_WITH_MENU = wx.Bitmap(os.path.join(const.ICON_DIR,
873 "layout_full.gif"), 877 "layout_full.gif"),
874 wx.BITMAP_TYPE_GIF) 878 wx.BITMAP_TYPE_GIF)
875 - BMP_TEXT = wx.Bitmap(os.path.join(const.ICON_DIR,"text.png"))  
876 - 879 + self.BMP_WITH_TEXT = wx.Bitmap(os.path.join(const.ICON_DIR,"text.png"))
  880 + self.BMP_WITHOUT_TEXT =\
  881 + wx.Bitmap(os.path.join(const.ICON_DIR,"text_inverted.png"))
877 882
878 - self.AddLabelTool(ID_LAYOUT, "",bitmap=self.BMP_WITHOUT_MENU, shortHelp= "Hide task panel")  
879 - self.AddCheckTool(ID_TEXT, bitmap=BMP_TEXT, shortHelp= "Hide texts")  
880 - self.ToggleTool(ID_TEXT, True) 883 + self.AddLabelTool(ID_LAYOUT, "",bitmap=self.BMP_WITHOUT_MENU,
  884 +shortHelp= _("Hide task panel"))
  885 + self.AddLabelTool(ID_TEXT, "",bitmap=self.BMP_WITH_TEXT, shortHelp= _("Hide text"))
881 886
882 self.enable_items = [ID_TEXT] 887 self.enable_items = [ID_TEXT]
883 self.Realize() 888 self.Realize()
884 self.SetStateProjectClose() 889 self.SetStateProjectClose()
885 890
886 def SetStateProjectOpen(self): 891 def SetStateProjectOpen(self):
  892 + self.ontool_text = False
  893 + self.OnText()
887 for tool in self.enable_items: 894 for tool in self.enable_items:
888 self.EnableTool(tool, True) 895 self.EnableTool(tool, True)
889 896
890 def SetStateProjectClose(self): 897 def SetStateProjectClose(self):
  898 + self.ontool_text = True
  899 + self.OnText()
891 for tool in self.enable_items: 900 for tool in self.enable_items:
892 self.EnableTool(tool, False) 901 self.EnableTool(tool, False)
893 902
894 -  
895 -  
896 def __bind_events(self): 903 def __bind_events(self):
897 ps.Publisher().subscribe(self.SetLayoutButtonOnlyData, 904 ps.Publisher().subscribe(self.SetLayoutButtonOnlyData,
898 "Set layout button data only") 905 "Set layout button data only")
@@ -916,9 +923,9 @@ class LayoutToolBar(wx.ToolBar): @@ -916,9 +923,9 @@ class LayoutToolBar(wx.ToolBar):
916 def OnClick(self, event): 923 def OnClick(self, event):
917 id = event.GetId() 924 id = event.GetId()
918 if id == ID_LAYOUT: 925 if id == ID_LAYOUT:
919 - self.OnTask() 926 + self.OnLayout()
920 elif id== ID_TEXT: 927 elif id== ID_TEXT:
921 - self.OnText(event) 928 + self.OnText()
922 929
923 930
924 for item in VIEW_TOOLS: 931 for item in VIEW_TOOLS:
@@ -926,24 +933,30 @@ class LayoutToolBar(wx.ToolBar): @@ -926,24 +933,30 @@ class LayoutToolBar(wx.ToolBar):
926 if state and (item != id): 933 if state and (item != id):
927 self.ToggleTool(item, False) 934 self.ToggleTool(item, False)
928 935
929 - def OnTask(self):  
930 - if self.ontool: 936 + def OnLayout(self):
  937 + if self.ontool_layout:
931 self.SetToolNormalBitmap(ID_LAYOUT,self.BMP_WITHOUT_MENU) 938 self.SetToolNormalBitmap(ID_LAYOUT,self.BMP_WITHOUT_MENU)
932 ps.Publisher().sendMessage('Show task panel') 939 ps.Publisher().sendMessage('Show task panel')
933 - self.SetToolShortHelp(ID_LAYOUT,"Hide task panel")  
934 - self.ontool = False 940 + self.SetToolShortHelp(ID_LAYOUT,_("Hide task panel"))
  941 + self.ontool_layout = False
935 else: 942 else:
936 self.bitmap = self.BMP_WITH_MENU 943 self.bitmap = self.BMP_WITH_MENU
937 self.SetToolNormalBitmap(ID_LAYOUT,self.BMP_WITH_MENU) 944 self.SetToolNormalBitmap(ID_LAYOUT,self.BMP_WITH_MENU)
938 ps.Publisher().sendMessage('Hide task panel') 945 ps.Publisher().sendMessage('Hide task panel')
939 - self.SetToolShortHelp(ID_LAYOUT, "Show task panel")  
940 - self.ontool = True 946 + self.SetToolShortHelp(ID_LAYOUT, _("Show task panel"))
  947 + self.ontool_layout = True
941 948
942 - def OnText(self, event):  
943 - if event.IsChecked():  
944 - ps.Publisher().sendMessage('Show text actors on viewers')  
945 - else: 949 + def OnText(self):
  950 + if self.ontool_text:
  951 + self.SetToolNormalBitmap(ID_TEXT,self.BMP_WITH_TEXT)
946 ps.Publisher().sendMessage('Hide text actors on viewers') 952 ps.Publisher().sendMessage('Hide text actors on viewers')
  953 + self.SetToolShortHelp(ID_TEXT,_("Show text"))
  954 + self.ontool_text = False
  955 + else:
  956 + self.SetToolNormalBitmap(ID_TEXT, self.BMP_WITHOUT_TEXT)
  957 + ps.Publisher().sendMessage('Show text actors on viewers')
  958 + self.SetToolShortHelp(ID_TEXT,_("Hide text"))
  959 + self.ontool_text = True
947 960
948 def SetLayoutButtonOnlyData(self, pubsub_evt): 961 def SetLayoutButtonOnlyData(self, pubsub_evt):
949 self.SetToolNormalBitmap(ID_LAYOUT,self.BMP_WITH_MENU) 962 self.SetToolNormalBitmap(ID_LAYOUT,self.BMP_WITH_MENU)