00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef ATEMPLATE_H
00032 #define ATEMPLATE_H
00033
00034 #include "ananasglobal.h"
00035 #include "itemplate.h"
00036
00037 #define token_open "<#"
00038 #define token_close "#>"
00039
00040 #include <qobject.h>
00041 #include <qdict.h>
00042 #include <qstringlist.h>
00043
00102 class ANANAS_EXPORT aTemplate : public iTemplate
00103 {
00104 Q_OBJECT
00105 public:
00106
00107 aTemplate();
00108 virtual ~aTemplate();
00109
00110 bool open( const QString &fname );
00111 void close();
00112 void clear(){ buf="";};
00113 QString getValue( const QString &name );
00114 void setValue( const QString &name, const QString &value );
00115 QString exec( const QString &sname );
00116 QString result(){ return buf;};
00117 bool save( const QString & fname );
00118 void cleanUpTags();
00119 virtual void setDir(const QString &dir);
00120 virtual QString getDir();
00121
00122 protected:
00123 QString templateDir;
00124
00125 private:
00126 QString buf;
00127 QString tpl;
00128 QDict<QString> values;
00129
00130 void freeValues();
00131 };
00132
00133 #endif //ATEMPLATE_H