Cache canvas.controls.ruler into local variable for readability and performance
This commit is contained in:
+30
-24
@@ -130,52 +130,57 @@ function onKeyX(up) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function onKeyShift(up) {
|
function onKeyShift(up) {
|
||||||
if (!canvas.controls.ruler.isDragRuler)
|
const ruler = canvas.controls.ruler
|
||||||
|
if (!ruler.isDragRuler)
|
||||||
return false
|
return false
|
||||||
|
|
||||||
const mousePosition = canvas.app.renderer.plugins.interaction.mouse.getLocalPosition(canvas.tokens)
|
const mousePosition = canvas.app.renderer.plugins.interaction.mouse.getLocalPosition(canvas.tokens)
|
||||||
const rulerOffset = canvas.controls.ruler.rulerOffset
|
const rulerOffset = ruler.rulerOffset
|
||||||
const measurePosition = {x: mousePosition.x + rulerOffset.x, y: mousePosition.y + rulerOffset.y}
|
const measurePosition = {x: mousePosition.x + rulerOffset.x, y: mousePosition.y + rulerOffset.y}
|
||||||
canvas.controls.ruler.measure(measurePosition, {snap: up})
|
ruler.measure(measurePosition, {snap: up})
|
||||||
}
|
}
|
||||||
|
|
||||||
function onTokenLeftDragStart(event) {
|
function onTokenLeftDragStart(event) {
|
||||||
canvas.controls.ruler.draggedToken = this
|
const ruler = canvas.controls.ruler
|
||||||
|
ruler.draggedToken = this
|
||||||
const tokenCenter = {x: this.x + canvas.grid.grid.w / 2, y: this.y + canvas.grid.grid.h / 2}
|
const tokenCenter = {x: this.x + canvas.grid.grid.w / 2, y: this.y + canvas.grid.grid.h / 2}
|
||||||
canvas.controls.ruler.clear();
|
ruler.clear();
|
||||||
canvas.controls.ruler._state = Ruler.STATES.STARTING;
|
ruler._state = Ruler.STATES.STARTING;
|
||||||
canvas.controls.ruler.rulerOffset = {x: tokenCenter.x - event.data.origin.x, y: tokenCenter.y - event.data.origin.y}
|
ruler.rulerOffset = {x: tokenCenter.x - event.data.origin.x, y: tokenCenter.y - event.data.origin.y}
|
||||||
addWaypoint.call(canvas.controls.ruler, tokenCenter, false);
|
addWaypoint.call(ruler, tokenCenter, false)
|
||||||
}
|
}
|
||||||
|
|
||||||
function onTokenLeftDragMove(event) {
|
function onTokenLeftDragMove(event) {
|
||||||
if (canvas.controls.ruler.isDragRuler)
|
const ruler = canvas.controls.ruler
|
||||||
onMouseMove.call(canvas.controls.ruler, event)
|
if (ruler.isDragRuler)
|
||||||
|
onMouseMove.call(ruler, event)
|
||||||
}
|
}
|
||||||
|
|
||||||
function onTokenDragLeftDrop(event) {
|
function onTokenDragLeftDrop(event) {
|
||||||
if (!canvas.controls.ruler.isDragRuler)
|
const ruler = canvas.controls.ruler
|
||||||
|
if (!ruler.isDragRuler)
|
||||||
return false
|
return false
|
||||||
const selectedTokens = canvas.tokens.placeables.filter(token => token._controlled)
|
const selectedTokens = canvas.tokens.placeables.filter(token => token._controlled)
|
||||||
moveTokens.call(canvas.controls.ruler, canvas.controls.ruler.draggedToken, selectedTokens)
|
moveTokens.call(ruler, ruler.draggedToken, selectedTokens)
|
||||||
canvas.controls.ruler.draggedToken = null
|
ruler.draggedToken = null
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
function onTokenDragLeftCancel(event) {
|
function onTokenDragLeftCancel(event) {
|
||||||
// This function is invoked by right clicking
|
// This function is invoked by right clicking
|
||||||
if (!canvas.controls.ruler.isDragRuler)
|
const ruler = canvas.controls.ruler
|
||||||
|
if (!ruler.isDragRuler)
|
||||||
return false
|
return false
|
||||||
if (canvas.controls.ruler._state === Ruler.STATES.MEASURING) {
|
if (ruler._state === Ruler.STATES.MEASURING) {
|
||||||
if (!game.settings.get(settingsKey, "swapSpacebarRightClick")) {
|
if (!game.settings.get(settingsKey, "swapSpacebarRightClick")) {
|
||||||
if (canvas.controls.ruler.waypoints.length > 1)
|
if (ruler.waypoints.length > 1)
|
||||||
event.preventDefault()
|
event.preventDefault()
|
||||||
deleteWaypoint()
|
deleteWaypoint()
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
event.preventDefault()
|
event.preventDefault()
|
||||||
const snap = !event.shiftKey
|
const snap = !event.shiftKey
|
||||||
addWaypoint.call(canvas.controls.ruler, canvas.controls.ruler.destination, snap)
|
addWaypoint.call(ruler, ruler.destination, snap)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
@@ -204,16 +209,17 @@ function addWaypoint(point, snap=true) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function deleteWaypoint() {
|
function deleteWaypoint() {
|
||||||
if (canvas.controls.ruler.waypoints.length > 1) {
|
const ruler = canvas.controls.ruler
|
||||||
|
if (ruler.waypoints.length > 1) {
|
||||||
const mousePosition = canvas.app.renderer.plugins.interaction.mouse.getLocalPosition(canvas.tokens)
|
const mousePosition = canvas.app.renderer.plugins.interaction.mouse.getLocalPosition(canvas.tokens)
|
||||||
const rulerOffset = canvas.controls.ruler.rulerOffset
|
const rulerOffset = ruler.rulerOffset
|
||||||
canvas.controls.ruler._removeWaypoint({x: mousePosition.x + rulerOffset.x, y: mousePosition.y + rulerOffset.y})
|
ruler._removeWaypoint({x: mousePosition.x + rulerOffset.x, y: mousePosition.y + rulerOffset.y})
|
||||||
game.user.broadcastActivity({ruler: canvas.controls.ruler})
|
game.user.broadcastActivity({ruler: ruler})
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
const token = canvas.controls.ruler.draggedToken
|
const token = ruler.draggedToken
|
||||||
canvas.controls.ruler._endMeasurement()
|
ruler._endMeasurement()
|
||||||
canvas.controls.ruler.draggedToken = null
|
ruler.draggedToken = null
|
||||||
|
|
||||||
// Deactivate the drag workflow in mouse
|
// Deactivate the drag workflow in mouse
|
||||||
token.mouseInteractionManager._deactivateDragEvents();
|
token.mouseInteractionManager._deactivateDragEvents();
|
||||||
|
|||||||
Reference in New Issue
Block a user