-rw-r--r-- | noncore/multimedia/opieplayer2/audiowidget.cpp | 7 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/mediawidget.cpp | 3 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/mediawidget.h | 10 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/videowidget.cpp | 16 |
4 files changed, 19 insertions, 17 deletions
diff --git a/noncore/multimedia/opieplayer2/audiowidget.cpp b/noncore/multimedia/opieplayer2/audiowidget.cpp index 714509e..c3e206c 100644 --- a/noncore/multimedia/opieplayer2/audiowidget.cpp +++ b/noncore/multimedia/opieplayer2/audiowidget.cpp @@ -101,12 +101,13 @@ AudioWidget::AudioWidget( PlayListWidget &playList, MediaPlayerState &mediaPlaye buttonMask = QImage( imgUp.width(), imgUp.height(), 8, 255 ); buttonMask.fill( 0 ); for ( uint i = 0; i < buttonCount; i++ ) { Button button; + button.command = skinInfo[ i ].command; button.type = skinInfo[ i ].type; QString filename = QString( QPEApplication::qpeDir() + "/pics/" + skinPath + "/skin_mask_" + skinInfo[i].fileName + ".png" ); button.mask =QBitmap( filename ); if ( !button.mask.isNull() ) { @@ -117,13 +118,13 @@ AudioWidget::AudioWidget( PlayListWidget &playList, MediaPlayerState &mediaPlaye for ( int x = 0; x < imgUp.width(); x++ ) if ( !qRed( imgMask.pixel( x, y ) ) ) line[x] = i + 1; } } - buttons.insert( i, button ); + buttons.push_back( button ); } setBackgroundPixmap( backgroundPixmap ); songInfo.setFocusPolicy( QWidget::NoFocus ); // changeTextColor( &songInfo ); @@ -205,13 +206,13 @@ void AudioWidget::resizeEvent( QResizeEvent * ) { upperLeftOfButtonMask.ry() = (( h - imgUp.height() ) / 2) - 10; QPoint p = upperLeftOfButtonMask; QPixmap pixUp = combineImageWithBackground( imgUp, backgroundPixmap, p ); QPixmap pixDn = combineImageWithBackground( imgDn, backgroundPixmap, p ); - for ( uint i = 0; i < buttons.count(); i++ ) { + 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 ); } } } @@ -331,13 +332,13 @@ void AudioWidget::timerEvent( QTimerEvent * ) { mediaPlayerState.setPosition( mediaPlayerState.position() - 2 ); } } void AudioWidget::mouseMoveEvent( QMouseEvent *event ) { - for ( unsigned int i = 0; i < buttons.count(); i++ ) { + for ( unsigned int i = 0; i < buttons.size(); i++ ) { Button &button = buttons[ i ]; if ( event->state() == QMouseEvent::LeftButton ) { // The test to see if the mouse click is inside the button or not bool isOnButton = isOverButton( event->pos() - upperLeftOfButtonMask, i ); diff --git a/noncore/multimedia/opieplayer2/mediawidget.cpp b/noncore/multimedia/opieplayer2/mediawidget.cpp index 66129c9..7891a7e 100644 --- a/noncore/multimedia/opieplayer2/mediawidget.cpp +++ b/noncore/multimedia/opieplayer2/mediawidget.cpp @@ -79,12 +79,13 @@ void MediaWidget::handleCommand( Command command, bool buttonDown ) case Loop: mediaPlayerState.setLooping( buttonDown ); return; case VolumeUp: emit moreReleased(); return; case VolumeDown: emit lessReleased(); return; case PlayList: mediaPlayerState.setList(); return; case Forward: emit forwardReleased(); return; case Back: emit backReleased(); return; + default: assert( false ); } } bool MediaWidget::isOverButton( const QPoint &position, int buttonId ) const { return ( position.x() > 0 && position.y() > 0 && @@ -92,13 +93,13 @@ bool MediaWidget::isOverButton( const QPoint &position, int buttonId ) const position.y() < buttonMask.height() && buttonMask.pixelIndex( position.x(), position.y() ) == buttonId + 1 ); } void MediaWidget::paintAllButtons( QPainter &p ) { - for ( ButtonMap::ConstIterator it = buttons.begin(); + for ( ButtonVector::const_iterator it = buttons.begin(); it != buttons.end(); ++it ) paintButton( p, *it ); } void MediaWidget::paintButton( const Button &button ) { diff --git a/noncore/multimedia/opieplayer2/mediawidget.h b/noncore/multimedia/opieplayer2/mediawidget.h index 05b7b71..efba6f3 100644 --- a/noncore/multimedia/opieplayer2/mediawidget.h +++ b/noncore/multimedia/opieplayer2/mediawidget.h @@ -32,30 +32,30 @@ #include <vector> class MediaWidget : public QWidget { Q_OBJECT public: - enum Command { Play = 0, Stop, Next, Previous, VolumeUp, VolumeDown, Loop, PlayList, Forward, Back }; + enum Command { Play = 0, Stop, Next, Previous, VolumeUp, VolumeDown, Loop, PlayList, Forward, Back, Undefined }; enum ButtonType { NormalButton, ToggleButton }; struct Button { - Button() : type( NormalButton ), isHeld( false ), isDown( false ) {} + Button() : command( Undefined ), type( NormalButton ), isHeld( false ), isDown( false ) {} + + Command command; ButtonType type : 1; bool isHeld : 1; bool isDown : 1; QBitmap mask; QPixmap pixUp; QPixmap pixDown; }; typedef std::vector<Button> ButtonVector; - // when the transition is done this should be Command -> Button - typedef QMap<int, Button> ButtonMap; struct SkinButtonInfo { Command command; const char *fileName; ButtonType type; @@ -94,13 +94,13 @@ protected: void setToggleButton( Button &button, bool down ); void toggleButton( Button &button ); MediaPlayerState &mediaPlayerState; PlayListWidget &playList; - ButtonMap buttons; + ButtonVector buttons; QImage buttonMask; QPoint upperLeftOfButtonMask; QPixmap backgroundPixmap; diff --git a/noncore/multimedia/opieplayer2/videowidget.cpp b/noncore/multimedia/opieplayer2/videowidget.cpp index 9782b68..f59772e 100644 --- a/noncore/multimedia/opieplayer2/videowidget.cpp +++ b/noncore/multimedia/opieplayer2/videowidget.cpp @@ -71,19 +71,19 @@ VideoWidget::VideoWidget( PlayListWidget &playList, MediaPlayerState &mediaPlaye setCaption( tr("OpiePlayer - Video") ); Button defaultButton; Button toggleButton = defaultButton; toggleButton.type = ToggleButton; - buttons.insert( 0, toggleButton ); // play - buttons.insert( 1, toggleButton ); // stop - buttons.insert( 2, toggleButton ); // next - buttons.insert( 3, toggleButton ); // previous - buttons.insert( 4, toggleButton ); // volUp - buttons.insert( 5, toggleButton ); // volDown - buttons.insert( 6, toggleButton ); // fullscreen + buttons.push_back( toggleButton ); // play + buttons.push_back( toggleButton ); // stop + buttons.push_back( toggleButton ); // next + buttons.push_back( toggleButton ); // previous + buttons.push_back( toggleButton ); // volUp + buttons.push_back( toggleButton ); // volDown + buttons.push_back( toggleButton ); // fullscreen videoFrame = new XineVideoWidget ( this, "Video frame" ); connect ( videoFrame, SIGNAL( videoResized ( const QSize & )), this, SIGNAL( videoResized ( const QSize & ))); connect ( videoFrame, SIGNAL( clicked () ), this, SLOT ( backToNormal() ) ); @@ -240,13 +240,13 @@ void VideoWidget::updateSlider( long i, long max ) { slider->setMaxValue( width ); } } } void VideoWidget::mouseMoveEvent( QMouseEvent *event ) { - for ( unsigned int i = 0; i < buttons.count(); i++ ) { + for ( unsigned int i = 0; i < buttons.size(); i++ ) { Button &button = buttons[ i ]; if ( event->state() == QMouseEvent::LeftButton ) { // The test to see if the mouse click is inside the button or not bool isOnButton = isOverButton( event->pos() - upperLeftOfButtonMask, i ); |