1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
/*
* @(#)jawt.h 1.11 05/11/17
*
* This C header file is derived from Sun Microsystem's Java SDK provided C header file
* with the following copyright notice:
*
* Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
* This version has complex comments removed and does not contain inlined algorithms etc, if any existed.
*
* The original C header file was included to JOGL on Sat Jun 21 02:10:30 2008
* (commit cbc45e816f4ee81031bffce19a99550681462a24) by Sun Microsystem's staff and were approved.
*
* This C header file is included due to ensure compatibility with - and invocation of the JAWT protocol.
* They are processed by GlueGen to create a Java binding for JAWT invocation only.
*
* http://ftp.resource.org/courts.gov/c/F3/387/387.F3d.522.03-5400.html (36)
* "Atari Games Corp. v. Nintendo of Am., Inc., Nos. 88-4805 & 89-0027, 1993 WL 207548, at *1 (N.D.Cal. May 18, 1993) ("Atari III")
* ("Program code that is strictly necessary to achieve current compatibility presents a merger problem, almost by definition,
* and is thus excluded from the scope of any copyright.")."
*
* http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=OJ:L:2009:111:0016:0022:EN:PDF
* L 111/17 (10) and (15)
*/
#ifndef _JAVASOFT_JAWT_H_
#define _JAVASOFT_JAWT_H_
#include "jni.h"
#ifdef __cplusplus
extern "C" {
#endif
/*
* AWT native interface (new in JDK 1.3)
*/
typedef struct jawt_Rectangle {
jint x;
jint y;
jint width;
jint height;
} JAWT_Rectangle;
struct jawt_DrawingSurface;
typedef struct jawt_DrawingSurfaceInfo {
void* platformInfo;
struct jawt_DrawingSurface* ds;
JAWT_Rectangle bounds;
jint clipSize;
JAWT_Rectangle* clip;
} JAWT_DrawingSurfaceInfo;
#define JAWT_LOCK_ERROR 0x00000001
#define JAWT_LOCK_CLIP_CHANGED 0x00000002
#define JAWT_LOCK_BOUNDS_CHANGED 0x00000004
#define JAWT_LOCK_SURFACE_CHANGED 0x00000008
typedef struct jawt_DrawingSurface {
JNIEnv* env;
jobject target;
jint (JNICALL *Lock)
(struct jawt_DrawingSurface* ds);
JAWT_DrawingSurfaceInfo* (JNICALL *GetDrawingSurfaceInfo)
(struct jawt_DrawingSurface* ds);
void (JNICALL *FreeDrawingSurfaceInfo)
(JAWT_DrawingSurfaceInfo* dsi);
void (JNICALL *Unlock)
(struct jawt_DrawingSurface* ds);
} JAWT_DrawingSurface;
typedef struct jawt {
jint version;
JAWT_DrawingSurface* (JNICALL *GetDrawingSurface)
(JNIEnv* env, jobject target);
void (JNICALL *FreeDrawingSurface)
(JAWT_DrawingSurface* ds);
/*
* Since 1.4
*/
void (JNICALL *Lock)(JNIEnv* env);
/*
* Since 1.4
*/
void (JNICALL *Unlock)(JNIEnv* env);
/*
* Since 1.4
*/
jobject (JNICALL *GetComponent)(JNIEnv* env, void* platformInfo);
} JAWT;
_JNI_IMPORT_OR_EXPORT_
jboolean JNICALL JAWT_GetAWT(JNIEnv* env, JAWT* awt);
#define JAWT_VERSION_1_3 0x00010003
#define JAWT_VERSION_1_4 0x00010004
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* !_JAVASOFT_JAWT_H_ */
|