-rw-r--r-- | noncore/multimedia/opieplayer2/videowidget.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/noncore/multimedia/opieplayer2/videowidget.cpp b/noncore/multimedia/opieplayer2/videowidget.cpp index c2080e6..0521419 100644 --- a/noncore/multimedia/opieplayer2/videowidget.cpp +++ b/noncore/multimedia/opieplayer2/videowidget.cpp | |||
@@ -96,97 +96,96 @@ QWidget( parent, name, f ), scaledWidth( 0 ), scaledHeight( 0 ) { | |||
96 | pixBg = new QPixmap( Resource::loadPixmap( QString("%1/background").arg(skinPath) ) ); | 96 | pixBg = new QPixmap( Resource::loadPixmap( QString("%1/background").arg(skinPath) ) ); |
97 | imgUp = new QImage( Resource::loadImage( QString("%1/skinV_up").arg(skinPath) ) ); | 97 | imgUp = new QImage( Resource::loadImage( QString("%1/skinV_up").arg(skinPath) ) ); |
98 | imgDn = new QImage( Resource::loadImage( QString("%1/skinV_down").arg(skinPath) ) ); | 98 | imgDn = new QImage( Resource::loadImage( QString("%1/skinV_down").arg(skinPath) ) ); |
99 | 99 | ||
100 | imgButtonMask = new QImage( imgUp->width(), imgUp->height(), 8, 255 ); | 100 | imgButtonMask = new QImage( imgUp->width(), imgUp->height(), 8, 255 ); |
101 | imgButtonMask->fill( 0 ); | 101 | imgButtonMask->fill( 0 ); |
102 | 102 | ||
103 | for ( int i = 0; i < 7; i++ ) { | 103 | for ( int i = 0; i < 7; i++ ) { |
104 | QString filename = QString(getenv("OPIEDIR")) + "/pics/" + skinPath + "/skinV_mask_" + skinV_mask_file_names[i] + ".png"; | 104 | QString filename = QString(getenv("OPIEDIR")) + "/pics/" + skinPath + "/skinV_mask_" + skinV_mask_file_names[i] + ".png"; |
105 | masks[i] = new QBitmap( filename ); | 105 | masks[i] = new QBitmap( filename ); |
106 | 106 | ||
107 | if ( !masks[i]->isNull() ) { | 107 | if ( !masks[i]->isNull() ) { |
108 | QImage imgMask = masks[i]->convertToImage(); | 108 | QImage imgMask = masks[i]->convertToImage(); |
109 | uchar **dest = imgButtonMask->jumpTable(); | 109 | uchar **dest = imgButtonMask->jumpTable(); |
110 | for ( int y = 0; y < imgUp->height(); y++ ) { | 110 | for ( int y = 0; y < imgUp->height(); y++ ) { |
111 | uchar *line = dest[y]; | 111 | uchar *line = dest[y]; |
112 | for ( int x = 0; x < imgUp->width(); x++ ) { | 112 | for ( int x = 0; x < imgUp->width(); x++ ) { |
113 | if ( !qRed( imgMask.pixel( x, y ) ) ) | 113 | if ( !qRed( imgMask.pixel( x, y ) ) ) |
114 | line[x] = i + 1; | 114 | line[x] = i + 1; |
115 | } | 115 | } |
116 | } | 116 | } |
117 | } | 117 | } |
118 | } | 118 | } |
119 | 119 | ||
120 | for ( int i = 0; i < 7; i++ ) { | 120 | for ( int i = 0; i < 7; i++ ) { |
121 | buttonPixUp[i] = NULL; | 121 | buttonPixUp[i] = NULL; |
122 | buttonPixDown[i] = NULL; | 122 | buttonPixDown[i] = NULL; |
123 | } | 123 | } |
124 | 124 | ||
125 | setBackgroundPixmap( *pixBg ); | 125 | setBackgroundPixmap( *pixBg ); |
126 | 126 | ||
127 | slider = new QSlider( Qt::Horizontal, this ); | 127 | slider = new QSlider( Qt::Horizontal, this ); |
128 | slider->setMinValue( 0 ); | 128 | slider->setMinValue( 0 ); |
129 | slider->setMaxValue( 1 ); | 129 | slider->setMaxValue( 1 ); |
130 | slider->setBackgroundPixmap( Resource::loadPixmap( backgroundPix ) ); | 130 | slider->setBackgroundPixmap( Resource::loadPixmap( backgroundPix ) ); |
131 | slider->setFocusPolicy( QWidget::NoFocus ); | 131 | slider->setFocusPolicy( QWidget::NoFocus ); |
132 | 132 | ||
133 | resizeEvent( NULL ); | 133 | resizeEvent( NULL ); |
134 | 134 | ||
135 | connect( slider, SIGNAL( sliderPressed() ), this, SLOT( sliderPressed() ) ); | 135 | connect( slider, SIGNAL( sliderPressed() ), this, SLOT( sliderPressed() ) ); |
136 | connect( slider, SIGNAL( sliderReleased() ), this, SLOT( sliderReleased() ) ); | 136 | connect( slider, SIGNAL( sliderReleased() ), this, SLOT( sliderReleased() ) ); |
137 | connect( mediaPlayerState, SIGNAL( lengthChanged(long) ), this, SLOT( setLength(long) ) ); | 137 | connect( mediaPlayerState, SIGNAL( lengthChanged(long) ), this, SLOT( setLength(long) ) ); |
138 | connect( mediaPlayerState, SIGNAL( viewChanged(char) ), this, SLOT( setView(char) ) ); | 138 | connect( mediaPlayerState, SIGNAL( viewChanged(char) ), this, SLOT( setView(char) ) ); |
139 | connect( mediaPlayerState, SIGNAL( playingToggled(bool) ), this, SLOT( setPlaying(bool) ) ); | 139 | connect( mediaPlayerState, SIGNAL( playingToggled(bool) ), this, SLOT( setPlaying(bool) ) ); |
140 | 140 | ||
141 | setLength( mediaPlayerState->length() ); | 141 | setLength( mediaPlayerState->length() ); |
142 | setPosition( mediaPlayerState->position() ); | 142 | setPosition( mediaPlayerState->position() ); |
143 | setFullscreen( mediaPlayerState->fullscreen() ); | 143 | setFullscreen( mediaPlayerState->fullscreen() ); |
144 | // setPaused( mediaPlayerState->paused() ); | ||
145 | setPlaying( mediaPlayerState->playing() ); | 144 | setPlaying( mediaPlayerState->playing() ); |
146 | } | 145 | } |
147 | 146 | ||
148 | 147 | ||
149 | VideoWidget::~VideoWidget() { | 148 | VideoWidget::~VideoWidget() { |
150 | 149 | ||
151 | for ( int i = 0; i < 7; i++ ) { | 150 | for ( int i = 0; i < 7; i++ ) { |
152 | delete buttonPixUp[i]; | 151 | delete buttonPixUp[i]; |
153 | delete buttonPixDown[i]; | 152 | delete buttonPixDown[i]; |
154 | } | 153 | } |
155 | 154 | ||
156 | delete pixBg; | 155 | delete pixBg; |
157 | delete imgUp; | 156 | delete imgUp; |
158 | delete imgDn; | 157 | delete imgDn; |
159 | delete imgButtonMask; | 158 | delete imgButtonMask; |
160 | for ( int i = 0; i < 7; i++ ) { | 159 | for ( int i = 0; i < 7; i++ ) { |
161 | delete masks[i]; | 160 | delete masks[i]; |
162 | } | 161 | } |
163 | 162 | ||
164 | } | 163 | } |
165 | 164 | ||
166 | QPixmap *combineVImageWithBackground( QImage img, QPixmap bg, QPoint offset ) { | 165 | QPixmap *combineVImageWithBackground( QImage img, QPixmap bg, QPoint offset ) { |
167 | QPixmap pix( img.width(), img.height() ); | 166 | QPixmap pix( img.width(), img.height() ); |
168 | QPainter p( &pix ); | 167 | QPainter p( &pix ); |
169 | p.drawTiledPixmap( pix.rect(), bg, offset ); | 168 | p.drawTiledPixmap( pix.rect(), bg, offset ); |
170 | p.drawImage( 0, 0, img ); | 169 | p.drawImage( 0, 0, img ); |
171 | return new QPixmap( pix ); | 170 | return new QPixmap( pix ); |
172 | } | 171 | } |
173 | 172 | ||
174 | QPixmap *maskVPixToMask( QPixmap pix, QBitmap mask ) { | 173 | QPixmap *maskVPixToMask( QPixmap pix, QBitmap mask ) { |
175 | QPixmap *pixmap = new QPixmap( pix ); | 174 | QPixmap *pixmap = new QPixmap( pix ); |
176 | pixmap->setMask( mask ); | 175 | pixmap->setMask( mask ); |
177 | return pixmap; | 176 | return pixmap; |
178 | } | 177 | } |
179 | 178 | ||
180 | void VideoWidget::resizeEvent( QResizeEvent * ) { | 179 | void VideoWidget::resizeEvent( QResizeEvent * ) { |
181 | int h = height(); | 180 | int h = height(); |
182 | int w = width(); | 181 | int w = width(); |
183 | int Vh = 160; | 182 | int Vh = 160; |
184 | int Vw = 220; | 183 | int Vw = 220; |
185 | 184 | ||
186 | slider->setFixedWidth( w - 20 ); | 185 | slider->setFixedWidth( w - 20 ); |
187 | slider->setGeometry( QRect( 15, h - 30, w - 90, 20 ) ); | 186 | slider->setGeometry( QRect( 15, h - 30, w - 90, 20 ) ); |
188 | slider->setBackgroundOrigin( QWidget::ParentOrigin ); | 187 | slider->setBackgroundOrigin( QWidget::ParentOrigin ); |
189 | slider->setFocusPolicy( QWidget::NoFocus ); | 188 | slider->setFocusPolicy( QWidget::NoFocus ); |
190 | slider->setBackgroundPixmap( *pixBg ); | 189 | slider->setBackgroundPixmap( *pixBg ); |
191 | 190 | ||
192 | xoff = 0;// ( imgUp->width() ) / 2; | 191 | xoff = 0;// ( imgUp->width() ) / 2; |
@@ -348,98 +347,98 @@ void VideoWidget::mouseMoveEvent( QMouseEvent *event ) { | |||
348 | return; | 347 | return; |
349 | } | 348 | } |
350 | } | 349 | } |
351 | 350 | ||
352 | case VideoStop: mediaPlayerState->setPlaying( FALSE ); return; | 351 | case VideoStop: mediaPlayerState->setPlaying( FALSE ); return; |
353 | case VideoNext: mediaPlayerState->setNext(); return; | 352 | case VideoNext: mediaPlayerState->setNext(); return; |
354 | case VideoPrevious: mediaPlayerState->setPrev(); return; | 353 | case VideoPrevious: mediaPlayerState->setPrev(); return; |
355 | case VideoVolUp: emit moreReleased(); return; | 354 | case VideoVolUp: emit moreReleased(); return; |
356 | case VideoVolDown: emit lessReleased(); return; | 355 | case VideoVolDown: emit lessReleased(); return; |
357 | case VideoFullscreen: mediaPlayerState->setFullscreen( TRUE ); makeVisible(); return; | 356 | case VideoFullscreen: mediaPlayerState->setFullscreen( TRUE ); makeVisible(); return; |
358 | } | 357 | } |
359 | } | 358 | } |
360 | } | 359 | } |
361 | } | 360 | } |
362 | } | 361 | } |
363 | 362 | ||
364 | void VideoWidget::mousePressEvent( QMouseEvent *event ) { | 363 | void VideoWidget::mousePressEvent( QMouseEvent *event ) { |
365 | mouseMoveEvent( event ); | 364 | mouseMoveEvent( event ); |
366 | } | 365 | } |
367 | 366 | ||
368 | void VideoWidget::mouseReleaseEvent( QMouseEvent *event ) { | 367 | void VideoWidget::mouseReleaseEvent( QMouseEvent *event ) { |
369 | if ( mediaPlayerState->fullscreen() ) { | 368 | if ( mediaPlayerState->fullscreen() ) { |
370 | mediaPlayerState->setFullscreen( FALSE ); | 369 | mediaPlayerState->setFullscreen( FALSE ); |
371 | makeVisible(); | 370 | makeVisible(); |
372 | } | 371 | } |
373 | mouseMoveEvent( event ); | 372 | mouseMoveEvent( event ); |
374 | } | 373 | } |
375 | 374 | ||
376 | void VideoWidget::showEvent( QShowEvent* ) { | 375 | void VideoWidget::showEvent( QShowEvent* ) { |
377 | QMouseEvent event( QEvent::MouseMove, QPoint( 0, 0 ), 0, 0 ); | 376 | QMouseEvent event( QEvent::MouseMove, QPoint( 0, 0 ), 0, 0 ); |
378 | mouseMoveEvent( &event ); | 377 | mouseMoveEvent( &event ); |
379 | } | 378 | } |
380 | 379 | ||
381 | 380 | ||
382 | void VideoWidget::backToNormal() { | 381 | void VideoWidget::backToNormal() { |
383 | mediaPlayerState->setFullscreen( FALSE ); | 382 | mediaPlayerState->setFullscreen( FALSE ); |
384 | makeVisible(); | 383 | makeVisible(); |
385 | } | 384 | } |
386 | 385 | ||
387 | void VideoWidget::makeVisible() { | 386 | void VideoWidget::makeVisible() { |
388 | if ( mediaPlayerState->fullscreen() ) { | 387 | if ( mediaPlayerState->fullscreen() ) { |
389 | setBackgroundMode( QWidget::NoBackground ); | 388 | setBackgroundMode( QWidget::NoBackground ); |
390 | showFullScreen(); | 389 | showFullScreen(); |
391 | resize( qApp->desktop()->size() ); | 390 | resize( qApp->desktop()->size() ); |
392 | slider->hide(); | 391 | slider->hide(); |
393 | videoFrame-> setGeometry ( 0, 0, width ( ), height ( )); | 392 | videoFrame-> setGeometry ( 0, 0, width ( ), height ( )); |
394 | 393 | ||
395 | } else { | 394 | } else { |
396 | showNormal(); | ||
397 | showMaximized(); | 395 | showMaximized(); |
396 | setBackgroundPixmap( *pixBg ); | ||
398 | slider->show(); | 397 | slider->show(); |
399 | videoFrame->setGeometry( QRect( 0, 30, 240, 170 ) ); | 398 | videoFrame->setGeometry( QRect( 0, 30, 240, 170 ) ); |
400 | qApp->processEvents(); | 399 | qApp->processEvents(); |
401 | } | 400 | } |
402 | } | 401 | } |
403 | 402 | ||
404 | 403 | ||
405 | void VideoWidget::paintEvent( QPaintEvent * pe) { | 404 | void VideoWidget::paintEvent( QPaintEvent * pe) { |
406 | QPainter p( this ); | 405 | QPainter p( this ); |
407 | 406 | ||
408 | if ( mediaPlayerState->fullscreen() ) { | 407 | if ( mediaPlayerState->fullscreen() ) { |
409 | // Clear the background | 408 | // Clear the background |
410 | p.setBrush( QBrush( Qt::black ) ); | 409 | p.setBrush( QBrush( Qt::black ) ); |
411 | } else { | 410 | } else { |
412 | if ( !pe->erased() ) { | 411 | if ( !pe->erased() ) { |
413 | // Combine with background and double buffer | 412 | // Combine with background and double buffer |
414 | QPixmap pix( pe->rect().size() ); | 413 | QPixmap pix( pe->rect().size() ); |
415 | QPainter p( &pix ); | 414 | QPainter p( &pix ); |
416 | p.translate( -pe->rect().topLeft().x(), -pe->rect().topLeft().y() ); | 415 | p.translate( -pe->rect().topLeft().x(), -pe->rect().topLeft().y() ); |
417 | p.drawTiledPixmap( pe->rect(), *pixBg, pe->rect().topLeft() ); | 416 | p.drawTiledPixmap( pe->rect(), *pixBg, pe->rect().topLeft() ); |
418 | for ( int i = 0; i < numVButtons; i++ ) { | 417 | for ( int i = 0; i < numVButtons; i++ ) { |
419 | paintButton( &p, i ); | 418 | paintButton( &p, i ); |
420 | } | 419 | } |
421 | QPainter p2( this ); | 420 | QPainter p2( this ); |
422 | p2.drawPixmap( pe->rect().topLeft(), pix ); | 421 | p2.drawPixmap( pe->rect().topLeft(), pix ); |
423 | } else { | 422 | } else { |
424 | QPainter p( this ); | 423 | QPainter p( this ); |
425 | for ( int i = 0; i < numVButtons; i++ ) | 424 | for ( int i = 0; i < numVButtons; i++ ) |
426 | paintButton( &p, i ); | 425 | paintButton( &p, i ); |
427 | } | 426 | } |
428 | slider->repaint( TRUE ); | 427 | slider->repaint( TRUE ); |
429 | } | 428 | } |
430 | } | 429 | } |
431 | 430 | ||
432 | 431 | ||
433 | void VideoWidget::closeEvent( QCloseEvent* ) { | 432 | void VideoWidget::closeEvent( QCloseEvent* ) { |
434 | mediaPlayerState->setList(); | 433 | mediaPlayerState->setList(); |
435 | } | 434 | } |
436 | 435 | ||
437 | 436 | ||
438 | 437 | ||
439 | void VideoWidget::keyReleaseEvent( QKeyEvent *e) { | 438 | void VideoWidget::keyReleaseEvent( QKeyEvent *e) { |
440 | switch ( e->key() ) { | 439 | switch ( e->key() ) { |
441 | ////////////////////////////// Zaurus keys | 440 | ////////////////////////////// Zaurus keys |
442 | case Key_Home: | 441 | case Key_Home: |
443 | break; | 442 | break; |
444 | case Key_F9: //activity | 443 | case Key_F9: //activity |
445 | break; | 444 | break; |