-rw-r--r-- | library/global.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/library/global.cpp b/library/global.cpp index 4f1cc38..edb7b85 100644 --- a/library/global.cpp +++ b/library/global.cpp @@ -595,118 +595,132 @@ void Global::execute( const QString &c, const QString& document ) qDebug("executing %s", ap.latin1() ); if ( ap == "suspend" ) { QWSServer::sendKeyEvent( 0xffff, Qt::Key_F34, FALSE, TRUE, FALSE ); return; } /* if need be, sending a qcop message will result in an invoke, see preceeding function */ { QCopEnvelope env( ("QPE/Application/" + ap).latin1(), "raise()" ); } if ( !document.isEmpty() ) { QCopEnvelope env( ("QPE/Application/" + ap).latin1(), "setDocument(QString)" ); env << document; } #endif } /*! Returns the string \a s with the characters backslash, ", and $ quoted by a preceeding backslash. */ QString Global::shellQuote(const QString& s) { QString r="\""; for (int i=0; i<(int)s.length(); i++) { char c = s[i].latin1(); switch (c) { case '\\': case '"': case '$': r+="\\"; } r += s[i]; } r += "\""; return r; } /*! Returns the string \a s with the characters backslash and " quoted by a preceeding backslash. */ QString Global::stringQuote(const QString& s) { QString r="\""; for (int i=0; i<(int)s.length(); i++) { char c = s[i].latin1(); switch (c) { case '\\': case '"': r+="\\"; } r += s[i]; } r += "\""; return r; } /*! Finds all documents on the system's document directories which match the filter \a mimefilter, and appends the resulting DocLnk objects to \a folder. */ void Global::findDocuments(DocLnkSet* folder, const QString &mimefilter) { QString homedocs = QString(getenv("HOME")) + "/Documents"; DocLnkSet d(homedocs,mimefilter); folder->appendFrom(d); + /** let's do intellegint way of searching these files + * a) the user don't want to check mediums global + * b) the user wants to check but use the global options for it + * c) the user wants to check it but not this medium + * d) the user wants to check and this medium as well + * + * In all cases we need to apply a different mimefilter to + * the medium. + * a) mimefilter.isEmpty() we need to apply the responding filter + * either the global or the one on the medium + * + * b) mimefilter is set to an application we need to find out if the + * mimetypes are included in the mime mask of the medium + */ StorageInfo storage; const QList<FileSystem> &fs = storage.fileSystems(); QListIterator<FileSystem> it ( fs ); for ( ; it.current(); ++it ) { if ( (*it)->isRemovable() ) { // let's find out if we should search on it // this is a candidate look at the cf and see if we should search on it QString path = (*it)->path(); if( !checkStorage((*it)->path() + "/.opiestorage.cf" ) ) continue; DocLnkSet ide( path, mimefilter ); folder->appendFrom(ide); } } } QStringList Global::languageList() { QString lang = getenv("LANG"); QStringList langs; langs.append(lang); int i = lang.find("."); if ( i > 0 ) lang = lang.left( i ); i = lang.find( "_" ); if ( i > 0 ) langs.append(lang.left(i)); return langs; } QStringList Global::helpPath() { QStringList path; QStringList langs = Global::languageList(); for (QStringList::ConstIterator it = langs.fromLast(); it!=langs.end(); --it) { QString lang = *it; if ( !lang.isEmpty() ) path += QPEApplication::qpeDir() + "/help/" + lang + "/html"; } path += QPEApplication::qpeDir() + "/pics"; path += QPEApplication::qpeDir() + "/help/en/html"; path += QPEApplication::qpeDir() + "/docs"; QString dir = QDir::current().canonicalPath(); if ( dir == "/" ) dir += "/docs"; else { path += dir + "/../pics"; dir += "/../docs"; path += dir; } return path; } #include "global.moc" |