Pin::Pin(QGraphicsItem* parent) : QGraphicsEllipseItem(0, 0, 13, 13, parent), mColor(Pin::Color::NONE), mEnabled(false) { QLinearGradient lgrad(0, 0, 0, 13); lgrad.setColorAt(0.0, QColor(50, 50, 50)); lgrad.setColorAt(1.0, QColor(220, 220, 220)); setPen(QPen(QBrush(lgrad), 1)); setAcceptedMouseButtons(Qt::NoButton); setCursor(Qt::ArrowCursor); }
void MainWindow::paintEvent(QPaintEvent *e) { QPainter painter(this); QLinearGradient lgrad(25,100,150,175); QRadialGradient rgrad(QPoint(100,100),100); QConicalGradient cgrad(QPoint(100,100),100); lgrad.setColorAt(0.0,Qt::red); lgrad.setColorAt(0.5,Qt::green); lgrad.setColorAt(1.0,Qt::blue); QRect rect(10,10,200,200); painter.fillRect(rect,lgrad); painter.fillRect(rect,rgrad); painter.fillRect(rect,cgrad); }
void InDockW::paintEvent(QPaintEvent *) { if (!w) { QPainter p(this); int fullHeight = height() + loseHeight; if (!hasWallpaper) { if (grad1 == grad2) p.fillRect(rect(), grad1); else { QLinearGradient lgrad(width() / 2, 0, width() / 2, fullHeight); lgrad.setColorAt(0.0, grad1); lgrad.setColorAt(0.5, grad2); lgrad.setColorAt(1.0, grad1); p.fillRect(rect(), lgrad); } } if (customPixmap.isNull()) { p.drawPixmap(width() / 2 - qmp2Pixmap.width() / 2, fullHeight / 2 - qmp2Pixmap.height() / 2, qmp2Pixmap); QFont font = p.font(); font.setPointSize(22); font.setItalic(true); p.setFont(font); p.setPen(qmpTxt); p.drawText(0, fullHeight / 2 + qmp2Pixmap.height() / 2, width(), 100, Qt::AlignHCenter | Qt::AlignTop, "QMPlay2"); } else { QPixmap pixmapToDraw; if (customPixmap.width() > width() || customPixmap.height() > fullHeight) pixmapToDraw = customPixmap.scaled(width(), fullHeight, Qt::KeepAspectRatio, Qt::SmoothTransformation); else pixmapToDraw = customPixmap; p.drawPixmap(width() / 2 - pixmapToDraw.width() / 2, fullHeight / 2 - pixmapToDraw.height() / 2, pixmapToDraw); } } }