Changing mouse movement from drag to draw a new link

Hi, how to connect the start of a drawing process to a key.
My nodes is " fromPort:go.Spot.AllSides", “toPort:go.Spot.AllSides”,
It is a bit troublesome to start drawing in this situation.

When dragging starts, press a key --> shift
for example:

goJSDefaultMovingNodeFunc(event,node){
if(event.pressKey==shift)
{
//start link draw func…
}
else
…move

}
i can ovverride default move function and start linkingTool

[I moved this from a GoDiagram topic because this clearly seems to be about GoJS.]

I think you can get what you want by overriding some tool methods, either on DraggingTool or on LinkingTool, but I’m not sure what you want. Could you explain exactly which situations you want a different behavior than normal? And in which situations do you want to continue with the default behavior?