#[repr(C)]pub struct jawt {
pub version: jint,
pub GetDrawingSurface: Option<unsafe extern "C" fn(env: *mut JNIEnv, target: jobject) -> *mut JAWT_DrawingSurface>,
pub FreeDrawingSurface: Option<unsafe extern "C" fn(ds: *mut JAWT_DrawingSurface)>,
pub Lock: Option<unsafe extern "C" fn(env: *mut JNIEnv)>,
pub Unlock: Option<unsafe extern "C" fn(env: *mut JNIEnv)>,
pub GetComponent: Option<unsafe extern "C" fn(env: *mut JNIEnv, platformInfo: *mut c_void) -> jobject>,
pub CreateEmbeddedFrame: Option<unsafe extern "C" fn(env: *mut JNIEnv, platformInfo: *mut c_void) -> jobject>,
pub SetBounds: Option<unsafe extern "C" fn(env: *mut JNIEnv, embeddedFrame: jobject, x: jint, y: jint, w: jint, h: jint)>,
pub SynthesizeWindowActivation: Option<unsafe extern "C" fn(env: *mut JNIEnv, embeddedFrame: jobject, doActivate: jboolean)>,
}
Fields§
§version: jint
§GetDrawingSurface: Option<unsafe extern "C" fn(env: *mut JNIEnv, target: jobject) -> *mut JAWT_DrawingSurface>
§FreeDrawingSurface: Option<unsafe extern "C" fn(ds: *mut JAWT_DrawingSurface)>
§Lock: Option<unsafe extern "C" fn(env: *mut JNIEnv)>
§Unlock: Option<unsafe extern "C" fn(env: *mut JNIEnv)>
§GetComponent: Option<unsafe extern "C" fn(env: *mut JNIEnv, platformInfo: *mut c_void) -> jobject>
§CreateEmbeddedFrame: Option<unsafe extern "C" fn(env: *mut JNIEnv, platformInfo: *mut c_void) -> jobject>
Since 9 Creates a java.awt.Frame placed in a native container. Container is referenced by the native platform handle. For example on Windows this corresponds to an HWND. For other platforms, see the appropriate machine-dependent header file for a description. The reference returned by this function is a local reference that is only valid in this environment. This function returns a NULL reference if no frame could be created with matching platform information.
SetBounds: Option<unsafe extern "C" fn(env: *mut JNIEnv, embeddedFrame: jobject, x: jint, y: jint, w: jint, h: jint)>
Since 9 Moves and resizes the embedded frame. The new location of the top-left corner is specified by x and y parameters relative to the native parent component. The new size is specified by width and height.
The embedded frame should be created by CreateEmbeddedFrame() method, or this function will not have any effect.
java.awt.Component.setLocation() and java.awt.Component.setBounds() for EmbeddedFrame really don’t move it within the native parent. These methods always locate the embedded frame at (0, 0) for backward compatibility. To allow moving embedded frames this method was introduced, and it works just the same way as setLocation() and setBounds() for usual, non-embedded components.
Using usual get/setLocation() and get/setBounds() together with this new method is not recommended.
SynthesizeWindowActivation: Option<unsafe extern "C" fn(env: *mut JNIEnv, embeddedFrame: jobject, doActivate: jboolean)>
Since 9 Synthesize a native message to activate or deactivate an EmbeddedFrame window depending on the value of parameter doActivate, if “true” activates the window; otherwise, deactivates the window.
The embedded frame should be created by CreateEmbeddedFrame() method, or this function will not have any effect.