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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>JOGL NEWT Applet Runner - GearsES2 - normal - (NApplet) - Closeable</title>
</head>
<body BGCOLOR="#ffffff">
<p>
Applet launching using <a href="http://jogamp.org/jogl/doc/deployment/JOGL-DEPLOYMENT.html#NApplets">NApplet</a>.
</p>
<p>
JOGL NEWT Applet Runner Special Keys:<br>
<ul>
<li> SPACE - pause/resume animator </li>
<li> a - on/off always-on-top </li>
<li> b - on/off always-on-bottom </li>
<li> c - change mouse pointer </li>
<li> d - toggle decoration </li>
<li> f - toggle fullscreen </li>
<li> g - increase gamma, +shift decreases</li>
<li> i - toggle mouse pointer visibility </li>
<li> j - toggle confine mouse pointer </li>
<li> m - toggle maximize, V, +shift H+V, +alt H, +ctrl off</li>
<li> p - position window to 100/100</li>
<li> r - in/out browser window (no modifiers)</li>
<li> r - toggle window resizable (any modifiers)</li>
<li> s - toggle window sticky</li>
<li> v - toggle window visibility, +shift: keep invisible</li>
<li> v - change swap-interval: 1, 0, -1, 1, .. (+ctrl)</li>
<li> w - warp mouse pointer to center </li>
<li> x - toggle surface pixel scale</li>
</ul>
If Applet is out of browser window, it is closeable.
</p>
<p>
<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
width="200" height="200">
<param name="code" value="com.jogamp.newt.awt.applet.JOGLNewtApplet1Run">
<param name="archive" value="jar/gluegen-rt.jar,
jar/jogl-all.jar,
jar/jogl-test.jar">
<param name="gl_event_listener_class" value="com.jogamp.opengl.test.junit.jogl.demos.es2.GearsES2">
<param name="gl_profile" value="GL2ES2">
<param name="gl_swap_interval" value="1">
<param name="gl_closeable" value="true">
<param name="gl_debug" value="false">
<param name="gl_trace" value="false">
<comment>
<embed code="com.jogamp.newt.awt.applet.JOGLNewtApplet1Run"
width="200" height="200"
type="application/x-java-applet;version=1.6"
pluginspage="http://java.sun.com/javase/downloads/ea.jsp"
archive="jar/gluegen-rt.jar,
jar/jogl-all.jar,
jar/jogl-test.jar"
gl_event_listener_class="com.jogamp.opengl.test.junit.jogl.demos.es2.GearsES2"
gl_profile="GL2ES2"
gl_swap_interval="1"
gl_closeable="true"
gl_debug="false"
gl_trace="false">
<noembed>Sorry, no Java support detected.</noembed>
</embed>
</comment>
</object>
</p>
<p>
The applet above is instantiated with the following code:
<pre>
<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
width="200" height="200">
<param name="code" value="com.jogamp.newt.awt.applet.JOGLNewtApplet1Run">
<param name="archive" value="jar/gluegen-rt.jar,
jar/jogl-all.jar,
jar/jogl-test.jar">
<param name="gl_event_listener_class" value="com.jogamp.opengl.test.junit.jogl.demos.es2.GearsES2">
<param name="gl_profile" value="GL2ES2">
<param name="gl_swap_interval" value="1">
<param name="gl_closeable" value="true">
<param name="gl_debug" value="false">
<param name="gl_trace" value="false">
<comment>
<embed code="com.jogamp.newt.awt.applet.JOGLNewtApplet1Run"
width="200" height="200"
type="application/x-java-applet;version=1.6"
pluginspage="http://java.sun.com/javase/downloads/ea.jsp"
archive="jar/gluegen-rt.jar,
jar/jogl-all.jar,
jar/jogl-test.jar"
gl_event_listener_class="com.jogamp.opengl.test.junit.jogl.demos.es2.GearsES2"
gl_profile="GL2ES2"
gl_swap_interval="1"
gl_closeable="true"
gl_debug="false"
gl_trace="false">
<noembed>Sorry, no Java support detected.</noembed>
</embed>
</comment>
</object>
</pre>
</p>
<p>
<del>
Note that the jogl-test.jar, which contains the GearsES2 class,
<B>does not need to be signed</B>! JogAmp Community signs
jogl-all.jar and gluegen-rt.jar, which contain the
JOGL's supporting classes; this is the only
Java code which needs to be signed in order to deploy applets using
JOGL and is the only certificate the end user must accept.
</del><br/>
Sadly, due to Oracle's Java Applet Plugin update 7u51,
unsigned applets are no more allowed and effectively
lower the bar to create user applets with raised privileges.<br/>
Hence JogAmp Community <b>signs</b> jogl-all.jar and gluegen-rt.jar, which contain the
JOGL's supporting classes as well as jogl-test.jar, which contains the users implementing Applet class.<br/>
jogl-test.jar's manifest file uses <i>Permissions: sandbox</i>
to <b>not raise privileges</b>.
</p>
</body>
</html>
|