def paint(self, painter, options, widget): angleSpan = 0 angle = 0 index = 0 sumValues = self.parentItem().sumValues if sumValues == 0: return for item in self.parentItem().children(): angleSpan = (360.0 * item.value) / sumValues if item == self: break else: angle += angleSpan index += 1 color = QColor.fromHslF(0.1 * index, 1.0, 0.5, 1.0) pen = QPen(color) brush = QBrush(color) painter.setPen(pen) painter.setBrush(brush) painter.setRenderHints(QPainter.Antialiasing, True) painter.drawPie(self.boundingRect(), angle * 16, angleSpan * 16);
def setUp(self): self.original = QColor.fromHslF(0.2, 0.3, 0.4, 0.5)
def testReduceHsl(self): self.reduceColor(QColor.fromHslF(0.1, 0.2, 0.3, 0.4))