Commit Graph

24 Commits

Author SHA1 Message Date
Quincy Morgan
db9eed2434 Move the edit menu logic to uiInit
Make context the first argument of operation objects
Add Paste operation to edit menu when opening the context menu on a blank area of the map (close #2508)
2020-05-14 15:49:35 -04:00
Quincy Morgan
a1af118f0e Ensure locales and presets are loaded before the UI loads (close #7406)
Consolidate localization behavior and init to a coreLocalizer function and singleton
Explicitly support `en-US` locale
Rename coreData to coreFileFetcher and export a singleton rather than using a property of coreContext
Add `apiConnections` property of coreContext to simplify adding a source switcher
Replace some init functions with re-callable, promise-supporting `ensureLoaded` functions
Make coreContext itself load the UI if a container has been specified at init time
Fix code tests
2020-03-31 12:23:31 -07:00
Quincy Morgan
6087aae21f Remove map convenience functions of context 2020-03-22 10:57:17 -07:00
Quincy Morgan
3c0b926ec7 Replace coreContext.geometry function with a more explicit coreGraph.geometry function 2020-03-21 14:23:44 -07:00
hack.ily
b40d4ac893 Fix lint 2019-10-28 10:20:40 -04:00
hack.ily
b5fac6396e fix(mode/rotate): polygonHull sometimes returns array of length 2 which polygonCentroid cannot handle 2019-10-28 10:20:26 -04:00
Quincy Morgan
d01bb78707 Reduce circular dependencies caused by importing from indexes, the location of the validation models, and the location of areaKeys (close #6237) 2019-04-24 13:45:59 -07:00
Quincy Morgan
c7e861c0ca Merge branch 'master' into validation 2019-02-14 12:16:23 -05:00
SilentSpike
a7e0c779b3 Persist forced visible entities on move/rotate 2019-02-12 22:25:47 +00:00
Quincy Morgan
536ee2e786 Validations now update instantly upon an annotated graph change 2019-01-14 15:19:00 -05:00
Bryan Housel
152022aec4 Use context.keybinding for keybindings that don't change
(closes #5487)
2018-11-13 20:57:21 -05:00
Bryan Housel
bb30cbf555 Move lib/d3.keybinding.js -> util/keybinding.js
almost none of the original d3 "plugin" code remains
2018-11-13 13:42:09 -05:00
Bryan Housel
cc938698e8 Add ability to select custom data 2018-08-25 11:14:04 -04:00
Bryan Housel
96afbbd785 Refactor vector math functions from geo.js to vector.js 2017-12-28 01:08:11 -05:00
Bryan Housel
18c97d52c8 Extract viewport nudging code from several places to geoViewportEdge 2017-12-18 09:50:17 -05:00
Bryan Housel
57ba6a9862 Add selectedIDs() for modeMove and modeRotate
This allows the label collision boxes for the vertices to update
during these modes. Otherwise the labels.js `isInterestingVertex()`
function doesn't consider them interesting enough to update.
2017-12-18 00:11:08 -05:00
Bryan Housel
914ef0236a Convert lodah-es and d3 to named imports for modes 2017-09-24 23:25:49 -04:00
Bryan Housel
5ffa8f535e Relax the availability rules for rotation and reflection operations
(closes #4237)

New rules:
- Rotation available if at least 2 unique nodes in selectedIDs
- Reflection available if at least 3 unique nodes in selectedIDs
2017-08-17 14:32:32 -04:00
Bryan Housel
e756520bd8 suppressMenu(true) is now the default 2017-02-21 15:47:22 -05:00
Bryan Housel
37534aed0e More cleanup of operations and post-paste behavior
* Support move, rotate, reflect, delete post paste on multiselection
* Improve text and error msgs for singular vs multi selections
* Move `disabled` checks from actions to operations
* Reproject center of rotation (closes #3667)
* Cleanup tests
2016-12-21 23:58:13 -05:00
Bryan Housel
38e4900355 Allow rotate of multiple selected objects
(closes #1719)
2016-12-21 16:44:40 -05:00
Bryan Housel
573f476cdd Rename actionRotateWay -> actionRotate 2016-12-20 22:38:30 -05:00
Bryan Housel
a2f50f4485 Support behaviors in Rotate mode 2016-12-20 14:55:02 -05:00
Bryan Housel
57696ab5eb Rename rotate-way mode to just rotate 2016-12-20 13:44:39 -05:00