summaryrefslogtreecommitdiff
path: root/noncore/multimedia/opieplayer2/playlistwidget.cpp
Unidiff
Diffstat (limited to 'noncore/multimedia/opieplayer2/playlistwidget.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidget.cpp19
1 files changed, 13 insertions, 6 deletions
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,20 +1,21 @@
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>
@@ -298,28 +299,32 @@ PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl )
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
309PlayListWidget::~PlayListWidget() { 310PlayListWidget::~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
317void PlayListWidget::initializeStates() { 322void 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
@@ -943,29 +948,31 @@ void PlayListWidget::openFile() {
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 }
@@ -1227,21 +1234,21 @@ void PlayListWidget::populateSkinsMenu() {
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
1238void PlayListWidget::skinsMenuActivated(int item) { 1245void 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}