summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidget.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp
index e33998f..612fd45 100644
--- a/noncore/multimedia/opieplayer2/playlistwidget.cpp
+++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp
@@ -319,17 +319,19 @@ void PlayListWidget::readConfig( Config& cfg ) {
QString currentString = cfg.readEntry("current", "" );
int noOfFiles = cfg.readNumEntry("NumberOfFiles", 0 );
for ( int i = 0; i < noOfFiles; i++ ) {
QString entryName;
entryName.sprintf( "File%i", i + 1 );
QString linkFile = cfg.readEntry( entryName );
+ if(QFileInfo( linkFile).exists() ) {
DocLnk lnk( linkFile );
- if ( lnk.isValid() ) {
+ if ( QFileInfo( lnk.file()).exists() || linkFile.find("http",0,TRUE) != -1) {
d->selectedFiles->addToSelection( lnk );
}
}
+ }
d->selectedFiles->setSelectedItem( currentString);
}
void PlayListWidget::writeConfig( Config& cfg ) const {
@@ -648,12 +650,13 @@ void PlayListWidget::addSelected() {
// iterate through all items of the listview
for ( ; it.current(); ++it ) {
if ( it.current()->isSelected() ) {
QListIterator<DocLnk> dit( files.children() );
for ( ; dit.current(); ++dit ) {
if( dit.current()->name() == it.current()->text(0) ) {
+ if(QFileInfo( dit.current()->file()).exists())
d->selectedFiles->addToSelection( **dit );
}
}
audioView->setSelected( it.current(),FALSE);
}
}
@@ -665,12 +668,13 @@ void PlayListWidget::addSelected() {
// iterate through all items of the listview
for ( ; it.current(); ++it ) {
if ( it.current()->isSelected() ) {
QListIterator<DocLnk> dit( vFiles.children() );
for ( ; dit.current(); ++dit ) {
if( dit.current()->name() == it.current()->text(0) ) {
+ if(QFileInfo( dit.current()->file()).exists())
d->selectedFiles->addToSelection( **dit );
}
}
videoView->setSelected( it.current(),FALSE);
}
}
@@ -698,21 +702,23 @@ void PlayListWidget::addToSelection( QListViewItem *it) {
if(it) {
switch (tabWidget->currentPageIndex()) {
case 1: {
QListIterator<DocLnk> dit( files.children() );
for ( ; dit.current(); ++dit ) {
if( dit.current()->name() == it->text(0)) {
+ if(QFileInfo( dit.current()->file()).exists())
d->selectedFiles->addToSelection( **dit );
}
}
}
break;
case 2: {
QListIterator<DocLnk> dit( vFiles.children() );
for ( ; dit.current(); ++dit ) {
if( dit.current()->name() == it->text(0)) {
+ if(QFileInfo( dit.current()->file()).exists())
d->selectedFiles->addToSelection( **dit );
}
}
}
break;
case 0:
@@ -1108,22 +1114,24 @@ void PlayListWidget::readm3u(const QString &filename) {
s=t.readLine();
if(s.find("#",0,TRUE) == -1) {
if(s.find(" ",0,TRUE) == -1) { // not sure if this is neede since cf uses vfat
if(s.left(2) == "E:" || s.left(2) == "P:") {
s=s.right(s.length()-2);
+ if(QFile(s).exists()) {
DocLnk lnk( s );
QFileInfo f(s);
QString name = f.baseName();
name = name.right( name.length()-name.findRev( "\\",-1,TRUE ) -1 );
lnk.setName( name );
s=s.replace( QRegExp("\\"),"/");
lnk.setFile( s );
lnk.writeLink();
qDebug("add "+name);
d->selectedFiles->addToSelection( lnk);
+ }
} else { // is url
s.replace(QRegExp("%20")," ");
DocLnk lnk( s );
QString name;
if(name.left(4)=="http") {
name = s.right( s.length() - 7);