picrate 0.5.0-java → 0.6.0-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.mvn/wrapper/maven-wrapper.properties +1 -1
- data/CHANGELOG.md +3 -1
- data/README.md +1 -1
- data/Rakefile +8 -6
- data/docs/_editors/geany.md +5 -4
- data/docs/_editors/vim.md +6 -0
- data/docs/_includes/head.html +1 -0
- data/docs/_libraries/control_panel.md +2 -2
- data/docs/_libraries/gl_video.md +21 -0
- data/docs/_posts/2018-05-06-getting_started.md +10 -9
- data/docs/_posts/2018-05-06-install_jruby.md +19 -2
- data/docs/_posts/2018-06-26-auto_install_picrate.md +19 -4
- data/docs/_posts/2018-11-18-building-gem.md +18 -0
- data/docs/_posts/2018-11-27-getting_started_geany.md +38 -0
- data/docs/about.md +21 -10
- data/docs/assets/android-chrome-192x192.png +0 -0
- data/docs/assets/android-chrome-512x512.png +0 -0
- data/docs/assets/favicon.ico +0 -0
- data/docs/assets/geany.png +0 -0
- data/docs/assets/jwishy_picrate.png +0 -0
- data/docs/assets/picrate.svg +251 -0
- data/docs/index.html +8 -14
- data/lib/picrate/runner.rb +6 -2
- data/lib/picrate/version.rb +1 -1
- data/library/boids/boids.rb +10 -13
- data/mvnw +234 -0
- data/picrate.gemspec +2 -1
- data/pom.rb +1 -1
- data/pom.xml +1 -1
- data/src/main/java/japplemenubar/JAppleMenuBar.java +10 -2
- data/src/main/java/monkstone/ColorUtil.java +11 -1
- data/src/main/java/monkstone/MathToolModule.java +1 -0
- data/src/main/java/monkstone/PicrateLibrary.java +1 -0
- data/src/main/java/monkstone/fastmath/Deglut.java +1 -0
- data/src/main/java/monkstone/noise/SimplexNoise.java +3 -3
- data/src/main/java/monkstone/slider/CustomHorizontalSlider.java +1 -1
- data/src/main/java/monkstone/slider/CustomVerticalSlider.java +1 -1
- data/src/main/java/monkstone/slider/SimpleHorizontalSlider.java +1 -1
- data/src/main/java/monkstone/slider/SimpleSlider.java +8 -8
- data/src/main/java/monkstone/slider/SimpleVerticalSlider.java +1 -1
- data/src/main/java/monkstone/slider/Slider.java +3 -3
- data/src/main/java/monkstone/slider/SliderBar.java +1 -1
- data/src/main/java/monkstone/slider/SliderGroup.java +1 -1
- data/src/main/java/monkstone/vecmath/AppRender.java +1 -0
- data/src/main/java/monkstone/vecmath/JRender.java +1 -0
- data/src/main/java/monkstone/vecmath/ShapeRender.java +1 -0
- data/src/main/java/monkstone/vecmath/vec2/Vec2.java +8 -0
- data/src/main/java/monkstone/vecmath/vec3/Vec3.java +1 -0
- data/src/main/java/processing/awt/PGraphicsJava2D.java +85 -16
- data/src/main/java/processing/awt/PSurfaceAWT.java +1 -1
- data/src/main/java/processing/core/PApplet.java +18 -12
- data/src/main/java/processing/core/PShape.java +1182 -305
- data/src/main/java/processing/core/PStyle.java +1 -1
- data/src/main/java/processing/core/PSurface.java +1 -1
- data/src/main/java/processing/data/FloatDict.java +196 -54
- data/src/main/java/processing/data/FloatList.java +167 -54
- data/src/main/java/processing/data/IntDict.java +211 -56
- data/src/main/java/processing/data/IntList.java +185 -52
- data/src/main/java/processing/data/JSONArray.java +69 -20
- data/src/main/java/processing/data/JSONObject.java +53 -12
- data/src/main/java/processing/data/Sort.java +40 -10
- data/src/main/java/processing/data/StringDict.java +159 -49
- data/src/main/java/processing/data/StringList.java +147 -42
- data/src/main/java/processing/data/Table.java +778 -223
- data/src/main/java/processing/data/TableRow.java +26 -2
- data/src/main/java/processing/data/XML.java +190 -50
- data/src/main/java/processing/event/Event.java +93 -0
- data/src/main/java/processing/event/KeyEvent.java +55 -13
- data/src/main/java/processing/event/MouseEvent.java +77 -1
- data/src/main/java/processing/event/TouchEvent.java +14 -1
- data/src/main/java/processing/javafx/PGraphicsFX2D.java +8 -0
- data/src/main/java/processing/opengl/FrameBuffer.java +228 -66
- data/src/main/java/processing/opengl/LinePath.java +131 -27
- data/src/main/java/processing/opengl/LineStroker.java +30 -5
- data/src/main/java/processing/opengl/PGL.java +4066 -865
- data/src/main/java/processing/opengl/PGraphics2D.java +38 -10
- data/src/main/java/processing/opengl/PGraphics3D.java +38 -6
- data/src/main/java/processing/opengl/PGraphicsOpenGL.java +1980 -474
- data/src/main/java/processing/opengl/PJOGL.java +1460 -248
- data/src/main/java/processing/opengl/PShader.java +904 -217
- data/src/main/java/processing/opengl/PShapeOpenGL.java +1811 -487
- data/src/main/java/processing/opengl/PSurfaceJOGL.java +278 -71
- data/src/main/java/processing/opengl/Texture.java +610 -135
- data/src/main/java/processing/opengl/VertexBuffer.java +45 -9
- data/src/main/resources/icon/icon-1024.png +0 -0
- data/src/main/resources/icon/icon-128.png +0 -0
- data/src/main/resources/icon/icon-16.png +0 -0
- data/src/main/resources/icon/icon-256.png +0 -0
- data/src/main/resources/icon/icon-32.png +0 -0
- data/src/main/resources/icon/icon-48.png +0 -0
- data/src/main/resources/icon/icon-512.png +0 -0
- data/src/main/resources/icon/icon-64.png +0 -0
- data/vendors/Rakefile +1 -1
- metadata +13 -6
- data/docs/assets/circle_collisions.png +0 -0
- data/docs/favicon.ico +0 -0
@@ -74,42 +74,112 @@ import processing.core.PSurface;
|
|
74
74
|
import processing.event.KeyEvent;
|
75
75
|
import processing.event.MouseEvent;
|
76
76
|
|
77
|
-
|
77
|
+
/**
|
78
|
+
*
|
79
|
+
* @author Martin Prout
|
80
|
+
*/
|
78
81
|
public class PSurfaceJOGL implements PSurface {
|
79
82
|
/** Selected GL profile */
|
80
83
|
public static GLProfile profile;
|
81
84
|
|
82
|
-
|
85
|
+
/**
|
86
|
+
*
|
87
|
+
*/
|
88
|
+
public PJOGL pgl;
|
83
89
|
|
84
|
-
|
85
|
-
|
86
|
-
|
90
|
+
/**
|
91
|
+
*
|
92
|
+
*/
|
93
|
+
protected GLWindow window;
|
87
94
|
|
88
|
-
|
95
|
+
/**
|
96
|
+
*
|
97
|
+
*/
|
98
|
+
protected FPSAnimator animator;
|
89
99
|
|
90
|
-
|
91
|
-
|
100
|
+
/**
|
101
|
+
*
|
102
|
+
*/
|
103
|
+
protected Rectangle screenRect;
|
92
104
|
|
93
|
-
|
94
|
-
protected int sketchHeight0;
|
95
|
-
protected int sketchWidth;
|
96
|
-
protected int sketchHeight;
|
105
|
+
private Thread drawExceptionHandler;
|
97
106
|
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
107
|
+
/**
|
108
|
+
*
|
109
|
+
*/
|
110
|
+
protected PApplet sketch;
|
111
|
+
|
112
|
+
/**
|
113
|
+
*
|
114
|
+
*/
|
115
|
+
protected PGraphics graphics;
|
116
|
+
|
117
|
+
/**
|
118
|
+
*
|
119
|
+
*/
|
120
|
+
protected int sketchWidth0;
|
121
|
+
|
122
|
+
/**
|
123
|
+
*
|
124
|
+
*/
|
125
|
+
protected int sketchHeight0;
|
126
|
+
|
127
|
+
/**
|
128
|
+
*
|
129
|
+
*/
|
130
|
+
protected int sketchWidth;
|
131
|
+
|
132
|
+
/**
|
133
|
+
*
|
134
|
+
*/
|
135
|
+
protected int sketchHeight;
|
136
|
+
|
137
|
+
/**
|
138
|
+
*
|
139
|
+
*/
|
140
|
+
protected Display display;
|
141
|
+
|
142
|
+
/**
|
143
|
+
*
|
144
|
+
*/
|
145
|
+
protected Screen screen;
|
146
|
+
|
147
|
+
/**
|
148
|
+
*
|
149
|
+
*/
|
150
|
+
protected Rectangle displayRect;
|
151
|
+
|
152
|
+
/**
|
153
|
+
*
|
154
|
+
*/
|
155
|
+
protected Throwable drawException;
|
102
156
|
private final Object drawExceptionMutex = new Object();
|
103
157
|
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
158
|
+
/**
|
159
|
+
*
|
160
|
+
*/
|
161
|
+
protected NewtCanvasAWT canvas;
|
162
|
+
|
163
|
+
/**
|
164
|
+
*
|
165
|
+
*/
|
166
|
+
protected int windowScaleFactor;
|
167
|
+
|
168
|
+
/**
|
169
|
+
*
|
170
|
+
*/
|
171
|
+
protected float[] currentPixelScale = {0, 0};
|
172
|
+
|
173
|
+
/**
|
174
|
+
*
|
175
|
+
*/
|
176
|
+
protected boolean external = false;
|
177
|
+
|
178
|
+
/**
|
179
|
+
*
|
180
|
+
* @param graphics
|
181
|
+
*/
|
182
|
+
public PSurfaceJOGL(PGraphics graphics) {
|
113
183
|
this.graphics = graphics;
|
114
184
|
this.pgl = (PJOGL) ((PGraphicsOpenGL)graphics).pgl;
|
115
185
|
}
|
@@ -144,8 +214,10 @@ public class PSurfaceJOGL implements PSurface {
|
|
144
214
|
return window;
|
145
215
|
}
|
146
216
|
|
147
|
-
|
148
|
-
|
217
|
+
/**
|
218
|
+
*
|
219
|
+
*/
|
220
|
+
protected void initDisplay() {
|
149
221
|
display = NewtFactory.createDisplay(null);
|
150
222
|
display.addReference();
|
151
223
|
screen = NewtFactory.createScreen(display, 0);
|
@@ -177,8 +249,10 @@ public class PSurfaceJOGL implements PSurface {
|
|
177
249
|
displayRect = awtDisplayDevice.getDefaultConfiguration().getBounds();
|
178
250
|
}
|
179
251
|
|
180
|
-
|
181
|
-
|
252
|
+
/**
|
253
|
+
*
|
254
|
+
*/
|
255
|
+
protected void initGL() {
|
182
256
|
// System.out.println("*******************************");
|
183
257
|
if (profile == null) {
|
184
258
|
if (PJOGL.profile == 1) {
|
@@ -240,8 +314,10 @@ public class PSurfaceJOGL implements PSurface {
|
|
240
314
|
pgl.setCaps(caps);
|
241
315
|
}
|
242
316
|
|
243
|
-
|
244
|
-
|
317
|
+
/**
|
318
|
+
*
|
319
|
+
*/
|
320
|
+
protected void initWindow() {
|
245
321
|
window = GLWindow.create(screen, pgl.getCaps());
|
246
322
|
|
247
323
|
// Make sure that we pass the window close through to exit(), otherwise
|
@@ -346,8 +422,10 @@ public class PSurfaceJOGL implements PSurface {
|
|
346
422
|
}
|
347
423
|
}
|
348
424
|
|
349
|
-
|
350
|
-
|
425
|
+
/**
|
426
|
+
*
|
427
|
+
*/
|
428
|
+
protected void initListeners() {
|
351
429
|
NEWTMouseListener mouseListener = new NEWTMouseListener();
|
352
430
|
window.addMouseListener(mouseListener);
|
353
431
|
NEWTKeyListener keyListener = new NEWTKeyListener();
|
@@ -359,8 +437,10 @@ public class PSurfaceJOGL implements PSurface {
|
|
359
437
|
window.addGLEventListener(drawlistener);
|
360
438
|
}
|
361
439
|
|
362
|
-
|
363
|
-
|
440
|
+
/**
|
441
|
+
*
|
442
|
+
*/
|
443
|
+
protected void initAnimator() {
|
364
444
|
if (PApplet.platform == PConstants.WINDOWS) {
|
365
445
|
// Force Windows to keep timer resolution high by
|
366
446
|
// sleeping for time which is not a multiple of 10 ms.
|
@@ -471,8 +551,10 @@ public class PSurfaceJOGL implements PSurface {
|
|
471
551
|
});
|
472
552
|
}
|
473
553
|
|
474
|
-
|
475
|
-
|
554
|
+
/**
|
555
|
+
*
|
556
|
+
*/
|
557
|
+
protected void initIcons() {
|
476
558
|
IOUtil.ClassResources res = null;
|
477
559
|
if (PJOGL.icons == null || PJOGL.icons.length == 0) {
|
478
560
|
// Default Processing icons
|
@@ -771,8 +853,11 @@ public class PSurfaceJOGL implements PSurface {
|
|
771
853
|
}
|
772
854
|
}
|
773
855
|
|
774
|
-
|
775
|
-
|
856
|
+
/**
|
857
|
+
*
|
858
|
+
* @return
|
859
|
+
*/
|
860
|
+
public float getPixelScale() {
|
776
861
|
if (graphics.pixelDensity == 1) {
|
777
862
|
return 1;
|
778
863
|
}
|
@@ -791,13 +876,19 @@ public class PSurfaceJOGL implements PSurface {
|
|
791
876
|
return currentPixelScale[0];
|
792
877
|
}
|
793
878
|
|
794
|
-
|
795
|
-
|
879
|
+
/**
|
880
|
+
*
|
881
|
+
* @return
|
882
|
+
*/
|
883
|
+
public Component getComponent() {
|
796
884
|
return canvas;
|
797
885
|
}
|
798
886
|
|
799
|
-
|
800
|
-
|
887
|
+
/**
|
888
|
+
*
|
889
|
+
* @param level
|
890
|
+
*/
|
891
|
+
public void setSmooth(int level) {
|
801
892
|
pgl.reqNumSamples = level;
|
802
893
|
GLCapabilities caps = new GLCapabilities(profile);
|
803
894
|
caps.setAlphaBits(PGL.REQUESTED_ALPHA_BITS);
|
@@ -833,8 +924,10 @@ public class PSurfaceJOGL implements PSurface {
|
|
833
924
|
}
|
834
925
|
}
|
835
926
|
|
836
|
-
|
837
|
-
|
927
|
+
/**
|
928
|
+
*
|
929
|
+
*/
|
930
|
+
public void requestFocus() {
|
838
931
|
display.getEDTUtil().invoke(false, new Runnable() {
|
839
932
|
@Override
|
840
933
|
public void run() {
|
@@ -906,85 +999,168 @@ public class PSurfaceJOGL implements PSurface {
|
|
906
999
|
}
|
907
1000
|
}
|
908
1001
|
|
1002
|
+
/**
|
1003
|
+
*
|
1004
|
+
*/
|
1005
|
+
protected class NEWTWindowListener implements com.jogamp.newt.event.WindowListener {
|
909
1006
|
|
910
|
-
|
911
|
-
|
1007
|
+
/**
|
1008
|
+
*
|
1009
|
+
*/
|
1010
|
+
public NEWTWindowListener() {
|
912
1011
|
super();
|
913
1012
|
}
|
914
|
-
|
1013
|
+
|
1014
|
+
/**
|
1015
|
+
*
|
1016
|
+
* @param arg0
|
1017
|
+
*/
|
1018
|
+
@Override
|
915
1019
|
public void windowGainedFocus(com.jogamp.newt.event.WindowEvent arg0) {
|
916
1020
|
sketch.focused = true;
|
917
1021
|
sketch.focusGained();
|
918
1022
|
}
|
919
1023
|
|
920
|
-
|
1024
|
+
/**
|
1025
|
+
*
|
1026
|
+
* @param arg0
|
1027
|
+
*/
|
1028
|
+
@Override
|
921
1029
|
public void windowLostFocus(com.jogamp.newt.event.WindowEvent arg0) {
|
922
1030
|
sketch.focused = false;
|
923
1031
|
sketch.focusLost();
|
924
1032
|
}
|
925
1033
|
|
926
|
-
|
1034
|
+
/**
|
1035
|
+
*
|
1036
|
+
* @param arg0
|
1037
|
+
*/
|
1038
|
+
@Override
|
927
1039
|
public void windowDestroyNotify(com.jogamp.newt.event.WindowEvent arg0) {
|
928
1040
|
sketch.exit();
|
929
1041
|
}
|
930
1042
|
|
931
|
-
|
1043
|
+
/**
|
1044
|
+
*
|
1045
|
+
* @param arg0
|
1046
|
+
*/
|
1047
|
+
@Override
|
932
1048
|
public void windowDestroyed(com.jogamp.newt.event.WindowEvent arg0) {
|
933
1049
|
sketch.exit();
|
934
1050
|
}
|
935
1051
|
|
936
|
-
|
1052
|
+
/**
|
1053
|
+
*
|
1054
|
+
* @param arg0
|
1055
|
+
*/
|
1056
|
+
@Override
|
937
1057
|
public void windowMoved(com.jogamp.newt.event.WindowEvent arg0) {
|
938
1058
|
if (external) {
|
939
1059
|
sketch.frameMoved(window.getX(), window.getY());
|
940
1060
|
}
|
941
1061
|
}
|
942
1062
|
|
943
|
-
|
1063
|
+
/**
|
1064
|
+
*
|
1065
|
+
* @param arg0
|
1066
|
+
*/
|
1067
|
+
@Override
|
944
1068
|
public void windowRepaint(com.jogamp.newt.event.WindowUpdateEvent arg0) {
|
945
1069
|
}
|
946
1070
|
|
947
|
-
|
1071
|
+
/**
|
1072
|
+
*
|
1073
|
+
* @param arg0
|
1074
|
+
*/
|
1075
|
+
@Override
|
948
1076
|
public void windowResized(com.jogamp.newt.event.WindowEvent arg0) {
|
949
1077
|
}
|
950
1078
|
}
|
951
1079
|
|
952
1080
|
|
953
1081
|
// NEWT mouse listener
|
1082
|
+
|
1083
|
+
/**
|
1084
|
+
*
|
1085
|
+
*/
|
954
1086
|
protected class NEWTMouseListener extends com.jogamp.newt.event.MouseAdapter {
|
955
|
-
|
1087
|
+
|
1088
|
+
/**
|
1089
|
+
*
|
1090
|
+
*/
|
1091
|
+
public NEWTMouseListener() {
|
956
1092
|
super();
|
957
1093
|
}
|
958
|
-
|
1094
|
+
|
1095
|
+
/**
|
1096
|
+
*
|
1097
|
+
* @param e
|
1098
|
+
*/
|
1099
|
+
@Override
|
959
1100
|
public void mousePressed(com.jogamp.newt.event.MouseEvent e) {
|
960
1101
|
nativeMouseEvent(e, MouseEvent.PRESS);
|
961
1102
|
}
|
962
|
-
|
1103
|
+
|
1104
|
+
/**
|
1105
|
+
*
|
1106
|
+
* @param e
|
1107
|
+
*/
|
1108
|
+
@Override
|
963
1109
|
public void mouseReleased(com.jogamp.newt.event.MouseEvent e) {
|
964
1110
|
nativeMouseEvent(e, MouseEvent.RELEASE);
|
965
1111
|
}
|
966
|
-
|
1112
|
+
|
1113
|
+
/**
|
1114
|
+
*
|
1115
|
+
* @param e
|
1116
|
+
*/
|
1117
|
+
@Override
|
967
1118
|
public void mouseClicked(com.jogamp.newt.event.MouseEvent e) {
|
968
1119
|
nativeMouseEvent(e, MouseEvent.CLICK);
|
969
1120
|
}
|
970
|
-
|
1121
|
+
|
1122
|
+
/**
|
1123
|
+
*
|
1124
|
+
* @param e
|
1125
|
+
*/
|
1126
|
+
@Override
|
971
1127
|
public void mouseDragged(com.jogamp.newt.event.MouseEvent e) {
|
972
1128
|
nativeMouseEvent(e, MouseEvent.DRAG);
|
973
1129
|
}
|
974
|
-
|
1130
|
+
|
1131
|
+
/**
|
1132
|
+
*
|
1133
|
+
* @param e
|
1134
|
+
*/
|
1135
|
+
@Override
|
975
1136
|
public void mouseMoved(com.jogamp.newt.event.MouseEvent e) {
|
976
1137
|
nativeMouseEvent(e, MouseEvent.MOVE);
|
977
1138
|
}
|
978
|
-
|
1139
|
+
|
1140
|
+
/**
|
1141
|
+
*
|
1142
|
+
* @param e
|
1143
|
+
*/
|
1144
|
+
@Override
|
979
1145
|
public void mouseWheelMoved(com.jogamp.newt.event.MouseEvent e) {
|
980
1146
|
nativeMouseEvent(e, MouseEvent.WHEEL);
|
981
1147
|
}
|
982
|
-
|
1148
|
+
|
1149
|
+
/**
|
1150
|
+
*
|
1151
|
+
* @param e
|
1152
|
+
*/
|
1153
|
+
@Override
|
983
1154
|
public void mouseEntered(com.jogamp.newt.event.MouseEvent e) {
|
984
1155
|
// System.out.println("enter");
|
985
1156
|
nativeMouseEvent(e, MouseEvent.ENTER);
|
986
1157
|
}
|
987
|
-
|
1158
|
+
|
1159
|
+
/**
|
1160
|
+
*
|
1161
|
+
* @param e
|
1162
|
+
*/
|
1163
|
+
@Override
|
988
1164
|
public void mouseExited(com.jogamp.newt.event.MouseEvent e) {
|
989
1165
|
// System.out.println("exit");
|
990
1166
|
nativeMouseEvent(e, MouseEvent.EXIT);
|
@@ -993,25 +1169,52 @@ public class PSurfaceJOGL implements PSurface {
|
|
993
1169
|
|
994
1170
|
|
995
1171
|
// NEWT key listener
|
1172
|
+
|
1173
|
+
/**
|
1174
|
+
*
|
1175
|
+
*/
|
996
1176
|
protected class NEWTKeyListener extends com.jogamp.newt.event.KeyAdapter {
|
997
|
-
|
1177
|
+
|
1178
|
+
/**
|
1179
|
+
*
|
1180
|
+
*/
|
1181
|
+
public NEWTKeyListener() {
|
998
1182
|
super();
|
999
1183
|
}
|
1000
|
-
|
1184
|
+
|
1185
|
+
/**
|
1186
|
+
*
|
1187
|
+
* @param e
|
1188
|
+
*/
|
1189
|
+
@Override
|
1001
1190
|
public void keyPressed(com.jogamp.newt.event.KeyEvent e) {
|
1002
1191
|
nativeKeyEvent(e, KeyEvent.PRESS);
|
1003
1192
|
}
|
1004
|
-
|
1193
|
+
|
1194
|
+
/**
|
1195
|
+
*
|
1196
|
+
* @param e
|
1197
|
+
*/
|
1198
|
+
@Override
|
1005
1199
|
public void keyReleased(com.jogamp.newt.event.KeyEvent e) {
|
1006
1200
|
nativeKeyEvent(e, KeyEvent.RELEASE);
|
1007
1201
|
}
|
1008
|
-
|
1202
|
+
|
1203
|
+
/**
|
1204
|
+
*
|
1205
|
+
* @param e
|
1206
|
+
*/
|
1207
|
+
public void keyTyped(com.jogamp.newt.event.KeyEvent e) {
|
1009
1208
|
nativeKeyEvent(e, KeyEvent.TYPE);
|
1010
1209
|
}
|
1011
1210
|
}
|
1012
1211
|
|
1013
|
-
|
1014
|
-
|
1212
|
+
/**
|
1213
|
+
*
|
1214
|
+
* @param nativeEvent
|
1215
|
+
* @param peAction
|
1216
|
+
*/
|
1217
|
+
protected void nativeMouseEvent(com.jogamp.newt.event.MouseEvent nativeEvent,
|
1015
1218
|
int peAction) {
|
1016
1219
|
int modifiers = nativeEvent.getModifiers();
|
1017
1220
|
int peModifiers = modifiers &
|
@@ -1082,8 +1285,12 @@ public class PSurfaceJOGL implements PSurface {
|
|
1082
1285
|
sketch.postEvent(me);
|
1083
1286
|
}
|
1084
1287
|
|
1085
|
-
|
1086
|
-
|
1288
|
+
/**
|
1289
|
+
*
|
1290
|
+
* @param nativeEvent
|
1291
|
+
* @param peAction
|
1292
|
+
*/
|
1293
|
+
protected void nativeKeyEvent(com.jogamp.newt.event.KeyEvent nativeEvent,
|
1087
1294
|
int peAction) {
|
1088
1295
|
int peModifiers = nativeEvent.getModifiers() &
|
1089
1296
|
(InputEvent.SHIFT_MASK |
|