Ananas Library 0.9.5
amsotemplate.h
1#ifndef AMSOTEMPLATE_H
2#define AMSOTEMPLATE_H
3
4#include <qstring.h>
5#include <qptrlist.h>
6#include <qvaluestack.h>
7#include <qdom.h>
8
9#define open_token "<:"
10#define close_token ":>"
11#define open_token_section "\\[:"
12#define close_token_section ":\\]"
13#define PARAM "param"
14
15#include "ananasglobal.h"
16#include "itemplate.h"
17
18
53class ANANAS_EXPORT aMSOTemplate : public iTemplate
54{
55 Q_OBJECT
56public:
57
58 aMSOTemplate();
59 virtual ~aMSOTemplate();
60
61 virtual bool open( const QString &fname );
62 virtual void close();
63 virtual void clear();
64 virtual QString getValue( const QString &name );
65 virtual void setValue( const QString &name, const QString &value );
66 virtual QString exec( const QString &sname );
67 virtual QString result();
68 virtual bool save( const QString & fname );
69 virtual void cleanUpTags();
70 virtual void setDir(const QString &dir);
71 virtual QString getDir();
72
73protected:
74 QMap<QString,QString> values;
75 void searchTags(QDomNode node, const QString &sname );
76 virtual bool getNodeTags(QDomNode node, const QString &tagname, bool params );
77 void insertRowValues(QDomNode node);
78 virtual void insertTagsValues(QDomNode node, const QString &tagName);
79 void clearTags(QDomNode node, bool section );
80 void clearRow(QDomNode node);
81 void clearAttributes(QDomNode n, const QString node, const QString attr);
82 int getRowIndex(QDomNode node);
83
92 QString templateDir;
93
102 QDomDocument docTpl;
103
104
105};
106
107#endif //AMSOTEMPLATE_H
void clearAttributes(QDomNode n, const QString node, const QString attr)
Definition amsotemplate.cpp:464
int getRowIndex(QDomNode node)
Definition amsotemplate.cpp:553
virtual bool getNodeTags(QDomNode node, const QString &tagname, bool params)
Definition amsotemplate.cpp:226
void insertRowValues(QDomNode node)
Definition amsotemplate.cpp:272
void searchTags(QDomNode node, const QString &sname)
Definition amsotemplate.cpp:186
QDomDocument docTpl
Definition amsotemplate.h:102
void clearRow(QDomNode node)
Definition amsotemplate.cpp:382
virtual void insertTagsValues(QDomNode node, const QString &tagName)
Definition amsotemplate.cpp:314
QString templateDir
Definition amsotemplate.h:92
void clearTags(QDomNode node, bool section)
Definition amsotemplate.cpp:335
virtual void setValue(const QString &name, const QString &value)
Definition itemplate.cpp:115
virtual void close()
Definition itemplate.cpp:87
virtual bool open(const QString &fname)=0
Definition itemplate.cpp:73
virtual void cleanUpTags()
Definition itemplate.cpp:186
virtual void setDir(const QString &dir)
Definition itemplate.cpp:199
virtual QString getDir()
Definition itemplate.cpp:212
iTemplate()
Definition itemplate.cpp:47
virtual QString getValue(const QString &name)
Definition itemplate.cpp:100
virtual void clear()
Definition itemplate.cpp:159
virtual QString result()
Definition itemplate.cpp:172
virtual QString exec(const QString &sname)
Definition itemplate.cpp:145
virtual bool save(const QString &fname)
Definition itemplate.cpp:129