+@@ -235,14 +235,27 @@ class AttributeParser:
+ self.guiObject.setZPosition(int(value))
+ def itemHeight(self, value):
+ self.guiObject.setItemHeight(int(value))
++
++ def getPixmapPtr(self, value):
++ global pngcache
++ ptr = None
++ for cvalue, cptr in pngcache:
++ if cvalue == value:
++ ptr = cptr
++
++ if ptr is None:
++ ptr = loadPixmap(value, self.desktop)
++
++ return ptr
++
+ def pixmap(self, value):
+- ptr = loadPixmap(value, self.desktop)
++ ptr = self.getPixmapPtr(value)
+ self.guiObject.setPixmap(ptr)
+ def backgroundPixmap(self, value):
+- ptr = loadPixmap(value, self.desktop)
++ ptr = self.getPixmapPtr(value)
+ self.guiObject.setBackgroundPicture(ptr)
+ def selectionPixmap(self, value):
+- ptr = loadPixmap(value, self.desktop)
++ ptr = self.getPixmapPtr(value)
+ self.guiObject.setSelectionPicture(ptr)
+ def itemHeight(self, value):
+ self.guiObject.setItemHeight(int(value))
+@@ -336,6 +349,34 @@ class AttributeParser:
+ def id(self, value):
+ pass