00001 #ifndef TEMPLATECACHE_H 00002 #define TEMPLATECACHE_H 00003 00004 #include "templateloader.h" 00005 #include <QCache> 00006 00041 class TemplateCache : public TemplateLoader { 00042 Q_OBJECT 00043 Q_DISABLE_COPY(TemplateCache); 00044 public: 00045 00051 TemplateCache(QSettings* settings, QObject* parent=0); 00052 00053 protected: 00054 00060 virtual QString tryFile(QString localizedName); 00061 00062 private: 00063 00064 struct CacheEntry { 00065 QString document; 00066 qint64 created; 00067 }; 00068 00070 int cacheTimeout; 00071 00073 QCache<QString,CacheEntry> cache; 00074 00075 }; 00076 00077 #endif // TEMPLATECACHE_H