Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modernize the LTN tool's edits system #1085

Merged
merged 5 commits into from
May 1, 2023
Merged

Modernize the LTN tool's edits system #1085

merged 5 commits into from
May 1, 2023

Conversation

dabreegster
Copy link
Collaborator

See #1079 for context. This PR makes the LTN app much less bespoke in how it handles edits to the map. Savefiles no longer include existing filters and crossings, only ones the user has modified!

There are some behavioral regressions/warts that I'm leaving for now, but will work on in smaller followups. This PR's changes were mostly made a few weeks ago in https://github.com/a-b-street/abstreet/tree/ltn_map_edits (see there for more granular commits), and the scope/complexity of the change has made it very hard for me to get things to a point for merging.

  • Check performance of map edits. (Resnapping buildings constantly is probably bad)
  • The overall UX of saving / file management is still weird. Autosave would match user expectations much better and not be hard...
  • The assigned proposal name is very strange, especially when forking a new proposal. (Note that new_edits can't generate unique ones -- different directory!)
  • When we try to auto-filter an area, we no longer cancel empty edits
  • We no longer batch together a bunch of filters added at once with freehand. Undo gets chunky/weird.

I need to regenerate all maps with this change before merging. Also, there's a backwards incompatible change to map edits. I'm giving up on maintaining this for now; after switching to more future-proof GeoJSON in #995, I'll revisit this.

1) Move a bunch of types into map_model, adding them to the edit
  commands (in a totally backwards incompatible way)

2) Rip out the ad-hoc proposal and undo system in the LTN tool, and just
   use MapEdits
basemap, from the perspective of MapEdits. This stops including existing
objects in the save file, undo list, and count of changes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant