[PCBnew] No warning and no way to cancel if you accidentally initiate a lengthy multi-item process, and related crash

Description

There are features in PCBnew that let you sequentially manually route, or autoroute, all selected items.

The problem is, once you've started that process (which can be done with a single misclick in the right click menu, or a mistaken hotkey), there is no way (or at least no readily discoverable way) to prematurely end it entirely. When in the middle of a such a multi-step process, both [ESC] and right click -> cancel simply skip the current step and move on to the next one. A proposed fix would be to add a "cancel entire process" or perhaps just "cancel all" entry to the context menu when in the middle of such a process. (Perhaps with a default hotkey of shift+esc.)

If there are five or six things in the selection when this happens, that's not an issue. But if there are five or six thousand things (e.g. immediately after initially importing all items from the schematic), it's wholly impractical. The only solution is to close PCBnew, and doing so in the middle of such a multi-step process appears to be a surefire way to cause the entirety of KiCad (including pcbnew, eeschema, the footprint editor, and the symbol editor) to crash, potentially losing data. (It is possible to save in the middle of the process, and you get prompted to save unsaved data in pcbnew at least, so you won't necessarily lose anything, but you can still lose data in the other sub-programs.)

Steps to reproduce

  1. Select far too many items (e.g. half a board's worth of unrouted components that you want to move out of the way)
  2. Press (by default) shift+X, shift+E, or shift+F (warning: shift+F is a little harder to stop depending on item layout)
  3. Attempt to cancel the process.

KiCad Version

Application: KiCad PCB Editor x64 on x64

Version: 9.0.7, release build

Libraries:
	wxWidgets 3.2.8
	FreeType 2.13.3
	HarfBuzz 12.2.0
	FontConfig 2.15.0
	libcurl/8.17.0-DEV Schannel zlib/1.3.1

Platform: Windows 10 (build 19045), 64-bit edition, 64 bit, Little endian, wxMSW

Build Info:
	Date: Jan  2 2026 01:00:49
	wxWidgets: 3.2.8 (wchar_t,wx containers)
	Boost: 1.89.0
	OCC: 7.9.2
	Curl: 8.17.0-DEV
	ngspice: 45.2
	Compiler: Visual C++ 1944 without C++ ABI
	KICAD_IPC_API=ON

Locale: 
	Lang: en_US
	Enc: UTF-8
	Num: 1,234.5
	Encoded кΩ丈: D0BACEA9E4B888 (sys), D0BACEA9E4B888 (utf8)