Skip to content

Instantly share code, notes, and snippets.

@kaligrafy
Created May 28, 2020 00:37
Show Gist options
  • Save kaligrafy/c7b907a4cf6bf7866b46ca6a9c2a2600 to your computer and use it in GitHub Desktop.
Save kaligrafy/c7b907a4cf6bf7866b46ca6a9c2a2600 to your computer and use it in GitHub Desktop.
diff --git a/data/core.yaml b/data/core.yaml
index 8dd516794..254a04bfa 100644
--- a/data/core.yaml
+++ b/data/core.yaml
@@ -179,6 +179,18 @@ en:
annotation: Changed the role of a relation member.
change_tags:
annotation: Changed tags.
+ follow:
+ title: Follow
+ description:
+ points: Follow snapped line between points.
+ key: L
+ annotation:
+ points: Followed a line.
+ nodes_are_not_shared_by_both_ways: The two nodes are not shared by both the source and target ways
+ nodes_are_not_consecutive_in_target: The two nodes are not one after the other in the target way
+ too_large: This can't be followed because not enough of it is currently visible.
+ connected_to_hidden: This can't be followed because it is connected to a hidden feature.
+ not_downloaded: This can't be followed because parts of it have not yet been downloaded.
circularize:
title: Circularize
description:
@@ -2053,6 +2065,7 @@ en:
orthogonalize: "Square corners of a line or area"
straighten: "Straighten a line or points"
circularize: "Circularize a closed line or area"
+ follow: "Follow a line between nodes"
reflect_long: "Reflect features across the longer axis"
reflect_short: "Reflect features across the shorter axis"
delete: "Delete selected features"
diff --git a/data/shortcuts.json b/data/shortcuts.json
index 7694073db..e263c0c93 100644
--- a/data/shortcuts.json
+++ b/data/shortcuts.json
@@ -280,6 +280,10 @@
"shortcuts": ["operations.circularize.key"],
"text": "shortcuts.editing.operations.circularize"
},
+ {
+ "shortcuts": ["operations.follow.key"],
+ "text": "shortcuts.editing.operations.follow"
+ },
{
"shortcuts": ["operations.reflect.key.long"],
"text": "shortcuts.editing.operations.reflect_long"
diff --git a/modules/actions/index.js b/modules/actions/index.js
index dfdd1c7e6..d018bd959 100644
--- a/modules/actions/index.js
+++ b/modules/actions/index.js
@@ -6,6 +6,7 @@ export { actionChangeMember } from './change_member';
export { actionChangePreset } from './change_preset';
export { actionChangeTags } from './change_tags';
export { actionCircularize } from './circularize';
+export { actionFollow } from './follow';
export { actionConnect } from './connect';
export { actionCopyEntities } from './copy_entities';
export { actionDeleteMember } from './delete_member';
diff --git a/modules/operations/index.js b/modules/operations/index.js
index 77be52df1..499bd03e8 100644
--- a/modules/operations/index.js
+++ b/modules/operations/index.js
@@ -1,4 +1,5 @@
export { operationCircularize } from './circularize';
+export { operationFollow } from './follow';
export { operationContinue } from './continue';
export { operationDelete } from './delete';
export { operationDisconnect } from './disconnect';
diff --git a/modules/ui/top_toolbar.js b/modules/ui/top_toolbar.js
index cc2569540..49b66e1d7 100644
--- a/modules/ui/top_toolbar.js
+++ b/modules/ui/top_toolbar.js
@@ -7,7 +7,7 @@ import { t } from '../util/locale';
import { utilFunctor } from '../util/util';
import { modeBrowse } from '../modes/browse';
import _debounce from 'lodash-es/debounce';
-import { operationCircularize, operationContinue, operationDelete, operationDisconnect,
+import { operationCircularize, operationFollow, operationContinue, operationDelete, operationDisconnect,
operationDowngrade, operationExtract, operationMerge, operationOrthogonalize,
operationReverse, operationSplit, operationStraighten } from '../operations';
import { uiToolAddFavorite, uiToolAddFeature, uiToolAddRecent, uiToolNotes, uiToolOperation, uiToolSave, uiToolUndoRedo } from './tools';
@@ -26,6 +26,7 @@ import { uiToolPowerSupport } from './tools/power_support';
export function uiTopToolbar(context) {
var circularize = uiToolOperation(context, operationCircularize),
+ follow = uiToolOperation(context, operationFollow),
continueTool = uiToolOperation(context, operationContinue),
deleteTool = uiToolOperation(context, operationDelete),
disconnect = uiToolOperation(context, operationDisconnect),
@@ -113,6 +114,7 @@ export function uiTopToolbar(context) {
straighten,
orthogonalize,
circularize,
+ follow,
reverse,
split,
disconnect,
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment