mirror of
https://github.com/processing/processing4.git
synced 2026-06-16 04:26:26 +02:00
Merge branch 'processing:master' into p4-new_pshape_api-stream_copy
This commit is contained in:
@@ -1,13 +1,11 @@
|
||||
.DS_Store
|
||||
.AppleDouble
|
||||
*.iml
|
||||
._*
|
||||
*~
|
||||
/build/shared/reference.zip
|
||||
|
||||
*.x
|
||||
|
||||
# temporary, until we complete the move to IntelliJ
|
||||
#*.iml
|
||||
#/.idea
|
||||
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="EclipseModuleManager">
|
||||
<libelement value="jar://$MODULE_DIR$/lib/jna.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/jna-platform.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/ant.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/ant-launcher.jar!/" />
|
||||
<libelement value="file:///processing4-core/library-test/junit-4.8.1.jar" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/VAqua7.jar!/" />
|
||||
<src_description expected_position="0">
|
||||
<src_folder value="file://$MODULE_DIR$/src" expected_position="0" />
|
||||
</src_description>
|
||||
</component>
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/bin" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module-library">
|
||||
<library name="jna.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/jna.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="jna-platform.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/jna-platform.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library" exported="">
|
||||
<library name="ant.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/ant.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library" exported="">
|
||||
<library name="ant-launcher.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/ant-launcher.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module" module-name="processing4-core" />
|
||||
</component>
|
||||
</module>
|
||||
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/bin" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="processing4-app" />
|
||||
</component>
|
||||
</module>
|
||||
@@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="EclipseModuleManager">
|
||||
<libelement value="jar://$MODULE_DIR$/tool/jai_imageio.jar!/" />
|
||||
<src_description expected_position="0">
|
||||
<src_folder value="file://$MODULE_DIR$/src" expected_position="0" />
|
||||
</src_description>
|
||||
</component>
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/bin" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="module" module-name="processing4-app" />
|
||||
<orderEntry type="module-library">
|
||||
<library name="jai_imageio.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/tool/jai_imageio.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
</component>
|
||||
</module>
|
||||
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="EclipseModuleManager">
|
||||
<libelement value="jar://$MODULE_DIR$/tool/ThemeEngine.jar!/" />
|
||||
<src_description expected_position="1">
|
||||
<src_folder value="file://$MODULE_DIR$/src" expected_position="1" />
|
||||
</src_description>
|
||||
</component>
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/bin" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="processing4-app" />
|
||||
<orderEntry type="module-library">
|
||||
<library>
|
||||
<CLASSES>
|
||||
<root url="file://$MODULE_DIR$/../../../../java/libraries/javafx/library/macosx/modules" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
<jarDirectory url="file://$MODULE_DIR$/../../../../java/libraries/javafx/library/macosx/modules" recursive="false" />
|
||||
</library>
|
||||
</orderEntry>
|
||||
</component>
|
||||
</module>
|
||||
@@ -1,6 +1,5 @@
|
||||
bin
|
||||
bin-test
|
||||
.idea
|
||||
|
||||
/library/gluegen-rt*.jar
|
||||
/library/jogl-all*.jar
|
||||
|
||||
Generated
+3
@@ -0,0 +1,3 @@
|
||||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
||||
Generated
+6
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="AntConfiguration">
|
||||
<buildFile url="file://$PROJECT_DIR$/build.xml" />
|
||||
</component>
|
||||
</project>
|
||||
Generated
+6
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" project-jdk-name="11" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
</project>
|
||||
Generated
+9
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/processing4-core.iml" filepath="$PROJECT_DIR$/processing4-core.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/methods/processing4-core-preproc.iml" filepath="$PROJECT_DIR$/methods/processing4-core-preproc.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
||||
Generated
+6
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="EclipseModuleManager">
|
||||
<libelement value="file://$MODULE_DIR/../../app/lib/ant.jar" />
|
||||
<src_description expected_position="0">
|
||||
<src_folder value="file://$MODULE_DIR$/src" expected_position="0" />
|
||||
</src_description>
|
||||
</component>
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/bin" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="module-library">
|
||||
<library name="ant.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/../../app/lib/ant.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
</component>
|
||||
</module>
|
||||
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="jogl" level="project" />
|
||||
</component>
|
||||
</module>
|
||||
@@ -3024,9 +3024,11 @@ public class PShape implements PConstants {
|
||||
/**
|
||||
* Return true if this x, y coordinate is part of this shape. Only works
|
||||
* with PATH shapes or GROUP shapes that contain other GROUPs or PATHs.
|
||||
* This method is not imperfect and doesn't account for all cases
|
||||
* (not all complex shapes: concave shapes or holes may have issues).
|
||||
*/
|
||||
public boolean contains(float x, float y) {
|
||||
if (family == PATH) {
|
||||
if (family == PATH || family == GEOMETRY) {
|
||||
PVector p = new PVector(x, y);
|
||||
if (matrix != null) {
|
||||
// apply the inverse transformation matrix to the point coordinates
|
||||
|
||||
@@ -51,6 +51,7 @@ import com.jogamp.opengl.GLCapabilitiesImmutable;
|
||||
import com.jogamp.opengl.GLContext;
|
||||
import com.jogamp.opengl.GLDrawable;
|
||||
import com.jogamp.opengl.fixedfunc.GLMatrixFunc;
|
||||
import com.jogamp.opengl.GLRendererQuirks;
|
||||
import com.jogamp.opengl.glu.GLU;
|
||||
import com.jogamp.opengl.glu.GLUtessellator;
|
||||
import com.jogamp.opengl.glu.GLUtessellatorCallbackAdapter;
|
||||
@@ -128,6 +129,8 @@ public class PJOGL extends PGL {
|
||||
}
|
||||
|
||||
|
||||
private static boolean forceSharedObjectSync = true;
|
||||
|
||||
///////////////////////////////////////////////////////////////
|
||||
|
||||
// Initialization, finalization
|
||||
@@ -183,6 +186,11 @@ public class PJOGL extends PGL {
|
||||
}
|
||||
|
||||
|
||||
public boolean needSharedObjectSync() {
|
||||
return forceSharedObjectSync || gl.getContext().hasRendererQuirk(GLRendererQuirks.NeedSharedObjectSync);
|
||||
}
|
||||
|
||||
|
||||
public void setFps(float fps) {
|
||||
if (!setFps || targetFps != fps) {
|
||||
if (60 < fps) {
|
||||
|
||||
@@ -3447,12 +3447,16 @@ public class PShapeOpenGL extends PShape {
|
||||
|
||||
//
|
||||
|
||||
// Geometry utils
|
||||
|
||||
// http://www.ecse.rpi.edu/Homepages/wrf/Research/Short_Notes/pnpoly.html
|
||||
/**
|
||||
* Return true if this x, y coordinate is part of this shape. Only works
|
||||
* with PATH shapes or GROUP shapes that contain other GROUPs or PATHs.
|
||||
* This method is not imperfect and doesn't account for all cases
|
||||
* (not all complex shapes: concave shapes or holes may have issues).
|
||||
*/
|
||||
@Override
|
||||
public boolean contains(float x, float y) {
|
||||
if (family == PATH) {
|
||||
if (family == PATH || family == GEOMETRY) {
|
||||
// http://www.ecse.rpi.edu/Homepages/wrf/Research/Short_Notes/pnpoly.html
|
||||
boolean c = false;
|
||||
for (int i = 0, j = inGeo.vertexCount-1; i < inGeo.vertexCount; j = i++) {
|
||||
if (((inGeo.vertices[3 * i + 1] > y) != (inGeo.vertices[3 * j + 1] > y)) &&
|
||||
|
||||
@@ -39,6 +39,7 @@ import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.URL;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -56,6 +57,7 @@ import com.jogamp.opengl.GLCapabilities;
|
||||
import com.jogamp.opengl.GLEventListener;
|
||||
import com.jogamp.opengl.GLException;
|
||||
import com.jogamp.opengl.GLProfile;
|
||||
import com.jogamp.opengl.GLDrawableFactory;
|
||||
import com.jogamp.nativewindow.MutableGraphicsConfiguration;
|
||||
import com.jogamp.nativewindow.WindowClosingProtocol;
|
||||
import com.jogamp.newt.Display;
|
||||
@@ -107,6 +109,11 @@ public class PSurfaceJOGL implements PSurface {
|
||||
|
||||
protected NewtCanvasAWT canvas;
|
||||
|
||||
protected static GLAutoDrawable sharedDrawable;
|
||||
protected static ArrayList<FPSAnimator> animators = new ArrayList<>();
|
||||
private final static Object sharedSyncMutex = new Object();
|
||||
private Object syncMutex;
|
||||
|
||||
protected int windowScaleFactor;
|
||||
|
||||
protected float[] currentPixelScale = { 0, 0 };
|
||||
@@ -254,6 +261,29 @@ public class PSurfaceJOGL implements PSurface {
|
||||
caps.setBackgroundOpaque(true);
|
||||
caps.setOnscreen(true);
|
||||
pgl.setCaps(caps);
|
||||
|
||||
if (sharedDrawable == null) {
|
||||
// Create a shared drawable to enable context sharing across multiple GL windows
|
||||
// https://jogamp.org/deployment/jogamp-next/javadoc/jogl/javadoc/com/jogamp/opengl/GLSharedContextSetter.html
|
||||
sharedDrawable = GLDrawableFactory.getFactory(profile).createDummyAutoDrawable(null, true, caps, null);
|
||||
sharedDrawable.display();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// To properly deal with synchronization when context sharing across multiple drawables (windows), we need a
|
||||
// synchronization mutex object to ensure that rendering of each frame completes in their respective animator thread:
|
||||
// https://jogamp.org/deployment/jogamp-next/javadoc/jogl/javadoc/com/jogamp/opengl/GLSharedContextSetter.html#synchronization
|
||||
private Object getSyncMutex(GLAutoDrawable drawable) {
|
||||
pgl.getGL(drawable);
|
||||
if (pgl.needSharedObjectSync()) {
|
||||
syncMutex = sharedSyncMutex;
|
||||
} else {
|
||||
if (syncMutex == null) {
|
||||
syncMutex = new Object();
|
||||
}
|
||||
}
|
||||
return syncMutex;
|
||||
}
|
||||
|
||||
|
||||
@@ -327,6 +357,8 @@ public class PSurfaceJOGL implements PSurface {
|
||||
window.setTopLevelSize((int) displayRect.getWidth(), (int) displayRect.getHeight());
|
||||
}
|
||||
}
|
||||
|
||||
window.setSharedAutoDrawable(sharedDrawable);
|
||||
}
|
||||
|
||||
|
||||
@@ -354,6 +386,7 @@ public class PSurfaceJOGL implements PSurface {
|
||||
}
|
||||
|
||||
animator = new FPSAnimator(window, 60);
|
||||
animators.add(animator);
|
||||
|
||||
drawException = null;
|
||||
animator.setUncaughtExceptionHandler((animator, drawable, cause) -> {
|
||||
@@ -637,6 +670,10 @@ public class PSurfaceJOGL implements PSurface {
|
||||
drawExceptionHandler = null;
|
||||
}
|
||||
if (animator != null) {
|
||||
// Stops all other animators to avoid exceptions when closing a window in a multiple window configuration
|
||||
for (FPSAnimator ani: animators) {
|
||||
if (ani != animator) ani.stop();
|
||||
}
|
||||
return animator.stop();
|
||||
} else {
|
||||
return false;
|
||||
@@ -753,9 +790,13 @@ public class PSurfaceJOGL implements PSurface {
|
||||
|
||||
|
||||
public class DrawListener implements GLEventListener {
|
||||
private boolean isInit = false;
|
||||
|
||||
public void display(GLAutoDrawable drawable) {
|
||||
if (!isInit) return;
|
||||
|
||||
if (display.getEDTUtil().isCurrentThreadEDT()) {
|
||||
// For an unknown reason, the first two frames of the animator run on
|
||||
// For some unknown reason, a few frames of the animator run on
|
||||
// the EDT. For those, we just skip this draw call to avoid badness.
|
||||
return;
|
||||
}
|
||||
@@ -770,17 +811,19 @@ public class PSurfaceJOGL implements PSurface {
|
||||
}
|
||||
|
||||
if (!sketch.finished) {
|
||||
pgl.getGL(drawable);
|
||||
int prevFrameCount = sketch.frameCount;
|
||||
sketch.handleDraw();
|
||||
if (prevFrameCount == sketch.frameCount || sketch.finished) {
|
||||
// This hack allows the FBO layer to be swapped normally even if
|
||||
// the sketch is no looping or finished because it does not call draw(),
|
||||
// otherwise background artifacts may occur (depending on the hardware/drivers).
|
||||
pgl.beginRender();
|
||||
pgl.endRender(sketch.sketchWindowColor());
|
||||
synchronized (getSyncMutex(drawable)) {
|
||||
pgl.getGL(drawable);
|
||||
int prevFrameCount = sketch.frameCount;
|
||||
sketch.handleDraw();
|
||||
if (prevFrameCount == sketch.frameCount || sketch.finished) {
|
||||
// This hack allows the FBO layer to be swapped normally even if
|
||||
// the sketch is no looping or finished because it does not call draw(),
|
||||
// otherwise background artifacts may occur (depending on the hardware/drivers).
|
||||
pgl.beginRender();
|
||||
pgl.endRender(sketch.sketchWindowColor());
|
||||
}
|
||||
PGraphicsOpenGL.completeFinishedPixelTransfers();
|
||||
}
|
||||
PGraphicsOpenGL.completeFinishedPixelTransfers();
|
||||
}
|
||||
|
||||
if (sketch.exitCalled()) {
|
||||
@@ -796,24 +839,37 @@ public class PSurfaceJOGL implements PSurface {
|
||||
}
|
||||
|
||||
public void init(GLAutoDrawable drawable) {
|
||||
pgl.getGL(drawable);
|
||||
pgl.init(drawable);
|
||||
sketch.start();
|
||||
if (display.getEDTUtil().isCurrentThreadEDT()) {
|
||||
return;
|
||||
}
|
||||
|
||||
int c = graphics.backgroundColor;
|
||||
pgl.clearColor(((c >> 16) & 0xff) / 255f,
|
||||
((c >> 8) & 0xff) / 255f,
|
||||
(c & 0xff) / 255f,
|
||||
((c >> 24) & 0xff) / 255f);
|
||||
pgl.clear(PGL.COLOR_BUFFER_BIT);
|
||||
synchronized (getSyncMutex(drawable)) {
|
||||
pgl.init(drawable);
|
||||
sketch.start();
|
||||
|
||||
int c = graphics.backgroundColor;
|
||||
pgl.clearColor(((c >> 16) & 0xff) / 255f,
|
||||
((c >> 8) & 0xff) / 255f,
|
||||
(c & 0xff) / 255f,
|
||||
((c >> 24) & 0xff) / 255f);
|
||||
pgl.clear(PGL.COLOR_BUFFER_BIT);
|
||||
isInit = true;
|
||||
}
|
||||
}
|
||||
|
||||
public void reshape(GLAutoDrawable drawable, int x, int y, int w, int h) {
|
||||
pgl.resetFBOLayer();
|
||||
pgl.getGL(drawable);
|
||||
float scale = PApplet.platform == PConstants.MACOS ?
|
||||
getCurrentPixelScale() : getPixelScale();
|
||||
setSize((int) (w / scale), (int) (h / scale));
|
||||
if (!isInit) return;
|
||||
|
||||
if (display.getEDTUtil().isCurrentThreadEDT()) {
|
||||
return;
|
||||
}
|
||||
|
||||
synchronized (getSyncMutex(drawable)) {
|
||||
pgl.resetFBOLayer();
|
||||
float scale = PApplet.platform == PConstants.MACOS ?
|
||||
getCurrentPixelScale() : getPixelScale();
|
||||
setSize((int) (w / scale), (int) (h / scale));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,10 +3,16 @@ X support extensions for directories with listFiles/listPaths
|
||||
X otherwise asking for .jpg will return root folders (unless 'only files' specified)
|
||||
X but because macOS actually puts extensions on folders (.app, etc), support it
|
||||
X fix for disableStyle() with 2D shapes in P3D
|
||||
X allow GEOMETRY (not just PATH) with contains() in PShape
|
||||
X the method is still incomplete, but added a note about that too
|
||||
X added workaround in PShapeOpenGL to get access to vertex data
|
||||
_ still need to find the root cause
|
||||
_ also need to check for other reports about this
|
||||
|
||||
X multiple windows with GL
|
||||
_ https://github.com/processing/processing4/issues/312
|
||||
X https://github.com/processing/processing4/pull/313
|
||||
|
||||
_ made DrawListener public in PSurfaceJOGL (probably change that back)
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/bin" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="processing4-core" />
|
||||
</component>
|
||||
</module>
|
||||
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="EclipseModuleManager">
|
||||
<libelement value="jar://$MODULE_DIR$/library/javafx.base.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/library/javafx.controls.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/library/javafx.fxml.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/library/javafx.graphics.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/library/javafx.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/library/javafx.media.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/library/javafx.swing.jar!/" />
|
||||
<src_description expected_position="1">
|
||||
<src_folder value="file://$MODULE_DIR$/src" expected_position="1" />
|
||||
</src_description>
|
||||
</component>
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/bin" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="processing4-core" />
|
||||
<orderEntry type="module-library">
|
||||
<library>
|
||||
<CLASSES>
|
||||
<root url="file://$MODULE_DIR$/library/macosx/modules" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
<jarDirectory url="file://$MODULE_DIR$/library/macosx/modules" recursive="false" />
|
||||
</library>
|
||||
</orderEntry>
|
||||
</component>
|
||||
</module>
|
||||
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/bin" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="processing4-core" />
|
||||
</component>
|
||||
</module>
|
||||
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="processing4-core" />
|
||||
<orderEntry type="module-library">
|
||||
<library>
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/library/itext.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
</component>
|
||||
</module>
|
||||
@@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="EclipseModuleManager">
|
||||
<libelement value="jar://$MODULE_DIR$/library/jssc.jar!/" />
|
||||
<src_description expected_position="0">
|
||||
<src_folder value="file://$MODULE_DIR$/src" expected_position="0" />
|
||||
</src_description>
|
||||
</component>
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/bin" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module-library">
|
||||
<library name="jssc.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/library/jssc.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module" module-name="processing4-core" />
|
||||
</component>
|
||||
</module>
|
||||
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="processing4-core" />
|
||||
<orderEntry type="module-library">
|
||||
<library>
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/library/batik.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
</component>
|
||||
</module>
|
||||
@@ -0,0 +1,181 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="EclipseModuleManager">
|
||||
<libelement value="jar://$MODULE_DIR$/mode/antlr-4.7.2-complete.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/classpath-explorer-1.0.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/com.ibm.icu.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/jdtCompilerAdapter.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/jsoup-1.7.1.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/org.eclipse.core.contenttype.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/org.eclipse.core.jobs.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/org.eclipse.core.resources.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/org.eclipse.core.runtime.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/org.eclipse.equinox.common.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/org.eclipse.equinox.preferences.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/org.eclipse.jdt.core.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/org.eclipse.osgi.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/org.eclipse.text.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/mode/org.netbeans.swing.outline.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/test/lib/junit-4.8.1.jar!/" />
|
||||
<src_description expected_position="0">
|
||||
<src_folder value="file://$MODULE_DIR$/generated" expected_position="0" />
|
||||
<src_folder value="file://$MODULE_DIR$/src" expected_position="1" />
|
||||
</src_description>
|
||||
</component>
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/bin" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/generated" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="processing4-app" />
|
||||
<orderEntry type="module" module-name="processing4-core" />
|
||||
<orderEntry type="module-library">
|
||||
<library name="antlr-4.7.2-complete.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/antlr-4.7.2-complete.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="classpath-explorer-1.0.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/classpath-explorer-1.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="com.ibm.icu.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/com.ibm.icu.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="jdtCompilerAdapter.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/jdtCompilerAdapter.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="jsoup-1.7.1.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/jsoup-1.7.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="org.eclipse.core.contenttype.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/org.eclipse.core.contenttype.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="org.eclipse.core.jobs.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/org.eclipse.core.jobs.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="org.eclipse.core.resources.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/org.eclipse.core.resources.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="org.eclipse.core.runtime.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/org.eclipse.core.runtime.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="org.eclipse.equinox.common.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/org.eclipse.equinox.common.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="org.eclipse.equinox.preferences.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/org.eclipse.equinox.preferences.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="org.eclipse.jdt.core.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/org.eclipse.jdt.core.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="org.eclipse.osgi.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/org.eclipse.osgi.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="org.eclipse.text.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/org.eclipse.text.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="org.netbeans.swing.outline.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/mode/org.netbeans.swing.outline.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="junit-4.8.1.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/test/lib/junit-4.8.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
</component>
|
||||
</module>
|
||||
Reference in New Issue
Block a user