summaryrefslogtreecommitdiff
path: root/core/multimedia/opieplayer/playlistwidget.cpp
authorsandman <sandman>2002-12-11 00:17:09 (UTC)
committer sandman <sandman>2002-12-11 00:17:09 (UTC)
commit6c71f5ccd9506234a317d9ff3d119613c457e769 (patch) (unidiff)
treef78a9d2a0981dbb446096bf072ca5decaa5e1d59 /core/multimedia/opieplayer/playlistwidget.cpp
parente9d1213578b83f8380c4681186246a2b32ae6375 (diff)
downloadopie-6c71f5ccd9506234a317d9ff3d119613c457e769.zip
opie-6c71f5ccd9506234a317d9ff3d119613c457e769.tar.gz
opie-6c71f5ccd9506234a317d9ff3d119613c457e769.tar.bz2
fix for a stupid bug .. op1 wants to strip the extension, but instead
stripps everything after the first '.'. So filenames like "02. foobar.mp3" become "02"
Diffstat (limited to 'core/multimedia/opieplayer/playlistwidget.cpp') (more/less context) (show whitespace changes)
-rw-r--r--core/multimedia/opieplayer/playlistwidget.cpp21
1 files changed, 14 insertions, 7 deletions
diff --git a/core/multimedia/opieplayer/playlistwidget.cpp b/core/multimedia/opieplayer/playlistwidget.cpp
index c28548c..8b25a4c 100644
--- a/core/multimedia/opieplayer/playlistwidget.cpp
+++ b/core/multimedia/opieplayer/playlistwidget.cpp
@@ -80,12 +80,19 @@
80#define CAN_SAVE_LOAD_PLAYLISTS 80#define CAN_SAVE_LOAD_PLAYLISTS
81 81
82extern AudioWidget *audioUI; 82extern AudioWidget *audioUI;
83extern VideoWidget *videoUI; 83extern VideoWidget *videoUI;
84extern MediaPlayerState *mediaPlayerState; 84extern MediaPlayerState *mediaPlayerState;
85 85
86static inline QString fullBaseName ( const QFileInfo &fi )
87{
88 QString str = fi. fileName ( );
89 return str. left ( str. findRev ( '.' ));
90}
91
92
86QString audioMimes ="audio/mpeg;audio/x-wav;audio/x-ogg"; 93QString audioMimes ="audio/mpeg;audio/x-wav;audio/x-ogg";
87// class myFileSelector { 94// class myFileSelector {
88 95
89// }; 96// };
90class PlayListWidgetPrivate { 97class PlayListWidgetPrivate {
91public: 98public:
@@ -321,13 +328,13 @@ PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl )
321 setCentralWidget( vbox5 ); 328 setCentralWidget( vbox5 );
322 329
323 Config cfg( "OpiePlayer" ); 330 Config cfg( "OpiePlayer" );
324 readConfig( cfg ); 331 readConfig( cfg );
325 QString currentPlaylist = cfg.readEntry("CurrentPlaylist","default"); 332 QString currentPlaylist = cfg.readEntry("CurrentPlaylist","default");
326 loadList(DocLnk( currentPlaylist)); 333 loadList(DocLnk( currentPlaylist));
327 setCaption(tr("OpiePlayer: ")+ QFileInfo(currentPlaylist).baseName()); 334 setCaption(tr("OpiePlayer: ")+ fullBaseName ( QFileInfo(currentPlaylist)));
328 335
329 initializeStates(); 336 initializeStates();
330} 337}
331 338
332 339
333PlayListWidget::~PlayListWidget() { 340PlayListWidget::~PlayListWidget() {
@@ -678,13 +685,13 @@ void PlayListWidget::addSelected() {
678 filename=videoView->currentItem()->text(3); 685 filename=videoView->currentItem()->text(3);
679 // tabWidget->setCurrentPage(0); 686 // tabWidget->setCurrentPage(0);
680 687
681 } 688 }
682 break; 689 break;
683 }; 690 };
684 lnk.setName( QFileInfo(filename).baseName() ); //sets name 691 lnk.setName( fullBaseName ( QFileInfo(filename))); //sets name
685 lnk.setFile( filename ); //sets file name 692 lnk.setFile( filename ); //sets file name
686 d->selectedFiles->addToSelection( lnk); 693 d->selectedFiles->addToSelection( lnk);
687 tabWidget->setCurrentPage(0); 694 tabWidget->setCurrentPage(0);
688 writeCurrentM3u(); 695 writeCurrentM3u();
689 696
690} 697}
@@ -713,13 +720,13 @@ void PlayListWidget::addToSelection( QListViewItem *it) {
713 }; 720 };
714 // case 1: { 721 // case 1: {
715 DocLnk lnk; 722 DocLnk lnk;
716 QString filename; 723 QString filename;
717 724
718 filename=it->text(3); 725 filename=it->text(3);
719 lnk.setName( QFileInfo(filename).baseName() ); //sets name 726 lnk.setName( fullBaseName ( QFileInfo(filename)) ); //sets name
720 lnk.setFile( filename ); //sets file name 727 lnk.setFile( filename ); //sets file name
721 d->selectedFiles->addToSelection( lnk); 728 d->selectedFiles->addToSelection( lnk);
722 729
723 writeCurrentM3u(); 730 writeCurrentM3u();
724 tabWidget->setCurrentPage(0); 731 tabWidget->setCurrentPage(0);
725 732
@@ -1035,13 +1042,13 @@ void PlayListWidget::openFile() {
1035 else if( filename.right( 3) == "m3u" ) { 1042 else if( filename.right( 3) == "m3u" ) {
1036 readm3u( filename ); 1043 readm3u( filename );
1037 1044
1038 } else if( filename.right(3) == "pls" ) { 1045 } else if( filename.right(3) == "pls" ) {
1039 readPls( filename ); 1046 readPls( filename );
1040 } else { 1047 } else {
1041 lnk.setName( QFileInfo(filename).baseName() ); //sets name 1048 lnk.setName( fullBaseName ( QFileInfo(filename)) ); //sets name
1042 lnk.setFile( filename ); //sets file name 1049 lnk.setFile( filename ); //sets file name
1043 d->selectedFiles->addToSelection( lnk); 1050 d->selectedFiles->addToSelection( lnk);
1044 writeCurrentM3u(); 1051 writeCurrentM3u();
1045 } 1052 }
1046 } 1053 }
1047 1054
@@ -1071,13 +1078,13 @@ void PlayListWidget::readm3u( const QString &filename ) {
1071 lnk.setFile( s+"/"); //if url with no extension 1078 lnk.setFile( s+"/"); //if url with no extension
1072 else 1079 else
1073 lnk.setFile( s ); //sets file name 1080 lnk.setFile( s ); //sets file name
1074 1081
1075 } else { 1082 } else {
1076 // if( QFileInfo( s ).exists() ) { 1083 // if( QFileInfo( s ).exists() ) {
1077 lnk.setName( QFileInfo(s).baseName()); 1084 lnk.setName( fullBaseName ( QFileInfo(s)));
1078 // if(s.right(4) == '.') {//if regular file 1085 // if(s.right(4) == '.') {//if regular file
1079 if(s.left(1) != "/") { 1086 if(s.left(1) != "/") {
1080 // qDebug("set link "+QFileInfo(filename).dirPath()+"/"+s); 1087 // qDebug("set link "+QFileInfo(filename).dirPath()+"/"+s);
1081 lnk.setFile( QFileInfo(filename).dirPath()+"/"+s); 1088 lnk.setFile( QFileInfo(filename).dirPath()+"/"+s);
1082 lnk.setIcon("SoundPlayer"); 1089 lnk.setIcon("SoundPlayer");
1083 } else { 1090 } else {
@@ -1097,13 +1104,13 @@ void PlayListWidget::readm3u( const QString &filename ) {
1097 1104
1098// m3uList->write(); 1105// m3uList->write();
1099 m3uList->close(); 1106 m3uList->close();
1100 if(m3uList) delete m3uList; 1107 if(m3uList) delete m3uList;
1101 1108
1102 d->selectedFiles->setSelectedItem( s); 1109 d->selectedFiles->setSelectedItem( s);
1103 setCaption(tr("OpiePlayer: ")+ QFileInfo(filename).baseName()); 1110 setCaption(tr("OpiePlayer: ")+ fullBaseName ( QFileInfo(filename)));
1104 1111
1105} 1112}
1106 1113
1107/* 1114/*
1108reads pls and adds files/urls to playlist */ 1115reads pls and adds files/urls to playlist */
1109void PlayListWidget::readPls( const QString &filename ) { 1116void PlayListWidget::readPls( const QString &filename ) {
@@ -1116,13 +1123,13 @@ void PlayListWidget::readPls( const QString &filename ) {
1116 1123
1117 for ( QStringList::ConstIterator it = m3uList->begin(); it != m3uList->end(); ++it ) { 1124 for ( QStringList::ConstIterator it = m3uList->begin(); it != m3uList->end(); ++it ) {
1118 s = *it; 1125 s = *it;
1119 // s.replace( QRegExp( "%20" )," " ); 1126 // s.replace( QRegExp( "%20" )," " );
1120 DocLnk lnk( s ); 1127 DocLnk lnk( s );
1121 QFileInfo f( s ); 1128 QFileInfo f( s );
1122 QString name = f.baseName(); 1129 QString name = fullBaseName ( f);
1123 1130
1124 if( name.left( 4 ) == "http" ) { 1131 if( name.left( 4 ) == "http" ) {
1125 name = s.right( s.length() - 7); 1132 name = s.right( s.length() - 7);
1126 } else { 1133 } else {
1127 name = s; 1134 name = s;
1128 } 1135 }