Improve Gizmo "spin" control ?

Currently, one can spin the Gizmo display by "flinging" the mouse drag, using the ModifyGizmo idleEventRotation={dx,dy} command, or using the Gizmo Rotation control panel. All these methods seem to be based on the Gizmo window orientation or the Euler angle (internal quaternion) parameters. I do not find it easy to get the Gizmo display to spin about an arbitrarily oriented 'z' axis, for example, or even one where the 'z' axis appears vertical in an oblique display. Flinging the mouse generally causes a precession of the 'z' axis. Since I frequently display z-amplitude surfaces in Gizmo, this can be inconvenient.

It is possible to get the desired spin orientation control by updating a ModifyGizmo operation=rotate command in a background function but this is a somewhat cumbersome and complicated way to go.

What I propose is an addition to, or another version of, the idleEventRotation command such as
ModifyGizmo idleEventRotation={dphi,Xcos,Ycos,Zcos}
This combines the data={angle, ax, ay, az} aspect of the ModifyGizmo operation=rotate command with the background spin of idleEventRotation. It could be used to spin the Gizmo display precisely about any more easily defined orientation with respect to the X, Y, Z axes. The spin should be stoppable simply by clicking the mouse in the Gizmo window, as is the case in the existing version.
Hello Steve,

Feature requests for Gizmo should be sent directly to me.

A.G.
WaveMetrics, Inc.