summaryrefslogtreecommitdiff
path: root/library
Side-by-side diff
Diffstat (limited to 'library') (more/less context) (show whitespace changes)
-rw-r--r--library/applnk.cpp23
-rw-r--r--library/applnk.h5
2 files changed, 28 insertions, 0 deletions
diff --git a/library/applnk.cpp b/library/applnk.cpp
index 778ccab..9498f84 100644
--- a/library/applnk.cpp
+++ b/library/applnk.cpp
@@ -585,48 +585,71 @@ void AppLnk::storeLink() const
/*!
Sets the property named \a key to \a value.
*/
void AppLnk::setProperty(const QString& key, const QString& value)
{
if ( ensureLinkExists() ) {
Config cfg(linkFile(), Config::File);
cfg.writeEntry(key,value);
}
}
/*!
Returns the property named \a key.
*/
QString AppLnk::property(const QString& key) const
{
QString lf = linkFile();
if ( !QFile::exists(lf) )
return QString::null;
Config cfg(lf, Config::File);
return cfg.readEntry(key);
}
+bool AppLnk::isPreloaded() const {
+ // Preload information is stored in the Launcher config in v1.5.
+ Config cfg("Launcher");
+ cfg.setGroup("Preload");
+ QStringList apps = cfg.readListEntry("Apps",',');
+ if (apps.contains(exec()))
+ return true;
+ return false;
+}
+
+void AppLnk::setPreloaded(bool yesNo) {
+ // Preload information is stored in the Launcher config in v1.5.
+ Config cfg("Launcher");
+ cfg.setGroup("Preload");
+ QStringList apps = cfg.readListEntry("Apps", ',');
+ if (apps.contains(exec()) && !yesNo)
+ apps.remove(exec());
+ else if (yesNo && !apps.contains(exec()))
+ apps.append(exec());
+ cfg.writeEntry("Apps", apps, ',');
+}
+
+
/*!
Deletes both the linkFile() and file() associated with this AppLnk.
*/
void AppLnk::removeFiles()
{
bool valid = isValid();
if ( !valid || !linkFileKnown() || QFile::remove(linkFile()) ) {
if ( QFile::remove(file()) ) {
QCopEnvelope e("QPE/System", "linkChanged(QString)");
if ( linkFileKnown() )
e << linkFile();
else
e << file();
} else if ( valid ) {
// restore link
writeLink();
}
}
}
/*!
Delete the linkFile(), leaving any file() untouched.
*/
void AppLnk::removeLinkFile()
diff --git a/library/applnk.h b/library/applnk.h
index 18e20b6..9b5523e 100644
--- a/library/applnk.h
+++ b/library/applnk.h
@@ -57,48 +57,53 @@ public:
QStringList mimeTypeIcons() const { return mMimeTypeIcons; }
const QArray<int> &categories() const;
int id() const { return mId; }
bool linkFileKnown() const { return !mLinkFile.isNull(); }
void execute() const;
void execute(const QStringList& args) const;
void removeFiles();
void removeLinkFile();
void setName( const QString& docname );
void setExec( const QString& exec );
void setFile( const QString& filename );
void setLinkFile( const QString& filename );
void setComment( const QString& comment );
void setType( const QString& mimetype );
void setIcon( const QString& iconname );
void setCategories( const QArray<int> &v );
bool writeLink() const;
void setProperty(const QString& key, const QString& value);
QString property(const QString& key) const;
+//#ifdef QTOPIA_INTERNAL_PRELOADACCESS
+ bool isPreloaded() const;
+ void setPreloaded(bool yesNo);
+//#endif
+
protected:
QString mName;
QPixmap mPixmap;
QPixmap mBigPixmap;
QString mExec;
QString mType;
QString mRotation;
QString mComment;
QString mFile;
QString mLinkFile;
QString mIconFile;
QStringList mMimeTypes;
QStringList mMimeTypeIcons;
int mId;
static int lastId;
AppLnkPrivate *d;
friend class AppLnkSet;
virtual void invoke(const QStringList& args) const;
bool ensureLinkExists() const;
void storeLink() const;
};
class DocLnk : public AppLnk