@@ -63,6 +63,22 @@ class T_CORE_EXPORT TActionView : public QObject, public TActionHelper, public T
6363
6464 QString responsebody;
6565
66+ static inline QString fromValue (const QString &str) { return str; }
67+ static inline QString fromValue (const char *str) { return QString (str); } // using codecForCStrings()
68+ static inline QString fromValue (const QByteArray &str) { return QString (str); } // using codecForCStrings()
69+ static QString fromValue (int n, int base = 10 );
70+ static QString fromValue (long n, int base = 10 );
71+ static QString fromValue (ulong n, int base = 10 );
72+ static QString fromValue (qlonglong n, int base = 10 );
73+ static QString fromValue (qulonglong n, int base = 10 );
74+ static QString fromValue (double d, char format = ' g' , int precision = 6 );
75+ static QString fromValue (const QJsonObject &object);
76+ static QString fromValue (const QJsonArray &array);
77+ static QString fromValue (const QJsonDocument &doc);
78+ static QString fromValue (const THtmlAttribute &attr);
79+ static QString fromValue (const QVariant &var);
80+ static QString fromValue (const QVariantMap &map);
81+
6682private:
6783 T_DISABLE_COPY (TActionView)
6884 T_DISABLE_MOVE (TActionView)
@@ -114,66 +130,68 @@ inline const QVariantMap &TActionView::allVariants() const
114130
115131inline QString TActionView::echo (const QString &str)
116132{
117- responsebody += str;
133+ responsebody += fromValue ( str) ;
118134 return QString ();
119135}
120136
121137inline QString TActionView::echo (const char *str)
122138{
123- responsebody += QString (str); // using codecForCStrings()
139+ responsebody += fromValue (str);
124140 return QString ();
125141}
126142
127143inline QString TActionView::echo (const QByteArray &str)
128144{
129- responsebody += QString (str); // using codecForCStrings()
145+ responsebody += fromValue (str);
130146 return QString ();
131147}
132148
133149inline QString TActionView::echo (int n, int base)
134150{
135- responsebody += QString::number (n, base);
151+ responsebody += fromValue (n, base);
136152 return QString ();
137153}
138154
139155inline QString TActionView::echo (long n, int base)
140156{
141- responsebody += QString::number (n, base);
157+ responsebody += fromValue (n, base);
142158 return QString ();
143159}
144160
145161inline QString TActionView::echo (ulong n, int base)
146162{
147- responsebody += QString::number (n, base);
163+ responsebody += fromValue (n, base);
148164 return QString ();
149165}
150166
151167inline QString TActionView::echo (qlonglong n, int base)
152168{
153- responsebody += QString::number (n, base);
169+ responsebody += fromValue (n, base);
154170 return QString ();
155171}
156172
157173inline QString TActionView::echo (qulonglong n, int base)
158174{
159- responsebody += QString::number (n, base);
175+ responsebody += fromValue (n, base);
160176 return QString ();
161177}
162178
163179inline QString TActionView::echo (double d, char format, int precision)
164180{
165- responsebody += QString::number (d, format, precision);
181+ responsebody += fromValue (d, format, precision);
166182 return QString ();
167183}
168184
169185inline QString TActionView::echo (const QJsonObject &object)
170186{
171- return echo (QJsonDocument (object));
187+ responsebody += fromValue (object);
188+ return QString ();
172189}
173190
174191inline QString TActionView::echo (const QJsonArray &array)
175192{
176- return echo (QJsonDocument (array));
193+ responsebody += fromValue (array);
194+ return QString ();
177195}
178196
179197inline QString TActionView::echo (const QJsonDocument &doc)
@@ -182,64 +200,97 @@ inline QString TActionView::echo(const QJsonDocument &doc)
182200 return QString ();
183201}
184202
203+ inline QString TActionView::echo (const THtmlAttribute &attr)
204+ {
205+ responsebody += fromValue (attr);
206+ return QString ();
207+ }
208+
209+ inline QString TActionView::echo (const QVariant &var)
210+ {
211+ responsebody += fromValue (var);
212+ return QString ();
213+ }
214+
215+ inline QString TActionView::echo (const QVariantMap &map)
216+ {
217+ responsebody += fromValue (map);
218+ return QString ();
219+ }
220+
185221inline QString TActionView::eh (const QString &str)
186222{
187- return echo (THttpUtility::htmlEscape (str));
223+ return echo (THttpUtility::htmlEscape (fromValue ( str) ));
188224}
189225
190226inline QString TActionView::eh (const char *str)
191227{
192- return echo (THttpUtility::htmlEscape (str));
228+ return echo (THttpUtility::htmlEscape (fromValue ( str) ));
193229}
194230
195231inline QString TActionView::eh (const QByteArray &str)
196232{
197- return echo (THttpUtility::htmlEscape (str));
233+ return echo (THttpUtility::htmlEscape (fromValue ( str) ));
198234}
199235
200236inline QString TActionView::eh (int n, int base)
201237{
202- return echo (THttpUtility::htmlEscape (QString::number (n, base)));
238+ return echo (THttpUtility::htmlEscape (fromValue (n, base)));
203239}
204240
205241inline QString TActionView::eh (long n, int base)
206242{
207- return echo (THttpUtility::htmlEscape (QString::number (n, base)));
243+ return echo (THttpUtility::htmlEscape (fromValue (n, base)));
208244}
209245
210246inline QString TActionView::eh (ulong n, int base)
211247{
212- return echo (THttpUtility::htmlEscape (QString::number (n, base)));
248+ return echo (THttpUtility::htmlEscape (fromValue (n, base)));
213249}
214250
215251inline QString TActionView::eh (qlonglong n, int base)
216252{
217- return echo (THttpUtility::htmlEscape (QString::number (n, base)));
253+ return echo (THttpUtility::htmlEscape (fromValue (n, base)));
218254}
219255
220256inline QString TActionView::eh (qulonglong n, int base)
221257{
222- return echo (THttpUtility::htmlEscape (QString::number (n, base)));
258+ return echo (THttpUtility::htmlEscape (fromValue (n, base)));
223259}
224260
225261inline QString TActionView::eh (double d, char format, int precision)
226262{
227- return echo (THttpUtility::htmlEscape (QString::number (d, format, precision)));
263+ return echo (THttpUtility::htmlEscape (fromValue (d, format, precision)));
228264}
229265
230266inline QString TActionView::eh (const QJsonObject &object)
231267{
232- return eh ( QJsonDocument ( object));
268+ return echo ( THttpUtility::htmlEscape ( fromValue ( object) ));
233269}
234270
235271inline QString TActionView::eh (const QJsonArray &array)
236272{
237- return eh ( QJsonDocument ( array));
273+ return echo ( THttpUtility::htmlEscape ( fromValue ( array) ));
238274}
239275
240276inline QString TActionView::eh (const QJsonDocument &doc)
241277{
242- return echo (THttpUtility::htmlEscape (doc.toJson (QJsonDocument::Compact)));
278+ return echo (THttpUtility::htmlEscape (fromValue (doc)));
279+ }
280+
281+ inline QString TActionView::eh (const THtmlAttribute &attr)
282+ {
283+ return echo (THttpUtility::htmlEscape (fromValue (attr)));
284+ }
285+
286+ inline QString TActionView::eh (const QVariant &var)
287+ {
288+ return echo (THttpUtility::htmlEscape (fromValue (var)));
289+ }
290+
291+ inline QString TActionView::eh (const QVariantMap &map)
292+ {
293+ return echo (THttpUtility::htmlEscape (fromValue (map)));
243294}
244295
245296inline void TActionView::setController (TAbstractController *controller)
0 commit comments