What are the changes to JAWT (AWT Native Interface) API in JDK1.4?

Davanum Srinivas

  • Added Lock() and Unlock() function pointers to the basic JAWT structure in jawt.h. These are needed to handle locking of the AWT without requiring a native Canvas. This is useful particularly in X applications that need to synchronize with AWT.
  • Removed the constraint that the target used by JAWT needs to be a Canvas. Instead, any Component in AWT can be used to get a DrawingSurface. However, the documentation will be updated to reflect that only a Canvas or Window (not Frame or Dialog) should be used for native rendering. A DrawingSurface is by itself useful for embedding a Component into a native application.
  • Added a GetAWTColor() function pointer to the JAWT_X11DrawingSurfaceInfo structure that takes a set of RGB values and returns a pixel. This is useful for indexed color mode (256 colors) to access the palette that AWT has already allocated.
  • Added a new
    #define JAWT_VERSION_1_4 0x00010004
    to compensate for the size of the new JAWT structure.