Subversion Repositories Scribus

Rev

Rev 8807 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
8196 avox 1
#ifndef SAXHELPER_H
2
#define SAXHELPER_H
3
 
8227 avox 4
#include "desaxe_conf.h"
8337 avox 5
#include <qvaluelist.h>
6
#include <qvaluestack.h>
8196 avox 7
 
8337 avox 8
 
8196 avox 9
class ScFace;
10
class FPointArray;
11
 
8227 avox 12
Xml_string toXMLString(unsigned int val);
13
Xml_string toXMLString(int val);
14
Xml_string toXMLString(unsigned long val);
15
Xml_string toXMLString(long val);
16
Xml_string toXMLString(double val);
17
Xml_string toXMLString(float val);
18
Xml_string toXMLString(bool val);
19
Xml_string toXMLString(const Xml_string& val);
8196 avox 20
 
8227 avox 21
Xml_string toXMLString(const ScFace& val);
22
Xml_string toXMLString(const FPointArray& path);
23
 
8337 avox 24
Xml_string toXMLString(const QValueList<double>& doublelist);
25
Xml_string toXMLString(const QValueList<int>& intlist);
26
 
8807 jghali 27
unsigned int parseUInt(const Xml_string& str);
28
int parseInt(const Xml_string&  str);
29
unsigned long parseULong(const Xml_string&  str);
30
long parseLong(const Xml_string&  str);
31
double parseDouble(const Xml_string&  str);
32
float parseFloat(const Xml_string&  str);
33
bool parseBool(const Xml_string&  str);
34
QValueList<double> parseDoubleList(const Xml_string&  str);
35
QValueList<int> parseIntList(const Xml_string&  str);
36
QValueStack<int> parseIntStack(const Xml_string&  str);
8227 avox 37
 
8390 avox 38
 
8832 avox 39
Xml_string mkXMLName(const QString& any);
8390 avox 40
 
41
 
8266 avox 42
template<class ENUM>
43
inline
8807 jghali 44
ENUM parseEnum(const Xml_string& str)
8227 avox 45
{
46
        return static_cast<ENUM>(str.toUInt());
47
}
48
 
49
 
8266 avox 50
template<class DATA>
51
inline
8807 jghali 52
DATA parse(const Xml_string& str)
8266 avox 53
{
54
        return static_cast<DATA>(str);
55
}
56
 
57
template<>
58
inline
8807 jghali 59
const Xml_string& parse<const Xml_string&>(const Xml_string& str)
8266 avox 60
{
8807 jghali 61
        return str;
62
}
63
 
64
template<>
65
inline
8832 avox 66
Xml_string parse<Xml_string>(const Xml_string& str)
67
{
68
        return str;
69
}
70
 
71
template<>
72
inline
8807 jghali 73
unsigned int parse<unsigned int>(const Xml_string& str)
74
{
8266 avox 75
        return parseUInt(str);
76
}
77
 
78
template<>
79
inline
8807 jghali 80
int parse<int>(const Xml_string& str)
8266 avox 81
{
82
        return parseInt(str);
83
}
84
 
85
template<>
86
inline
8807 jghali 87
unsigned long parse<unsigned long>(const Xml_string& str)
8266 avox 88
{
89
        return parseULong(str);
90
}
91
 
92
template<>
93
inline
8807 jghali 94
long parse<long>(const Xml_string& str)
8266 avox 95
{
96
        return parseLong(str);
97
}
98
 
99
template<>
100
inline
8807 jghali 101
double parse<double>(const Xml_string& str)
8266 avox 102
{
103
        return parseDouble(str);
104
}
105
 
106
template<>
107
inline
8807 jghali 108
float parse<float>(const Xml_string& str)
8266 avox 109
{
110
        return parseFloat(str);
111
}
112
 
113
template<>
114
inline
8807 jghali 115
bool parse<bool>(const Xml_string& str)
8266 avox 116
{
117
        return parseBool(str);
118
}
119
 
8337 avox 120
template<>
121
inline
8807 jghali 122
QValueList<int> parse<QValueList<int> >(const Xml_string& str)
8337 avox 123
{
124
        return parseIntList(str);
125
}
8266 avox 126
 
8337 avox 127
template<>
128
inline
8807 jghali 129
QValueList<double> parse<QValueList<double> >(const Xml_string& str)
8337 avox 130
{
131
        return parseDoubleList(str);
132
}
133
 
134
 
8196 avox 135
#endif