void NorwegianWoodStyle::polish(QPalette &palette)
{
    QColor brown(212, 140, 95);
    QColor beige(212, 140, 95);
    QColor slightlyOpaqueBlack(0, 0, 0, 63);
    
    QPixmap backgroundIamge(":/images/woodbackground.png");
    QPixmap buttonImage(":/images/woodbutton.png");
    QPixmap midImage = buttonImage;
    
    QPainter painter;
    painter.begin(&midImage);
    painter.setPen(Qt::NoPen);
    painter.fillRect(midImage.rect(), slightlyOpaqueBlack);
    painter.end();

    palette = QPalette(brown);
    
    palette.setBrush(QPalette::BrightText, Qt::white);
    palette.setBrush(QPalette::Base, beige);
    palette.setBrush(QPalette::Highlight, Qt::darkGreen);
    setTexture(palette, QPalette::Button, buttonImage); 
    setTexture(palette, QPalette::Mid, midImage); 
    setTexture(palette, QPalette::Window, backgroundIamge); 

    QBrush brush = palette.background();
    brush.setColor(brush.color().dark());

    palette.setBrush(QPalette::Disabled, QPalette::WindowText, brush);
    palette.setBrush(QPalette::Disabled, QPalette::Text, brush);
    palette.setBrush(QPalette::Disabled, QPalette::ButtonText, brush);
    palette.setBrush(QPalette::Disabled, QPalette::Base, brush);
    palette.setBrush(QPalette::Disabled, QPalette::Button, brush);
    palette.setBrush(QPalette::Disabled, QPalette::Mid, brush);
}
示例#2
0
文件: skin.cpp 项目: 0x1997/yakuake
const QString Skin::buttonStyleSheet(const QString& up, const QString& over, const QString& down)
{
    QString styleSheet;

    QString borderBit(QStringLiteral("border: none;"));

    QPixmap buttonImage(up);
    QString w(QString::number(buttonImage.width()));
    QString h(QString::number(buttonImage.height()));

    QString sizeBit(QStringLiteral("min-width:") + w + QStringLiteral("; min-height:") + h
        + QStringLiteral("; max-width:") + w + QStringLiteral("; max-height:") + h + QStringLiteral(";"));

    styleSheet.append(QStringLiteral("QPushButton {") + borderBit + QStringLiteral("image:url(")
        + up + QStringLiteral(");") + sizeBit + QStringLiteral("}"));
    styleSheet.append(QStringLiteral("QPushButton::hover {") + borderBit + QStringLiteral("image:url(")
        + over + QStringLiteral(");") + sizeBit + QStringLiteral("}"));
    styleSheet.append(QStringLiteral("QPushButton::pressed {") + borderBit + QStringLiteral("image:url(")
        + down + QStringLiteral(");") + sizeBit + QStringLiteral("}"));
    styleSheet.append(QStringLiteral("QPushButton::checked {") + borderBit + QStringLiteral("image:url(")
        + down + QStringLiteral(");") + sizeBit + QStringLiteral("}"));
    styleSheet.append(QStringLiteral("QPushButton::open {") + borderBit + QStringLiteral("image:url(")
        + down + QStringLiteral(");") + sizeBit + QStringLiteral("}"));
    styleSheet.append(QStringLiteral("QPushButton::menu-indicator { left: ") + w + QStringLiteral(" }"));

    styleSheet.append(QStringLiteral("QToolButton {") + borderBit + QStringLiteral("image:url(")
        + up + QStringLiteral(");") + sizeBit + QStringLiteral("}"));
    styleSheet.append(QStringLiteral("QToolButton::hover {") + borderBit + QStringLiteral("image:url(")
        + over + QStringLiteral(");") + sizeBit + QStringLiteral("}"));
    styleSheet.append(QStringLiteral("QToolButton::pressed {") + borderBit + QStringLiteral("image:url(")
        + down + QStringLiteral(");") + sizeBit + QStringLiteral("}"));
    styleSheet.append(QStringLiteral("QToolButton::checked {") + borderBit + QStringLiteral("image:url(")
        + down + QStringLiteral(");") + sizeBit + QStringLiteral("}"));
    styleSheet.append(QStringLiteral("QToolButton::open {") + borderBit + QStringLiteral("image:url(")
        + down + QStringLiteral(");") + sizeBit + QStringLiteral("}"));
    styleSheet.append(QStringLiteral("QToolButton::menu-indicator { left: ") + w + QStringLiteral(" }"));

    return styleSheet;
}