Commit Graph

155 Commits

Author SHA1 Message Date
Jeff Avallone be145e3fac Adding rest of tests for Node class 2014-12-19 11:48:09 -05:00
Jeff Avallone 91581afe2c Adding more Node tests 2014-12-19 11:00:47 -05:00
Jeff Avallone 78917d44e6 Extracting custom event creation into a util module 2014-12-19 10:24:45 -05:00
Jeff Avallone 80ec29cd6b Refactoring parser code to remove global state
This allows canceling an in-progress render and moves some of the
rendering code to a more appropriate location.
2014-12-18 11:13:15 -05:00
Jeff Avallone c64e48946e Adding support for canceling a parse/render 2014-12-17 19:24:33 -05:00
Jeff Avallone bc351bc9fc Removing unnecessary render step 2014-12-17 17:18:46 -05:00
Jeff Avallone 17a95392a8 Refactoring property definition code 2014-12-17 16:04:55 -05:00
Jeff Avallone a0f145ab3d Removing unnecessary atype attributes 2014-12-17 15:48:06 -05:00
Jeff Avallone 020feae951 Fixing flag display 2014-12-17 15:28:04 -05:00
Jeff Avallone f93388dec0 Converting getAnchor into a property 2014-12-17 15:24:27 -05:00
Jeff Avallone 155ad51d58 Turning container into a property 2014-12-17 15:14:33 -05:00
Jeff Avallone c5c98ad62f Simplifying node proxy code 2014-12-17 15:12:04 -05:00
Jeff Avallone dd6eac2b4e Simplifying literal merging code 2014-12-17 14:56:02 -05:00
Jeff Avallone e362a54551 Converting methods into properties where possible/reasonable 2014-12-17 14:44:48 -05:00
Jeff Avallone 4af524112e Moving properties out of the way 2014-12-17 12:07:25 -05:00
Jeff Avallone 57ccd4b0c5 Refactoring to enhance the SyntaxNode extending 2014-12-17 11:53:04 -05:00
Jeff Avallone 6322b48f31 Removing debugging code 2014-12-17 10:06:03 -05:00
Jeff Avallone 8cc2f29aec Adding regexp flag indications 2014-12-16 10:14:37 -05:00
Jeff Avallone 3d42894ac2 Replacing some calls to _.each with new for loops 2014-12-15 22:11:12 -05:00
Jeff Avallone 26bf0fcd52 Converting some string generation to templates 2014-12-15 22:01:55 -05:00
Jeff Avallone 84d3fe797d Removing unnecessary binds 2014-12-15 22:00:24 -05:00
Jeff Avallone d22ab35b68 Converting uses of Snap.format to use template literals 2014-12-15 21:51:17 -05:00
Jeff Avallone db62743d54 Fixing various IE-related issues 2014-12-15 18:06:16 -05:00
Jeff Avallone dea4011530 Adding progress indicator 2014-12-15 15:19:37 -05:00
Jeff Avallone f4ea4d6da6 Adding greedy indication 2014-12-15 12:43:13 -05:00
Jeff Avallone c0eed07d9b Adding repetition labels 2014-12-15 12:29:47 -05:00
Jeff Avallone b4b999d7a6 Removing support for "{,n}" syntax
Don't know I missed that this isn't supported in JS
2014-12-15 11:11:17 -05:00
Jeff Avallone deb95ef123 Removing duplicate elements from charset 2014-12-15 10:19:18 -05:00
Jeff Avallone f8ce2d8f40 Putting all labels in a tspan.
This will get all of them aligning the same way
2014-12-15 07:54:55 -05:00
Jeff Avallone 66d9b97a6f Making quotes around literals lighter 2014-12-14 22:17:59 -05:00
Jeff Avallone 10d5e7f534 Reverting change to repeat node that adjusted the vertical position 2014-12-14 21:53:54 -05:00
Jeff Avallone 95af49e385 Adding horizontal connecting lines 2014-12-14 21:37:56 -05:00
Jeff Avallone a30c16a940 Fixing root node positioning 2014-12-14 19:29:45 -05:00
Jeff Avallone 40ac83ab91 Revert "Simplifying positioning code for root nodes"
This reverts commit 46ab0662f5.
2014-12-14 19:28:50 -05:00
Jeff Avallone c2d8473425 Adding node-type-specific anchor code 2014-12-14 19:13:08 -05:00
Jeff Avallone 9ba2b8579e Updating major positioning code to use anchor position 2014-12-14 19:13:03 -05:00
Jeff Avallone 56927dd7fa Adding anchors 2014-12-14 19:13:00 -05:00
Jeff Avallone 46ab0662f5 Simplifying positioning code for root nodes 2014-12-14 17:48:48 -05:00
Jeff Avallone 97b816ffc9 Extracting a method to ease readability 2014-12-14 17:03:40 -05:00
Jeff Avallone d216c0fe5f Simplifying more code 2014-12-13 13:42:55 -05:00
Jeff Avallone 407167a4ae Folding labeled box positioning into rendering 2014-12-13 13:26:43 -05:00
Jeff Avallone b9f1cfae55 Cleaning up some messy code 2014-12-13 13:00:46 -05:00
Jeff Avallone cb9785de91 Folding _position methods into render method promises 2014-12-13 12:55:03 -05:00
Jeff Avallone 29316bb2aa Updating renderLabel to be promise based 2014-12-13 12:28:16 -05:00
Jeff Avallone 773fd5c1a6 Refactoring how _position is called to be promise-based
The render method now returns a promise. Once this promise is resolved,
the _position method for that node will be called (if applicable). This
promise must be resolved only after all subordinate nodes have completed
their render phase (the promise returned by subordinate node's render
method has resolved). Node that do not have subordinates can return the
result of calling terminalRender, and proxied renders only need to
return the result of calling proxy.

With this change, it is no longer necessary to explicitly position
subordinate nodes. They will already be positioned once their render
promise is resolved.
2014-12-13 09:09:58 -05:00
Jeff Avallone f81ba6535f Adding transform method to Base node 2014-12-10 20:28:02 -05:00
Jeff Avallone 340d6b4859 Simplifying literal normalization code 2014-12-10 20:11:51 -05:00
Jeff Avallone 2e60561be6 Cleaning up code for match node 2014-12-10 19:58:36 -05:00
Jeff Avallone dbcdd583ed Removing need for separate setContainer calls 2014-12-10 19:31:07 -05:00
Jeff Avallone 9ac25b9a50 No need to save most label objects 2014-12-10 19:23:14 -05:00