@@ -316,6 +316,7 @@ def set_transform(self, t):
316
316
self ._transform = t
317
317
self ._transformSet = True
318
318
self .pchanged ()
319
+ self .stale = True
319
320
320
321
def get_transform (self ):
321
322
"""
@@ -532,6 +533,7 @@ def set_snap(self, snap):
532
533
Only supported by the Agg and MacOSX backends.
533
534
"""
534
535
self ._snap = snap
536
+ self .stale = True
535
537
536
538
def get_sketch_params (self ):
537
539
"""
@@ -579,13 +581,15 @@ def set_sketch_params(self, scale=None, length=None, randomness=None):
579
581
self ._sketch = None
580
582
else :
581
583
self ._sketch = (scale , length or 128.0 , randomness or 16.0 )
584
+ self .stale = True
582
585
583
586
def set_path_effects (self , path_effects ):
584
587
"""
585
588
set path_effects, which should be a list of instances of
586
589
matplotlib.patheffect._Base class or its derivatives.
587
590
"""
588
591
self ._path_effects = path_effects
592
+ self .stale = True
589
593
590
594
def get_path_effects (self ):
591
595
return self ._path_effects
@@ -608,6 +612,7 @@ def set_figure(self, fig):
608
612
if self .figure and self .figure is not self :
609
613
self .add_callback (_stale_figure_callback )
610
614
self .pchanged ()
615
+ self .stale = True
611
616
612
617
def set_clip_box (self , clipbox ):
613
618
"""
@@ -617,6 +622,7 @@ def set_clip_box(self, clipbox):
617
622
"""
618
623
self .clipbox = clipbox
619
624
self .pchanged ()
625
+ self .stale = True
620
626
621
627
def set_clip_path (self , path , transform = None ):
622
628
"""
@@ -669,8 +675,10 @@ def set_clip_path(self, path, transform=None):
669
675
if not success :
670
676
print (type (path ), type (transform ))
671
677
raise TypeError ("Invalid arguments to set_clip_path" )
672
-
678
+ # this may result in the callbacks being hit twice, but grantees they
679
+ # will be hit at least once
673
680
self .pchanged ()
681
+ self .stale = True
674
682
675
683
def get_alpha (self ):
676
684
"""
@@ -719,7 +727,10 @@ def set_clip_on(self, b):
719
727
ACCEPTS: [True | False]
720
728
"""
721
729
self ._clipon = b
730
+ # This may result in the callbacks being hit twice, but ensures they
731
+ # are hit at least once
722
732
self .pchanged ()
733
+ self .stale = True
723
734
724
735
def _set_gc_clip (self , gc ):
725
736
'Set the clip properly for the gc'
@@ -758,12 +769,13 @@ def set_agg_filter(self, filter_func):
758
769
759
770
"""
760
771
self ._agg_filter = filter_func
772
+ self .stale = True
761
773
762
774
def draw (self , renderer , * args , ** kwargs ):
763
775
'Derived classes drawing method'
764
776
if not self .get_visible ():
765
777
return
766
- self ._stale = False
778
+ self .stale = False
767
779
768
780
def set_alpha (self , alpha ):
769
781
"""
@@ -774,6 +786,7 @@ def set_alpha(self, alpha):
774
786
"""
775
787
self ._alpha = alpha
776
788
self .pchanged ()
789
+ self .stale = True
777
790
778
791
def set_visible (self , b ):
779
792
"""
@@ -783,6 +796,7 @@ def set_visible(self, b):
783
796
"""
784
797
self ._visible = b
785
798
self .pchanged ()
799
+ self .stale = True
786
800
787
801
def set_animated (self , b ):
788
802
"""
@@ -792,6 +806,7 @@ def set_animated(self, b):
792
806
"""
793
807
self ._animated = b
794
808
self .pchanged ()
809
+ self .stale = True
795
810
796
811
def update (self , props ):
797
812
"""
@@ -814,6 +829,7 @@ def update(self, props):
814
829
self .eventson = store
815
830
if changed :
816
831
self .pchanged ()
832
+ self .stale = True
817
833
818
834
def get_label (self ):
819
835
"""
@@ -832,6 +848,7 @@ def set_label(self, s):
832
848
else :
833
849
self ._label = None
834
850
self .pchanged ()
851
+ self .stale = True
835
852
836
853
def get_zorder (self ):
837
854
"""
@@ -848,6 +865,7 @@ def set_zorder(self, level):
848
865
"""
849
866
self .zorder = level
850
867
self .pchanged ()
868
+ self .stale = True
851
869
852
870
def update_from (self , other ):
853
871
'Copy properties from *other* to *self*.'
@@ -862,6 +880,7 @@ def update_from(self, other):
862
880
self ._sketch = other ._sketch
863
881
self ._path_effects = other ._path_effects
864
882
self .pchanged ()
883
+ self .stale = True
865
884
866
885
def properties (self ):
867
886
"""
0 commit comments