MacWindow.m: Add missing NSAutoreleasePool 'decoration'
NewtMacWindow: NSView: Remove unused 'myCursor' field
Bug 935: NEWT PointerIcon OSX: Safe use of NSCursor handle
Bug 935: NEWT PointerIcon PNGIcon: Remove return value 'elem_bytesize[]' which is always 4 (RGBA/BGRA)
Bug 935: NEWT PointerIcon PNGIcon: Remove return value 'elem_bytesize[]' which is always 4 (RGBA/BGRA
Bug 935: NEWT PointerIcon: Refine Spec and Implementation / Fix OSX Crash and Issues

- Refine Display.PointerIcon: Complete type allowing re-creation
  - Add associated Display reference
  - Add used IOUtil.ClassResources reference
  - Add isValid()/validate() methods for recreation
  - Refine API doc

- Move Display.destroyPointerIcon(PointerIcon) -> PointerIcon.destroy()

- Move DisplayImpl.PointerIconImpl -> PointerIconImpl (own source file)

- Creation/Destruction and setting of PointerIcon happens on EDT

- DisplayImpl.shutdownAll() and Display.destroy() calls destroyAllPointerIconFromList

- WindowDriver.setPointerIconImpl: Validates PointerIconImpl (i.e. re-creates if required)

- Fix 'initial' window.setPointerIcon(..) before createNative(..),
  tested w/ TestGearsES2NEWT

- OSX Native Code:
  - Move mouse and pointer-state handling from NewtMacWindow -> NewtView class
    to retain states (pointer handle, pointer visibility, etc) when reparenting.
    Reparenting will move an exisiting NewtView into a new NewtMacWindow.

  - Enable all mouse move events:
    - NewtView::mouseEnter [nsWin makeFirstResponder: nsView];
    - NewtView::mouseExited if( !mouseConfined ) { [nsView resignFirstResponder]; }

  - NewtView::mouseMoved issued [myCurser set] if required, fixing
    OSX issue not updating NSCursor properly.

 - MacWindow:
    - Test NewtMacWindow, NewtView and NSCursor handles before usage
    - Fix DBG_PRINT(..) warnings
Bug 935: NEWT OSX PointerIcon/Pointer-Visibility: Impl. OffscreenLayerSurface (OSX CALayer) w/ JAWTWindow Path

Add setCursor(..) and hideCursor() to OffscreenLayerSurface interface,
impl. in JAWTWindow w/ AWT.

This allows an OSX NEWT Window using CALayer (i.e. NewtCanvasAWT)
to have setPointerIcon(..) and setPointerVisible(..) functionality!
JOGLNewtAppletBase Default Key-Action: Add 'j' for setPointerConfined() .. i.e. 'jailed'
Bug 935: NEWT Windows Window-Icon: Fix Window-Icon Visibility after Reparenting CHILD -> TOP

Hiding the window via 'ShowWindow(.., SW_HIDE)' before reparenting and subsequent
style change incl. visibility renders the Window-Icon visible.
TestInitConcurrent01NEWT: Fix test enumeration
Bug 935: NEWT Windows Window-Icon: Use WNDCLASSEX w/ Small/Big Default Icons (NativeWindow GDI / NEWT )

.. this allows using the icon definition of WNDCLASSEX instead of setting them at CreateWindow0(..).

- NativeWindow GDIUtil/RegisteredFactory uses WNDCLASSEX and Small/Big Defailt Icons
Bug 935: NEWT Windows Pointer-Icon WM_SETCURSOR: Don't use DefWindowProc, SetCursor(..) if HTCLIENT && isChildWin && customCursor
NativewindowCommon_init: Add define STDERR_TO_FILE (default undefined) to redirect stderr to file jogamp_stderr.log (Useful for Applets)
NEWT OSX: Add missing NewtCommon_init(env) (duh!) - Issuing NewtCommon_throwNewRuntimeException(..) if given references are of invalid type

Missing NewtCommon_init(env) always lead to a crash when calling NewtCommon_throwNewRuntimeException(..)
due to uninitialized clazz instances!
Bug 935: NEWT PointerIcon/Visibility: Perform OffscreenLayerSurface delegation _always_ in common WindowImpl ; Workaround for Windows+Applet issue.

Perform OffscreenLayerSurface delegation _always_ in common WindowImpl

Instead of performing OffscreenLayerSurface task on OSX's WindowDriver implementation,
use generic implementation in WindowImpl for all platform exposing same behavior.

ReparentAction takes care of reset/setup of PointerIcon/Visibility states.

+++

This is also a workaround for Windows+Applet issue,
where the PointerIcon gets periodically overridden
by the AWT Component's icon.
Bug 935: NEWT PointerIcon/Visibility: Perform JAWTWindow's OffscreenLayerSurface PointerIcon/Visibility tasks async on AWT-EDT

setCursor(..) and hideCursor(..) must happen on the AWT-EDT w/o blocking,
otherwise we may deadlock the NEWT-EDT.