Prepare for changing return types in KMime.
[kdepim.git] / composereditor-ng / extendattributes / extendattributesutils.cpp
blob08db7ab0e1a01aa5941b7f4cb457ef6d2e4d2848
1 /*
2 Copyright (c) 2013-2015 Montel Laurent <montel@kde.org>
4 This library is free software; you can redistribute it and/or modify it
5 under the terms of the GNU Library General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or (at your
7 option) any later version.
9 This library is distributed in the hope that it will be useful, but WITHOUT
10 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
12 License for more details.
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to the
16 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
17 02110-1301, USA.
20 #include "extendattributesutils_p.h"
21 namespace ComposerEditorNG
24 QMap<QString, QStringList> ExtendAttributesUtils::listGlobalAttribute()
26 QMap<QString, QStringList> globalAttr;
27 globalAttr.insert(QStringLiteral("id"), QStringList());
28 globalAttr.insert(QStringLiteral("class"), QStringList());
29 globalAttr.insert(QStringLiteral("title"), QStringList());
30 globalAttr.insert(QStringLiteral("lang"), QStringList());
31 QStringList dir;
32 dir << QStringLiteral("ltr");
33 dir << QStringLiteral("rtl");
34 dir << QStringLiteral("auto");
35 globalAttr.insert(QStringLiteral("dir"), dir);
37 return globalAttr;
40 QMap<QString, QStringList> ExtendAttributesUtils::globalAttribute()
42 QMap<QString, QStringList> globalAttr;
43 globalAttr.insert(QStringLiteral("accesskey"), QStringList());
44 globalAttr.insert(QStringLiteral("class"), QStringList());
45 QStringList dir;
46 dir << QStringLiteral("ltr");
47 dir << QStringLiteral("rtl");
48 dir << QStringLiteral("auto");
49 globalAttr.insert(QStringLiteral("dir"), dir);
50 globalAttr.insert(QStringLiteral("id"), QStringList());
51 globalAttr.insert(QStringLiteral("lang"), QStringList());
52 globalAttr.insert(QStringLiteral("style"), QStringList());
53 globalAttr.insert(QStringLiteral("tabindex"), QStringList());
54 globalAttr.insert(QStringLiteral("title"), QStringList());
55 return globalAttr;
58 QMap<QString, QStringList> ExtendAttributesUtils::attributesMap(ExtendAttributesDialog::ExtendType type)
60 switch (type) {
61 case ExtendAttributesDialog::Image:
62 return attributesMapImage();
63 case ExtendAttributesDialog::Table:
64 return attributesMapTable();
65 case ExtendAttributesDialog::Cell:
66 return attributesMapCell();
67 case ExtendAttributesDialog::Link:
68 return attributesMapLink();
69 case ExtendAttributesDialog::Body:
70 return attributesMapBody();
71 case ExtendAttributesDialog::ListUL:
72 return attributesMapListUL();
73 case ExtendAttributesDialog::ListOL:
74 return attributesMapListOL();
75 case ExtendAttributesDialog::ListDL:
76 return attributesMapListDL();
77 default:
78 break;
80 return QMap<QString, QStringList>();
83 QMap<QString, QStringList> ExtendAttributesUtils::attributesMapImage()
85 QMap<QString, QStringList> map;
86 map = globalAttribute();
87 QStringList align;
88 align << QStringLiteral("top");
89 align << QStringLiteral("bottom");
90 align << QStringLiteral("middle");
91 align << QStringLiteral("left");
92 align << QStringLiteral("right");
93 map.insert(QStringLiteral("align"), align);
94 map.insert(QStringLiteral("alt"), QStringList());
95 map.insert(QStringLiteral("border"), QStringList());
96 map.insert(QStringLiteral("height"), QStringList());
97 map.insert(QStringLiteral("hspace"), QStringList());
98 map.insert(QStringLiteral("ismap"), QStringList());
99 map.insert(QStringLiteral("longdesc"), QStringList());
100 map.insert(QStringLiteral("src"), QStringList());
101 map.insert(QStringLiteral("usemap"), QStringList());
102 map.insert(QStringLiteral("vspace"), QStringList());
103 map.insert(QStringLiteral("width"), QStringList());
104 return map;
107 QMap<QString, QStringList> ExtendAttributesUtils::attributesMapTable()
109 QMap<QString, QStringList> map;
110 map = globalAttribute();
111 QStringList align;
112 align << QStringLiteral("left");
113 align << QStringLiteral("center");
114 align << QStringLiteral("right");
115 map.insert(QStringLiteral("align"), align);
116 map.insert(QStringLiteral("bgcolor"), QStringList());
117 map.insert(QStringLiteral("border"), QStringList());
118 map.insert(QStringLiteral("cellpadding"), QStringList());
119 map.insert(QStringLiteral("cellspacing"), QStringList());
120 QStringList frame;
121 frame << QStringLiteral("void");
122 frame << QStringLiteral("above");
123 frame << QStringLiteral("below");
124 frame << QStringLiteral("hsides");
125 frame << QStringLiteral("lhs");
126 frame << QStringLiteral("rhs");
127 frame << QStringLiteral("vsides");
128 frame << QStringLiteral("box");
129 frame << QStringLiteral("border");
130 map.insert(QStringLiteral("frame"), frame);
131 QStringList rules;
132 rules << QStringLiteral("none");
133 rules << QStringLiteral("groups");
134 rules << QStringLiteral("rows");
135 rules << QStringLiteral("cols");
136 rules << QStringLiteral("all");
137 map.insert(QStringLiteral("rules"), rules);
138 map.insert(QStringLiteral("summary"), QStringList());
139 map.insert(QStringLiteral("width"), QStringList());
140 return map;
143 QMap<QString, QStringList> ExtendAttributesUtils::attributesMapCell()
145 QMap<QString, QStringList> map;
146 map = globalAttribute();
147 map.insert(QStringLiteral("abbr"), QStringList());
148 QStringList align;
149 align << QStringLiteral("top");
150 align << QStringLiteral("bottom");
151 align << QStringLiteral("middle");
152 align << QStringLiteral("left");
153 align << QStringLiteral("right");
154 align << QStringLiteral("char");
155 map.insert(QStringLiteral("align"), align);
156 map.insert(QStringLiteral("axis"), QStringList());
157 map.insert(QStringLiteral("bgcolor"), QStringList());
158 map.insert(QStringLiteral("char"), QStringList());
159 map.insert(QStringLiteral("charoff"), QStringList());
160 map.insert(QStringLiteral("colspan"), QStringList());
161 map.insert(QStringLiteral("headers"), QStringList());
162 map.insert(QStringLiteral("height"), QStringList());
163 map.insert(QStringLiteral("nowrap"), QStringList());
164 map.insert(QStringLiteral("rowspan"), QStringList());
165 QStringList scope;
166 scope << QStringLiteral("col");
167 scope << QStringLiteral("colgroup");
168 scope << QStringLiteral("row");
169 scope << QStringLiteral("rowgroup");
170 map.insert(QStringLiteral("scope"), scope);
171 QStringList valign;
172 valign << QStringLiteral("top");
173 valign << QStringLiteral("middle");
174 valign << QStringLiteral("bottom");
175 valign << QStringLiteral("baseline");
176 map.insert(QStringLiteral("valign"), valign);
177 map.insert(QStringLiteral("width"), QStringList());
178 return map;
181 QMap<QString, QStringList> ExtendAttributesUtils::attributesMapLink()
183 QMap<QString, QStringList> map;
184 map = globalAttribute();
185 map.insert(QStringLiteral("charset"), QStringList());
186 map.insert(QStringLiteral("href"), QStringList());
187 map.insert(QStringLiteral("hreflang"), QStringList());
188 map.insert(QStringLiteral("media"), QStringList());
189 QStringList rel;
190 rel << QStringLiteral("alternate");
191 rel << QStringLiteral("archives");
192 rel << QStringLiteral("author");
193 rel << QStringLiteral("bookmark");
194 rel << QStringLiteral("external");
195 rel << QStringLiteral("first");
196 rel << QStringLiteral("help");
197 rel << QStringLiteral("icon");
198 rel << QStringLiteral("last");
199 rel << QStringLiteral("license");
200 rel << QStringLiteral("next");
201 rel << QStringLiteral("nofollow");
202 rel << QStringLiteral("noreferrer");
203 rel << QStringLiteral("pingback");
204 rel << QStringLiteral("prefetch");
205 rel << QStringLiteral("prev");
206 rel << QStringLiteral("search");
207 rel << QStringLiteral("sidebar");
208 rel << QStringLiteral("stylesheet");
209 rel << QStringLiteral("tag");
210 rel << QStringLiteral("up");
211 map.insert(QStringLiteral("rel"), rel);
212 map.insert(QStringLiteral("rev"), QStringList());
213 QStringList target;
214 target << QStringLiteral("_blank");
215 target << QStringLiteral("_self");
216 target << QStringLiteral("_top");
217 target << QStringLiteral("_parent");
218 map.insert(QStringLiteral("target"), target);
219 map.insert(QStringLiteral("type"), QStringList());
220 return map;
223 QMap<QString, QStringList> ExtendAttributesUtils::attributesMapListUL()
225 QMap<QString, QStringList> map;
226 map = listGlobalAttribute();
227 QStringList rel;
228 rel << QStringLiteral("compact");
229 map.insert(QStringLiteral("compact"), rel);
230 QStringList type;
231 type << QStringLiteral("disc");
232 type << QStringLiteral("square");
233 type << QStringLiteral("circle");
234 map.insert(QStringLiteral("type"), type);
235 return map;
238 QMap<QString, QStringList> ExtendAttributesUtils::attributesMapListOL()
240 QMap<QString, QStringList> map;
241 map = listGlobalAttribute();
242 QStringList rel;
243 rel << QStringLiteral("compact");
244 map.insert(QStringLiteral("compact"), rel);
245 map.insert(QStringLiteral("start"), QStringList());
246 QStringList type;
247 type << QStringLiteral("1");
248 type << QStringLiteral("A");
249 type << QStringLiteral("a");
250 type << QStringLiteral("I");
251 type << QStringLiteral("i");
252 map.insert(QStringLiteral("type"), type);
254 return map;
257 QMap<QString, QStringList> ExtendAttributesUtils::attributesMapListDL()
259 QMap<QString, QStringList> map;
260 map = listGlobalAttribute();
261 return map;
264 QMap<QString, QStringList> ExtendAttributesUtils::attributesMapBody()
266 QMap<QString, QStringList> map;
267 map = globalAttribute();
268 map.insert(QStringLiteral("alink"), QStringList());
269 map.insert(QStringLiteral("background"), QStringList());
270 map.insert(QStringLiteral("bgcolor"), QStringList());
271 map.insert(QStringLiteral("link"), QStringList());
272 map.insert(QStringLiteral("text"), QStringList());
273 map.insert(QStringLiteral("vlink"), QStringList());
274 return map;
277 QMap<QString, QStringList> ExtendAttributesUtils::attributesJavascriptWindowAndBase()
279 QMap<QString, QStringList> map;
280 map = attributesJavascript();
281 //WindowEvent
282 map.insert(QStringLiteral("onload"), QStringList());
283 map.insert(QStringLiteral("onunload"), QStringList());
284 return map;
287 QMap<QString, QStringList> ExtendAttributesUtils::attributesJavascript()
289 QMap<QString, QStringList> map;
290 //Form event
291 map.insert(QStringLiteral("onblur"), QStringList());
292 map.insert(QStringLiteral("onchange"), QStringList());
293 map.insert(QStringLiteral("onfocus"), QStringList());
294 map.insert(QStringLiteral("onreset"), QStringList());
295 map.insert(QStringLiteral("onselect"), QStringList());
296 map.insert(QStringLiteral("onsubmit"), QStringList());
297 //Keyboard event.
298 map.insert(QStringLiteral("onkeydown"), QStringList());
299 map.insert(QStringLiteral("onkeypress"), QStringList());
300 map.insert(QStringLiteral("onkeyup"), QStringList());
302 //Mouse event.
303 map.insert(QStringLiteral("onclick"), QStringList());
304 map.insert(QStringLiteral("ondblclick"), QStringList());
305 map.insert(QStringLiteral("onmousedown"), QStringList());
306 map.insert(QStringLiteral("onmousemove"), QStringList());
307 map.insert(QStringLiteral("onmouseout"), QStringList());
308 map.insert(QStringLiteral("onmouseover"), QStringList());
309 map.insert(QStringLiteral("onmouseup"), QStringList());
310 return map;