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 | 704 | else: |
705 | 705 | self.SetStateProjectClose() |
706 | 706 | |
707 | - | |
708 | - | |
709 | 707 | def SetStateProjectOpen(self): |
710 | 708 | for tool in self.enable_items: |
711 | 709 | self.EnableTool(tool, True) |
712 | 710 | |
713 | 711 | def SetStateProjectClose(self): |
714 | 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 | 717 | def __bind_events_wx(self): |
... | ... | @@ -797,7 +796,7 @@ class SliceToolBar(wx.ToolBar): |
797 | 796 | self.Bind(wx.EVT_TOOL, self.OnClick) |
798 | 797 | |
799 | 798 | def __bind_events(self): |
800 | - ps.Publisher().subscribe(self.UntoggleAllItem, | |
799 | + ps.Publisher().subscribe(self.UntoggleAllItems, | |
801 | 800 | 'Untoggle slice toolbar items') |
802 | 801 | ps.Publisher().subscribe(self.OnEnableState, "Enable state project") |
803 | 802 | |
... | ... | @@ -807,6 +806,7 @@ class SliceToolBar(wx.ToolBar): |
807 | 806 | self.SetStateProjectOpen() |
808 | 807 | else: |
809 | 808 | self.SetStateProjectClose() |
809 | + self.UntoggleAllItems() | |
810 | 810 | |
811 | 811 | |
812 | 812 | def OnClick(self, evt): |
... | ... | @@ -827,7 +827,7 @@ class SliceToolBar(wx.ToolBar): |
827 | 827 | evt.Skip() |
828 | 828 | |
829 | 829 | |
830 | - def UntoggleAllItem(self, pubsub_evt): | |
830 | + def UntoggleAllItems(self, pubsub_evt=None): | |
831 | 831 | for id in const.TOOL_SLICE_STATES: |
832 | 832 | state = self.GetToolState(id) |
833 | 833 | if state: |
... | ... | @@ -850,7 +850,8 @@ class LayoutToolBar(wx.ToolBar): |
850 | 850 | self.__init_items() |
851 | 851 | self.__bind_events_wx() |
852 | 852 | self.__bind_events() |
853 | - self.ontool = False | |
853 | + self.ontool_layout = False | |
854 | + self.ontool_text = True | |
854 | 855 | |
855 | 856 | def __init_items(self): |
856 | 857 | |
... | ... | @@ -863,7 +864,10 @@ class LayoutToolBar(wx.ToolBar): |
863 | 864 | "layout_full_original.gif"), |
864 | 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 | 872 | else: |
869 | 873 | self.BMP_WITHOUT_MENU = wx.Bitmap(os.path.join(const.ICON_DIR, |
... | ... | @@ -872,27 +876,30 @@ class LayoutToolBar(wx.ToolBar): |
872 | 876 | self.BMP_WITH_MENU = wx.Bitmap(os.path.join(const.ICON_DIR, |
873 | 877 | "layout_full.gif"), |
874 | 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 | 887 | self.enable_items = [ID_TEXT] |
883 | 888 | self.Realize() |
884 | 889 | self.SetStateProjectClose() |
885 | 890 | |
886 | 891 | def SetStateProjectOpen(self): |
892 | + self.ontool_text = False | |
893 | + self.OnText() | |
887 | 894 | for tool in self.enable_items: |
888 | 895 | self.EnableTool(tool, True) |
889 | 896 | |
890 | 897 | def SetStateProjectClose(self): |
898 | + self.ontool_text = True | |
899 | + self.OnText() | |
891 | 900 | for tool in self.enable_items: |
892 | 901 | self.EnableTool(tool, False) |
893 | 902 | |
894 | - | |
895 | - | |
896 | 903 | def __bind_events(self): |
897 | 904 | ps.Publisher().subscribe(self.SetLayoutButtonOnlyData, |
898 | 905 | "Set layout button data only") |
... | ... | @@ -916,9 +923,9 @@ class LayoutToolBar(wx.ToolBar): |
916 | 923 | def OnClick(self, event): |
917 | 924 | id = event.GetId() |
918 | 925 | if id == ID_LAYOUT: |
919 | - self.OnTask() | |
926 | + self.OnLayout() | |
920 | 927 | elif id== ID_TEXT: |
921 | - self.OnText(event) | |
928 | + self.OnText() | |
922 | 929 | |
923 | 930 | |
924 | 931 | for item in VIEW_TOOLS: |
... | ... | @@ -926,24 +933,30 @@ class LayoutToolBar(wx.ToolBar): |
926 | 933 | if state and (item != id): |
927 | 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 | 938 | self.SetToolNormalBitmap(ID_LAYOUT,self.BMP_WITHOUT_MENU) |
932 | 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 | 942 | else: |
936 | 943 | self.bitmap = self.BMP_WITH_MENU |
937 | 944 | self.SetToolNormalBitmap(ID_LAYOUT,self.BMP_WITH_MENU) |
938 | 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 | 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 | 961 | def SetLayoutButtonOnlyData(self, pubsub_evt): |
949 | 962 | self.SetToolNormalBitmap(ID_LAYOUT,self.BMP_WITH_MENU) | ... | ... |