Index: chrome/common/extensions/docs/server2/handlebar_dict_generator.py |
diff --git a/chrome/common/extensions/docs/server2/handlebar_dict_generator.py b/chrome/common/extensions/docs/server2/handlebar_dict_generator.py |
index b6f1ffd6f9a7c3a16b1519138657a0f3bd7e0859..418549f9bc6a421419fa0fcf8e6393714422b264 100644 |
--- a/chrome/common/extensions/docs/server2/handlebar_dict_generator.py |
+++ b/chrome/common/extensions/docs/server2/handlebar_dict_generator.py |
@@ -34,6 +34,12 @@ def _GetLinkToRefType(namespace_name, ref_type): |
"text": text |
}) |
+def _FormatValue(value): |
+ """Inserts commas every three digits for integer values. It is magic. |
not at google - send to devlin
2012/07/09 23:05:34
haha
|
+ """ |
+ s = str(value) |
+ return ','.join([s[max(0, i - 3):i] for i in range(len(s), 0, -3)][::-1]) |
+ |
class HandlebarDictGenerator(object): |
"""Uses a Model from the JSON Schema Compiler and generates a dict that |
a Handlebar template can use for a data source. |
@@ -51,7 +57,8 @@ class HandlebarDictGenerator(object): |
return { |
'name': self._namespace.name, |
'types': self._GenerateTypes(self._namespace.types), |
- 'functions': self._GenerateFunctions(self._namespace.functions) |
+ 'functions': self._GenerateFunctions(self._namespace.functions), |
+ 'properties': self._GenerateProperties(self._namespace.properties) |
} |
except Exception as e: |
logging.info(e) |
@@ -98,6 +105,7 @@ class HandlebarDictGenerator(object): |
return {} |
callback_dict = { |
'name': 'callback', |
+ 'description': callback.description, |
'simple_type': {'type': 'function'}, |
'optional': callback.optional, |
'parameters': [] |
@@ -119,14 +127,20 @@ class HandlebarDictGenerator(object): |
'name': property_.name, |
'optional': property_.optional, |
'description': property_.description, |
- 'properties': self._GenerateProperties(property_.properties) |
+ 'properties': self._GenerateProperties(property_.properties), |
+ 'functions': self._GenerateFunctions(property_.functions) |
} |
self._RenderTypeInformation(property_, property_dict) |
return property_dict |
def _RenderTypeInformation(self, property_, dst_dict): |
dst_dict['type'] = property_.type_.name.lower() |
- if property_.type_ == model.PropertyType.CHOICES: |
+ if isinstance(property_, model.Property) and property_.has_value: |
not at google - send to devlin
2012/07/09 23:05:34
Oh, property_ isn't a Property? Oops. I guess that
cduvall
2012/07/09 23:22:58
Done.
|
+ if isinstance(property_.value, int): |
+ dst_dict['value'] = _FormatValue(property_.value) |
+ else: |
+ dst_dict['value'] = property_.value |
+ elif property_.type_ == model.PropertyType.CHOICES: |
dst_dict['choices'] = [] |
for choice_name in property_.choices: |
dst_dict['choices'].append(self._GenerateProperty( |