1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| void colorPicker::render(const QColor & color)
{
const int DEB = 0;
// gradient horizontal (blanc=>coul)
QLinearGradient gradient(QPointF(DEB, DEB), QPointF(255, DEB));
gradient.setColorAt(0, Qt::white);
gradient.setColorAt(1, color);
// gradient vertical (transparent=>noir)
QLinearGradient gradient2(QPointF(DEB, DEB), QPointF(DEB, 255));
gradient2.setColorAt(0, Qt::transparent);
gradient2.setColorAt(1, Qt::black);
// dessin des deux gradients supperposés
QPainter p(&m_image);
p.setCompositionMode(QPainter::CompositionMode_SourceOver);
p.fillRect(QRect(0,0,256,256), gradient);
p.fillRect(QRect(0,0,256,256), gradient2);
} |
Partager