@@ -813,16 +813,19 @@ def matplotlib_fname():
813
813
return fname
814
814
815
815
816
+ # names of keys to deprecate
817
+ # the values are a tuple of (new_name, f_old_2_new, f_new_2_old)
818
+ # the inverse function may be `None`
816
819
_deprecated_map = {
817
- 'text.fontstyle' : ('font.style' , lambda x : x ),
818
- 'text.fontangle' : ('font.style' , lambda x : x ),
819
- 'text.fontvariant' : ('font.variant' , lambda x : x ),
820
- 'text.fontweight' : ('font.weight' , lambda x : x ),
821
- 'text.fontsize' : ('font.size' , lambda x : x ),
822
- 'tick.size' : ('tick.major.size' , lambda x : x ),
820
+ 'text.fontstyle' : ('font.style' , lambda x : x , None ),
821
+ 'text.fontangle' : ('font.style' , lambda x : x , None ),
822
+ 'text.fontvariant' : ('font.variant' , lambda x : x , None ),
823
+ 'text.fontweight' : ('font.weight' , lambda x : x , None ),
824
+ 'text.fontsize' : ('font.size' , lambda x : x , None ),
825
+ 'tick.size' : ('tick.major.size' , lambda x : x , None ),
823
826
'svg.embed_char_paths' : ('svg.fonttype' ,
824
- lambda x : "path" if x else "none" ),
825
- 'savefig.extension' : ('savefig.format' , lambda x : x ),
827
+ lambda x : "path" if x else "none" , None ),
828
+ 'savefig.extension' : ('savefig.format' , lambda x : x , None ),
826
829
}
827
830
828
831
_deprecated_ignore_map = {
@@ -856,7 +859,7 @@ def __init__(self, *args, **kwargs):
856
859
def __setitem__ (self , key , val ):
857
860
try :
858
861
if key in _deprecated_map :
859
- alt_key , alt_val = _deprecated_map [key ]
862
+ alt_key , alt_val , inverse_alt = _deprecated_map [key ]
860
863
warnings .warn (self .msg_depr % (key , alt_key ))
861
864
key = alt_key
862
865
val = alt_val (val )
@@ -874,15 +877,22 @@ def __setitem__(self, key, val):
874
877
See rcParams.keys() for a list of valid parameters.' % (key ,))
875
878
876
879
def __getitem__ (self , key ):
880
+ inverse_alt = None
877
881
if key in _deprecated_map :
878
- alt_key , alt_val = _deprecated_map [key ]
882
+ alt_key , alt_val , inverse_alt = _deprecated_map [key ]
879
883
warnings .warn (self .msg_depr % (key , alt_key ))
880
884
key = alt_key
885
+
881
886
elif key in _deprecated_ignore_map :
882
887
alt = _deprecated_ignore_map [key ]
883
888
warnings .warn (self .msg_depr_ignore % (key , alt ))
884
889
key = alt
885
- return dict .__getitem__ (self , key )
890
+
891
+ val = dict .__getitem__ (self , key )
892
+ if inverse_alt is not None :
893
+ return inverse_alt (val )
894
+ else :
895
+ return val
886
896
887
897
# http://stackoverflow.com/questions/2390827
888
898
# (how-to-properly-subclass-dict-and-override-get-set)
0 commit comments