Diffstat (limited to 'core/launcher/documentlist.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | core/launcher/documentlist.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/core/launcher/documentlist.cpp b/core/launcher/documentlist.cpp index 59dd721..19ceb0f 100644 --- a/core/launcher/documentlist.cpp +++ b/core/launcher/documentlist.cpp | |||
@@ -47,49 +47,49 @@ using namespace Opie::Core; | |||
47 | #include <qcopchannel_qws.h> | 47 | #include <qcopchannel_qws.h> |
48 | #include <qlistview.h> | 48 | #include <qlistview.h> |
49 | #include <qlist.h> | 49 | #include <qlist.h> |
50 | #include <qpixmap.h> | 50 | #include <qpixmap.h> |
51 | 51 | ||
52 | 52 | ||
53 | AppLnkSet *DocumentList::appLnkSet = 0; | 53 | AppLnkSet *DocumentList::appLnkSet = 0; |
54 | 54 | ||
55 | static const int MAX_SEARCH_DEPTH = 10; | 55 | static const int MAX_SEARCH_DEPTH = 10; |
56 | 56 | ||
57 | 57 | ||
58 | class DocumentListPrivate : public QObject { | 58 | class DocumentListPrivate : public QObject { |
59 | Q_OBJECT | 59 | Q_OBJECT |
60 | public: | 60 | public: |
61 | DocumentListPrivate( ServerInterface *gui ); | 61 | DocumentListPrivate( ServerInterface *gui ); |
62 | ~DocumentListPrivate(); | 62 | ~DocumentListPrivate(); |
63 | 63 | ||
64 | void initialize(); | 64 | void initialize(); |
65 | 65 | ||
66 | const QString nextFile(); | 66 | const QString nextFile(); |
67 | const DocLnk *iterate(); | 67 | const DocLnk *iterate(); |
68 | bool store( DocLnk* dl ); | 68 | bool store( DocLnk* dl ); |
69 | void estimatedPercentScanned(); | 69 | void estimatedPercentScanned(); |
70 | void appendDocpath(FileSystem*); | 70 | void appendDocpath(FileSystem*); |
71 | 71 | ||
72 | 72 | ||
73 | DocLnkSet dls; | 73 | DocLnkSet dls; |
74 | QDict<void> reference; | 74 | QDict<void> reference; |
75 | QDictIterator<void> *dit; | 75 | QDictIterator<void> *dit; |
76 | enum { Find, RemoveKnownFiles, MakeUnknownFiles, Done } state; | 76 | enum { Find, RemoveKnownFiles, MakeUnknownFiles, Done } state; |
77 | 77 | ||
78 | QStringList docPaths; | 78 | QStringList docPaths; |
79 | unsigned int docPathsSearched; | 79 | unsigned int docPathsSearched; |
80 | 80 | ||
81 | int searchDepth; | 81 | int searchDepth; |
82 | QDir *listDirs[MAX_SEARCH_DEPTH]; | 82 | QDir *listDirs[MAX_SEARCH_DEPTH]; |
83 | const QFileInfoList *lists[MAX_SEARCH_DEPTH]; | 83 | const QFileInfoList *lists[MAX_SEARCH_DEPTH]; |
84 | unsigned int listPositions[MAX_SEARCH_DEPTH]; | 84 | unsigned int listPositions[MAX_SEARCH_DEPTH]; |
85 | 85 | ||
86 | StorageInfo *storage; | 86 | StorageInfo *storage; |
87 | 87 | ||
88 | int tid; | 88 | int tid; |
89 | 89 | ||
90 | ServerInterface *serverGui; | 90 | ServerInterface *serverGui; |
91 | 91 | ||
92 | bool needToSendAllDocLinks; | 92 | bool needToSendAllDocLinks; |
93 | bool sendAppLnks; | 93 | bool sendAppLnks; |
94 | bool sendDocLnks; | 94 | bool sendDocLnks; |
95 | bool scanDocs; | 95 | bool scanDocs; |
@@ -169,62 +169,66 @@ void DocumentList::resend() | |||
169 | 169 | ||
170 | 170 | ||
171 | void DocumentList::resendWorker() | 171 | void DocumentList::resendWorker() |
172 | { | 172 | { |
173 | const QList<DocLnk> &list = d->dls.children(); | 173 | const QList<DocLnk> &list = d->dls.children(); |
174 | for ( QListIterator<DocLnk> it( list ); it.current(); ++it ) | 174 | for ( QListIterator<DocLnk> it( list ); it.current(); ++it ) |
175 | add( *(*it) ); | 175 | add( *(*it) ); |
176 | resume(); | 176 | resume(); |
177 | } | 177 | } |
178 | */ | 178 | */ |
179 | 179 | ||
180 | void DocumentList::rescan() | 180 | void DocumentList::rescan() |
181 | { | 181 | { |
182 | //odebug << "rescan" << oendl; | 182 | //odebug << "rescan" << oendl; |
183 | pause(); | 183 | pause(); |
184 | d->initialize(); | 184 | d->initialize(); |
185 | resume(); | 185 | resume(); |
186 | } | 186 | } |
187 | 187 | ||
188 | 188 | ||
189 | void DocumentList::timerEvent( QTimerEvent *te ) | 189 | void DocumentList::timerEvent( QTimerEvent *te ) |
190 | { | 190 | { |
191 | if ( te->timerId() == d->tid ) { | 191 | if ( te->timerId() == d->tid ) { |
192 | // Do 3 at a time | 192 | // Do 3 at a time |
193 | if ( d->serverGui ) | ||
194 | d->serverGui->aboutToAddBegin(); | ||
193 | for (int i = 0; i < 3; i++ ) { | 195 | for (int i = 0; i < 3; i++ ) { |
194 | const DocLnk *lnk = d->iterate(); | 196 | const DocLnk *lnk = d->iterate(); |
195 | if ( lnk ) { | 197 | if ( lnk ) { |
196 | add( *lnk ); | 198 | add( *lnk ); |
197 | } else { | 199 | } else { |
198 | // stop when done | 200 | // stop when done |
199 | pause(); | 201 | pause(); |
200 | if ( d->serverGui ) | 202 | if ( d->serverGui ) |
201 | d->serverGui->documentScanningProgress( 100 ); | 203 | d->serverGui->documentScanningProgress( 100 ); |
202 | if ( d->needToSendAllDocLinks ) | 204 | if ( d->needToSendAllDocLinks ) |
203 | sendAllDocLinks(); | 205 | sendAllDocLinks(); |
204 | break; | 206 | break; |
205 | } | 207 | } |
206 | } | 208 | } |
209 | if ( d->serverGui ) | ||
210 | d->serverGui->aboutToAddEnd(); | ||
207 | } | 211 | } |
208 | } | 212 | } |
209 | 213 | ||
210 | 214 | ||
211 | void DocumentList::reloadAppLnks() | 215 | void DocumentList::reloadAppLnks() |
212 | { | 216 | { |
213 | if ( d->sendAppLnks && d->serverGui ) { | 217 | if ( d->sendAppLnks && d->serverGui ) { |
214 | d->serverGui->applicationScanningProgress( 0 ); | 218 | d->serverGui->applicationScanningProgress( 0 ); |
215 | d->serverGui->allApplicationsRemoved(); | 219 | d->serverGui->allApplicationsRemoved(); |
216 | } | 220 | } |
217 | 221 | ||
218 | delete appLnkSet; | 222 | delete appLnkSet; |
219 | appLnkSet = new AppLnkSet( MimeType::appsFolderName() ); | 223 | appLnkSet = new AppLnkSet( MimeType::appsFolderName() ); |
220 | 224 | ||
221 | if ( d->sendAppLnks && d->serverGui ) { | 225 | if ( d->sendAppLnks && d->serverGui ) { |
222 | static QStringList prevTypeList; | 226 | static QStringList prevTypeList; |
223 | QStringList types = appLnkSet->types(); | 227 | QStringList types = appLnkSet->types(); |
224 | for ( QStringList::Iterator ittypes=types.begin(); ittypes!=types.end(); ++ittypes) { | 228 | for ( QStringList::Iterator ittypes=types.begin(); ittypes!=types.end(); ++ittypes) { |
225 | if ( !(*ittypes).isEmpty() ) { | 229 | if ( !(*ittypes).isEmpty() ) { |
226 | if ( !prevTypeList.contains(*ittypes) ) { | 230 | if ( !prevTypeList.contains(*ittypes) ) { |
227 | QString name = appLnkSet->typeName(*ittypes); | 231 | QString name = appLnkSet->typeName(*ittypes); |
228 | QPixmap pm = appLnkSet->typePixmap(*ittypes); | 232 | QPixmap pm = appLnkSet->typePixmap(*ittypes); |
229 | QPixmap bgPm = appLnkSet->typeBigPixmap(*ittypes); | 233 | QPixmap bgPm = appLnkSet->typeBigPixmap(*ittypes); |
230 | 234 | ||