Exemplo n.º 1
0
    def paintEvent(self, event):
        painter = QPainter(self.viewport())

        view_rect = self._translate(event.rect())
        if view_rect.y() < 0:
            rect = QRect()
            rect.setHeight(self.viewport().height() + view_rect.y())
            rect.setWidth(self.viewport().width())

            brush = self.palette().brush(QPalette.Disabled, QPalette.Window)
            painter.fillRect(rect, brush)

        for index in self._intersecting_rows(view_rect):
            option = self._style_option(index)
            delegate = self.itemDelegate(index)
            delegate.paint(painter, option, index)
Exemplo n.º 2
0
    def draw(self, painter, xMap, yMap, rect):
        margin = 5
        pieRect = QRect()
        pieRect.setX(rect.x() + margin)
        pieRect.setY(rect.y() + margin)
        pieRect.setHeight(int(yMap.transform(80.0)))
        pieRect.setWidth(pieRect.height())

        angle = 3 * 5760 / 4
        for key in ["User", "System", "Idle"]:
            curve = self.plot().cpuPlotCurve(key)
            if curve.dataSize():
                value = int(5760 * curve.sample(0).y() / 100.0)
                painter.save()
                painter.setBrush(QBrush(curve.pen().color(), Qt.SolidPattern))
                painter.drawPie(pieRect, int(-angle), int(-value))
                painter.restore()
                angle += value