summaryrefslogtreecommitdiff
authorbipolar <bipolar>2002-03-09 03:10:23 (UTC)
committer bipolar <bipolar>2002-03-09 03:10:23 (UTC)
commit3d03d0e3f679578080bbbf7d8b7f9eba1b9560db (patch) (side-by-side diff)
tree8ff01a8fad92869e97ba7983d16bcf7de531d69f
parentcb1d684a68565ff70fedd184eedf1ef4f2b71079 (diff)
downloadopie-3d03d0e3f679578080bbbf7d8b7f9eba1b9560db.zip
opie-3d03d0e3f679578080bbbf7d8b7f9eba1b9560db.tar.gz
opie-3d03d0e3f679578080bbbf7d8b7f9eba1b9560db.tar.bz2
ljp:added playlist in caption, startup playlist, and saving currentplaylist to config file
something like that
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/multimedia/opieplayer/main.cpp2
-rw-r--r--core/multimedia/opieplayer/playlistwidget.cpp64
2 files changed, 45 insertions, 21 deletions
diff --git a/core/multimedia/opieplayer/main.cpp b/core/multimedia/opieplayer/main.cpp
index 4f43ff6..18cd7a6 100644
--- a/core/multimedia/opieplayer/main.cpp
+++ b/core/multimedia/opieplayer/main.cpp
@@ -42,15 +42,15 @@ int main(int argc, char **argv) {
AudioWidget aw( 0, "audioUI" );
audioUI = &aw;
VideoWidget vw( 0, "videoUI" );
videoUI = &vw;
LoopControl lc( 0, "loopControl" );
loopControl = &lc;
MediaPlayer mp( 0, "mediaPlayer" );
- pl.setCaption( MediaPlayer::tr("OpiePlayer") );
+// pl.setCaption( MediaPlayer::tr("OpiePlayer") );
a.showMainDocumentWidget(&pl);
return a.exec();
}
diff --git a/core/multimedia/opieplayer/playlistwidget.cpp b/core/multimedia/opieplayer/playlistwidget.cpp
index cb58888..9969526 100644
--- a/core/multimedia/opieplayer/playlistwidget.cpp
+++ b/core/multimedia/opieplayer/playlistwidget.cpp
@@ -13,17 +13,16 @@
**
** See http://www.trolltech.com/gpl/ for GPL licensing information.
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
// code added by L. J. Potter Sat 03-02-2002 06:17:54
-
#include <qpe/qpemenubar.h>
#include <qpe/qpetoolbar.h>
#include <qpe/fileselector.h>
#include <qpe/qpeapplication.h>
#include <qpe/applnk.h>
#include <qpe/config.h>
#include <qpe/global.h>
@@ -251,28 +250,29 @@ PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl )
}
//playlists list
QWidget *LTab;
LTab = new QWidget( tabWidget, "LTab" );
playLists = new FileSelector( "playlist/plain", LTab, "fileselector" , FALSE, FALSE); //buggy
playLists->setMinimumSize(233,260);;
tabWidget->insertTab(LTab,"Lists");
+
connect( playLists, SIGNAL( fileSelected( const DocLnk &) ), this, SLOT( loadList( const DocLnk & ) ) );
// connect( playLists, SIGNAL( newSelected( const DocLnk &) ), this, SLOT( newFile( const DocLnk & ) ) );
// add the library area
QPEApplication::setStylusOperation( this, QPEApplication::RightOnHold );
- connect( audioView, SIGNAL( rightButtonClicked( QListViewItem *, const QPoint &, int)),
- this, SLOT( fauxPlay( QListViewItem *) ) );
- connect( videoView, SIGNAL( rightButtonClicked( QListViewItem *, const QPoint &, int)),
- this, SLOT( fauxPlay( QListViewItem *)) );
+// connect( audioView, SIGNAL( rightButtonClicked( QListViewItem *, const QPoint &, int)),
+// this, SLOT( fauxPlay( QListViewItem *) ) );
+// connect( videoView, SIGNAL( rightButtonClicked( QListViewItem *, const QPoint &, int)),
+// this, SLOT( fauxPlay( QListViewItem *)) );
// connect( audioView, SIGNAL( clicked( QListViewItem *) ), this, SLOT( fauxPlay( QListViewItem *) ) );
// connect( videoView, SIGNAL( clicked( QListViewItem *) ), this, SLOT( fauxPlay( QListViewItem *) ) );
connect( audioView, SIGNAL( doubleClicked( QListViewItem *) ), this, SLOT( addToSelection( QListViewItem *) ) );
connect( videoView, SIGNAL( doubleClicked( QListViewItem *) ), this, SLOT( addToSelection( QListViewItem *) ) );
connect( tabWidget, SIGNAL (currentChanged(QWidget*)),this,SLOT(tabChanged(QWidget*)));
@@ -283,43 +283,47 @@ PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl )
connect( d->selectedFiles, SIGNAL( doubleClicked( QListViewItem *) ), this, SLOT( playIt( QListViewItem *) ) );
// connect( d->selectedFiles, SIGNAL( fileSelected( const DocLnk & ) ), this, SLOT( addToSelection( const DocLnk & ) ) );
setCentralWidget( vbox5 );
Config cfg( "MediaPlayer" );
readConfig( cfg );
-
+ QString currentPlaylist = cfg.readEntry("CurrentPlaylist","");
+// qDebug("currentList is "+currentPlaylist);
+ loadList(DocLnk( currentPlaylist));
+ setCaption("OpiePlayer: "+ currentPlaylist );
+
initializeStates();
}
PlayListWidget::~PlayListWidget() {
Config cfg( "MediaPlayer" );
writeConfig( cfg );
+
if ( d->current )
delete d->current;
delete d;
}
void PlayListWidget::initializeStates() {
d->tbPlay->setOn( mediaPlayerState->playing() );
d->tbLoop->setOn( mediaPlayerState->looping() );
d->tbShuffle->setOn( mediaPlayerState->shuffled() );
// d->tbFull->setOn( mediaPlayerState->fullscreen() );
// d->tbScale->setOn( mediaPlayerState->scaled() );
// d->tbScale->setEnabled( mediaPlayerState->fullscreen() );
// setPlaylist( mediaPlayerState->playlist() );
- setPlaylist( true);
- d->selectedFiles->first();
-
+ setPlaylist( true);
+ d->selectedFiles->first();
}
void PlayListWidget::readConfig( Config& cfg ) {
cfg.setGroup("PlayList");
int noOfFiles = cfg.readNumEntry("NumberOfFiles", 0 );
@@ -367,17 +371,17 @@ void PlayListWidget::writeConfig( Config& cfg ) const {
cfg.writeEntry("NumberOfFiles", noOfFiles );
}
void PlayListWidget::addToSelection( const DocLnk& lnk ) {
- qDebug("add");
+// qDebug("add");
d->setDocumentUsed = FALSE;
if ( mediaPlayerState->playlist() )
d->selectedFiles->addToSelection( lnk );
else
mediaPlayerState->setPlaying( TRUE );
}
@@ -414,16 +418,17 @@ void PlayListWidget::addAllVideoToList() {
}
void PlayListWidget::setDocument(const QString& fileref) {
if ( fileref.isNull() ) {
QMessageBox::critical( 0, tr( "Invalid File" ), tr( "There was a problem in getting the file." ) );
return;
}
+// qDebug("setDocument");
if(fileref.find("playlist",0,TRUE) == -1) {
addToSelection( DocLnk( fileref ) );
d->setDocumentUsed = TRUE;
qApp->processEvents();
mediaPlayerState->setPlaying( FALSE );
qApp->processEvents();
mediaPlayerState->setPlaying( TRUE );
d->selectedFiles->removeSelected( );
@@ -528,46 +533,65 @@ bool PlayListWidget::last() {
return mediaPlayerState->looping();
}
void PlayListWidget::saveList() {
QString filename;
InputDialog *fileDlg;
- fileDlg=new InputDialog(this,"Save Playlist",TRUE, 0);
+ fileDlg = new InputDialog(this,"Save Playlist",TRUE, 0);
fileDlg->exec();
if( fileDlg->result() == 1 ) {
+ if ( d->current )
+ delete d->current;
filename = fileDlg->LineEdit1->text();//+".playlist";
- qDebug("saving playlist "+filename+".playlist");
+// qDebug("saving playlist "+filename+".playlist");
Config cfg( filename +".playlist");
writeConfig( cfg );
+ if( playLists->selected()->name() == filename) {
+// qDebug("same name so delete lnk");
+ QFile().remove(playLists->selected()->file());
+ QFile().remove(playLists->selected()->linkFile());
+ playLists->reread();
+ }
+
DocLnk lnk;
// lnk.setComment( "");
lnk.setFile(QDir::homeDirPath()+"/Settings/"+filename+".playlist.conf"); //sets File property
lnk.setType("playlist/plain");// hey is this a REGISTERED mime type?!?!? ;D
lnk.setIcon("mpegplayer/playlist2");
lnk.setName( filename); //sets file name
if(!lnk.writeLink())
qDebug("Writing doclink did not work");
- }
-
+ }
+ Config config( "MediaPlayer" );
+ config.writeEntry("CurrentPlaylist",filename);
+ setCaption("OpiePlayer: "+filename);
+ d->selectedFiles->first();
if(fileDlg)
delete fileDlg;
}
void PlayListWidget::loadList( const DocLnk & lnk) {
- qDebug("load list "+ lnk.name()+".playlist");
- clearList();
- Config cfg( lnk.name()+".playlist");
- readConfig(cfg);
- tabWidget->setCurrentPage(0);
- setCaption("OpiePlayer: "+lnk.name());
+ QString name= lnk.name();
+// qDebug("currentList is "+name);
+ if( name.length()>1) {
+ setCaption("OpiePlayer: "+name);
+// qDebug("load list "+ name+".playlist");
+ clearList();
+ Config cfg( name+".playlist");
+ readConfig(cfg);
+ tabWidget->setCurrentPage(0);
+ Config config( "MediaPlayer" );
+ config.writeEntry("CurrentPlaylist", name);
+ d->selectedFiles->first();
+ }
}
void PlayListWidget::setPlaylist( bool shown ) {
if ( shown )
d->playListFrame->show();
else
d->playListFrame->hide();