John Firebaugh
ddc5e324f6
Extract iD.Difference
...
iD.Difference represents the difference between two graphs.
It knows how to calculate the set of entities that were
created, modified, or deleted, and also contains the logic
for recursively extending a difference to the complete set
of entities that will require a redraw, taking into account
child and parent relationships.
Additionally, all history mutators now return a difference.
2013-02-02 19:47:56 -05:00
Ansis Brammanis
846cf6e43d
Add difference tests
2013-01-31 13:37:54 -05:00
Ansis Brammanis
a82b81a3c2
Add tests for #replace #remove #rebase
2013-01-30 16:40:00 -05:00
Ansis Brammanis
a317859b0f
Don't re-add removed parentways, don't duplicate
2013-01-30 15:44:03 -05:00
Ansis Brammanis
e08364d492
working parentRels
2013-01-30 13:18:44 -05:00
Ansis Brammanis
ba68a238fe
Working rebase
2013-01-30 12:26:40 -05:00
John Firebaugh
c5d691d79d
Graph#rebase
2013-01-28 16:08:08 -05:00
John Firebaugh
5ea855e18d
Replace Graph#fetch with Graph#childNodes
...
Having two kinds of Ways (fetched and non-fetched)
introduced some accidental complexity. This brings things
more in line with how parentWays/parentRelations work.
Fixes #73 .
2013-01-25 15:10:44 -05:00
John Firebaugh
4874199401
Add Graph#update
...
This can be used to reduce graph churn when there are
multiple changes to make.
2013-01-25 13:27:33 -05:00
Tom MacWright
eedc0fce9d
Fast parent calculation.
2013-01-09 14:52:39 -05:00
Tom MacWright
adb8ab53ce
Update relation tests
2012-12-07 16:01:14 -05:00
John Firebaugh
ea4b93d88b
Graph#difference
2012-12-07 12:35:57 -05:00
John Firebaugh
255e3aaabd
Modify Graph so it can track deleted ids
2012-12-07 12:32:24 -05:00
John Firebaugh
3e45afbc5e
Move history annotation to History#perform/replace
...
Actions are too low-level for annotations.
2012-12-07 10:35:39 -05:00
John Firebaugh
67ffd2e71b
Revert "Copy entity in Graph#fetch"
...
This reverts commit 12d02e0a6b .
2012-12-06 19:16:54 -05:00
John Firebaugh
0e2889d5d6
Add freezing specs
2012-12-06 14:20:02 -05:00
John Firebaugh
d26c8638b3
Allow Graph to be constructed with an array of entities
...
Useful for tests.
2012-12-05 16:14:39 -05:00
John Firebaugh
4a3169bb1d
Test/refine iD.actions.remove
2012-12-05 16:14:39 -05:00
John Firebaugh
551a2df24e
Replace Entity.{lat,lon} with Entity.loc
...
Fixes #189
2012-12-05 09:48:00 -05:00
John Firebaugh
12d02e0a6b
Copy entity in Graph#fetch
...
This shouldn't be necessary, but someone is modifying them
in place and it's causing problems elsewhere.
2012-12-04 17:27:02 -05:00
John Firebaugh
60e7698f1a
Don't mutate entity in place
2012-12-04 14:00:29 -05:00
John Firebaugh
b4707c3a1f
Mirror main directory structure in specs
2012-12-04 09:50:07 -05:00