/// <summary> /// Sets the Spaceball motion callback for the current window. /// </summary> /// <param name="func"> /// The new Spaceball motion callback function. See /// <see cref="SpaceballMotionCallback" />. /// </param> /// <remarks> /// <para> /// <b>glutSpaceballMotionFunc</b> sets the Spaceball motion callback for the /// current window. The Spaceball motion callback for a window is called when the /// window has Spaceball input focus (normally, when the mouse is in the window) /// and the user generates Spaceball translations. The <i>x</i>, <i>y</i>, and /// <i>z</i> callback parameters indicate the translations along the X, Y, and Z /// axes. The callback parameters are normalized to be within the range of -1000 /// to 1000 inclusive. /// </para> /// <para> /// Registering a Spaceball motion callback when a Spaceball device is not /// available has no effect and is not an error. In this case, no Spaceball /// motion callbacks will be generated. /// </para> /// <para> /// Passing <c>null</c> to <b>glutSpaceballMotionFunc</b> disables the generation /// of Spaceball motion callbacks. When a new window is created, no Spaceball /// motion callback is initially registered. /// </para> /// </remarks> /// <seealso cref="SpaceballMotionCallback" /> // GLUTAPI void APIENTRY glutSpaceballMotionFunc(void (GLUTCALLBACK *func)(int x, int y, int z)); public static void glutSpaceballMotionFunc([In] SpaceballMotionCallback func) { spaceballMotionCallback = func; __glutSpaceballMotionFunc(spaceballMotionCallback); }
private static extern void __glutSpaceballMotionFunc(SpaceballMotionCallback func);