summaryrefslogtreecommitdiff
path: root/noncore/multimedia/opieplayer2
authorllornkcor <llornkcor>2002-09-04 23:38:09 (UTC)
committer llornkcor <llornkcor>2002-09-04 23:38:09 (UTC)
commit3f2a74813b552c6f7a4450ec6294bbbcc5b811c5 (patch) (unidiff)
treea29f6d3436365b13b71615052cf08817225d0d78 /noncore/multimedia/opieplayer2
parent95d24f601f7845e49092068ad358030024fa6097 (diff)
downloadopie-3f2a74813b552c6f7a4450ec6294bbbcc5b811c5.zip
opie-3f2a74813b552c6f7a4450ec6294bbbcc5b811c5.tar.gz
opie-3f2a74813b552c6f7a4450ec6294bbbcc5b811c5.tar.bz2
change playing in file lists. no loop mode
Diffstat (limited to 'noncore/multimedia/opieplayer2') (more/less context) (show whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/audiowidget.cpp1
-rw-r--r--noncore/multimedia/opieplayer2/inputDialog.cpp1
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayer.cpp48
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayer.h3
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidget.cpp84
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidget.h3
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidgetgui.cpp2
7 files changed, 97 insertions, 45 deletions
diff --git a/noncore/multimedia/opieplayer2/audiowidget.cpp b/noncore/multimedia/opieplayer2/audiowidget.cpp
index 040e965..446fa45 100644
--- a/noncore/multimedia/opieplayer2/audiowidget.cpp
+++ b/noncore/multimedia/opieplayer2/audiowidget.cpp
@@ -453,6 +453,7 @@ void AudioWidget::mouseMoveEvent( QMouseEvent *event ) {
453 if ( !audioButtons[i].isToggle ) { 453 if ( !audioButtons[i].isToggle ) {
454 setToggleButton( i, FALSE ); 454 setToggleButton( i, FALSE );
455 } 455 }
456 qDebug("mouseEvent %d", i);
456 switch (i) { 457 switch (i) {
457 case AudioPlay: 458 case AudioPlay:
458 if( mediaPlayerState->isPaused ) { 459 if( mediaPlayerState->isPaused ) {
diff --git a/noncore/multimedia/opieplayer2/inputDialog.cpp b/noncore/multimedia/opieplayer2/inputDialog.cpp
index 9edb1d3..62240b2 100644
--- a/noncore/multimedia/opieplayer2/inputDialog.cpp
+++ b/noncore/multimedia/opieplayer2/inputDialog.cpp
@@ -25,6 +25,7 @@ InputDialog::InputDialog( QWidget* parent, const char* name, bool modal, WFlags
25 connect( browserButton, SIGNAL(released()),this,SLOT(browse())); 25 connect( browserButton, SIGNAL(released()),this,SLOT(browse()));
26 LineEdit1 = new QLineEdit( this, "LineEdit1" ); 26 LineEdit1 = new QLineEdit( this, "LineEdit1" );
27 LineEdit1->setGeometry( QRect( 4, 10, 190, 22 ) ); 27 LineEdit1->setGeometry( QRect( 4, 10, 190, 22 ) );
28 LineEdit1->setFocus();
28} 29}
29/* 30/*
30 * return the current text(input) 31 * return the current text(input)
diff --git a/noncore/multimedia/opieplayer2/mediaplayer.cpp b/noncore/multimedia/opieplayer2/mediaplayer.cpp
index bf2acc8..553e3c1 100644
--- a/noncore/multimedia/opieplayer2/mediaplayer.cpp
+++ b/noncore/multimedia/opieplayer2/mediaplayer.cpp
@@ -3,6 +3,7 @@
3#include <qpe/resource.h> 3#include <qpe/resource.h>
4#include <qpe/config.h> 4#include <qpe/config.h>
5#include <qpe/qcopenvelope_qws.h> 5#include <qpe/qcopenvelope_qws.h>
6#include <qfileinfo.h>
6 7
7#include <qmainwindow.h> 8#include <qmainwindow.h>
8#include <qmessagebox.h> 9#include <qmessagebox.h>
@@ -89,29 +90,47 @@ void MediaPlayer::setPlaying( bool play ) {
89 return; 90 return;
90 } 91 }
91 92
93 QString tickerText, time, fileName;
94 if( playList->whichList() == 0 ) { //check for filelist
92 const DocLnk *playListCurrent = playList->current(); 95 const DocLnk *playListCurrent = playList->current();
93 if ( playListCurrent != NULL ) { 96 if ( playListCurrent != NULL ) {
94 currentFile = playListCurrent; 97 currentFile = playListCurrent;
95 } 98 }
96
97 xineControl->play( currentFile->file() ); 99 xineControl->play( currentFile->file() );
100 fileName = currentFile->name();
101 long seconds = mediaPlayerState->length();//
102 time.sprintf("%li:%02i", seconds/60, (int)seconds%60 );
103 qDebug(time);
98 104
105 } else { //if playing in file list.. play in a different way
106 // random and looping settings enabled causes problems here,
107 // since there is no selected file in the playlist, but a selected file in the file list,
108 // so we remember and shutoff
109 l = mediaPlayerState->looping();
110 if(l)
111 mediaPlayerState->setLooping( false );
112 r = mediaPlayerState->shuffled();
113 mediaPlayerState->setShuffled(false);
114
115 fileName = playList->currentFileListPathName();
116 xineControl->play( fileName);
99 long seconds = mediaPlayerState->length();// 117 long seconds = mediaPlayerState->length();//
100 QString time; time.sprintf("%li:%02i", seconds/60, (int)seconds%60 ); 118 time.sprintf("%li:%02i", seconds/60, (int)seconds%60 );
101 qDebug(time); 119 qDebug(time);
120 if( fileName.left(4) != "http" )
121 fileName = QFileInfo( fileName).baseName();
102 122
103 QString tickerText; 123 }
104 if( currentFile->file().left(4) == "http" ) 124 if( fileName.left(4) == "http" )
105 tickerText= tr( " File: " ) + currentFile->name(); 125 tickerText= tr( " File: " ) + fileName;
106 else 126 else
107 tickerText = tr( " File: " ) + currentFile->name() + tr(", Length: ") + time; 127 tickerText = tr( " File: " ) + fileName + tr(", Length: ") + time;
108 128 audioUI->setTickerText( tickerText );
109 audioUI->setTickerText( currentFile->file( ) );
110
111} 129}
112 130
113 131
114void MediaPlayer::prev() { 132void MediaPlayer::prev() {
133 if(playList->whichList() == 0) { //if using the playlist
115 if ( playList->prev() ) { 134 if ( playList->prev() ) {
116 play(); 135 play();
117 } else if ( mediaPlayerState->looping() ) { 136 } else if ( mediaPlayerState->looping() ) {
@@ -122,9 +141,12 @@ void MediaPlayer::prev() {
122 mediaPlayerState->setList(); 141 mediaPlayerState->setList();
123 } 142 }
124} 143}
144}
125 145
126 146
127void MediaPlayer::next() { 147void MediaPlayer::next() {
148
149 if(playList->whichList() == 0) { //if using the playlist
128 if ( playList->next() ) { 150 if ( playList->next() ) {
129 play(); 151 play();
130 } else if ( mediaPlayerState->looping() ) { 152 } else if ( mediaPlayerState->looping() ) {
@@ -134,6 +156,14 @@ void MediaPlayer::next() {
134 } else { 156 } else {
135 mediaPlayerState->setList(); 157 mediaPlayerState->setList();
136 } 158 }
159 } else { //if playing from file list, let's just stop
160 qDebug("<<<<<<<<<<<<<<<<<stop for filelists");
161 mediaPlayerState->setPlaying(false);
162 mediaPlayerState->setView('l');
163 if(l) mediaPlayerState->setLooping(l);
164 if(r) mediaPlayerState->setShuffled(r);
165 }
166 qApp->processEvents();
137} 167}
138 168
139 169
diff --git a/noncore/multimedia/opieplayer2/mediaplayer.h b/noncore/multimedia/opieplayer2/mediaplayer.h
index 81fab88..05be128 100644
--- a/noncore/multimedia/opieplayer2/mediaplayer.h
+++ b/noncore/multimedia/opieplayer2/mediaplayer.h
@@ -17,7 +17,6 @@ class MediaPlayer : public QObject {
17public: 17public:
18 MediaPlayer( QObject *parent, const char *name ); 18 MediaPlayer( QObject *parent, const char *name );
19 ~MediaPlayer(); 19 ~MediaPlayer();
20
21private slots: 20private slots:
22 void setPlaying( bool ); 21 void setPlaying( bool );
23 void pauseCheck( bool ); 22 void pauseCheck( bool );
@@ -34,7 +33,7 @@ protected:
34 void timerEvent( QTimerEvent *e ); 33 void timerEvent( QTimerEvent *e );
35 void keyReleaseEvent( QKeyEvent *e); 34 void keyReleaseEvent( QKeyEvent *e);
36private: 35private:
37 bool isBlanked; 36 bool isBlanked, l, r;
38 int fd; 37 int fd;
39 int volumeDirection; 38 int volumeDirection;
40 const DocLnk *currentFile; 39 const DocLnk *currentFile;
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp
index 3bd04bc..15c70c3 100644
--- a/noncore/multimedia/opieplayer2/playlistwidget.cpp
+++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp
@@ -321,7 +321,7 @@ void PlayListWidget::useSelectedDocument() {
321 321
322 322
323const DocLnk *PlayListWidget::current() { // this is fugly 323const DocLnk *PlayListWidget::current() { // this is fugly
324 switch ( tabWidget->currentPageIndex() ) { 324 switch ( whichList() ) {
325 case 0: //playlist 325 case 0: //playlist
326 { 326 {
327// qDebug("playlist"); 327// qDebug("playlist");
@@ -394,6 +394,7 @@ bool PlayListWidget::prev() {
394 394
395 395
396bool PlayListWidget::next() { 396bool PlayListWidget::next() {
397qDebug("<<<<<<<<<<<<next()");
397 if ( mediaPlayerState->playlist() ) { 398 if ( mediaPlayerState->playlist() ) {
398 if ( mediaPlayerState->shuffled() ) { 399 if ( mediaPlayerState->shuffled() ) {
399 return prev(); 400 return prev();
@@ -497,7 +498,7 @@ void PlayListWidget::addSelected() {
497 QString currentPlaylist = cfg.readEntry("CurrentPlaylist",""); 498 QString currentPlaylist = cfg.readEntry("CurrentPlaylist","");
498 // int noOfFiles = cfg.readNumEntry("NumberOfFiles", 0 ); 499 // int noOfFiles = cfg.readNumEntry("NumberOfFiles", 0 );
499 500
500 switch (tabWidget->currentPageIndex()) { 501 switch (whichList()) {
501 case 0: //playlist 502 case 0: //playlist
502 break; 503 break;
503 case 1: { //audio 504 case 1: { //audio
@@ -557,7 +558,7 @@ void PlayListWidget::addToSelection( QListViewItem *it) {
557 d->setDocumentUsed = FALSE; 558 d->setDocumentUsed = FALSE;
558 559
559 if(it) { 560 if(it) {
560 switch (tabWidget->currentPageIndex()) { 561 switch ( whichList()) {
561 case 1: { 562 case 1: {
562 QListIterator<DocLnk> dit( files.children() ); 563 QListIterator<DocLnk> dit( files.children() );
563 for ( ; dit.current(); ++dit ) { 564 for ( ; dit.current(); ++dit ) {
@@ -588,7 +589,7 @@ void PlayListWidget::addToSelection( QListViewItem *it) {
588 589
589void PlayListWidget::tabChanged(QWidget *) { 590void PlayListWidget::tabChanged(QWidget *) {
590 591
591 switch ( tabWidget->currentPageIndex()) { 592 switch ( whichList()) {
592 case 0: 593 case 0:
593 { 594 {
594 if( !tbDeletePlaylist->isHidden() ) { 595 if( !tbDeletePlaylist->isHidden() ) {
@@ -634,35 +635,34 @@ void PlayListWidget::tabChanged(QWidget *) {
634 635
635 636
636void PlayListWidget::btnPlay(bool b) { 637void PlayListWidget::btnPlay(bool b) {
637 // mediaPlayerState->setPlaying(b);
638 switch ( tabWidget->currentPageIndex()) {
639 case 0:
640 {
641 mediaPlayerState->setPlaying(b);
642 }
643 break;
644 case 1:
645 {
646 addToSelection( audioView->currentItem() );
647 mediaPlayerState->setPlaying(b);
648 d->selectedFiles->removeSelected( );
649 tabWidget->setCurrentPage(1);
650 d->selectedFiles->unSelect();
651 insanityBool=FALSE;
652 }// audioView->clearSelection();
653 break;
654 case 2:
655 {
656 addToSelection( videoView->currentItem() );
657 mediaPlayerState->setPlaying(b); 638 mediaPlayerState->setPlaying(b);
658 qApp->processEvents(); 639 qApp->processEvents();
659 d->selectedFiles->removeSelected( );
660 tabWidget->setCurrentPage(2);
661 d->selectedFiles->unSelect();
662 insanityBool=FALSE; 640 insanityBool=FALSE;
663 }// videoView->clearSelection(); 641// switch ( whichList()) {
664 break; 642// case 0:
665 }; 643// {
644// mediaPlayerState->setPlaying(b);
645// }
646// break;
647// case 1:
648// {
649// mediaPlayerState->setPlaying(b);
650// qApp->processEvents();
651// insanityBool=FALSE;
652// }// audioView->clearSelection();
653// break;
654// case 2:
655// {
656// // addToSelection( videoView->currentItem() );
657// mediaPlayerState->setPlaying(b);
658// qApp->processEvents();
659// // d->selectedFiles->removeSelected( );
660// // tabWidget->setCurrentPage(2);
661// // d->selectedFiles->unSelect();
662// insanityBool=FALSE;
663// }// videoView->clearSelection();
664// break;
665// };
666 666
667} 667}
668 668
@@ -736,7 +736,8 @@ void PlayListWidget::populateAudioView() {
736 size=0; 736 size=0;
737 else 737 else
738 size = QFile( dit.current()->file() ).size(); 738 size = QFile( dit.current()->file() ).size();
739 newItem= /*(void)*/ new QListViewItem( audioView, dit.current()->name(), QString::number(size ), storage); 739 newItem= /*(void)*/ new QListViewItem( audioView, dit.current()->name(),
740 QString::number(size ), storage, dit.current()->file());
740 newItem->setPixmap( 0, Resource::loadPixmap( "opieplayer2/musicfile" ) ); 741 newItem->setPixmap( 0, Resource::loadPixmap( "opieplayer2/musicfile" ) );
741 } 742 }
742 } 743 }
@@ -755,20 +756,21 @@ void PlayListWidget::populateVideoView() {
755 QListIterator<DocLnk> Vdit( vFiles.children() ); 756 QListIterator<DocLnk> Vdit( vFiles.children() );
756 QListIterator<FileSystem> it ( fs ); 757 QListIterator<FileSystem> it ( fs );
757 videoView->clear(); 758 videoView->clear();
758 QString storage; 759 QString storage, pathName;
759 for ( ; Vdit.current(); ++Vdit ) { 760 for ( ; Vdit.current(); ++Vdit ) {
760 for( ; it.current(); ++it ) { 761 for( ; it.current(); ++it ) {
761 const QString name = (*it)->name(); 762 const QString name = (*it)->name();
762 const QString path = (*it)->path(); 763 const QString path = (*it)->path();
763 if( Vdit.current()->file().find(path) != -1 ) { 764 if( Vdit.current()->file().find(path) != -1 ) {
764 storage=name; 765 storage=name;
766 pathName=path;
765 } 767 }
766 } 768 }
767 769
768 QListViewItem * newItem; 770 QListViewItem * newItem;
769 if ( QFile( Vdit.current()->file() ).exists() ) { 771 if ( QFile( Vdit.current()->file() ).exists() ) {
770 newItem= /*(void)*/ new QListViewItem( videoView, Vdit.current()->name(), 772 newItem= /*(void)*/ new QListViewItem( videoView, Vdit.current()->name(),
771 QString::number( QFile( Vdit.current()->file() ).size() ), storage ); 773 QString::number( QFile( Vdit.current()->file() ).size() ), storage, Vdit.current()->file());
772 newItem->setPixmap(0, Resource::loadPixmap( "opieplayer2/videofile" ) ); 774 newItem->setPixmap(0, Resource::loadPixmap( "opieplayer2/videofile" ) );
773 } 775 }
774 } 776 }
@@ -1062,3 +1064,19 @@ void PlayListWidget::skinsMenuActivated( int item ) {
1062 cfg.setGroup("Options"); 1064 cfg.setGroup("Options");
1063 cfg.writeEntry("Skin", skinsMenu->text( item ) ); 1065 cfg.writeEntry("Skin", skinsMenu->text( item ) );
1064} 1066}
1067
1068int PlayListWidget::whichList() {
1069 return tabWidget->currentPageIndex();
1070}
1071
1072QString PlayListWidget::currentFileListPathName() {
1073 switch (whichList()) {
1074 case 1:
1075 return audioView->currentItem()->text(3);
1076 break;
1077 case 2:
1078 return videoView->currentItem()->text(3);
1079 break;
1080 };
1081 return "";
1082}
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.h b/noncore/multimedia/opieplayer2/playlistwidget.h
index dcfdd48..2873dca 100644
--- a/noncore/multimedia/opieplayer2/playlistwidget.h
+++ b/noncore/multimedia/opieplayer2/playlistwidget.h
@@ -66,6 +66,7 @@ public:
66 const DocLnk *current(); 66 const DocLnk *current();
67 void useSelectedDocument(); 67 void useSelectedDocument();
68 int selected; 68 int selected;
69 int whichList();
69 70
70public slots: 71public slots:
71 bool first(); 72 bool first();
@@ -73,7 +74,7 @@ public slots:
73 bool next(); 74 bool next();
74 bool prev(); 75 bool prev();
75 void writeConfig( Config& cfg ) const; 76 void writeConfig( Config& cfg ) const;
76 77 QString currentFileListPathName();
77protected: 78protected:
78 void keyReleaseEvent( QKeyEvent *e); 79 void keyReleaseEvent( QKeyEvent *e);
79 80
diff --git a/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp b/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp
index 250833c..f073102 100644
--- a/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp
+++ b/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp
@@ -155,6 +155,7 @@ PlayListWidgetGui::PlayListWidgetGui( QWidget* parent, const char* name, WFlags
155 audioView->addColumn( tr( "Title" ), 140 ); 155 audioView->addColumn( tr( "Title" ), 140 );
156 audioView->addColumn( tr( "Size" ), -1 ); 156 audioView->addColumn( tr( "Size" ), -1 );
157 audioView->addColumn( tr( "Media" ), -1 ); 157 audioView->addColumn( tr( "Media" ), -1 );
158 audioView->addColumn( tr( "Path" ), 0 );
158 audioView->setColumnAlignment( 1, Qt::AlignRight ); 159 audioView->setColumnAlignment( 1, Qt::AlignRight );
159 audioView->setColumnAlignment( 2, Qt::AlignRight ); 160 audioView->setColumnAlignment( 2, Qt::AlignRight );
160 audioView->setAllColumnsShowFocus( TRUE ); 161 audioView->setAllColumnsShowFocus( TRUE );
@@ -176,6 +177,7 @@ PlayListWidgetGui::PlayListWidgetGui( QWidget* parent, const char* name, WFlags
176 videoView->addColumn( tr( "Title" ), 140); 177 videoView->addColumn( tr( "Title" ), 140);
177 videoView->addColumn( tr( "Size" ), -1 ); 178 videoView->addColumn( tr( "Size" ), -1 );
178 videoView->addColumn(tr( "Media" ), -1 ); 179 videoView->addColumn(tr( "Media" ), -1 );
180 videoView->addColumn(tr( "Path" ), 0 );
179 videoView->setColumnAlignment( 1, Qt::AlignRight ); 181 videoView->setColumnAlignment( 1, Qt::AlignRight );
180 videoView->setColumnAlignment( 2, Qt::AlignRight ); 182 videoView->setColumnAlignment( 2, Qt::AlignRight );
181 videoView->setAllColumnsShowFocus( TRUE ); 183 videoView->setAllColumnsShowFocus( TRUE );