[ https://issues.apache.org/jira/browse/PIVOT-960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16427697#comment-16427697 ]
Roger Whitcomb commented on PIVOT-960: -------------------------------------- Added some speed tests, only to find that allow macros makes the code 25x slower (or more). So, make the default "false" to NOT allow macros, and make corresponding changes to tests and ApplicationContext.applyStylesheet. Sending core/src/org/apache/pivot/json/JSONSerializer.java Sending core/test/org/apache/pivot/json/test/BindTest.java Sending core/test/org/apache/pivot/json/test/JSONSerializerTest.java Sending core/test/org/apache/pivot/json/test/list.json Sending wtk/src/org/apache/pivot/wtk/ApplicationContext.java Transmitting file data .....done Committing transaction... Committed revision 1828484. > 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 (v7.6.3#76005)