summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2002-03-20 02:07:17 (UTC)
committer llornkcor <llornkcor>2002-03-20 02:07:17 (UTC)
commitea1f3581a3452f735bb0cf5703b9bf1b20316b71 (patch) (unidiff)
treead31a417eee542534b42ed229d70cae834414e9d
parent25653ee75580cdd24a16e82abe7271c9402429c7 (diff)
downloadopie-ea1f3581a3452f735bb0cf5703b9bf1b20316b71.zip
opie-ea1f3581a3452f735bb0cf5703b9bf1b20316b71.tar.gz
opie-ea1f3581a3452f735bb0cf5703b9bf1b20316b71.tar.bz2
added slight workaround for audio/video playig continuing in playlist
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/multimedia/opieplayer/playlistselection.cpp6
-rw-r--r--core/multimedia/opieplayer/playlistselection.h1
-rw-r--r--core/multimedia/opieplayer/playlistwidget.cpp8
3 files changed, 11 insertions, 4 deletions
diff --git a/core/multimedia/opieplayer/playlistselection.cpp b/core/multimedia/opieplayer/playlistselection.cpp
index 756e3b4..6259b3f 100644
--- a/core/multimedia/opieplayer/playlistselection.cpp
+++ b/core/multimedia/opieplayer/playlistselection.cpp
@@ -100,84 +100,88 @@ const DocLnk *PlayListSelection::current() {
100} 100}
101 101
102 102
103void PlayListSelection::addToSelection( const DocLnk &lnk ) { 103void PlayListSelection::addToSelection( const DocLnk &lnk ) {
104 PlayListSelectionItem *item = new PlayListSelectionItem( this, new DocLnk( lnk ) ); 104 PlayListSelectionItem *item = new PlayListSelectionItem( this, new DocLnk( lnk ) );
105 QListViewItem *current = selectedItem(); 105 QListViewItem *current = selectedItem();
106 if ( current ) 106 if ( current )
107 item->moveItem( current ); 107 item->moveItem( current );
108 setSelected( item, TRUE ); 108 setSelected( item, TRUE );
109 ensureItemVisible( selectedItem() ); 109 ensureItemVisible( selectedItem() );
110} 110}
111 111
112 112
113void PlayListSelection::removeSelected() { 113void PlayListSelection::removeSelected() {
114 QListViewItem *item = selectedItem(); 114 QListViewItem *item = selectedItem();
115 if ( item ) 115 if ( item )
116 delete item; 116 delete item;
117 setSelected( currentItem(), TRUE ); 117 setSelected( currentItem(), TRUE );
118 ensureItemVisible( selectedItem() ); 118 ensureItemVisible( selectedItem() );
119} 119}
120 120
121 121
122void PlayListSelection::moveSelectedUp() { 122void PlayListSelection::moveSelectedUp() {
123 QListViewItem *item = selectedItem(); 123 QListViewItem *item = selectedItem();
124 if ( item && item->itemAbove() ) 124 if ( item && item->itemAbove() )
125 item->itemAbove()->moveItem( item ); 125 item->itemAbove()->moveItem( item );
126 ensureItemVisible( selectedItem() ); 126 ensureItemVisible( selectedItem() );
127} 127}
128 128
129 129
130void PlayListSelection::moveSelectedDown() { 130void PlayListSelection::moveSelectedDown() {
131 QListViewItem *item = selectedItem(); 131 QListViewItem *item = selectedItem();
132 if ( item && item->itemBelow() ) 132 if ( item && item->itemBelow() )
133 item->moveItem( item->itemBelow() ); 133 item->moveItem( item->itemBelow() );
134 ensureItemVisible( selectedItem() ); 134 ensureItemVisible( selectedItem() );
135} 135}
136 136
137 137
138bool PlayListSelection::prev() { 138bool PlayListSelection::prev() {
139 QListViewItem *item = selectedItem(); 139 QListViewItem *item = selectedItem();
140 if ( item && item->itemAbove() ) 140 if ( item && item->itemAbove() )
141 setSelected( item->itemAbove(), TRUE ); 141 setSelected( item->itemAbove(), TRUE );
142 else 142 else
143 return FALSE; 143 return FALSE;
144 ensureItemVisible( selectedItem() ); 144 ensureItemVisible( selectedItem() );
145 return TRUE; 145 return TRUE;
146} 146}
147 147
148
149bool PlayListSelection::next() { 148bool PlayListSelection::next() {
150 QListViewItem *item = selectedItem(); 149 QListViewItem *item = selectedItem();
151 if ( item && item->itemBelow() ) 150 if ( item && item->itemBelow() )
152 setSelected( item->itemBelow(), TRUE ); 151 setSelected( item->itemBelow(), TRUE );
153 else 152 else
154 return FALSE; 153 return FALSE;
155 ensureItemVisible( selectedItem() ); 154 ensureItemVisible( selectedItem() );
156 return TRUE; 155 return TRUE;
157} 156}
158 157
159 158
160bool PlayListSelection::first() { 159bool PlayListSelection::first() {
161 QListViewItem *item = firstChild(); 160 QListViewItem *item = firstChild();
162 if ( item ) 161 if ( item )
163 setSelected( item, TRUE ); 162 setSelected( item, TRUE );
164 else 163 else
165 return FALSE; 164 return FALSE;
166 ensureItemVisible( selectedItem() ); 165 ensureItemVisible( selectedItem() );
167 return TRUE; 166 return TRUE;
168} 167}
169 168
170 169
171bool PlayListSelection::last() { 170bool PlayListSelection::last() {
172 QListViewItem *prevItem = NULL; 171 QListViewItem *prevItem = NULL;
173 QListViewItem *item = firstChild(); 172 QListViewItem *item = firstChild();
174 while ( ( item = item->nextSibling() ) ) 173 while ( ( item = item->nextSibling() ) )
175 prevItem = item; 174 prevItem = item;
176 if ( prevItem ) 175 if ( prevItem )
177 setSelected( prevItem, TRUE ); 176 setSelected( prevItem, TRUE );
178 else 177 else
179 return FALSE; 178 return FALSE;
180 ensureItemVisible( selectedItem() ); 179 ensureItemVisible( selectedItem() );
181 return TRUE; 180 return TRUE;
182} 181}
183 182
183void PlayListSelection::unSelect()
184{
185 QListViewItem *item = selectedItem();
186 setSelected( currentItem(), FALSE);
187} \ No newline at end of file
diff --git a/core/multimedia/opieplayer/playlistselection.h b/core/multimedia/opieplayer/playlistselection.h
index b0d249c..ba37271 100644
--- a/core/multimedia/opieplayer/playlistselection.h
+++ b/core/multimedia/opieplayer/playlistselection.h
@@ -1,60 +1,61 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved. 2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of the Qtopia Environment. 4** This file is part of the Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20#ifndef PLAY_LIST_SELECTION_H 20#ifndef PLAY_LIST_SELECTION_H
21#define PLAY_LIST_SELECTION_H 21#define PLAY_LIST_SELECTION_H
22 22
23#include <qlist.h> 23#include <qlist.h>
24#include <qlistview.h> 24#include <qlistview.h>
25#include <qpe/applnk.h> 25#include <qpe/applnk.h>
26 26
27 27
28class PlayListSelection : public QListView { 28class PlayListSelection : public QListView {
29 Q_OBJECT 29 Q_OBJECT
30public: 30public:
31 PlayListSelection( QWidget *parent, const char *name=0 ); 31 PlayListSelection( QWidget *parent, const char *name=0 );
32 ~PlayListSelection(); 32 ~PlayListSelection();
33 33
34 const DocLnk *current(); // retrieve the current playlist entry (media file link) 34 const DocLnk *current(); // retrieve the current playlist entry (media file link)
35public slots: 35public slots:
36 void addToSelection( const DocLnk & ); // Add a media file to the playlist 36 void addToSelection( const DocLnk & ); // Add a media file to the playlist
37 void removeSelected(); // Remove a media file from the playlist 37 void removeSelected(); // Remove a media file from the playlist
38 void moveSelectedUp(); // Move the media file up the playlist so it is played earlier 38 void moveSelectedUp(); // Move the media file up the playlist so it is played earlier
39 void moveSelectedDown(); // Move the media file down the playlist so it is played later 39 void moveSelectedDown(); // Move the media file down the playlist so it is played later
40 void unSelect();
40 bool prev(); 41 bool prev();
41 bool next(); 42 bool next();
42 bool first(); 43 bool first();
43 bool last(); 44 bool last();
44 45
45protected: 46protected:
46 virtual void contentsMouseMoveEvent(QMouseEvent *); 47 virtual void contentsMouseMoveEvent(QMouseEvent *);
47/* #ifdef USE_PLAYLIST_BACKGROUND */ 48/* #ifdef USE_PLAYLIST_BACKGROUND */
48 virtual void drawBackground( QPainter *p, const QRect &r ); 49 virtual void drawBackground( QPainter *p, const QRect &r );
49 virtual void paintEmptyArea( QPainter *p, const QRect &r ) { drawBackground( p, r ); }; 50 virtual void paintEmptyArea( QPainter *p, const QRect &r ) { drawBackground( p, r ); };
50/* #endif */ 51/* #endif */
51 52
52private: 53private:
53 QList<DocLnk> selectedList; 54 QList<DocLnk> selectedList;
54 const DocLnk *lnk; 55 const DocLnk *lnk;
55}; 56};
56 57
57 58
58#endif // PLAY_LIST_SELECTION_H 59#endif // PLAY_LIST_SELECTION_H
59 60
60 61
diff --git a/core/multimedia/opieplayer/playlistwidget.cpp b/core/multimedia/opieplayer/playlistwidget.cpp
index cf665c8..db6533a 100644
--- a/core/multimedia/opieplayer/playlistwidget.cpp
+++ b/core/multimedia/opieplayer/playlistwidget.cpp
@@ -126,97 +126,97 @@ PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl )
126 menu->setMargin( 0 ); 126 menu->setMargin( 0 );
127 127
128 QPEToolBar *bar = new QPEToolBar( this ); 128 QPEToolBar *bar = new QPEToolBar( this );
129 bar->setLabel( tr( "Play Operations" ) ); 129 bar->setLabel( tr( "Play Operations" ) );
130// d->tbPlayCurList = new ToolButton( bar, tr( "play List" ), "mpegplayer/play_current_list", 130// d->tbPlayCurList = new ToolButton( bar, tr( "play List" ), "mpegplayer/play_current_list",
131// this , SLOT( addSelected()) ); 131// this , SLOT( addSelected()) );
132 tbDeletePlaylist = new QPushButton( Resource::loadIconSet("trash"),"",bar,"close"); 132 tbDeletePlaylist = new QPushButton( Resource::loadIconSet("trash"),"",bar,"close");
133 tbDeletePlaylist->setFlat(TRUE); 133 tbDeletePlaylist->setFlat(TRUE);
134 tbDeletePlaylist->setFixedSize(20,20); 134 tbDeletePlaylist->setFixedSize(20,20);
135 connect(tbDeletePlaylist,(SIGNAL(released())),SLOT( deletePlaylist())); 135 connect(tbDeletePlaylist,(SIGNAL(released())),SLOT( deletePlaylist()));
136 136
137 d->tbAddToList = new ToolButton( bar, tr( "Add to Playlist" ), "mpegplayer/add_to_playlist", 137 d->tbAddToList = new ToolButton( bar, tr( "Add to Playlist" ), "mpegplayer/add_to_playlist",
138 this , SLOT(addSelected()) ); 138 this , SLOT(addSelected()) );
139 d->tbRemoveFromList = new ToolButton( bar, tr( "Remove from Playlist" ), "mpegplayer/remove_from_playlist", 139 d->tbRemoveFromList = new ToolButton( bar, tr( "Remove from Playlist" ), "mpegplayer/remove_from_playlist",
140 this , SLOT(removeSelected()) ); 140 this , SLOT(removeSelected()) );
141// d->tbPlay = new ToolButton( bar, tr( "Play" ), "mpegplayer/play", /*this */mediaPlayerState , SLOT(setPlaying(bool) /* btnPlay() */), TRUE ); 141// d->tbPlay = new ToolButton( bar, tr( "Play" ), "mpegplayer/play", /*this */mediaPlayerState , SLOT(setPlaying(bool) /* btnPlay() */), TRUE );
142 d->tbPlay = new ToolButton( bar, tr( "Play" ), "mpegplayer/play", 142 d->tbPlay = new ToolButton( bar, tr( "Play" ), "mpegplayer/play",
143 this , SLOT( btnPlay(bool) ), TRUE ); 143 this , SLOT( btnPlay(bool) ), TRUE );
144 d->tbShuffle = new ToolButton( bar, tr( "Randomize" ),"mpegplayer/shuffle", 144 d->tbShuffle = new ToolButton( bar, tr( "Randomize" ),"mpegplayer/shuffle",
145 mediaPlayerState, SLOT(setShuffled(bool)), TRUE ); 145 mediaPlayerState, SLOT(setShuffled(bool)), TRUE );
146 d->tbLoop = new ToolButton( bar, tr( "Loop" ),"mpegplayer/loop", 146 d->tbLoop = new ToolButton( bar, tr( "Loop" ),"mpegplayer/loop",
147 mediaPlayerState, SLOT(setLooping(bool)), TRUE ); 147 mediaPlayerState, SLOT(setLooping(bool)), TRUE );
148 tbDeletePlaylist->hide(); 148 tbDeletePlaylist->hide();
149 149
150 QPopupMenu *pmPlayList = new QPopupMenu( this ); 150 QPopupMenu *pmPlayList = new QPopupMenu( this );
151 menu->insertItem( tr( "File" ), pmPlayList ); 151 menu->insertItem( tr( "File" ), pmPlayList );
152 new MenuItem( pmPlayList, tr( "Clear List" ), this, SLOT( clearList() ) ); 152 new MenuItem( pmPlayList, tr( "Clear List" ), this, SLOT( clearList() ) );
153 new MenuItem( pmPlayList, tr( "Add all audio files" ), this, SLOT( addAllMusicToList() ) ); 153 new MenuItem( pmPlayList, tr( "Add all audio files" ), this, SLOT( addAllMusicToList() ) );
154 new MenuItem( pmPlayList, tr( "Add all video files" ), this, SLOT( addAllVideoToList() ) ); 154 new MenuItem( pmPlayList, tr( "Add all video files" ), this, SLOT( addAllVideoToList() ) );
155 new MenuItem( pmPlayList, tr( "Add all files" ), this, SLOT( addAllToList() ) ); 155 new MenuItem( pmPlayList, tr( "Add all files" ), this, SLOT( addAllToList() ) );
156 new MenuItem( pmPlayList, tr( "Save PlayList" ), this, SLOT( saveList() ) ); 156 new MenuItem( pmPlayList, tr( "Save PlayList" ), this, SLOT( saveList() ) );
157 // new MenuItem( pmPlayList, tr( "Load PlayList" ), this, SLOT( loadList() ) ); 157 // new MenuItem( pmPlayList, tr( "Load PlayList" ), this, SLOT( loadList() ) );
158 158
159 QPopupMenu *pmView = new QPopupMenu( this ); 159 QPopupMenu *pmView = new QPopupMenu( this );
160 menu->insertItem( tr( "View" ), pmView ); 160 menu->insertItem( tr( "View" ), pmView );
161 161
162 fullScreenButton = new QAction(tr("Full Screen"), Resource::loadPixmap("fullscreen"), QString::null, 0, this, 0); 162 fullScreenButton = new QAction(tr("Full Screen"), Resource::loadPixmap("fullscreen"), QString::null, 0, this, 0);
163 connect( fullScreenButton, SIGNAL(activated()), mediaPlayerState, SLOT(toggleFullscreen()) ); 163 connect( fullScreenButton, SIGNAL(activated()), mediaPlayerState, SLOT(toggleFullscreen()) );
164 fullScreenButton->addTo(pmView); 164 fullScreenButton->addTo(pmView);
165 scaleButton = new QAction(tr("Scale"), Resource::loadPixmap("mpegplayer/scale"), QString::null, 0, this, 0); 165 scaleButton = new QAction(tr("Scale"), Resource::loadPixmap("mpegplayer/scale"), QString::null, 0, this, 0);
166 connect( scaleButton, SIGNAL(activated()), mediaPlayerState, SLOT(toggleScaled()) ); 166 connect( scaleButton, SIGNAL(activated()), mediaPlayerState, SLOT(toggleScaled()) );
167 scaleButton->addTo(pmView); 167 scaleButton->addTo(pmView);
168 168
169 QVBox *vbox5 = new QVBox( this ); vbox5->setBackgroundMode( PaletteButton ); 169 QVBox *vbox5 = new QVBox( this ); vbox5->setBackgroundMode( PaletteButton );
170 QVBox *vbox4 = new QVBox( vbox5 ); vbox4->setBackgroundMode( PaletteButton ); 170 QVBox *vbox4 = new QVBox( vbox5 ); vbox4->setBackgroundMode( PaletteButton );
171 171
172 QHBox *hbox6 = new QHBox( vbox4 ); hbox6->setBackgroundMode( PaletteButton ); 172 QHBox *hbox6 = new QHBox( vbox4 ); hbox6->setBackgroundMode( PaletteButton );
173 173
174 tabWidget = new QTabWidget( hbox6, "tabWidget" ); 174 tabWidget = new QTabWidget( hbox6, "tabWidget" );
175 tabWidget->setTabShape(QTabWidget::Triangular); 175 tabWidget->setTabShape(QTabWidget::Triangular);
176 176
177 QWidget *pTab; 177 QWidget *pTab;
178 pTab = new QWidget( tabWidget, "pTab" ); 178 pTab = new QWidget( tabWidget, "pTab" );
179// playlistView = new QListView( pTab, "playlistview" ); 179// playlistView = new QListView( pTab, "playlistview" );
180// playlistView->setMinimumSize(236,260); 180// playlistView->setMinimumSize(236,260);
181 tabWidget->insertTab( pTab,"Playlist"); 181 tabWidget->insertTab( pTab,"Playlist");
182 182
183 183
184 // Add the playlist area 184 // Add the playlist area
185 185
186 QVBox *vbox3 = new QVBox( pTab ); vbox3->setBackgroundMode( PaletteButton ); 186 QVBox *vbox3 = new QVBox( pTab ); vbox3->setBackgroundMode( PaletteButton );
187 d->playListFrame = vbox3; 187 d->playListFrame = vbox3;
188 d->playListFrame ->setMinimumSize(235,260); 188 d->playListFrame ->setMinimumSize(235,260);
189 189
190 QHBox *hbox2 = new QHBox( vbox3 ); hbox2->setBackgroundMode( PaletteButton ); 190 QHBox *hbox2 = new QHBox( vbox3 ); hbox2->setBackgroundMode( PaletteButton );
191 191
192 d->selectedFiles = new PlayListSelection( hbox2); 192 d->selectedFiles = new PlayListSelection( hbox2);
193 QVBox *vbox1 = new QVBox( hbox2 ); vbox1->setBackgroundMode( PaletteButton ); 193 QVBox *vbox1 = new QVBox( hbox2 ); vbox1->setBackgroundMode( PaletteButton );
194 194
195 QPEApplication::setStylusOperation( d->selectedFiles->viewport(),QPEApplication::RightOnHold); 195 QPEApplication::setStylusOperation( d->selectedFiles->viewport(),QPEApplication::RightOnHold);
196 connect( d->selectedFiles, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)), 196 connect( d->selectedFiles, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)),
197 this,SLOT( playlistViewPressed(int, QListViewItem *, const QPoint&, int)) ); 197 this,SLOT( playlistViewPressed(int, QListViewItem *, const QPoint&, int)) );
198 198
199 199
200 QVBox *stretch1 = new QVBox( vbox1 ); stretch1->setBackgroundMode( PaletteButton ); // add stretch 200 QVBox *stretch1 = new QVBox( vbox1 ); stretch1->setBackgroundMode( PaletteButton ); // add stretch
201 new ToolButton( vbox1, tr( "Move Up" ), "mpegplayer/up", d->selectedFiles, SLOT(moveSelectedUp()) ); 201 new ToolButton( vbox1, tr( "Move Up" ), "mpegplayer/up", d->selectedFiles, SLOT(moveSelectedUp()) );
202 new ToolButton( vbox1, tr( "Remove" ), "mpegplayer/cut", d->selectedFiles, SLOT(removeSelected()) ); 202 new ToolButton( vbox1, tr( "Remove" ), "mpegplayer/cut", d->selectedFiles, SLOT(removeSelected()) );
203 new ToolButton( vbox1, tr( "Move Down" ), "mpegplayer/down", d->selectedFiles, SLOT(moveSelectedDown()) ); 203 new ToolButton( vbox1, tr( "Move Down" ), "mpegplayer/down", d->selectedFiles, SLOT(moveSelectedDown()) );
204 QVBox *stretch2 = new QVBox( vbox1 ); stretch2->setBackgroundMode( PaletteButton ); // add stretch 204 QVBox *stretch2 = new QVBox( vbox1 ); stretch2->setBackgroundMode( PaletteButton ); // add stretch
205 205
206 QWidget *aTab; 206 QWidget *aTab;
207 aTab = new QWidget( tabWidget, "aTab" ); 207 aTab = new QWidget( tabWidget, "aTab" );
208 audioView = new QListView( aTab, "Audioview" ); 208 audioView = new QListView( aTab, "Audioview" );
209 audioView->setMinimumSize(233,260); 209 audioView->setMinimumSize(233,260);
210 audioView->addColumn( "Title",140); 210 audioView->addColumn( "Title",140);
211 audioView->addColumn("Size", -1); 211 audioView->addColumn("Size", -1);
212 audioView->addColumn("Media",-1); 212 audioView->addColumn("Media",-1);
213 audioView->setColumnAlignment(1, Qt::AlignRight); 213 audioView->setColumnAlignment(1, Qt::AlignRight);
214 audioView->setColumnAlignment(2, Qt::AlignRight); 214 audioView->setColumnAlignment(2, Qt::AlignRight);
215 audioView->setAllColumnsShowFocus(TRUE); 215 audioView->setAllColumnsShowFocus(TRUE);
216 tabWidget->insertTab(aTab,"Audio"); 216 tabWidget->insertTab(aTab,"Audio");
217 217
218 QPEApplication::setStylusOperation( audioView->viewport(),QPEApplication::RightOnHold); 218 QPEApplication::setStylusOperation( audioView->viewport(),QPEApplication::RightOnHold);
219 connect( audioView, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)), 219 connect( audioView, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)),
220 this,SLOT( viewPressed(int, QListViewItem *, const QPoint&, int)) ); 220 this,SLOT( viewPressed(int, QListViewItem *, const QPoint&, int)) );
221 221
222 222
@@ -437,108 +437,108 @@ void PlayListWidget::addAllVideoToList() {
437 437
438void PlayListWidget::setDocument(const QString& fileref) { 438void PlayListWidget::setDocument(const QString& fileref) {
439 fromSetDocument = TRUE; 439 fromSetDocument = TRUE;
440 if ( fileref.isNull() ) { 440 if ( fileref.isNull() ) {
441 QMessageBox::critical( 0, tr( "Invalid File" ), tr( "There was a problem in getting the file." ) ); 441 QMessageBox::critical( 0, tr( "Invalid File" ), tr( "There was a problem in getting the file." ) );
442 return; 442 return;
443 } 443 }
444// qDebug("setDocument "+fileref); 444// qDebug("setDocument "+fileref);
445 if(fileref.find("playlist",0,TRUE) == -1) { 445 if(fileref.find("playlist",0,TRUE) == -1) {
446 clearList(); 446 clearList();
447 addToSelection( DocLnk( fileref ) ); 447 addToSelection( DocLnk( fileref ) );
448 d->setDocumentUsed = TRUE; 448 d->setDocumentUsed = TRUE;
449 mediaPlayerState->setPlaying( FALSE ); 449 mediaPlayerState->setPlaying( FALSE );
450 qApp->processEvents(); 450 qApp->processEvents();
451 mediaPlayerState->setPlaying( TRUE ); 451 mediaPlayerState->setPlaying( TRUE );
452 qApp->processEvents(); 452 qApp->processEvents();
453 setCaption("OpiePlayer"); 453 setCaption("OpiePlayer");
454 454
455 } else { //is playlist 455 } else { //is playlist
456 clearList(); 456 clearList();
457 loadList(DocLnk(fileref)); 457 loadList(DocLnk(fileref));
458 d->selectedFiles->first(); 458 d->selectedFiles->first();
459 } 459 }
460} 460}
461 461
462 462
463void PlayListWidget::setActiveWindow() { 463void PlayListWidget::setActiveWindow() {
464 // When we get raised we need to ensure that it switches views 464 // When we get raised we need to ensure that it switches views
465 char origView = mediaPlayerState->view(); 465 char origView = mediaPlayerState->view();
466 mediaPlayerState->setView( 'l' ); // invalidate 466 mediaPlayerState->setView( 'l' ); // invalidate
467 mediaPlayerState->setView( origView ); // now switch back 467 mediaPlayerState->setView( origView ); // now switch back
468} 468}
469 469
470 470
471void PlayListWidget::useSelectedDocument() { 471void PlayListWidget::useSelectedDocument() {
472 d->setDocumentUsed = FALSE; 472 d->setDocumentUsed = FALSE;
473} 473}
474 474
475 475
476const DocLnk *PlayListWidget::current() { // this is fugly 476const DocLnk *PlayListWidget::current() { // this is fugly
477 477
478// if( fromSetDocument) { 478// if( fromSetDocument) {
479// qDebug("from setDoc"); 479// qDebug("from setDoc");
480// DocLnkSet files; 480// DocLnkSet files;
481// Global::findDocuments(&files, "video/*;audio/*"); 481// Global::findDocuments(&files, "video/*;audio/*");
482// QListIterator<DocLnk> dit( files.children() ); 482// QListIterator<DocLnk> dit( files.children() );
483// for ( ; dit.current(); ++dit ) { 483// for ( ; dit.current(); ++dit ) {
484// if(dit.current()->linkFile() == setDocFileRef) { 484// if(dit.current()->linkFile() == setDocFileRef) {
485// qDebug(setDocFileRef); 485// qDebug(setDocFileRef);
486// return dit; 486// return dit;
487// } 487// }
488// } 488// }
489// } else 489// } else
490// qDebug("current"); 490// qDebug("current");
491// switch (tabWidget->currentPageIndex()) { 491// switch (tabWidget->currentPageIndex()) {
492// case 0: //playlist 492// case 0: //playlist
493// { 493// {
494 qDebug("playlist"); 494 qDebug("playlist");
495 if ( mediaPlayerState->playlist() ) { 495 if ( mediaPlayerState->playlist() ) {
496 return d->selectedFiles->current(); 496 return d->selectedFiles->current();
497 } 497 }
498 else if ( d->setDocumentUsed && d->current ) { 498 else if ( d->setDocumentUsed && d->current ) {
499 return d->current; 499 return d->current;
500 } else { 500 } else {
501 return d->files->selected(); 501 return d->files->selected();
502 } 502 }
503// } 503// }
504// break; 504// break;
505// case 1://audio 505// case 1://audio
506// { 506// {
507// qDebug("audioView"); 507// qDebug("audioView");
508// Global::findDocuments(&files, "audio/*"); 508// Global::findDocuments(&files, "audio/*");
509// QListIterator<DocLnk> dit( files.children() ); 509// QListIterator<DocLnk> dit( files.children() );
510// for ( ; dit.current(); ++dit ) { 510// for ( ; dit.current(); ++dit ) {
511// if( dit.current()->name() == audioView->currentItem()->text(0) && !insanityBool) { 511// if( dit.current()->name() == audioView->currentItem()->text(0) && !insanityBool) {
512// qDebug("here"); 512// qDebug("here");
513// insanityBool=TRUE; 513// insanityBool=TRUE;
514// return dit; 514// return dit;
515// } 515// }
516// } 516// }
517// } 517// }
518// break; 518// break;
519// case 2: // video 519// case 2: // video
520// { 520// {
521// qDebug("videoView"); 521// qDebug("videoView");
522// Global::findDocuments(&vFiles, "video/*"); 522// Global::findDocuments(&vFiles, "video/*");
523// QListIterator<DocLnk> Vdit( vFiles.children() ); 523// QListIterator<DocLnk> Vdit( vFiles.children() );
524// for ( ; Vdit.current(); ++Vdit ) { 524// for ( ; Vdit.current(); ++Vdit ) {
525// if( Vdit.current()->name() == videoView->currentItem()->text(0) && !insanityBool) { 525// if( Vdit.current()->name() == videoView->currentItem()->text(0) && !insanityBool) {
526// insanityBool=TRUE; 526// insanityBool=TRUE;
527// return Vdit; 527// return Vdit;
528// } 528// }
529// } 529// }
530// } 530// }
531// break; 531// break;
532// }; 532// };
533// return 0; 533// return 0;
534} 534}
535 535
536bool PlayListWidget::prev() { 536bool PlayListWidget::prev() {
537 if ( mediaPlayerState->playlist() ) { 537 if ( mediaPlayerState->playlist() ) {
538 if ( mediaPlayerState->shuffled() ) { 538 if ( mediaPlayerState->shuffled() ) {
539 const DocLnk *cur = current(); 539 const DocLnk *cur = current();
540 int j = 1 + (int)(97.0 * rand() / (RAND_MAX + 1.0)); 540 int j = 1 + (int)(97.0 * rand() / (RAND_MAX + 1.0));
541 for ( int i = 0; i < j; i++ ) { 541 for ( int i = 0; i < j; i++ ) {
542 if ( !d->selectedFiles->next() ) 542 if ( !d->selectedFiles->next() )
543 d->selectedFiles->first(); 543 d->selectedFiles->first();
544 } 544 }
@@ -768,106 +768,108 @@ void PlayListWidget::tabChanged(QWidget *widg) {
768 d->tbRemoveFromList->setEnabled(TRUE); 768 d->tbRemoveFromList->setEnabled(TRUE);
769 d->tbAddToList->setEnabled(FALSE); 769 d->tbAddToList->setEnabled(FALSE);
770 } 770 }
771 break; 771 break;
772 case 1: 772 case 1:
773 { 773 {
774 if( !tbDeletePlaylist->isHidden()) 774 if( !tbDeletePlaylist->isHidden())
775 tbDeletePlaylist->hide(); 775 tbDeletePlaylist->hide();
776 d->tbRemoveFromList->setEnabled(FALSE); 776 d->tbRemoveFromList->setEnabled(FALSE);
777 d->tbAddToList->setEnabled(TRUE); 777 d->tbAddToList->setEnabled(TRUE);
778 } 778 }
779 break; 779 break;
780 case 2: 780 case 2:
781 { 781 {
782 if( !tbDeletePlaylist->isHidden()) 782 if( !tbDeletePlaylist->isHidden())
783 tbDeletePlaylist->hide(); 783 tbDeletePlaylist->hide();
784 d->tbRemoveFromList->setEnabled(FALSE); 784 d->tbRemoveFromList->setEnabled(FALSE);
785 d->tbAddToList->setEnabled(TRUE); 785 d->tbAddToList->setEnabled(TRUE);
786 } 786 }
787 break; 787 break;
788 case 3: 788 case 3:
789 { 789 {
790 if( tbDeletePlaylist->isHidden()) 790 if( tbDeletePlaylist->isHidden())
791 tbDeletePlaylist->show(); 791 tbDeletePlaylist->show();
792 playLists->reread(); 792 playLists->reread();
793 } 793 }
794 break; 794 break;
795 }; 795 };
796} 796}
797 797
798 798
799/* 799/*
800 play button is pressed*/ 800 play button is pressed*/
801void PlayListWidget::btnPlay(bool b) { 801void PlayListWidget::btnPlay(bool b) {
802// mediaPlayerState->setPlaying(b); 802// mediaPlayerState->setPlaying(b);
803 switch ( tabWidget->currentPageIndex()) { 803 switch ( tabWidget->currentPageIndex()) {
804 case 0: 804 case 0:
805 { 805 {
806 mediaPlayerState->setPlaying(b); 806 mediaPlayerState->setPlaying(b);
807 } 807 }
808 break; 808 break;
809 case 1: 809 case 1:
810 { 810 {
811 addToSelection( audioView->selectedItem() ); 811 addToSelection( audioView->selectedItem() );
812 mediaPlayerState->setPlaying(b); 812 mediaPlayerState->setPlaying(b);
813// qApp->processEvents(); 813// qApp->processEvents();
814 d->selectedFiles->removeSelected( ); 814 d->selectedFiles->removeSelected( );
815 tabWidget->setCurrentPage(1); 815 tabWidget->setCurrentPage(1);
816 d->selectedFiles->unSelect();
816// mediaPlayerState->setPlaying(FALSE); 817// mediaPlayerState->setPlaying(FALSE);
817 } 818 }
818 break; 819 break;
819 case 2: 820 case 2:
820 { 821 {
821 addToSelection( videoView->selectedItem() ); 822 addToSelection( videoView->selectedItem() );
822 mediaPlayerState->setPlaying(b); 823 mediaPlayerState->setPlaying(b);
823 qApp->processEvents(); 824 qApp->processEvents();
824 d->selectedFiles->removeSelected( ); 825 d->selectedFiles->removeSelected( );
825 tabWidget->setCurrentPage(2); 826 tabWidget->setCurrentPage(2);
827 d->selectedFiles->unSelect();
826// mediaPlayerState->setPlaying(FALSE); 828// mediaPlayerState->setPlaying(FALSE);
827 } 829 }
828 break; 830 break;
829 }; 831 };
830 832
831 833
832 834
833 835
834} 836}
835 837
836void PlayListWidget::deletePlaylist() { 838void PlayListWidget::deletePlaylist() {
837 switch( QMessageBox::information( this, (tr("Remove Playlist?")), 839 switch( QMessageBox::information( this, (tr("Remove Playlist?")),
838 (tr("You really want to delete\nthis playlist?")), 840 (tr("You really want to delete\nthis playlist?")),
839 (tr("Yes")), (tr("No")), 0 )){ 841 (tr("Yes")), (tr("No")), 0 )){
840 case 0: // Yes clicked, 842 case 0: // Yes clicked,
841 QFile().remove(playLists->selected()->file()); 843 QFile().remove(playLists->selected()->file());
842 QFile().remove(playLists->selected()->linkFile()); 844 QFile().remove(playLists->selected()->linkFile());
843 playLists->reread(); 845 playLists->reread();
844 break; 846 break;
845 case 1: // Cancel 847 case 1: // Cancel
846 break; 848 break;
847 }; 849 };
848 850
849} 851}
850 852
851void PlayListWidget::viewPressed( int mouse, QListViewItem *item, const QPoint& point, int i) 853void PlayListWidget::viewPressed( int mouse, QListViewItem *item, const QPoint& point, int i)
852{ 854{
853 switch (mouse) { 855 switch (mouse) {
854 case 1: 856 case 1:
855 break; 857 break;
856 case 2:{ 858 case 2:{
857 QPopupMenu m; 859 QPopupMenu m;
858 m.insertItem( tr( "Play" ), this, SLOT( playSelected() )); 860 m.insertItem( tr( "Play" ), this, SLOT( playSelected() ));
859 m.insertItem( tr( "Add to Playlist" ), this, SLOT( addSelected() )); 861 m.insertItem( tr( "Add to Playlist" ), this, SLOT( addSelected() ));
860// m.insertSeparator(); 862// m.insertSeparator();
861// m.insertItem( tr( "Delete" ), this, SLOT( remoteDelete() )); 863// m.insertItem( tr( "Delete" ), this, SLOT( remoteDelete() ));
862 m.exec( QCursor::pos() ); 864 m.exec( QCursor::pos() );
863 } 865 }
864 break; 866 break;
865 }; 867 };
866 868
867} 869}
868 870
869void PlayListWidget::playSelected() 871void PlayListWidget::playSelected()
870{ 872{
871 btnPlay( TRUE); 873 btnPlay( TRUE);
872} 874}
873 875