Skip to content

Commit 3b8e9ff

Browse files
author
David Stirling
committed
Fix mpl toolbar on macos
1 parent a0a73b0 commit 3b8e9ff

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

cpa/dimensionreduction.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,13 +85,21 @@ def __init__(self, parent, size=(600, 600), loadData=True, **kwargs):
8585
figpanel = ReduxPanel(self)
8686
self.fig = figpanel
8787
sizer = wx.BoxSizer(wx.VERTICAL)
88+
# MacOS won't render an MPL navbar set as a frame toolbar for some reason. Let's add it to the panel instead.
89+
if sys.platform == 'darwin':
90+
tb = figpanel.get_toolbar()
91+
tb.hoverlabel.Hide()
92+
tb.hoverlabel.Show()
93+
sizer.Add(tb, 0, wx.EXPAND)
94+
else:
95+
self.SetToolBar(figpanel.get_toolbar())
96+
sizer = wx.BoxSizer(wx.VERTICAL)
8897
sizer.Add(figpanel, 1, wx.EXPAND)
8998

9099
configpanel = ReduxControlPanel(self, figpanel)
91100
figpanel.set_configpanel(configpanel)
92101
sizer.Add(configpanel, 0, wx.EXPAND | wx.ALL, 5)
93102

94-
self.SetToolBar(figpanel.get_toolbar())
95103
self.SetSizer(sizer)
96104
#
97105
# Forward save and load settings functionality to the configpanel
@@ -902,7 +910,6 @@ def __init__(self, canvas):
902910
shortHelp='Lasso Select', longHelp='Lasso select')
903911
self.Bind(wx.EVT_TOOL, self.Parent.configure_subplots, id=self.CONFIG_SUBPLOTS)
904912

905-
self.AddSeparator()
906913
pos = self.GetToolsCount()
907914
self.hoverlabel = wx.StaticText(self, label="")
908915
self.InsertControl(pos, self.hoverlabel, "")

0 commit comments

Comments
 (0)