[ https://issues.apache.org/jira/browse/PIVOT-960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14199177#comment-14199177 ]
Roger Whitcomb commented on PIVOT-960: -------------------------------------- Okay, I implemented this using "${NAME}" syntax, and did some more thorough testing (added to the JSONSerializerTest) using an update "map.json" with a bunch of macro definitions in it. Committed to "trunk": Sending core\src\org\apache\pivot\json\JSONSerializer.java Adding core\src\org\apache\pivot\serialization\MacroReader.java Sending core\test\org\apache\pivot\json\test\JSONSerializerTest.java Sending core\test\org\apache\pivot\json\test\map.json Transmitting file data .... Committed revision 1636971. > Implement simple macro system in JSONSerializer > ----------------------------------------------- > > Key: PIVOT-960 > URL: https://issues.apache.org/jira/browse/PIVOT-960 > Project: Pivot > Issue Type: Improvement > Components: core-json > Affects Versions: 2.0.4 > Environment: All > Reporter: Roger Whitcomb > Assignee: Roger Whitcomb > Priority: Minor > Fix For: 2.1 > > Attachments: 960.patch > > > It occurred to me since we are using JSON style sheets to style our > application, and it is getting quite big, that a macro system (maybe similar > to C/C++ with #define or something similar) would be useful, especially for > repeated colors, and other constants (like padding values, fonts, etc.) This > would enable using custom values consistently while avoiding inconsistencies > due to typos or changes introduced one place and not others. > I was thinking of a simple > #define NAME value > as in C/C++, and then using $(NAME) as the substitution token. This is > easily implemented in JSONSerializer. > I'm open to suggestions for the syntax, but I believe the feature will be > very useful, especially for the JSON stylesheet. -- This message was sent by Atlassian JIRA (v6.3.4#6332)