Diffstat (limited to 'noncore/multimedia/opieplayer2/playlistfileview.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistfileview.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/noncore/multimedia/opieplayer2/playlistfileview.cpp b/noncore/multimedia/opieplayer2/playlistfileview.cpp index 0ed1061..cb16415 100644 --- a/noncore/multimedia/opieplayer2/playlistfileview.cpp +++ b/noncore/multimedia/opieplayer2/playlistfileview.cpp | |||
@@ -5,9 +5,10 @@ | |||
5 | #include <qpe/global.h> | 5 | #include <qpe/global.h> |
6 | #include <qpe/resource.h> | 6 | #include <qpe/resource.h> |
7 | 7 | ||
8 | PlayListFileView::PlayListFileView( const QString &mimeTypePattern, const QString &itemPixmapName, QWidget *parent, const char *name ) | 8 | PlayListFileView::PlayListFileView( const QString &mimeTypePattern, const QString &itemPixmapName, QWidget *parent, const char *name ) |
9 | : PlayListView( parent, name ), m_mimeTypePattern( mimeTypePattern ), m_itemPixmapName( itemPixmapName ), m_scannedFiles( false ) | 9 | : PlayListView( parent, name ), m_mimeTypePattern( mimeTypePattern ), m_itemPixmapName( itemPixmapName ), m_scannedFiles( false ), |
10 | m_viewPopulated( false ) | ||
10 | { | 11 | { |
11 | addColumn( tr( "Title" ), 140); | 12 | addColumn( tr( "Title" ), 140); |
12 | addColumn( tr( "Size" ), -1 ); | 13 | addColumn( tr( "Size" ), -1 ); |
13 | addColumn(tr( "Media" ), 0 ); | 14 | addColumn(tr( "Media" ), 0 ); |
@@ -31,19 +32,30 @@ void PlayListFileView::scanFiles() | |||
31 | for ( ; sdit.current(); ++sdit ) | 32 | for ( ; sdit.current(); ++sdit ) |
32 | delete sdit.current(); | 33 | delete sdit.current(); |
33 | 34 | ||
34 | Global::findDocuments( &m_files, m_mimeTypePattern ); | 35 | Global::findDocuments( &m_files, m_mimeTypePattern ); |
36 | |||
37 | if ( m_viewPopulated ) { | ||
38 | m_viewPopulated = false; | ||
39 | populateView(); | ||
40 | } | ||
35 | } | 41 | } |
36 | 42 | ||
37 | void PlayListFileView::populateView() | 43 | void PlayListFileView::populateView() |
38 | { | 44 | { |
45 | if ( m_viewPopulated ) | ||
46 | return; | ||
47 | |||
39 | clear(); | 48 | clear(); |
40 | 49 | ||
41 | if( !m_scannedFiles ) { | 50 | if( !m_scannedFiles ) { |
51 | m_viewPopulated = false; // avoid a recursion :) | ||
42 | scanFiles(); | 52 | scanFiles(); |
43 | m_scannedFiles = true; | 53 | m_scannedFiles = true; |
44 | } | 54 | } |
45 | 55 | ||
56 | m_viewPopulated = true; | ||
57 | |||
46 | QString storage; | 58 | QString storage; |
47 | QListIterator<DocLnk> dit( m_files.children() ); | 59 | QListIterator<DocLnk> dit( m_files.children() ); |
48 | for ( ; dit.current(); ++dit ) { | 60 | for ( ; dit.current(); ++dit ) { |
49 | 61 | ||