|
3 | 3 | Embedding in wx #4 |
4 | 4 | ================== |
5 | 5 |
|
6 | | -An example of how to use wx or wxagg in an application with a custom toolbar. |
| 6 | +An example of how to use wxagg in a wx application with a custom toolbar. |
7 | 7 | """ |
8 | 8 |
|
9 | | -from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as FigureCanvas |
10 | | -from matplotlib.backends.backend_wxagg import NavigationToolbar2WxAgg as NavigationToolbar |
11 | | -from matplotlib.backends.backend_wx import _load_bitmap |
| 9 | +from matplotlib.backends.backend_wxagg import ( |
| 10 | + FigureCanvasWxAgg as FigureCanvas, |
| 11 | + NavigationToolbar2WxAgg as NavigationToolbar, |
| 12 | +) |
12 | 13 | from matplotlib.figure import Figure |
13 | 14 |
|
14 | 15 | import numpy as np |
|
19 | 20 | class MyNavigationToolbar(NavigationToolbar): |
20 | 21 | """Extend the default wx toolbar with your own event handlers.""" |
21 | 22 |
|
22 | | - def __init__(self, canvas, cankill): |
| 23 | + def __init__(self, canvas): |
23 | 24 | NavigationToolbar.__init__(self, canvas) |
24 | | - |
25 | | - # for simplicity I'm going to reuse a bitmap from wx, you'll |
26 | | - # probably want to add your own. |
27 | | - tool = self.AddTool(wx.ID_ANY, 'Click me', _load_bitmap('back.png'), |
| 25 | + # We use a stock wx bitmap, but you could also use your own image file. |
| 26 | + bmp = wx.ArtProvider.GetBitmap(wx.ART_CROSS_MARK, wx.ART_TOOLBAR) |
| 27 | + tool = self.AddTool(wx.ID_ANY, 'Click me', bmp, |
28 | 28 | 'Activate custom contol') |
29 | 29 | self.Bind(wx.EVT_TOOL, self._on_custom, id=tool.GetId()) |
30 | 30 |
|
@@ -64,7 +64,7 @@ def __init__(self): |
64 | 64 | self.sizer = wx.BoxSizer(wx.VERTICAL) |
65 | 65 | self.sizer.Add(self.canvas, 1, wx.TOP | wx.LEFT | wx.EXPAND) |
66 | 66 |
|
67 | | - self.toolbar = MyNavigationToolbar(self.canvas, True) |
| 67 | + self.toolbar = MyNavigationToolbar(self.canvas) |
68 | 68 | self.toolbar.Realize() |
69 | 69 | # By adding toolbar in sizer, we are able to put it at the bottom |
70 | 70 | # of the frame - so appearance is closer to GTK version. |
|
0 commit comments