author | simon <simon> | 2002-12-09 14:48:13 (UTC) |
---|---|---|
committer | simon <simon> | 2002-12-09 14:48:13 (UTC) |
commit | 9ab8a657b23fd1871c4a376fdd097732c14392e0 (patch) (unidiff) | |
tree | 5e507bf74fad84ae6da1ed1facc689fd89de167d | |
parent | 174c4a427750a3829ffd81a87454be8abf61ee30 (diff) | |
download | opie-9ab8a657b23fd1871c4a376fdd097732c14392e0.zip opie-9ab8a657b23fd1871c4a376fdd097732c14392e0.tar.gz opie-9ab8a657b23fd1871c4a376fdd097732c14392e0.tar.bz2 |
- migrating from a button vector to a button map
-rw-r--r-- | noncore/multimedia/opieplayer2/audiowidget.cpp | 10 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/mediawidget.h | 4 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/videowidget.cpp | 21 |
3 files changed, 18 insertions, 17 deletions
diff --git a/noncore/multimedia/opieplayer2/audiowidget.cpp b/noncore/multimedia/opieplayer2/audiowidget.cpp index c148820..12f91a9 100644 --- a/noncore/multimedia/opieplayer2/audiowidget.cpp +++ b/noncore/multimedia/opieplayer2/audiowidget.cpp | |||
@@ -115,17 +115,17 @@ AudioWidget::AudioWidget( PlayListWidget &playList, MediaPlayerState &mediaPlaye | |||
115 | for ( int y = 0; y < imgUp.height(); y++ ) { | 115 | for ( int y = 0; y < imgUp.height(); y++ ) { |
116 | uchar *line = dest[y]; | 116 | uchar *line = dest[y]; |
117 | for ( int x = 0; x < imgUp.width(); x++ ) | 117 | for ( int x = 0; x < imgUp.width(); x++ ) |
118 | if ( !qRed( imgMask.pixel( x, y ) ) ) | 118 | if ( !qRed( imgMask.pixel( x, y ) ) ) |
119 | line[x] = i + 1; | 119 | line[x] = i + 1; |
120 | } | 120 | } |
121 | } | 121 | } |
122 | 122 | ||
123 | buttons.push_back( button ); | 123 | buttons.insert( i, button ); |
124 | } | 124 | } |
125 | 125 | ||
126 | setBackgroundPixmap( pixBg ); | 126 | setBackgroundPixmap( pixBg ); |
127 | 127 | ||
128 | songInfo.setFocusPolicy( QWidget::NoFocus ); | 128 | songInfo.setFocusPolicy( QWidget::NoFocus ); |
129 | // changeTextColor( &songInfo ); | 129 | // changeTextColor( &songInfo ); |
130 | // songInfo.setBackgroundColor( QColor( 167, 212, 167 )); | 130 | // songInfo.setBackgroundColor( QColor( 167, 212, 167 )); |
131 | // songInfo.setFrameStyle( QFrame::NoFrame); | 131 | // songInfo.setFrameStyle( QFrame::NoFrame); |
@@ -203,17 +203,17 @@ void AudioWidget::resizeEvent( QResizeEvent * ) { | |||
203 | 203 | ||
204 | upperLeftOfButtonMask.rx() = ( w - imgUp.width() ) / 2; | 204 | upperLeftOfButtonMask.rx() = ( w - imgUp.width() ) / 2; |
205 | upperLeftOfButtonMask.ry() = (( h - imgUp.height() ) / 2) - 10; | 205 | upperLeftOfButtonMask.ry() = (( h - imgUp.height() ) / 2) - 10; |
206 | QPoint p = upperLeftOfButtonMask; | 206 | QPoint p = upperLeftOfButtonMask; |
207 | 207 | ||
208 | QPixmap pixUp = combineImageWithBackground( imgUp, pixBg, p ); | 208 | QPixmap pixUp = combineImageWithBackground( imgUp, pixBg, p ); |
209 | QPixmap pixDn = combineImageWithBackground( imgDn, pixBg, p ); | 209 | QPixmap pixDn = combineImageWithBackground( imgDn, pixBg, p ); |
210 | 210 | ||
211 | for ( uint i = 0; i < buttons.size(); i++ ) { | 211 | for ( uint i = 0; i < buttons.count(); i++ ) { |
212 | if ( !buttons[i].mask.isNull() ) { | 212 | if ( !buttons[i].mask.isNull() ) { |
213 | buttons[i].pixUp = maskPixToMask( pixUp, buttons[i].mask ); | 213 | buttons[i].pixUp = maskPixToMask( pixUp, buttons[i].mask ); |
214 | buttons[i].pixDown = maskPixToMask( pixDn, buttons[i].mask ); | 214 | buttons[i].pixDown = maskPixToMask( pixDn, buttons[i].mask ); |
215 | } | 215 | } |
216 | } | 216 | } |
217 | } | 217 | } |
218 | 218 | ||
219 | void AudioWidget::sliderPressed() { | 219 | void AudioWidget::sliderPressed() { |
@@ -346,17 +346,17 @@ void AudioWidget::timerEvent( QTimerEvent * ) { | |||
346 | mediaPlayerState.setPosition( mediaPlayerState.position() + 2 ); | 346 | mediaPlayerState.setPosition( mediaPlayerState.position() + 2 ); |
347 | } else if ( skipDirection == -1 ) { | 347 | } else if ( skipDirection == -1 ) { |
348 | mediaPlayerState.setPosition( mediaPlayerState.position() - 2 ); | 348 | mediaPlayerState.setPosition( mediaPlayerState.position() - 2 ); |
349 | } | 349 | } |
350 | } | 350 | } |
351 | 351 | ||
352 | 352 | ||
353 | void AudioWidget::mouseMoveEvent( QMouseEvent *event ) { | 353 | void AudioWidget::mouseMoveEvent( QMouseEvent *event ) { |
354 | for ( unsigned int i = 0; i < buttons.size(); i++ ) { | 354 | for ( unsigned int i = 0; i < buttons.count(); i++ ) { |
355 | if ( event->state() == QMouseEvent::LeftButton ) { | 355 | if ( event->state() == QMouseEvent::LeftButton ) { |
356 | // The test to see if the mouse click is inside the button or not | 356 | // The test to see if the mouse click is inside the button or not |
357 | bool isOnButton = isOverButton( event->pos() - upperLeftOfButtonMask, i ); | 357 | bool isOnButton = isOverButton( event->pos() - upperLeftOfButtonMask, i ); |
358 | 358 | ||
359 | if ( isOnButton && !buttons[i].isHeld ) { | 359 | if ( isOnButton && !buttons[i].isHeld ) { |
360 | buttons[i].isHeld = TRUE; | 360 | buttons[i].isHeld = TRUE; |
361 | toggleButton(i); | 361 | toggleButton(i); |
362 | switch (i) { | 362 | switch (i) { |
@@ -409,23 +409,23 @@ void AudioWidget::showEvent( QShowEvent* ) { | |||
409 | 409 | ||
410 | void AudioWidget::paintEvent( QPaintEvent * pe ) { | 410 | void AudioWidget::paintEvent( QPaintEvent * pe ) { |
411 | if ( !pe->erased() ) { | 411 | if ( !pe->erased() ) { |
412 | // Combine with background and double buffer | 412 | // Combine with background and double buffer |
413 | QPixmap pix( pe->rect().size() ); | 413 | QPixmap pix( pe->rect().size() ); |
414 | QPainter p( &pix ); | 414 | QPainter p( &pix ); |
415 | p.translate( -pe->rect().topLeft().x(), -pe->rect().topLeft().y() ); | 415 | p.translate( -pe->rect().topLeft().x(), -pe->rect().topLeft().y() ); |
416 | p.drawTiledPixmap( pe->rect(), pixBg, pe->rect().topLeft() ); | 416 | p.drawTiledPixmap( pe->rect(), pixBg, pe->rect().topLeft() ); |
417 | for ( unsigned int i = 0; i < buttons.size(); i++ ) | 417 | for ( unsigned int i = 0; i < buttons.count(); i++ ) |
418 | paintButton( p, i ); | 418 | paintButton( p, i ); |
419 | QPainter p2( this ); | 419 | QPainter p2( this ); |
420 | p2.drawPixmap( pe->rect().topLeft(), pix ); | 420 | p2.drawPixmap( pe->rect().topLeft(), pix ); |
421 | } else { | 421 | } else { |
422 | QPainter p( this ); | 422 | QPainter p( this ); |
423 | for ( unsigned int i = 0; i < buttons.size(); i++ ) | 423 | for ( unsigned int i = 0; i < buttons.count(); i++ ) |
424 | paintButton( p, i ); | 424 | paintButton( p, i ); |
425 | } | 425 | } |
426 | } | 426 | } |
427 | 427 | ||
428 | void AudioWidget::keyReleaseEvent( QKeyEvent *e) { | 428 | void AudioWidget::keyReleaseEvent( QKeyEvent *e) { |
429 | switch ( e->key() ) { | 429 | switch ( e->key() ) { |
430 | ////////////////////////////// Zaurus keys | 430 | ////////////////////////////// Zaurus keys |
431 | case Key_Home: | 431 | case Key_Home: |
diff --git a/noncore/multimedia/opieplayer2/mediawidget.h b/noncore/multimedia/opieplayer2/mediawidget.h index 504b705..49bf024 100644 --- a/noncore/multimedia/opieplayer2/mediawidget.h +++ b/noncore/multimedia/opieplayer2/mediawidget.h | |||
@@ -46,16 +46,18 @@ public: | |||
46 | bool isHeld : 1; | 46 | bool isHeld : 1; |
47 | bool isDown : 1; | 47 | bool isDown : 1; |
48 | 48 | ||
49 | QBitmap mask; | 49 | QBitmap mask; |
50 | QPixmap pixUp; | 50 | QPixmap pixUp; |
51 | QPixmap pixDown; | 51 | QPixmap pixDown; |
52 | }; | 52 | }; |
53 | typedef std::vector<Button> ButtonVector; | 53 | typedef std::vector<Button> ButtonVector; |
54 | // when the transition is done this should be Command -> Button | ||
55 | typedef QMap<int, Button> ButtonMap; | ||
54 | 56 | ||
55 | struct SkinButtonInfo | 57 | struct SkinButtonInfo |
56 | { | 58 | { |
57 | Command command; | 59 | Command command; |
58 | const char *fileName; | 60 | const char *fileName; |
59 | ButtonType type; | 61 | ButtonType type; |
60 | }; | 62 | }; |
61 | 63 | ||
@@ -86,17 +88,17 @@ protected: | |||
86 | void paintButton( int buttonId ); | 88 | void paintButton( int buttonId ); |
87 | virtual void paintButton( QPainter &p, int i ) = 0; | 89 | virtual void paintButton( QPainter &p, int i ) = 0; |
88 | 90 | ||
89 | void toggleButton( int buttonId ); | 91 | void toggleButton( int buttonId ); |
90 | 92 | ||
91 | MediaPlayerState &mediaPlayerState; | 93 | MediaPlayerState &mediaPlayerState; |
92 | PlayListWidget &playList; | 94 | PlayListWidget &playList; |
93 | 95 | ||
94 | ButtonVector buttons; | 96 | ButtonMap buttons; |
95 | 97 | ||
96 | QImage buttonMask; | 98 | QImage buttonMask; |
97 | 99 | ||
98 | QPoint upperLeftOfButtonMask; | 100 | QPoint upperLeftOfButtonMask; |
99 | }; | 101 | }; |
100 | 102 | ||
101 | #endif // MEDIAWIDGET_H | 103 | #endif // MEDIAWIDGET_H |
102 | /* vim: et sw=4 ts=4 | 104 | /* vim: et sw=4 ts=4 |
diff --git a/noncore/multimedia/opieplayer2/videowidget.cpp b/noncore/multimedia/opieplayer2/videowidget.cpp index 380c703..7d85d63 100644 --- a/noncore/multimedia/opieplayer2/videowidget.cpp +++ b/noncore/multimedia/opieplayer2/videowidget.cpp | |||
@@ -69,24 +69,23 @@ VideoWidget::VideoWidget( PlayListWidget &playList, MediaPlayerState &mediaPlaye | |||
69 | : MediaWidget( playList, mediaPlayerState, parent, name ), scaledWidth( 0 ), scaledHeight( 0 ) | 69 | : MediaWidget( playList, mediaPlayerState, parent, name ), scaledWidth( 0 ), scaledHeight( 0 ) |
70 | { | 70 | { |
71 | setCaption( tr("OpiePlayer - Video") ); | 71 | setCaption( tr("OpiePlayer - Video") ); |
72 | 72 | ||
73 | Button defaultButton; | 73 | Button defaultButton; |
74 | Button toggleButton = defaultButton; | 74 | Button toggleButton = defaultButton; |
75 | toggleButton.type = ToggleButton; | 75 | toggleButton.type = ToggleButton; |
76 | 76 | ||
77 | buttons.reserve( 7 ); | 77 | buttons.insert( 0, toggleButton ); // play |
78 | buttons.push_back( toggleButton ); // play | 78 | buttons.insert( 1, toggleButton ); // stop |
79 | buttons.push_back( defaultButton ); // stop | 79 | buttons.insert( 2, toggleButton ); // next |
80 | buttons.push_back( defaultButton ); // next | 80 | buttons.insert( 3, toggleButton ); // previous |
81 | buttons.push_back( defaultButton ); // previous | 81 | buttons.insert( 4, toggleButton ); // volUp |
82 | buttons.push_back( defaultButton ); // volUp | 82 | buttons.insert( 5, toggleButton ); // volDown |
83 | buttons.push_back( defaultButton ); // volDown | 83 | buttons.insert( 6, toggleButton ); // fullscreen |
84 | buttons.push_back( toggleButton ); //fullscreen | ||
85 | 84 | ||
86 | videoFrame = new XineVideoWidget ( this, "Video frame" ); | 85 | videoFrame = new XineVideoWidget ( this, "Video frame" ); |
87 | 86 | ||
88 | connect ( videoFrame, SIGNAL( videoResized ( const QSize & )), this, SIGNAL( videoResized ( const QSize & ))); | 87 | connect ( videoFrame, SIGNAL( videoResized ( const QSize & )), this, SIGNAL( videoResized ( const QSize & ))); |
89 | connect ( videoFrame, SIGNAL( clicked () ), this, SLOT ( backToNormal() ) ); | 88 | connect ( videoFrame, SIGNAL( clicked () ), this, SLOT ( backToNormal() ) ); |
90 | 89 | ||
91 | Config cfg("OpiePlayer"); | 90 | Config cfg("OpiePlayer"); |
92 | cfg.setGroup("Options"); | 91 | cfg.setGroup("Options"); |
@@ -266,17 +265,17 @@ void VideoWidget::paintButton( QPainter &p, int i ) { | |||
266 | if ( buttons[i].isDown ) { | 265 | if ( buttons[i].isDown ) { |
267 | p.drawPixmap( upperLeftOfButtonMask, *buttonPixDown[i] ); | 266 | p.drawPixmap( upperLeftOfButtonMask, *buttonPixDown[i] ); |
268 | } else { | 267 | } else { |
269 | p.drawPixmap( upperLeftOfButtonMask, *buttonPixUp[i] ); | 268 | p.drawPixmap( upperLeftOfButtonMask, *buttonPixUp[i] ); |
270 | } | 269 | } |
271 | } | 270 | } |
272 | 271 | ||
273 | void VideoWidget::mouseMoveEvent( QMouseEvent *event ) { | 272 | void VideoWidget::mouseMoveEvent( QMouseEvent *event ) { |
274 | for ( unsigned int i = 0; i < buttons.size(); i++ ) { | 273 | for ( unsigned int i = 0; i < buttons.count(); i++ ) { |
275 | if ( event->state() == QMouseEvent::LeftButton ) { | 274 | if ( event->state() == QMouseEvent::LeftButton ) { |
276 | // The test to see if the mouse click is inside the button or not | 275 | // The test to see if the mouse click is inside the button or not |
277 | bool isOnButton = isOverButton( event->pos() - upperLeftOfButtonMask, i ); | 276 | bool isOnButton = isOverButton( event->pos() - upperLeftOfButtonMask, i ); |
278 | 277 | ||
279 | if ( isOnButton && !buttons[i].isHeld ) { | 278 | if ( isOnButton && !buttons[i].isHeld ) { |
280 | buttons[i].isHeld = TRUE; | 279 | buttons[i].isHeld = TRUE; |
281 | toggleButton(i); | 280 | toggleButton(i); |
282 | 281 | ||
@@ -408,24 +407,24 @@ void VideoWidget::paintEvent( QPaintEvent * pe) { | |||
408 | p.setBrush( QBrush( Qt::black ) ); | 407 | p.setBrush( QBrush( Qt::black ) ); |
409 | } else { | 408 | } else { |
410 | if ( !pe->erased() ) { | 409 | if ( !pe->erased() ) { |
411 | // Combine with background and double buffer | 410 | // Combine with background and double buffer |
412 | QPixmap pix( pe->rect().size() ); | 411 | QPixmap pix( pe->rect().size() ); |
413 | QPainter p( &pix ); | 412 | QPainter p( &pix ); |
414 | p.translate( -pe->rect().topLeft().x(), -pe->rect().topLeft().y() ); | 413 | p.translate( -pe->rect().topLeft().x(), -pe->rect().topLeft().y() ); |
415 | p.drawTiledPixmap( pe->rect(), pixBg, pe->rect().topLeft() ); | 414 | p.drawTiledPixmap( pe->rect(), pixBg, pe->rect().topLeft() ); |
416 | for ( unsigned int i = 0; i < buttons.size(); i++ ) { | 415 | for ( unsigned int i = 0; i < buttons.count(); i++ ) { |
417 | paintButton( p, i ); | 416 | paintButton( p, i ); |
418 | } | 417 | } |
419 | QPainter p2( this ); | 418 | QPainter p2( this ); |
420 | p2.drawPixmap( pe->rect().topLeft(), pix ); | 419 | p2.drawPixmap( pe->rect().topLeft(), pix ); |
421 | } else { | 420 | } else { |
422 | QPainter p( this ); | 421 | QPainter p( this ); |
423 | for ( unsigned int i = 0; i < buttons.size(); i++ ) | 422 | for ( unsigned int i = 0; i < buttons.count(); i++ ) |
424 | paintButton( p, i ); | 423 | paintButton( p, i ); |
425 | } | 424 | } |
426 | //slider->repaint( TRUE ); | 425 | //slider->repaint( TRUE ); |
427 | } | 426 | } |
428 | } | 427 | } |
429 | 428 | ||
430 | 429 | ||
431 | void VideoWidget::keyReleaseEvent( QKeyEvent *e) { | 430 | void VideoWidget::keyReleaseEvent( QKeyEvent *e) { |