@@ -1180,8 +1180,6 @@ def __init__(self, num, fig):
1180
1180
1181
1181
self .canvas .SetMinSize ((2 , 2 ))
1182
1182
1183
- self .figmgr = FigureManagerWx (self .canvas , num , self )
1184
-
1185
1183
self .Bind (wx .EVT_CLOSE , self ._onClose )
1186
1184
1187
1185
def _get_toolbar (self , statbar ):
@@ -1204,6 +1202,16 @@ def _get_toolmanager(self):
1204
1202
def get_canvas (self , fig ):
1205
1203
return FigureCanvasWx (self , - 1 , fig )
1206
1204
1205
+ @cbook .deprecated ("3.1" , alternative = "frame.canvas.manager or "
1206
+ "FigureManagerWx(frame.canvas, num, frame)" )
1207
+ @property
1208
+ def figmgr (self ):
1209
+ if self .canvas .manager is None :
1210
+ FigureManagerWx (self .canvas , num , self ) # Assigns canvas.manager.
1211
+ return self .canvas .manager
1212
+
1213
+ @cbook .deprecated ("3.1" , alternative = "frame.canvas.manager or "
1214
+ "FigureManagerWx(frame.canvas, num, frame)" )
1207
1215
def get_figure_manager (self ):
1208
1216
DEBUG_MSG ("get_figure_manager()" , 1 , self )
1209
1217
return self .figmgr
@@ -1244,29 +1252,27 @@ class FigureManagerWx(FigureManagerBase):
1244
1252
1245
1253
Attributes
1246
1254
----------
1247
- canvas : `FigureCanvas`
1248
- a FigureCanvasWx(wx.Panel) instance
1255
+ canvas : FigureCanvasWx
1249
1256
window : wxFrame
1250
- a wxFrame instance - wxpython.org/Phoenix/docs/html/Frame.html
1251
-
1252
1257
"""
1253
1258
1254
- def __init__ (self , canvas , num , frame ):
1255
- DEBUG_MSG ("__init__()" , 1 , self )
1259
+ def __init__ (self , canvas , num , frame = None ):
1260
+ if frame is not None :
1261
+ cbook .warn_deprecated (
1262
+ "3.1" , name = "frame" , obj_type = "argument" ,
1263
+ addendum = "Do not pass it anymore." )
1256
1264
FigureManagerBase .__init__ (self , canvas , num )
1257
- self .frame = frame
1258
- self .window = frame
1259
-
1260
- self .toolmanager = getattr (frame , "toolmanager" , None )
1261
- self .toolbar = frame .GetToolBar ()
1265
+ self .frame = self .window = canvas .GetParent ()
1266
+ self .toolmanager = getattr (self .frame , "toolmanager" , None )
1267
+ self .toolbar = self .frame .GetToolBar ()
1262
1268
1263
1269
def show (self ):
1264
- self .frame .Show ()
1270
+ self .window .Show ()
1265
1271
self .canvas .draw ()
1266
1272
1267
1273
def destroy (self , * args ):
1268
1274
DEBUG_MSG ("destroy()" , 1 , self )
1269
- self .frame .Destroy ()
1275
+ self .window .Destroy ()
1270
1276
wxapp = wx .GetApp ()
1271
1277
if wxapp :
1272
1278
wxapp .Yield ()
@@ -2066,11 +2072,11 @@ def new_figure_manager(cls, num, *args, **kwargs):
2066
2072
@classmethod
2067
2073
def new_figure_manager_given_figure (cls , num , figure ):
2068
2074
frame = cls ._frame_class (num , figure )
2069
- figmgr = frame . get_figure_manager ( )
2075
+ manager = FigureManagerWx ( figure . canvas , num )
2070
2076
if matplotlib .is_interactive ():
2071
- figmgr . frame .Show ()
2077
+ frame .Show ()
2072
2078
figure .canvas .draw_idle ()
2073
- return figmgr
2079
+ return manager
2074
2080
2075
2081
@staticmethod
2076
2082
def mainloop ():
0 commit comments