|
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