mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-03-20 07:49:42 +01:00
Bring nicer widget header gradient to Master
This commit is contained in:
parent
c3caf6a6ec
commit
eda6ab9df5
@ -26,14 +26,14 @@
|
||||
QColor
|
||||
StyleHelper::headerUpperColor()
|
||||
{
|
||||
return QColor( "#615858" );
|
||||
return QColor( "#25292c" );
|
||||
}
|
||||
|
||||
|
||||
QColor
|
||||
StyleHelper::headerLowerColor()
|
||||
{
|
||||
return QColor( "#231F1F" );
|
||||
return QColor( "#707070" );
|
||||
}
|
||||
|
||||
|
||||
@ -48,32 +48,32 @@ void
|
||||
StyleHelper::horizontalHeader( QPainter* painter, const QRect& r )
|
||||
{
|
||||
painter->save();
|
||||
|
||||
/* QRect upperHalf( 0, 0, r.width(), r.height() / 2 );
|
||||
QRect lowerHalf( 0, upperHalf.height(), r.width(), r.height() );
|
||||
painter->fillRect( upperHalf, StyleHelper::headerUpperColor() );
|
||||
painter->fillRect( lowerHalf, StyleHelper::headerLowerColor() );*/
|
||||
|
||||
/* QRect upperHalf( 0, 0, r.width(), r.height() / 2 );
|
||||
QRect lowerHalf( 0, upperHalf.height(), r.width(), r.height() );
|
||||
painter->fillRect( upperHalf, StyleHelper::headerUpperColor() );
|
||||
painter->fillRect( lowerHalf, StyleHelper::headerLowerColor() );*/
|
||||
QLinearGradient gradient( QPoint( 0, 0 ), QPoint( 0, 1 ) );
|
||||
gradient.setCoordinateMode( QGradient::ObjectBoundingMode );
|
||||
gradient.setColorAt( 0.0, StyleHelper::headerLowerColor() );
|
||||
gradient.setColorAt( 1.0, StyleHelper::headerUpperColor() );
|
||||
|
||||
|
||||
painter->setBrush( gradient );
|
||||
painter->fillRect( r, gradient );
|
||||
|
||||
/* {
|
||||
QColor lineColor( 100, 100, 100 );
|
||||
QLine line( 0, 0, r.width(), 0 );
|
||||
painter->setPen( lineColor );
|
||||
painter->drawLine( line );
|
||||
}
|
||||
{
|
||||
QColor lineColor( 30, 30, 30 );
|
||||
QLine line( 0, r.height() - 1, r.width(), r.height() - 1 );
|
||||
painter->setPen( lineColor );
|
||||
painter->drawLine( line );
|
||||
}*/
|
||||
|
||||
|
||||
/* {
|
||||
QColor lineColor( 100, 100, 100 );
|
||||
QLine line( 0, 0, r.width(), 0 );
|
||||
painter->setPen( lineColor );
|
||||
painter->drawLine( line );
|
||||
}
|
||||
{
|
||||
QColor lineColor( 30, 30, 30 );
|
||||
QLine line( 0, r.height() - 1, r.width(), r.height() - 1 );
|
||||
painter->setPen( lineColor );
|
||||
painter->drawLine( line );
|
||||
}*/
|
||||
|
||||
painter->restore();
|
||||
}
|
||||
|
||||
@ -81,7 +81,7 @@ StyleHelper::horizontalHeader( QPainter* painter, const QRect& r )
|
||||
QColor
|
||||
StyleHelper::headerTextColor()
|
||||
{
|
||||
return Qt::white;
|
||||
return QColor( "#eaeaea" );
|
||||
}
|
||||
|
||||
|
||||
@ -96,62 +96,62 @@ void StyleHelper::drawArrow( QStyle::PrimitiveElement element, QPainter* p, cons
|
||||
{
|
||||
if ( opt->rect.width() <= 1 || opt->rect.height() <= 1 )
|
||||
return;
|
||||
|
||||
|
||||
QRect r = opt->rect;
|
||||
int size = qMin( r.height(), r.width() );
|
||||
QPixmap pixmap;
|
||||
QString pixmapName;
|
||||
|
||||
|
||||
pixmapName.sprintf( "arrow-%s-%d-%d-%d-%lld", "$qt_ia", uint(opt->state), element, size, opt->palette.cacheKey() );
|
||||
if ( !QPixmapCache::find( pixmapName, pixmap ) )
|
||||
{
|
||||
int border = size / 5;
|
||||
int sqsize = 2 * ( size / 2 );
|
||||
|
||||
|
||||
QImage image( sqsize, sqsize, QImage::Format_ARGB32 );
|
||||
image.fill( 0 );
|
||||
QPainter imagePainter( &image );
|
||||
imagePainter.setRenderHint( QPainter::Antialiasing, true );
|
||||
QPolygon a;
|
||||
|
||||
|
||||
switch ( element )
|
||||
{
|
||||
case QStyle::PE_IndicatorArrowUp:
|
||||
a.setPoints( 3, border, sqsize / 2, sqsize / 2, border, sqsize - border, sqsize / 2 );
|
||||
break;
|
||||
|
||||
|
||||
case QStyle::PE_IndicatorArrowDown:
|
||||
a.setPoints( 3, border, sqsize / 2, sqsize / 2, sqsize - border, sqsize - border, sqsize / 2 );
|
||||
break;
|
||||
|
||||
|
||||
case QStyle::PE_IndicatorArrowRight:
|
||||
a.setPoints( 3, sqsize - border, sqsize / 2, sqsize / 2, border, sqsize / 2, sqsize - border );
|
||||
break;
|
||||
|
||||
|
||||
case QStyle::PE_IndicatorArrowLeft:
|
||||
a.setPoints( 3, border, sqsize / 2, sqsize / 2, border, sqsize / 2, sqsize - border );
|
||||
break;
|
||||
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
int bsx = 0;
|
||||
int bsy = 0;
|
||||
|
||||
|
||||
if ( opt->state & QStyle::State_Sunken )
|
||||
{
|
||||
bsx = qApp->style()->pixelMetric( QStyle::PM_ButtonShiftHorizontal );
|
||||
bsy = qApp->style()->pixelMetric( QStyle::PM_ButtonShiftVertical );
|
||||
}
|
||||
|
||||
|
||||
QRect bounds = a.boundingRect();
|
||||
int sx = sqsize / 2 - bounds.center().x() - 1;
|
||||
int sy = sqsize / 2 - bounds.center().y() - 1;
|
||||
imagePainter.translate( sx + bsx, sy + bsy );
|
||||
imagePainter.setPen( opt->palette.buttonText().color() );
|
||||
imagePainter.setBrush( opt->palette.buttonText() );
|
||||
|
||||
|
||||
if ( !( opt->state & QStyle::State_Enabled ) )
|
||||
{
|
||||
QColor foreGround( 150, 150, 150, 150 );
|
||||
@ -170,15 +170,15 @@ void StyleHelper::drawArrow( QStyle::PrimitiveElement element, QPainter* p, cons
|
||||
imagePainter.setPen( foreGround );
|
||||
imagePainter.setBrush( foreGround );
|
||||
}
|
||||
|
||||
|
||||
imagePainter.drawPolygon( a );
|
||||
imagePainter.end();
|
||||
|
||||
|
||||
pixmap = QPixmap::fromImage( image );
|
||||
QPixmapCache::insert( pixmapName, pixmap );
|
||||
}
|
||||
|
||||
|
||||
int xOffset = r.x() + ( r.width() - size ) / 2;
|
||||
int yOffset = r.y() + ( r.height() - size ) / 2;
|
||||
p->drawPixmap( xOffset, yOffset, pixmap );
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user