| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright 2014 The Chromium Authors. All rights reserved. | 2 # Copyright 2014 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 | 5 |
| 6 import in_generator | 6 import in_generator |
| 7 import name_utilities | 7 import name_utilities |
| 8 | 8 |
| 9 | 9 |
| 10 class CSSProperties(in_generator.Writer): | 10 class CSSProperties(in_generator.Writer): |
| 11 defaults = { | 11 defaults = { |
| 12 'alias_for': None, | 12 'alias_for': None, |
| 13 'descriptor_only': None, | 13 'descriptor_only': None, |
| 14 'runtime_flag': None, | 14 'runtime_flag': None, |
| 15 'longhands': '', | 15 'longhands': '', |
| 16 'interpolable': False, | 16 'interpolable': False, |
| 17 'inherited': False, | 17 'inherited': False, |
| 18 'independent': False, | |
| 19 'font': False, | 18 'font': False, |
| 20 'svg': False, | 19 'svg': False, |
| 21 'name_for_methods': None, | 20 'name_for_methods': None, |
| 22 'use_handlers_for': None, | 21 'use_handlers_for': None, |
| 23 'getter': None, | 22 'getter': None, |
| 24 'setter': None, | 23 'setter': None, |
| 25 'initial': None, | 24 'initial': None, |
| 26 'type_name': None, | 25 'type_name': None, |
| 27 'converter': None, | 26 'converter': None, |
| 28 'custom_all': False, | 27 'custom_all': False, |
| 29 'custom_initial': False, | 28 'custom_initial': False, |
| 30 'custom_inherit': False, | 29 'custom_inherit': False, |
| 31 'custom_value': False, | 30 'custom_value': False, |
| 32 'builder_skip': False, | 31 'builder_skip': False, |
| 33 'direction_aware': False, | 32 'direction_aware': False, |
| 34 # Typed OM annotations. | 33 # Typed OM annotations. |
| 35 'typedom_types': [], | 34 'typedom_types': [], |
| 36 'keywords': [], | 35 'keywords': [], |
| 37 'supports_percentage': False, | 36 'supports_percentage': False, |
| 38 'supports_multiple': False, | 37 'supports_multiple': False, |
| 39 } | 38 } |
| 40 | 39 |
| 41 valid_values = { | 40 valid_values = { |
| 42 'interpolable': (True, False), | 41 'interpolable': (True, False), |
| 43 'inherited': (True, False), | 42 'inherited': (True, False), |
| 44 'independent': (True, False), | |
| 45 'font': (True, False), | 43 'font': (True, False), |
| 46 'svg': (True, False), | 44 'svg': (True, False), |
| 47 'custom_all': (True, False), | 45 'custom_all': (True, False), |
| 48 'custom_initial': (True, False), | 46 'custom_initial': (True, False), |
| 49 'custom_inherit': (True, False), | 47 'custom_inherit': (True, False), |
| 50 'custom_value': (True, False), | 48 'custom_value': (True, False), |
| 51 'builder_skip': (True, False), | 49 'builder_skip': (True, False), |
| 52 'direction_aware': (True, False), | 50 'direction_aware': (True, False), |
| 53 } | 51 } |
| 54 | 52 |
| (...skipping 25 matching lines...) Expand all Loading... |
| 80 self._properties = {property['property_id']: property for property in pr
operties} | 78 self._properties = {property['property_id']: property for property in pr
operties} |
| 81 | 79 |
| 82 # The generated code will only work with at most one alias per property | 80 # The generated code will only work with at most one alias per property |
| 83 assert len({property['alias_for'] for property in self._aliases}) == len
(self._aliases) | 81 assert len({property['alias_for'] for property in self._aliases}) == len
(self._aliases) |
| 84 | 82 |
| 85 for property in self._aliases: | 83 for property in self._aliases: |
| 86 property['property_id'] = name_utilities.enum_for_css_property_alias
(property['name']) | 84 property['property_id'] = name_utilities.enum_for_css_property_alias
(property['name']) |
| 87 aliased_property = self._properties[name_utilities.enum_for_css_prop
erty(property['alias_for'])] | 85 aliased_property = self._properties[name_utilities.enum_for_css_prop
erty(property['alias_for'])] |
| 88 property['enum_value'] = aliased_property['enum_value'] + 512 | 86 property['enum_value'] = aliased_property['enum_value'] + 512 |
| 89 self._properties_including_aliases += self._aliases | 87 self._properties_including_aliases += self._aliases |
| OLD | NEW |