[
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)