From f5435b7798bc46e6585a1b913358af574628b2ce Mon Sep 17 00:00:00 2001
From: Luke Campagnola <luke.campagnola@gmail.com>
Date: Sat, 1 Jun 2013 07:54:55 -0400
Subject: [PATCH] Fixed ScatterPlotItem.renderSymbol device argument

---
 pyqtgraph/graphicsItems/ScatterPlotItem.py | 20 ++++++--------------
 1 file changed, 6 insertions(+), 14 deletions(-)

diff --git a/pyqtgraph/graphicsItems/ScatterPlotItem.py b/pyqtgraph/graphicsItems/ScatterPlotItem.py
index 29bfeaac..bec6a318 100644
--- a/pyqtgraph/graphicsItems/ScatterPlotItem.py
+++ b/pyqtgraph/graphicsItems/ScatterPlotItem.py
@@ -53,25 +53,17 @@ def renderSymbol(symbol, size, pen, brush, device=None):
     the symbol will be rendered into the device specified (See QPainter documentation 
     for more information).
     """
-    ## see if this pixmap is already cached
-    #global SymbolPixmapCache
-    #key = (symbol, size, fn.colorTuple(pen.color()), pen.width(), pen.style(), fn.colorTuple(brush.color()))
-    #if key in SymbolPixmapCache:
-        #return SymbolPixmapCache[key]
-        
     ## Render a spot with the given parameters to a pixmap
     penPxWidth = max(np.ceil(pen.widthF()), 1)
-    image = QtGui.QImage(int(size+penPxWidth), int(size+penPxWidth), QtGui.QImage.Format_ARGB32)
-    image.fill(0)
-    p = QtGui.QPainter(image)
+    if device is None:
+        device = QtGui.QImage(int(size+penPxWidth), int(size+penPxWidth), QtGui.QImage.Format_ARGB32)
+        device.fill(0)
+    p = QtGui.QPainter(device)
     p.setRenderHint(p.Antialiasing)
-    p.translate(image.width()*0.5, image.height()*0.5)
+    p.translate(device.width()*0.5, device.height()*0.5)
     drawSymbol(p, symbol, size, pen, brush)
     p.end()
-    return image
-    #pixmap = QtGui.QPixmap(image)
-    #SymbolPixmapCache[key] = pixmap
-    #return pixmap
+    return device
 
 def makeSymbolPixmap(size, pen, brush, symbol):
     ## deprecated
-- 
GitLab