Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(257)

Side by Side Diff: third_party/WebKit/Source/build/scripts/make_computed_style_base.py

Issue 2578903002: Made -webkit-print-color-adjust property independent. (Closed)
Patch Set: . Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright 2016 The Chromium Authors. All rights reserved. 2 # Copyright 2016 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 math 6 import math
7 import sys 7 import sys
8 8
9 import in_generator 9 import in_generator
10 import template_expander 10 import template_expander
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 enum_name = property['type_name'] 82 enum_name = property['type_name']
83 # From the Blink style guide: Enum members should use InterCaps with an initial capital letter. [names-enum-members] 83 # From the Blink style guide: Enum members should use InterCaps with an initial capital letter. [names-enum-members]
84 enum_values = [camel_case(k) for k in property['keywords']] 84 enum_values = [camel_case(k) for k in property['keywords']]
85 self._computed_enums[enum_name] = enum_values 85 self._computed_enums[enum_name] = enum_values
86 86
87 # A list of all the fields to be generated. 87 # A list of all the fields to be generated.
88 self._fields = [] 88 self._fields = []
89 for property in self._properties.values(): 89 for property in self._properties.values():
90 if property['keyword_only']: 90 if property['keyword_only']:
91 property_name = property['name_for_methods'] 91 property_name = property['name_for_methods']
92 if property['name_for_methods']:
93 property_name = property['name_for_methods']
94 property_name_lower = property_name[0].lower() + property_name[1 :] 92 property_name_lower = property_name[0].lower() + property_name[1 :]
95 93
96 # From the Blink style guide: Other data members should be prefi xed by "m_". [names-data-members] 94 # From the Blink style guide: Other data members should be prefi xed by "m_". [names-data-members]
97 field_name = 'm_' + property_name_lower 95 field_name = 'm_' + property_name_lower
98 bits_needed = math.log(len(property['keywords']), 2) 96 bits_needed = math.log(len(property['keywords']), 2)
99 type_name = property['type_name'] 97 type_name = property['type_name']
100 98
101 assert property['initial_keyword'] is not None, \ 99 assert property['initial_keyword'] is not None, \
102 ('MakeComputedStyleBase requires an initial keyword for keyw ord_only values, none specified ' 100 ('MakeComputedStyleBase requires an initial keyword for keyw ord_only values, none specified '
103 'for property ' + property['name']) 101 'for property ' + property['name'])
104 default_value = type_name + '::' + camel_case(property['initial_ keyword']) 102 default_value = type_name + '::' + camel_case(property['initial_ keyword'])
105 103
106 # If the property is independent, add the single-bit sized isInh erited flag 104 # If the property is independent, add the single-bit sized isInh erited flag
107 # to the list of Fields as well. 105 # to the list of Fields as well.
108 if property['independent']: 106 if property['independent']:
109 field_name_suffix_upper = property['name_for_methods'] + 'Is Inherited' 107 field_name_suffix_upper = property_name + 'IsInherited'
110 field_name_suffix_lower = property_name_lower + 'IsInherited ' 108 field_name_suffix_lower = property_name_lower + 'IsInherited '
111 self._fields.append(Field( 109 self._fields.append(Field(
112 'inherited_flag', 110 'inherited_flag',
113 name='m_' + field_name_suffix_lower, 111 name='m_' + field_name_suffix_lower,
114 property_name=property['name'], 112 property_name=property['name'],
115 storage_type='bool', 113 storage_type='bool',
116 size=1, 114 size=1,
117 default_value='true', 115 default_value='true',
118 getter_method_name=field_name_suffix_lower, 116 getter_method_name=field_name_suffix_lower,
119 setter_method_name='set' + field_name_suffix_upper, 117 setter_method_name='set' + field_name_suffix_upper,
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
161 @template_expander.use_jinja('ComputedStyleBaseConstants.h.tmpl') 159 @template_expander.use_jinja('ComputedStyleBaseConstants.h.tmpl')
162 def generate_base_computed_style_constants(self): 160 def generate_base_computed_style_constants(self):
163 return { 161 return {
164 'properties': self._properties, 162 'properties': self._properties,
165 'enums': self._computed_enums, 163 'enums': self._computed_enums,
166 'fields': self._fields, 164 'fields': self._fields,
167 } 165 }
168 166
169 if __name__ == '__main__': 167 if __name__ == '__main__':
170 in_generator.Maker(ComputedStyleBaseWriter).main(sys.argv) 168 in_generator.Maker(ComputedStyleBaseWriter).main(sys.argv)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698