From efec3bcca5a2e6491c27490951ded20323869bd6 Mon Sep 17 00:00:00 2001 From: Metallicow Date: Mon, 19 Oct 2020 03:32:58 -0500 Subject: [PATCH 1/3] Reduce flicker in svg demos --- demo/SVGImage_Bitmap.py | 2 ++ demo/SVGImage_Render.py | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/demo/SVGImage_Bitmap.py b/demo/SVGImage_Bitmap.py index ef119b7a..5284291d 100644 --- a/demo/SVGImage_Bitmap.py +++ b/demo/SVGImage_Bitmap.py @@ -21,6 +21,8 @@ class SVGBitmapDisplay(wx.Panel): sbox = wx.StaticBoxSizer(wx.VERTICAL, self, label) sbox.Add(self.statbmp) self.SetSizer(sbox) + if not self.IsDoubleBuffered(): + self.SetDoubleBuffered(True) # Reduce flicker on size event. def UpdateSVG(self, svg_filename): diff --git a/demo/SVGImage_Render.py b/demo/SVGImage_Render.py index 7cafa55f..579eb5f2 100644 --- a/demo/SVGImage_Render.py +++ b/demo/SVGImage_Render.py @@ -33,7 +33,7 @@ class SVGRenderPanel(wx.Panel): def OnPaint(self, event): - dc = wx.PaintDC(self) + dc = wx.BufferedPaintDC(self) dc.Clear() iw, ih = (self._img.width, self._img.height) if self._img else (100,100) From 18ceaeadd7b53fe3306f27064310a79a9016bcff Mon Sep 17 00:00:00 2001 From: Metallicow Date: Mon, 19 Oct 2020 04:09:04 -0500 Subject: [PATCH 2/3] Reduce flicker of overlay, since throbber can be composed of svg bitmaps --- wx/lib/throbber.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wx/lib/throbber.py b/wx/lib/throbber.py index f74873f7..9954d6b2 100644 --- a/wx/lib/throbber.py +++ b/wx/lib/throbber.py @@ -214,7 +214,7 @@ class Throbber(wx.Panel): :param `event`: a :class:`PaintEvent` event to be processed. """ - self.Draw(wx.PaintDC(self)) + self.Draw(wx.BufferedPaintDC(self)) event.Skip() From 7a637d862d082adaa579e888a259fd6dcc50d8c3 Mon Sep 17 00:00:00 2001 From: Metallicow Date: Tue, 27 Oct 2020 18:58:20 -0500 Subject: [PATCH 3/3] Revert "Reduce flicker of overlay, since throbber can be composed of svg bitmaps" This reverts commit 18ceaeadd7b53fe3306f27064310a79a9016bcff. --- wx/lib/throbber.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wx/lib/throbber.py b/wx/lib/throbber.py index 9954d6b2..f74873f7 100644 --- a/wx/lib/throbber.py +++ b/wx/lib/throbber.py @@ -214,7 +214,7 @@ class Throbber(wx.Panel): :param `event`: a :class:`PaintEvent` event to be processed. """ - self.Draw(wx.BufferedPaintDC(self)) + self.Draw(wx.PaintDC(self)) event.Skip()