Photon 1.0.0
Loading...
Searching...
No Matches
string_id.h
Go to the documentation of this file.
1#ifndef LH_STRING_ID_H
2#define LH_STRING_ID_H
3
4namespace litehtml
5{
6
7#define STRING_ID(...)\
8 enum string_id { __VA_ARGS__ };\
9 const auto initial_string_ids = #__VA_ARGS__;
10
12
13 // HTML tags
14 _a_,
15 _abbr_,
16 _acronym_,
17 _address_,
18 _applet_,
19 _area_,
20 _article_,
21 _aside_,
22 _audio_,
23 _b_,
24 _base_,
25 _basefont_,
26 _bdi_,
27 _bdo_,
28 _big_,
29 _blockquote_,
30 _body_,
31 _br_,
32 _button_,
33 _canvas_,
34 _caption_,
35 _center_,
36 _cite_,
37 _code_,
38 _col_,
39 _colgroup_,
40 _data_,
41 _datalist_,
42 _dd_,
43 _del_,
44 _details_,
45 _dfn_,
46 _dialog_,
47 _dir_,
48 _div_,
49 _dl_,
50 _dt_,
51 _em_,
52 _embed_,
53 _fieldset_,
54 _figcaption_,
55 _figure_,
56 _footer_,
57 _form_,
58 _frame_,
59 _frameset_,
60 _h1_,
61 _h2_,
62 _h3_,
63 _h4_,
64 _h5_,
65 _h6_,
66 _head_,
67 _header_,
68 _hr_,
69 _html_,
70 _i_,
71 _iframe_,
72 _img_,
73 _input_,
74 _ins_,
75 _kbd_,
76 _label_,
77 _legend_,
78 _li_,
79 _link_,
80 _main_,
81 _map_,
82 _mark_,
83 _meta_,
84 _meter_,
85 _nav_,
86 _noframes_,
87 _noscript_,
88 _object_,
89 _ol_,
90 _optgroup_,
91 _option_,
92 _output_,
93 _p_,
94 _param_,
95 _picture_,
96 _pre_,
97 _progress_,
98 _q_,
99 _rp_,
100 _rt_,
101 _ruby_,
102 _s_,
103 _samp_,
104 _script_,
105 _section_,
106 _select_,
107 _small_,
108 _source_,
109 _span_,
110 _strike_,
111 _strong_,
112 _style_,
113 _sub_,
114 _summary_,
115 _sup_,
116 _svg_,
117 _table_,
118 _tbody_,
119 _td_,
120 _template_,
121 _textarea_,
122 _tfoot_,
123 _th_,
124 _thead_,
125 _time_,
126 _title_,
127 _tr_,
128 _track_,
129 _tt_,
130 _u_,
131 _ul_,
132 _var_,
133 _video_,
134 _wbr_,
135
136 // litehtml internal tags
137 __tag_before_, // note: real tag cannot start with '-'
138 __tag_after_,
139
140 // CSS pseudo-elements
141 _before_,
142 _after_,
143
144 // CSS pseudo-classes
145 _root_,
146 _only_child_,
147 _only_of_type_,
148 _first_child_,
149 _first_of_type_,
150 _last_child_,
151 _last_of_type_,
152 _nth_child_,
153 _nth_of_type_,
154 _nth_last_child_,
155 _nth_last_of_type_,
156 _is_,
157 _not_,
158 _lang_,
159
160 _active_,
161 _hover_,
162
163 // CSS property names
164 // Side properties must go in this order: top, right, bottom, left (clockwise starting from the top).
165 // Corner properties must go in this order: top-left, top-right, bottom-right, bottom-left (clockwise starting from the top-left).
166 // This is used in style::add_four_properties() for margin-*, padding-*, border-*-{width,style,color} and border-*-*-radius{,-x,-y}.
167 _background_,
168 _background_color_,
169 _background_image_,
170 _background_image_baseurl_,
171 _background_repeat_,
172 _background_origin_,
173 _background_clip_,
174 _background_attachment_,
175 _background_size_,
176 _background_position_,
177 _background_position_x_,
178 _background_position_y_,
179 _background_gradient_,
180
181 _border_,
182 _border_width_,
183 _border_style_,
184 _border_color_,
185
186 _border_spacing_,
187 __litehtml_border_spacing_x_,
188 __litehtml_border_spacing_y_,
189
190 _border_top_,
191 _border_right_,
192 _border_bottom_,
193 _border_left_,
194
195 _border_top_style_,
196 _border_right_style_,
197 _border_bottom_style_,
198 _border_left_style_,
199
200 _border_top_width_,
201 _border_right_width_,
202 _border_bottom_width_,
203 _border_left_width_,
204
205 _border_top_color_,
206 _border_right_color_,
207 _border_bottom_color_,
208 _border_left_color_,
209
210 _border_radius_,
211 _border_radius_x_,
212 _border_radius_y_,
213
214 _border_top_left_radius_,
215 _border_top_right_radius_,
216 _border_bottom_right_radius_,
217 _border_bottom_left_radius_,
218
219 _border_top_left_radius_x_,
220 _border_top_right_radius_x_,
221 _border_bottom_right_radius_x_,
222 _border_bottom_left_radius_x_,
223
224 _border_top_left_radius_y_,
225 _border_top_right_radius_y_,
226 _border_bottom_right_radius_y_,
227 _border_bottom_left_radius_y_,
228
229 _list_style_,
230 _list_style_type_,
231 _list_style_position_,
232 _list_style_image_,
233 _list_style_image_baseurl_,
234
235 _margin_,
236 _margin_top_,
237 _margin_right_,
238 _margin_bottom_,
239 _margin_left_,
240
241 _padding_,
242 _padding_top_,
243 _padding_right_,
244 _padding_bottom_,
245 _padding_left_,
246
247 _font_,
248 _font_family_,
249 _font_style_,
250 _font_variant_,
251 _font_weight_,
252 _font_size_,
253 _line_height_,
254 _text_decoration_,
255
256 _white_space_,
257 _text_align_,
258 _vertical_align_,
259 _color_,
260 _width_,
261 _height_,
262 _min_width_,
263 _min_height_,
264 _max_width_,
265 _max_height_,
266 _position_,
267 _overflow_,
268 _display_,
269 _visibility_,
270 _appearance_,
271 _box_sizing_,
272 _z_index_,
273 _float_,
274 _clear_,
275 _text_indent_,
276 _top_,
277 _right_,
278 _bottom_,
279 _left_,
280 _cursor_,
281 _content_,
282 _border_collapse_,
283 _text_transform_,
284
285 _flex_,
286 _flex_flow_,
287 _flex_direction_,
288 _flex_wrap_,
289 _justify_content_,
290 _align_items_,
291 _align_content_,
292 _align_self_,
293 _flex_grow_,
294 _flex_shrink_,
295 _flex_basis_,
296
297 _caption_side_,
298 _order_,
299
300 _counter_reset_,
301 _counter_increment_,
302
303 // some CSS dimensions
304 _deg_,
305 _grad_,
306 _rad_,
307 _turn_,
308
309 // some CSS property values
310 _initial_,
311 _auto_,
312 _none_,
313 _linear_gradient_,
314 _repeating_linear_gradient_,
315 _radial_gradient_,
316 _repeating_radial_gradient_,
317 _conic_gradient_,
318 _repeating_conic_gradient_,
319
320 // at-rules and their components
321 _charset_,
322 _layer_,
323 _import_,
324 _media_,
325 _and_,
326 _or_,
327 _boolean_,
328 _plain_,
329 _range_,
330 _discrete_,
331 _integer_,
332 _length_,
333 _resolution_,
334 _ratio_,
335 _keyword_,
336 _orientation_,
337 _portrait_,
338 _landscape_,
339 _device_width_,
340 _device_height_,
341 _aspect_ratio_,
342 _device_aspect_ratio_,
343 _color_index_,
344 _monochrome_,
345)
346#undef STRING_ID
347extern const string_id empty_id; // _id("")
348extern const string_id star_id; // _id("*")
349
350string_id _id(const string& str);
351const string& _s(string_id id);
352
353} // namespace litehtml
354
355#endif // LH_STRING_ID_H
Definition background.h:12
string_id _id(const string &str)
Definition string_id.cpp:38
const string_id star_id
Definition string_id.cpp:36
const string_id empty_id
Definition string_id.cpp:35
const string & _s(string_id id)
Definition string_id.cpp:48
#define STRING_ID(...)
Definition string_id.h:7