22QTextLayout textLayout(text, font);
24qreal radius = qMin(width()/2.0, height()/2.0) - margin;
27qreal lineHeight = fm.height();
30textLayout.beginLayout();
34 QTextLine line = textLayout.createLine();
38 qreal x1 = qMax(0.0, pow(pow(radius,2)-pow(radius-y,2), 0.5));
39 qreal x2 = qMax(0.0, pow(pow(radius,2)-pow(radius-(y+lineHeight),2), 0.5));
40 qreal x = qMax(x1, x2) + margin;
41 qreal lineWidth = (width() - margin) - x;
43 line.setLineWidth(lineWidth);
44 line.setPosition(QPointF(x, margin+y));
48textLayout.endLayout();
52painter.setRenderHint(QPainter::Antialiasing);
53painter.fillRect(rect(), Qt::white);
54painter.setBrush(QBrush(Qt::black));
55painter.setPen(QPen(Qt::black));
56textLayout.draw(&painter, QPoint(0,0));
58painter.setBrush(QBrush(QColor(
"#a6ce39")));
59painter.setPen(QPen(Qt::black));
60painter.drawEllipse(QRectF(-radius, margin, 2*radius, 2*radius));