Diffstat (limited to 'noncore/multimedia/opieplayer2/mediawidget.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/multimedia/opieplayer2/mediawidget.cpp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/noncore/multimedia/opieplayer2/mediawidget.cpp b/noncore/multimedia/opieplayer2/mediawidget.cpp index f977b61..3a44185 100644 --- a/noncore/multimedia/opieplayer2/mediawidget.cpp +++ b/noncore/multimedia/opieplayer2/mediawidget.cpp @@ -46,2 +46,30 @@ void MediaWidget::closeEvent( QCloseEvent * ) +void MediaWidget::paintEvent( QPaintEvent *pe ) +{ + QPainter p( this ); + + if ( mediaPlayerState.isFullscreen() ) { + // Clear the background + p.setBrush( QBrush( Qt::black ) ); + return; + } + + if ( !pe->erased() ) { + // Combine with background and double buffer + QPixmap pix( pe->rect().size() ); + QPainter p( &pix ); + p.translate( -pe->rect().topLeft().x(), -pe->rect().topLeft().y() ); + p.drawTiledPixmap( pe->rect(), backgroundPixmap, pe->rect().topLeft() ); + for ( unsigned int i = 0; i < buttons.count(); i++ ) { + paintButton( p, buttons[ i ] ); + } + QPainter p2( this ); + p2.drawPixmap( pe->rect().topLeft(), pix ); + } else { + QPainter p( this ); + for ( unsigned int i = 0; i < buttons.count(); i++ ) + paintButton( p, buttons[ i ] ); + } +} + void MediaWidget::handleCommand( Command command, bool buttonDown ) |