1 /* 2 * This file is part of LibCSS 3 * Licensed under the MIT License, 4 * http://www.opensource.org/licenses/mit-license.php 5 * Copyright 2009 John-Mark Bell <jmb@netsurf-browser.org> 6 */ 7 8 #ifndef css_select_properties_h_ 9 #define css_select_properties_h_ 10 11 #include <libcss/errors.h> 12 #include <libcss/computed.h> 13 14 #include "stylesheet.h" 15 #include "select/select.h" 16 17 #define PROPERTY_FUNCS(pname) \ 18 css_error css__cascade_##pname (uint32_t opv, css_style *style, css_select_state *state); \ 19 css_error css__set_##pname##_from_hint(const css_hint *hint, css_computed_style *style); \ 20 css_error css__initial_##pname (css_select_state *state); \ 21 css_error css__compose_##pname (const css_computed_style *parent, const css_computed_style *child, css_computed_style *result); \ 22 uint32_t destroy_##pname (void *bytecode) 23 24 PROPERTY_FUNCS(align_content); 25 PROPERTY_FUNCS(align_items); 26 PROPERTY_FUNCS(align_self); 27 PROPERTY_FUNCS(azimuth); 28 PROPERTY_FUNCS(background_attachment); 29 PROPERTY_FUNCS(background_color); 30 PROPERTY_FUNCS(background_image); 31 PROPERTY_FUNCS(background_position); 32 PROPERTY_FUNCS(background_repeat); 33 PROPERTY_FUNCS(border_collapse); 34 PROPERTY_FUNCS(border_spacing); 35 PROPERTY_FUNCS(border_top_color); 36 PROPERTY_FUNCS(border_right_color); 37 PROPERTY_FUNCS(border_bottom_color); 38 PROPERTY_FUNCS(border_left_color); 39 PROPERTY_FUNCS(border_top_style); 40 PROPERTY_FUNCS(border_right_style); 41 PROPERTY_FUNCS(border_bottom_style); 42 PROPERTY_FUNCS(border_left_style); 43 PROPERTY_FUNCS(border_top_width); 44 PROPERTY_FUNCS(border_right_width); 45 PROPERTY_FUNCS(border_bottom_width); 46 PROPERTY_FUNCS(border_left_width); 47 PROPERTY_FUNCS(bottom); 48 PROPERTY_FUNCS(box_sizing); 49 PROPERTY_FUNCS(break_after); 50 PROPERTY_FUNCS(break_before); 51 PROPERTY_FUNCS(break_inside); 52 PROPERTY_FUNCS(caption_side); 53 PROPERTY_FUNCS(clear); 54 PROPERTY_FUNCS(clip); 55 PROPERTY_FUNCS(color); 56 PROPERTY_FUNCS(column_count); 57 PROPERTY_FUNCS(column_fill); 58 PROPERTY_FUNCS(column_gap); 59 PROPERTY_FUNCS(column_rule_color); 60 PROPERTY_FUNCS(column_rule_style); 61 PROPERTY_FUNCS(column_rule_width); 62 PROPERTY_FUNCS(column_span); 63 PROPERTY_FUNCS(column_width); 64 PROPERTY_FUNCS(content); 65 PROPERTY_FUNCS(counter_increment); 66 PROPERTY_FUNCS(counter_reset); 67 PROPERTY_FUNCS(cue_after); 68 PROPERTY_FUNCS(cue_before); 69 PROPERTY_FUNCS(cursor); 70 PROPERTY_FUNCS(direction); 71 PROPERTY_FUNCS(display); 72 PROPERTY_FUNCS(elevation); 73 PROPERTY_FUNCS(empty_cells); 74 PROPERTY_FUNCS(flex_basis); 75 PROPERTY_FUNCS(flex_direction); 76 PROPERTY_FUNCS(flex_grow); 77 PROPERTY_FUNCS(flex_shrink); 78 PROPERTY_FUNCS(flex_wrap); 79 PROPERTY_FUNCS(float); 80 PROPERTY_FUNCS(font_family); 81 PROPERTY_FUNCS(font_size); 82 PROPERTY_FUNCS(font_style); 83 PROPERTY_FUNCS(font_variant); 84 PROPERTY_FUNCS(font_weight); 85 PROPERTY_FUNCS(height); 86 PROPERTY_FUNCS(justify_content); 87 PROPERTY_FUNCS(left); 88 PROPERTY_FUNCS(letter_spacing); 89 PROPERTY_FUNCS(line_height); 90 PROPERTY_FUNCS(list_style_image); 91 PROPERTY_FUNCS(list_style_position); 92 PROPERTY_FUNCS(list_style_type); 93 PROPERTY_FUNCS(margin_top); 94 PROPERTY_FUNCS(margin_right); 95 PROPERTY_FUNCS(margin_bottom); 96 PROPERTY_FUNCS(margin_left); 97 PROPERTY_FUNCS(max_height); 98 PROPERTY_FUNCS(max_width); 99 PROPERTY_FUNCS(min_height); 100 PROPERTY_FUNCS(min_width); 101 PROPERTY_FUNCS(opacity); 102 PROPERTY_FUNCS(order); 103 PROPERTY_FUNCS(orphans); 104 PROPERTY_FUNCS(outline_color); 105 PROPERTY_FUNCS(outline_style); 106 PROPERTY_FUNCS(outline_width); 107 PROPERTY_FUNCS(overflow_x); 108 PROPERTY_FUNCS(overflow_y); 109 PROPERTY_FUNCS(padding_top); 110 PROPERTY_FUNCS(padding_right); 111 PROPERTY_FUNCS(padding_bottom); 112 PROPERTY_FUNCS(padding_left); 113 PROPERTY_FUNCS(page_break_after); 114 PROPERTY_FUNCS(page_break_before); 115 PROPERTY_FUNCS(page_break_inside); 116 PROPERTY_FUNCS(pause_after); 117 PROPERTY_FUNCS(pause_before); 118 PROPERTY_FUNCS(pitch_range); 119 PROPERTY_FUNCS(pitch); 120 PROPERTY_FUNCS(play_during); 121 PROPERTY_FUNCS(position); 122 PROPERTY_FUNCS(quotes); 123 PROPERTY_FUNCS(richness); 124 PROPERTY_FUNCS(right); 125 PROPERTY_FUNCS(speak_header); 126 PROPERTY_FUNCS(speak_numeral); 127 PROPERTY_FUNCS(speak_punctuation); 128 PROPERTY_FUNCS(speak); 129 PROPERTY_FUNCS(speech_rate); 130 PROPERTY_FUNCS(stress); 131 PROPERTY_FUNCS(table_layout); 132 PROPERTY_FUNCS(text_align); 133 PROPERTY_FUNCS(text_decoration); 134 PROPERTY_FUNCS(text_indent); 135 PROPERTY_FUNCS(text_transform); 136 PROPERTY_FUNCS(top); 137 PROPERTY_FUNCS(unicode_bidi); 138 PROPERTY_FUNCS(vertical_align); 139 PROPERTY_FUNCS(visibility); 140 PROPERTY_FUNCS(voice_family); 141 PROPERTY_FUNCS(volume); 142 PROPERTY_FUNCS(white_space); 143 PROPERTY_FUNCS(widows); 144 PROPERTY_FUNCS(width); 145 PROPERTY_FUNCS(word_spacing); 146 PROPERTY_FUNCS(writing_mode); 147 PROPERTY_FUNCS(z_index); 148 149 #undef PROPERTY_FUNCS 150 151 #endif 152