author | harlekin <harlekin> | 2002-08-21 00:20:22 (UTC) |
---|---|---|
committer | harlekin <harlekin> | 2002-08-21 00:20:22 (UTC) |
commit | c198ae0217f761418f7170d08a94da3864e47583 (patch) (unidiff) | |
tree | 096790ff5389ea30f61912f72338e5642edaa667 | |
parent | 491f95a2c6a5676f08520e494e125ba8b20e0eae (diff) | |
download | opie-c198ae0217f761418f7170d08a94da3864e47583.zip opie-c198ae0217f761418f7170d08a94da3864e47583.tar.gz opie-c198ae0217f761418f7170d08a94da3864e47583.tar.bz2 |
fixes
-rw-r--r-- | noncore/multimedia/opieplayer2/lib.cpp | 5 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidget.cpp | 19 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/videowidget.cpp | 2 |
3 files changed, 17 insertions, 9 deletions
diff --git a/noncore/multimedia/opieplayer2/lib.cpp b/noncore/multimedia/opieplayer2/lib.cpp index c187f52..b2143a0 100644 --- a/noncore/multimedia/opieplayer2/lib.cpp +++ b/noncore/multimedia/opieplayer2/lib.cpp | |||
@@ -93,36 +93,37 @@ Lib::Lib(XineVideoWidget* widget) { | |||
93 | resize ( m_wid-> size ( )); | 93 | resize ( m_wid-> size ( )); |
94 | ::null_set_mode( m_videoOutput, qt_screen->depth(), qt_screen->pixelType() ); | 94 | ::null_set_mode( m_videoOutput, qt_screen->depth(), qt_screen->pixelType() ); |
95 | m_wid-> setImage ( new QImage ( Resource::loadImage(""))); | 95 | m_wid-> setImage ( new QImage ( Resource::loadImage(""))); |
96 | m_wid->repaint(); | 96 | m_wid->repaint(); |
97 | } | 97 | } |
98 | null_display_handler( m_videoOutput, | 98 | null_display_handler( m_videoOutput, |
99 | xine_display_frame, | 99 | xine_display_frame, |
100 | this ); | 100 | this ); |
101 | 101 | ||
102 | m_xine = xine_init( m_videoOutput, | 102 | m_xine = xine_init( m_videoOutput, |
103 | m_audioOutput, m_config ); | 103 | m_audioOutput, m_config ); |
104 | // install the event handler | 104 | // install the event handler |
105 | xine_register_event_listener( m_xine, xine_event_handler, this ); | 105 | xine_register_event_listener( m_xine, xine_event_handler, this ); |
106 | } | 106 | } |
107 | 107 | ||
108 | Lib::~Lib() { | 108 | Lib::~Lib() { |
109 | delete m_config; | 109 | free( m_config ); |
110 | xine_remove_event_listener( m_xine, xine_event_handler ); | 110 | xine_remove_event_listener( m_xine, xine_event_handler ); |
111 | xine_exit( m_xine ); | 111 | xine_exit( m_xine ); |
112 | delete m_videoOutput; | 112 | /* FIXME either free or delete but valgrind bitches against both */ |
113 | //free( m_videoOutput ); | ||
113 | //delete m_audioOutput; | 114 | //delete m_audioOutput; |
114 | 115 | ||
115 | } | 116 | } |
116 | 117 | ||
117 | void Lib::resize ( const QSize &s ) | 118 | void Lib::resize ( const QSize &s ) |
118 | { | 119 | { |
119 | if ( s. width ( ) && s. height ( )) { | 120 | if ( s. width ( ) && s. height ( )) { |
120 | ::null_set_gui_width( m_videoOutput, s. width() ); | 121 | ::null_set_gui_width( m_videoOutput, s. width() ); |
121 | ::null_set_gui_height(m_videoOutput, s. height() ); | 122 | ::null_set_gui_height(m_videoOutput, s. height() ); |
122 | } | 123 | } |
123 | } | 124 | } |
124 | 125 | ||
125 | QCString Lib::version() { | 126 | QCString Lib::version() { |
126 | QCString str( xine_get_str_version() ); | 127 | QCString str( xine_get_str_version() ); |
127 | return str; | 128 | return str; |
128 | }; | 129 | }; |
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp index 75e2979..098322b 100644 --- a/noncore/multimedia/opieplayer2/playlistwidget.cpp +++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp | |||
@@ -1,24 +1,25 @@ | |||
1 | 1 | ||
2 | #define QTOPIA_INTERNAL_FSLP | 2 | #define QTOPIA_INTERNAL_FSLP |
3 | #include <qpe/qpemenubar.h> | 3 | #include <qpe/qpemenubar.h> |
4 | #include <qpe/qpetoolbar.h> | 4 | #include <qpe/qpetoolbar.h> |
5 | #include <qpe/fileselector.h> | 5 | #include <qpe/fileselector.h> |
6 | #include <qpe/qpeapplication.h> | 6 | #include <qpe/qpeapplication.h> |
7 | #include <qpe/lnkproperties.h> | 7 | #include <qpe/lnkproperties.h> |
8 | #include <qpe/storage.h> | 8 | #include <qpe/storage.h> |
9 | #include <qpe/mimetype.h> | ||
9 | 10 | ||
10 | #include <qpe/applnk.h> | 11 | #include <qpe/applnk.h> |
11 | #include <qpopupmenu.h> | 12 | #include <qpopupmenu.h> |
12 | #include <qpe/config.h> | 13 | #include <qpe/config.h> |
13 | #include <qpe/global.h> | 14 | #include <qpe/global.h> |
14 | #include <qpe/resource.h> | 15 | #include <qpe/resource.h> |
15 | #include <qaction.h> | 16 | #include <qaction.h> |
16 | #include <qcursor.h> | 17 | #include <qcursor.h> |
17 | #include <qimage.h> | 18 | #include <qimage.h> |
18 | #include <qfile.h> | 19 | #include <qfile.h> |
19 | #include <qdir.h> | 20 | #include <qdir.h> |
20 | #include <qlayout.h> | 21 | #include <qlayout.h> |
21 | #include <qlabel.h> | 22 | #include <qlabel.h> |
22 | #include <qlist.h> | 23 | #include <qlist.h> |
23 | #include <qlistbox.h> | 24 | #include <qlistbox.h> |
24 | #include <qmainwindow.h> | 25 | #include <qmainwindow.h> |
@@ -294,36 +295,40 @@ PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl ) | |||
294 | connect( mediaPlayerState, SIGNAL( shuffledToggled( bool ) ), d->tbShuffle, SLOT( setOn( bool ) ) ); | 295 | connect( mediaPlayerState, SIGNAL( shuffledToggled( bool ) ), d->tbShuffle, SLOT( setOn( bool ) ) ); |
295 | connect( mediaPlayerState, SIGNAL( playlistToggled( bool ) ), this, SLOT( setPlaylist( bool ) ) ); | 296 | connect( mediaPlayerState, SIGNAL( playlistToggled( bool ) ), this, SLOT( setPlaylist( bool ) ) ); |
296 | connect( d->selectedFiles, SIGNAL( doubleClicked( QListViewItem *) ), this, SLOT( playIt( QListViewItem *) ) ); | 297 | connect( d->selectedFiles, SIGNAL( doubleClicked( QListViewItem *) ), this, SLOT( playIt( QListViewItem *) ) ); |
297 | 298 | ||
298 | setCentralWidget( vbox5 ); | 299 | setCentralWidget( vbox5 ); |
299 | 300 | ||
300 | readConfig( cfg ); | 301 | readConfig( cfg ); |
301 | QString currentPlaylist = cfg.readEntry("CurrentPlaylist",""); | 302 | QString currentPlaylist = cfg.readEntry("CurrentPlaylist",""); |
302 | loadList(DocLnk( currentPlaylist)); | 303 | loadList(DocLnk( currentPlaylist)); |
303 | setCaption(tr("OpiePlayer: ")+ currentPlaylist ); | 304 | setCaption(tr("OpiePlayer: ")+ currentPlaylist ); |
304 | 305 | ||
305 | initializeStates(); | 306 | initializeStates(); |
306 | } | 307 | } |
307 | 308 | ||
308 | 309 | ||
309 | PlayListWidget::~PlayListWidget() { | 310 | PlayListWidget::~PlayListWidget() { |
310 | if ( d->current ) { | 311 | /* fixing symptoms and not sources is entirely stupid - zecke */ |
311 | delete d->current; | 312 | // Config cfg( "OpiePlayer" ); |
312 | } | 313 | // writeConfig( cfg ); |
313 | delete d; | 314 | |
315 | if ( d->current ) { | ||
316 | delete d->current; | ||
317 | } | ||
318 | delete d; | ||
314 | } | 319 | } |
315 | 320 | ||
316 | 321 | ||
317 | void PlayListWidget::initializeStates() { | 322 | void PlayListWidget::initializeStates() { |
318 | 323 | ||
319 | d->tbPlay->setOn( mediaPlayerState->playing() ); | 324 | d->tbPlay->setOn( mediaPlayerState->playing() ); |
320 | d->tbLoop->setOn( mediaPlayerState->looping() ); | 325 | d->tbLoop->setOn( mediaPlayerState->looping() ); |
321 | d->tbShuffle->setOn( mediaPlayerState->shuffled() ); | 326 | d->tbShuffle->setOn( mediaPlayerState->shuffled() ); |
322 | setPlaylist( true); | 327 | setPlaylist( true); |
323 | } | 328 | } |
324 | 329 | ||
325 | 330 | ||
326 | void PlayListWidget::readConfig( Config& cfg ) { | 331 | void PlayListWidget::readConfig( Config& cfg ) { |
327 | cfg.setGroup("PlayList"); | 332 | cfg.setGroup("PlayList"); |
328 | QString currentString = cfg.readEntry("current", "" ); | 333 | QString currentString = cfg.readEntry("current", "" ); |
329 | int noOfFiles = cfg.readNumEntry("NumberOfFiles", 0 ); | 334 | int noOfFiles = cfg.readNumEntry("NumberOfFiles", 0 ); |
@@ -939,37 +944,39 @@ void PlayListWidget::populateVideoView() { | |||
939 | } | 944 | } |
940 | 945 | ||
941 | void PlayListWidget::openFile() { | 946 | void PlayListWidget::openFile() { |
942 | QString filename, name; | 947 | QString filename, name; |
943 | InputDialog *fileDlg; | 948 | InputDialog *fileDlg; |
944 | fileDlg = new InputDialog(this,tr("Open file or URL"),TRUE, 0); | 949 | fileDlg = new InputDialog(this,tr("Open file or URL"),TRUE, 0); |
945 | fileDlg->exec(); | 950 | fileDlg->exec(); |
946 | if( fileDlg->result() == 1 ) { | 951 | if( fileDlg->result() == 1 ) { |
947 | filename = fileDlg->text(); | 952 | filename = fileDlg->text(); |
948 | 953 | ||
949 | qDebug("Selected filename is "+filename); | 954 | qDebug("Selected filename is "+filename); |
950 | if(filename.right(3) == "m3u") { | 955 | if(filename.right(3) == "m3u") { |
951 | readm3u( filename ); | 956 | readm3u( filename ); |
952 | } else if(filename.right(3) == "pls") { | 957 | } else if(filename.right(3) == "pls") { |
953 | readPls( filename ); | 958 | readPls( filename ); |
954 | } else { | 959 | } else { |
960 | /* FIXME ....... AUDIO/X-MPEGURL is bad*/ | ||
955 | DocLnk lnk; | 961 | DocLnk lnk; |
956 | 962 | ||
957 | lnk.setName(filename); //sets file name | 963 | lnk.setName(filename); //sets file name |
958 | lnk.setFile(filename); //sets File property | 964 | lnk.setFile(filename); //sets File property |
959 | lnk.setType("audio/x-mpegurl"); | 965 | //qWarning( "Mimetype: " + MimeType( QFile::encodeName(filename) ).id() ); |
966 | lnk.setType( MimeType( QFile::encodeName(filename) ).id() ); | ||
960 | lnk.setExec("opieplayer"); | 967 | lnk.setExec("opieplayer"); |
961 | lnk.setIcon("opieplayer2/MPEGPlayer"); | 968 | lnk.setIcon("opieplayer2/MPEGPlayer"); |
962 | 969 | ||
963 | if(!lnk.writeLink()) { | 970 | if(!lnk.writeLink()) { |
964 | qDebug("Writing doclink did not work"); | 971 | qDebug("Writing doclink did not work"); |
965 | } | 972 | } |
966 | d->selectedFiles->addToSelection( lnk); | 973 | d->selectedFiles->addToSelection( lnk); |
967 | } | 974 | } |
968 | } | 975 | } |
969 | if(fileDlg) { | 976 | if(fileDlg) { |
970 | delete fileDlg; | 977 | delete fileDlg; |
971 | } | 978 | } |
972 | } | 979 | } |
973 | 980 | ||
974 | void PlayListWidget::keyReleaseEvent( QKeyEvent *e) | 981 | void PlayListWidget::keyReleaseEvent( QKeyEvent *e) |
975 | { | 982 | { |
@@ -1223,25 +1230,25 @@ void PlayListWidget::populateSkinsMenu() { | |||
1223 | QFileInfo *fi; | 1230 | QFileInfo *fi; |
1224 | while ( (fi=it.current()) ) { | 1231 | while ( (fi=it.current()) ) { |
1225 | skinName = fi->fileName(); | 1232 | skinName = fi->fileName(); |
1226 | qDebug( fi->fileName()); | 1233 | qDebug( fi->fileName()); |
1227 | if( skinName != "." && skinName != ".." && skinName !="CVS") | 1234 | if( skinName != "." && skinName != ".." && skinName !="CVS") |
1228 | item = skinsMenu->insertItem( fi->fileName()); | 1235 | item = skinsMenu->insertItem( fi->fileName()); |
1229 | if( skinName == "default") | 1236 | if( skinName == "default") |
1230 | defaultSkinIndex = item; | 1237 | defaultSkinIndex = item; |
1231 | if( skinName == skin) | 1238 | if( skinName == skin) |
1232 | skinsMenu->setItemChecked( item, TRUE); | 1239 | skinsMenu->setItemChecked( item, TRUE); |
1233 | 1240 | ||
1234 | ++it; | 1241 | ++it; |
1235 | } | 1242 | } |
1236 | } | 1243 | } |
1237 | 1244 | ||
1238 | void PlayListWidget::skinsMenuActivated(int item) { | 1245 | void PlayListWidget::skinsMenuActivated(int item) { |
1239 | for(int i = defaultSkinIndex; i > defaultSkinIndex - skinsMenu->count(); i--) { | 1246 | for(uint i = defaultSkinIndex; i > defaultSkinIndex - skinsMenu->count(); i--) { |
1240 | skinsMenu->setItemChecked( i, FALSE); | 1247 | skinsMenu->setItemChecked( i, FALSE); |
1241 | } | 1248 | } |
1242 | skinsMenu->setItemChecked( item, TRUE); | 1249 | skinsMenu->setItemChecked( item, TRUE); |
1243 | 1250 | ||
1244 | Config cfg( "OpiePlayer" ); | 1251 | Config cfg( "OpiePlayer" ); |
1245 | cfg.setGroup("Options"); | 1252 | cfg.setGroup("Options"); |
1246 | cfg.writeEntry("Skin", skinsMenu->text( item)); | 1253 | cfg.writeEntry("Skin", skinsMenu->text( item)); |
1247 | } | 1254 | } |
diff --git a/noncore/multimedia/opieplayer2/videowidget.cpp b/noncore/multimedia/opieplayer2/videowidget.cpp index 53837c7..ffda2e4 100644 --- a/noncore/multimedia/opieplayer2/videowidget.cpp +++ b/noncore/multimedia/opieplayer2/videowidget.cpp | |||
@@ -366,33 +366,33 @@ void VideoWidget::showEvent( QShowEvent* ) { | |||
366 | mouseMoveEvent( &event ); | 366 | mouseMoveEvent( &event ); |
367 | } | 367 | } |
368 | 368 | ||
369 | 369 | ||
370 | void VideoWidget::backToNormal() { | 370 | void VideoWidget::backToNormal() { |
371 | mediaPlayerState->setFullscreen( FALSE ); | 371 | mediaPlayerState->setFullscreen( FALSE ); |
372 | makeVisible(); | 372 | makeVisible(); |
373 | } | 373 | } |
374 | 374 | ||
375 | void VideoWidget::makeVisible() { | 375 | void VideoWidget::makeVisible() { |
376 | if ( mediaPlayerState->fullscreen() ) { | 376 | if ( mediaPlayerState->fullscreen() ) { |
377 | setBackgroundMode( QWidget::NoBackground ); | 377 | setBackgroundMode( QWidget::NoBackground ); |
378 | showFullScreen(); | 378 | showFullScreen(); |
379 | resize( qApp->desktop()->size() ); | 379 | resize( qApp->desktop()->size() ); |
380 | slider->hide(); | 380 | slider->hide(); |
381 | videoFrame-> setGeometry ( 0, 0, width ( ), height ( )); | 381 | videoFrame-> setGeometry ( 0, 0, width ( ), height ( )); |
382 | 382 | qApp->processEvents(); | |
383 | } else { | 383 | } else { |
384 | showNormal(); | 384 | showNormal(); |
385 | showMaximized(); | 385 | showMaximized(); |
386 | setBackgroundPixmap( *pixBg ); | 386 | setBackgroundPixmap( *pixBg ); |
387 | if ( mediaPlayerState->streaming() ) { | 387 | if ( mediaPlayerState->streaming() ) { |
388 | slider->hide(); | 388 | slider->hide(); |
389 | disconnect( mediaPlayerState, SIGNAL( positionChanged(long) ),this, SLOT( setPosition(long) ) ); | 389 | disconnect( mediaPlayerState, SIGNAL( positionChanged(long) ),this, SLOT( setPosition(long) ) ); |
390 | disconnect( mediaPlayerState, SIGNAL( positionUpdated(long) ),this, SLOT( setPosition(long) ) ); | 390 | disconnect( mediaPlayerState, SIGNAL( positionUpdated(long) ),this, SLOT( setPosition(long) ) ); |
391 | } else { | 391 | } else { |
392 | slider->show(); | 392 | slider->show(); |
393 | connect( mediaPlayerState, SIGNAL( positionChanged(long) ),this, SLOT( setPosition(long) ) ); | 393 | connect( mediaPlayerState, SIGNAL( positionChanged(long) ),this, SLOT( setPosition(long) ) ); |
394 | connect( mediaPlayerState, SIGNAL( positionUpdated(long) ),this, SLOT( setPosition(long) ) ); | 394 | connect( mediaPlayerState, SIGNAL( positionUpdated(long) ),this, SLOT( setPosition(long) ) ); |
395 | } | 395 | } |
396 | videoFrame->setGeometry( QRect( 0, 30, 240, 170 ) ); | 396 | videoFrame->setGeometry( QRect( 0, 30, 240, 170 ) ); |
397 | qApp->processEvents(); | 397 | qApp->processEvents(); |
398 | } | 398 | } |