summaryrefslogtreecommitdiff
path: root/noncore/multimedia
authorsimon <simon>2002-12-11 13:46:15 (UTC)
committer simon <simon>2002-12-11 13:46:15 (UTC)
commit2b3c450378c1da0a2175c91d652ce2eae5614ff8 (patch) (side-by-side diff)
tree4c11c70dbf487725f6e443f5db4c5a0a0c964e61 /noncore/multimedia
parentcd5e96b40ceae9158e5cb01e71769e895ea7a3c1 (diff)
downloadopie-2b3c450378c1da0a2175c91d652ce2eae5614ff8.zip
opie-2b3c450378c1da0a2175c91d652ce2eae5614ff8.tar.gz
opie-2b3c450378c1da0a2175c91d652ce2eae5614ff8.tar.bz2
- less code duplication. code from resizeEvent is now shared as well as
the image composing method and the pixmap mask helper
Diffstat (limited to 'noncore/multimedia') (more/less context) (show whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/audiowidget.cpp13
-rw-r--r--noncore/multimedia/opieplayer2/mediawidget.cpp33
-rw-r--r--noncore/multimedia/opieplayer2/mediawidget.h5
-rw-r--r--noncore/multimedia/opieplayer2/videowidget.cpp32
4 files changed, 42 insertions, 41 deletions
diff --git a/noncore/multimedia/opieplayer2/audiowidget.cpp b/noncore/multimedia/opieplayer2/audiowidget.cpp
index bb686f1..bb07882 100644
--- a/noncore/multimedia/opieplayer2/audiowidget.cpp
+++ b/noncore/multimedia/opieplayer2/audiowidget.cpp
@@ -127,35 +127,26 @@ QPixmap maskPixToMask( QPixmap pix, QBitmap mask ) {
pixmap.setMask( mask );
return pixmap;
}
};
-void AudioWidget::resizeEvent( QResizeEvent * ) {
+void AudioWidget::resizeEvent( QResizeEvent *e ) {
int h = height();
int w = width();
songInfo.setGeometry( QRect( 2, 2, w - 4, 20 ) );
slider.setFixedWidth( w - 110 );
slider.setGeometry( QRect( 15, h - 22, w - 90, 20 ) );
slider.setBackgroundOrigin( QWidget::ParentOrigin );
time.setGeometry( QRect( w - 85, h - 30, 70, 20 ) );
upperLeftOfButtonMask.rx() = ( w - buttonUpImage.width() ) / 2;
upperLeftOfButtonMask.ry() = (( h - buttonUpImage.height() ) / 2) - 10;
- QPoint p = upperLeftOfButtonMask;
- QPixmap pixUp = combineImageWithBackground( buttonUpImage, backgroundPixmap, p );
- QPixmap pixDn = combineImageWithBackground( buttonDownImage, backgroundPixmap, p );
-
- for ( uint i = 0; i < buttons.size(); i++ ) {
- if ( !buttons[i].mask.isNull() ) {
- buttons[i].pixUp = maskPixToMask( pixUp, buttons[i].mask );
- buttons[i].pixDown = maskPixToMask( pixDn, buttons[i].mask );
- }
- }
+ MediaWidget::resizeEvent( e );
}
void AudioWidget::sliderPressed() {
audioSliderBeingMoved = TRUE;
}
diff --git a/noncore/multimedia/opieplayer2/mediawidget.cpp b/noncore/multimedia/opieplayer2/mediawidget.cpp
index ab23aa8..ab2ec50 100644
--- a/noncore/multimedia/opieplayer2/mediawidget.cpp
+++ b/noncore/multimedia/opieplayer2/mediawidget.cpp
@@ -106,12 +106,29 @@ void MediaWidget::paintEvent( QPaintEvent *pe )
} else {
QPainter p( this );
paintAllButtons( p );
}
}
+void MediaWidget::resizeEvent( QResizeEvent *e )
+{
+ QPixmap pixUp = combineImageWithBackground( buttonUpImage, backgroundPixmap, upperLeftOfButtonMask );
+ QPixmap pixDn = combineImageWithBackground( buttonDownImage, backgroundPixmap, upperLeftOfButtonMask );
+
+ for ( ButtonVector::iterator it = buttons.begin(); it != buttons.end(); ++it ) {
+ Button &button = *it;
+
+ if ( button.mask.isNull() )
+ continue;
+ button.pixUp = addMaskToPixmap( pixUp, button.mask );
+ button.pixDown = addMaskToPixmap( pixDn, button.mask );
+ }
+
+ QWidget::resizeEvent( e );
+}
+
MediaWidget::Button *MediaWidget::buttonAt( const QPoint &position )
{
if ( position.x() <= 0 || position.y() <= 0 ||
position.x() >= buttonMask.width() ||
position.y() >= buttonMask.height() )
return 0;
@@ -227,8 +244,24 @@ void MediaWidget::toggleButton( Button &button )
{
button.isDown = !button.isDown;
paintButton( button );
}
+QPixmap MediaWidget::combineImageWithBackground( const QImage &image, const QPixmap &background, const QPoint &offset )
+{
+ QPixmap pix( image.size() );
+ QPainter p( &pix );
+ p.drawTiledPixmap( pix.rect(), background, offset );
+ p.drawImage( 0, 0, image );
+ return pix;
+}
+
+QPixmap MediaWidget::addMaskToPixmap( const QPixmap &pix, const QBitmap &mask )
+{
+ QPixmap result( pix );
+ result.setMask( mask );
+ return result;
+}
+
/* vim: et sw=4 ts=4
*/
diff --git a/noncore/multimedia/opieplayer2/mediawidget.h b/noncore/multimedia/opieplayer2/mediawidget.h
index 9f13677..4599637 100644
--- a/noncore/multimedia/opieplayer2/mediawidget.h
+++ b/noncore/multimedia/opieplayer2/mediawidget.h
@@ -109,12 +109,14 @@ protected:
void loadSkin( const SkinButtonInfo *skinInfo, uint buttonCount, const Skin &skin );
virtual void closeEvent( QCloseEvent * );
virtual void paintEvent( QPaintEvent *pe );
+ virtual void resizeEvent( QResizeEvent *e );
+
Button *buttonAt( const QPoint &position );
virtual void mousePressEvent( QMouseEvent *event );
virtual void mouseReleaseEvent( QMouseEvent *event );
virtual void makeVisible();
@@ -140,11 +142,14 @@ protected:
QPoint upperLeftOfButtonMask;
QPixmap backgroundPixmap;
QImage buttonUpImage;
QImage buttonDownImage;
+
+ static QPixmap combineImageWithBackground( const QImage &background, const QPixmap &pixmap, const QPoint &offset );
+ static QPixmap addMaskToPixmap( const QPixmap &pix, const QBitmap &mask );
};
#endif // MEDIAWIDGET_H
/* vim: et sw=4 ts=4
*/
diff --git a/noncore/multimedia/opieplayer2/videowidget.cpp b/noncore/multimedia/opieplayer2/videowidget.cpp
index bc47717..a8ff540 100644
--- a/noncore/multimedia/opieplayer2/videowidget.cpp
+++ b/noncore/multimedia/opieplayer2/videowidget.cpp
@@ -96,27 +96,13 @@ VideoWidget::VideoWidget( PlayListWidget &playList, MediaPlayerState &mediaPlaye
VideoWidget::~VideoWidget()
{
}
-QPixmap *combineVImageWithBackground( QImage img, QPixmap bg, QPoint offset ) {
- QPixmap pix( img.width(), img.height() );
- QPainter p( &pix );
- p.drawTiledPixmap( pix.rect(), bg, offset );
- p.drawImage( 0, 0, img );
- return new QPixmap( pix );
-}
-
-QPixmap maskVPixToMask( QPixmap pix, QBitmap mask ) {
- QPixmap pixmap( pix );
- pixmap.setMask( mask );
- return pixmap;
-}
-
-void VideoWidget::resizeEvent( QResizeEvent * ) {
+void VideoWidget::resizeEvent( QResizeEvent *e ) {
int h = height();
int w = width();
//int Vh = 160;
//int Vw = 220;
slider->setFixedWidth( w - 20 );
@@ -127,28 +113,14 @@ void VideoWidget::resizeEvent( QResizeEvent * ) {
upperLeftOfButtonMask.rx() = 0;// ( imgUp->width() ) / 2;
if(w>h)
upperLeftOfButtonMask.ry() = 0;
else
upperLeftOfButtonMask.ry() = 185;//(( Vh - imgUp->height() ) / 2) - 10;
- QPoint p = upperLeftOfButtonMask;
-
- QPixmap *pixUp = combineVImageWithBackground( buttonUpImage, backgroundPixmap, p );
- QPixmap *pixDn = combineVImageWithBackground( buttonDownImage, backgroundPixmap, p );
-
- for ( ButtonVector::iterator it = buttons.begin(); it != buttons.end(); ++it ) {
- Button &button = *it;
-
- if ( !button.mask.isNull() ) {
- button.pixUp = maskVPixToMask( *pixUp, button.mask );
- button.pixDown = maskVPixToMask( *pixDn, button.mask );
- }
- }
- delete pixUp;
- delete pixDn;
+ MediaWidget::resizeEvent( e );
}
void VideoWidget::sliderPressed() {
videoSliderBeingMoved = TRUE;
}