Commit aad7db1b6d6adcdf7a534dcc7496dd88036bf99d
1 parent
3cc92fdc
Exists in
master
and in
6 other branches
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) |