Browse Source

Revert "sdk filters : replaced all Jme*Filter by a unique JmeFilter"

This reverts commit 5a0e58c729b146f5684590bc245307036d472259.
Dokthar 9 years ago
parent
commit
23d3520ecc

+ 87 - 0
jme3-core/src/com/jme3/gde/core/filters/impl/JmeBloomFilter.java

@@ -0,0 +1,87 @@
+/*
+ *  Copyright (c) 2009-2010 jMonkeyEngine
+ *  All rights reserved.
+ * 
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are
+ *  met:
+ * 
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 
+ *  * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ * 
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ *  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package com.jme3.gde.core.filters.impl;
+
+import com.jme3.gde.core.filters.AbstractFilterNode;
+import com.jme3.gde.core.filters.FilterNode;
+import com.jme3.post.filters.BloomFilter;
+import org.openide.loaders.DataObject;
+import org.openide.nodes.Node;
+import org.openide.nodes.Sheet;
+
+/**
+ *
+ * @author normenhansen
+ */
[email protected](service = FilterNode.class)
+public class JmeBloomFilter extends AbstractFilterNode {
+
+    public JmeBloomFilter() {
+    }
+
+    public JmeBloomFilter(BloomFilter filter, DataObject object, boolean readOnly) {
+        super(filter);
+        this.dataObject = object;
+        this.readOnly = readOnly;
+    }
+
+    @Override
+    protected Sheet createSheet() {
+        Sheet sheet = super.createSheet();
+        Sheet.Set set = Sheet.createPropertiesSet();
+        set.setDisplayName("Bloom");
+        set.setName(Node.class.getName());
+        BloomFilter obj = (BloomFilter) filter;
+        if (obj == null) {
+            return sheet;
+        }
+//        set.put(makeProperty(obj, float.class, "getBloomIntensity", "setBloomIntensity", "Intensity"));
+//        set.put(makeProperty(obj, float.class, "getBlurScale", "setBlurScale", "Blur Scale"));
+//        set.put(makeProperty(obj, float.class, "getDownSamplingFactor", "setDownSamplingFactor", "Downsampling Factor"));
+//        set.put(makeProperty(obj, float.class, "getExposureCutOff", "setExposureCutOff", "Exposure Cutoff"));
+//        set.put(makeProperty(obj, float.class, "getExposurePower", "setExposurePower", "Exposure Power"));
+         createFields(BloomFilter.class, set, obj);
+        sheet.put(set);
+        return sheet;
+
+    }
+
+    @Override
+    public Class<?> getExplorerObjectClass() {
+        return BloomFilter.class;
+    }
+
+    @Override
+    public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
+        return new Node[]{new JmeBloomFilter((BloomFilter) key, dataObject, readOnly)};
+    }
+}

+ 89 - 0
jme3-core/src/com/jme3/gde/core/filters/impl/JmeCartoonEdgeFilter.java

@@ -0,0 +1,89 @@
+/*
+ *  Copyright (c) 2009-2010 jMonkeyEngine
+ *  All rights reserved.
+ * 
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are
+ *  met:
+ * 
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 
+ *  * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ * 
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ *  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package com.jme3.gde.core.filters.impl;
+
+import com.jme3.gde.core.filters.AbstractFilterNode;
+import com.jme3.gde.core.filters.FilterNode;
+import com.jme3.post.filters.CartoonEdgeFilter;
+import org.openide.loaders.DataObject;
+import org.openide.nodes.Node;
+import org.openide.nodes.Sheet;
+
+/**
+ *
+ * @author normenhansen
+ */
[email protected](service = FilterNode.class)
+public class JmeCartoonEdgeFilter extends AbstractFilterNode {
+
+    public JmeCartoonEdgeFilter() {
+    }
+
+    public JmeCartoonEdgeFilter(CartoonEdgeFilter filter, DataObject object, boolean readOnly) {
+        super(filter);
+        this.dataObject = object;
+        this.readOnly = readOnly;
+    }
+
+    @Override
+    protected Sheet createSheet() {
+        Sheet sheet = super.createSheet();
+        Sheet.Set set = Sheet.createPropertiesSet();
+        set.setDisplayName("CartoonEdge");
+        set.setName(Node.class.getName());
+        CartoonEdgeFilter obj = (CartoonEdgeFilter) filter;
+        if (obj == null) {
+            return sheet;
+        }
+//        set.put(makeProperty(obj, float.class, "getDepthSensitivity", "setDepthSensitivity", "Depth Sensitivity"));
+//        set.put(makeProperty(obj, float.class, "getDepthThreshold", "setDepthThreshold", "Depth Threshold"));
+//        set.put(makeProperty(obj, ColorRGBA.class, "getEdgeColor", "setEdgeColor", "Edge Color"));
+//        set.put(makeProperty(obj, float.class, "getEdgeIntensity", "setEdgeIntensity", "Edge Intensity"));
+//        set.put(makeProperty(obj, float.class, "getEdgeWidth", "setEdgeWidth", "Edge Width"));
+//        set.put(makeProperty(obj, float.class, "getNormalSensitivity", "setNormalSensitivity", "Normal Sensitivity"));
+//        set.put(makeProperty(obj, float.class, "getNormalThreshold", "setNormalThreshold", "Normal Threshold"));
+        createFields(CartoonEdgeFilter.class, set, obj);
+        sheet.put(set);
+        return sheet;
+
+    }
+
+    @Override
+    public Class<?> getExplorerObjectClass() {
+        return CartoonEdgeFilter.class;
+    }
+
+    @Override
+    public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
+        return new Node[]{new JmeCartoonEdgeFilter((CartoonEdgeFilter) key, dataObject, readOnly)};
+    }
+}

+ 83 - 0
jme3-core/src/com/jme3/gde/core/filters/impl/JmeColorOverlayFilter.java

@@ -0,0 +1,83 @@
+/*
+ *  Copyright (c) 2009-2010 jMonkeyEngine
+ *  All rights reserved.
+ * 
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are
+ *  met:
+ * 
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 
+ *  * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ * 
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ *  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package com.jme3.gde.core.filters.impl;
+
+import com.jme3.gde.core.filters.AbstractFilterNode;
+import com.jme3.gde.core.filters.FilterNode;
+import com.jme3.post.filters.ColorOverlayFilter;
+import org.openide.loaders.DataObject;
+import org.openide.nodes.Node;
+import org.openide.nodes.Sheet;
+
+/**
+ *
+ * @author normenhansen
+ */
[email protected](service = FilterNode.class)
+public class JmeColorOverlayFilter extends AbstractFilterNode {
+
+    public JmeColorOverlayFilter() {
+    }
+
+    public JmeColorOverlayFilter(ColorOverlayFilter filter, DataObject object, boolean readOnly) {
+        super(filter);
+        this.dataObject = object;
+        this.readOnly = readOnly;
+    }
+
+    @Override
+    protected Sheet createSheet() {
+        Sheet sheet = super.createSheet();
+        Sheet.Set set = Sheet.createPropertiesSet();
+        set.setDisplayName("ColorOverlay");
+        set.setName(Node.class.getName());
+        ColorOverlayFilter obj = (ColorOverlayFilter) filter;
+        if (obj == null) {
+            return sheet;
+        }
+        //set.put(makeProperty(obj, ColorRGBA.class, "getColor", "setColor", "Color"));
+        createFields(ColorOverlayFilter.class, set, obj);
+        sheet.put(set);
+        return sheet;
+
+    }
+
+    @Override
+    public Class<?> getExplorerObjectClass() {
+        return ColorOverlayFilter.class;
+    }
+
+    @Override
+    public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
+        return new Node[]{new JmeColorOverlayFilter((ColorOverlayFilter) key, dataObject, readOnly)};
+    }
+}

+ 89 - 0
jme3-core/src/com/jme3/gde/core/filters/impl/JmeCrossHatchFilter.java

@@ -0,0 +1,89 @@
+/*
+ *  Copyright (c) 2009-2010 jMonkeyEngine
+ *  All rights reserved.
+ * 
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are
+ *  met:
+ * 
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 
+ *  * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ * 
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ *  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package com.jme3.gde.core.filters.impl;
+
+import com.jme3.gde.core.filters.AbstractFilterNode;
+import com.jme3.gde.core.filters.FilterNode;
+import com.jme3.post.filters.CrossHatchFilter;
+import org.openide.loaders.DataObject;
+import org.openide.nodes.Node;
+import org.openide.nodes.Sheet;
+
+/**
+ *
+ * @author normenhansen
+ */
[email protected](service = FilterNode.class)
+public class JmeCrossHatchFilter extends AbstractFilterNode {
+
+    public JmeCrossHatchFilter() {
+    }
+
+    public JmeCrossHatchFilter(CrossHatchFilter filter, DataObject object, boolean readOnly) {
+        super(filter);
+        this.dataObject = object;
+        this.readOnly = readOnly;
+    }
+
+    @Override
+    protected Sheet createSheet() {
+        Sheet sheet = super.createSheet();
+        Sheet.Set set = Sheet.createPropertiesSet();
+        set.setDisplayName("CrossHatch");
+        set.setName(Node.class.getName());
+        CrossHatchFilter obj = (CrossHatchFilter) filter;
+        if (obj == null) {
+            return sheet;
+        }
+//        set.put(makeProperty(obj, float.class, "getColorInfluenceLine", "setColorInfluenceLine", "Color Influence Line"));
+//        set.put(makeProperty(obj, float.class, "getColorInfluencePaper", "setColorInfluencePaper", "Color Influence Paper"));
+//        set.put(makeProperty(obj, float.class, "getFillValue", "setFillValue", "Fill Value"));
+//        set.put(makeProperty(obj, ColorRGBA.class, "getPaperColor", "setPaperColor", "Paper Color"));
+//        set.put(makeProperty(obj, ColorRGBA.class, "getLineColor", "setLineColor", "Line Color"));
+//        set.put(makeProperty(obj, float.class, "getLineDistance", "setLineDistance", "Line Distance"));
+//        set.put(makeProperty(obj, float.class, "getLineThickness", "setLineThickness", "Line Thickness"));
+        createFields(CrossHatchFilter.class, set, obj);
+        sheet.put(set);
+        return sheet;
+
+    }
+
+    @Override
+    public Class<?> getExplorerObjectClass() {
+        return CrossHatchFilter.class;
+    }
+
+    @Override
+    public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
+        return new Node[]{new JmeCrossHatchFilter((CrossHatchFilter) key, dataObject, readOnly)};
+    }
+}

+ 85 - 0
jme3-core/src/com/jme3/gde/core/filters/impl/JmeDepthOfFieldFilter.java

@@ -0,0 +1,85 @@
+/*
+ *  Copyright (c) 2009-2010 jMonkeyEngine
+ *  All rights reserved.
+ * 
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are
+ *  met:
+ * 
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 
+ *  * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ * 
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ *  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package com.jme3.gde.core.filters.impl;
+
+import com.jme3.gde.core.filters.AbstractFilterNode;
+import com.jme3.gde.core.filters.FilterNode;
+import com.jme3.post.filters.DepthOfFieldFilter;
+import org.openide.loaders.DataObject;
+import org.openide.nodes.Node;
+import org.openide.nodes.Sheet;
+
+/**
+ *
+ * @author normenhansen
+ */
[email protected](service = FilterNode.class)
+public class JmeDepthOfFieldFilter extends AbstractFilterNode {
+
+    public JmeDepthOfFieldFilter() {
+    }
+
+    public JmeDepthOfFieldFilter(DepthOfFieldFilter filter, DataObject object, boolean readOnly) {
+        super(filter);
+        this.dataObject = object;
+        this.readOnly = readOnly;
+    }
+
+    @Override
+    protected Sheet createSheet() {
+        Sheet sheet = super.createSheet();
+        Sheet.Set set = Sheet.createPropertiesSet();
+        set.setDisplayName("DepthOfField");
+        set.setName(Node.class.getName());
+        DepthOfFieldFilter obj = (DepthOfFieldFilter) filter;
+        if (obj == null) {
+            return sheet;
+        }
+//        set.put(makeProperty(obj, float.class, "getBlurScale", "setBlurScale", "Blur Scale"));
+//        set.put(makeProperty(obj, float.class, "getFocusDistance", "setFocusDistance", "Focus Distance"));
+//        set.put(makeProperty(obj, float.class, "getFocusRange", "setFocusRange", "Focus Range"));
+         createFields(DepthOfFieldFilter.class, set, obj);
+        sheet.put(set);
+        return sheet;
+
+    }
+
+    @Override
+    public Class<?> getExplorerObjectClass() {
+        return DepthOfFieldFilter.class;
+    }
+
+    @Override
+    public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
+        return new Node[]{new JmeDepthOfFieldFilter((DepthOfFieldFilter) key, dataObject, readOnly)};
+    }
+}

+ 86 - 0
jme3-core/src/com/jme3/gde/core/filters/impl/JmeFXAAFilter.java

@@ -0,0 +1,86 @@
+/*
+ *  Copyright (c) 2009-2010 jMonkeyEngine
+ *  All rights reserved.
+ * 
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are
+ *  met:
+ * 
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 
+ *  * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ * 
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ *  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package com.jme3.gde.core.filters.impl;
+
+import com.jme3.gde.core.filters.AbstractFilterNode;
+import com.jme3.gde.core.filters.FilterNode;
+import com.jme3.post.filters.FXAAFilter;
+import org.openide.loaders.DataObject;
+import org.openide.nodes.Node;
+import org.openide.nodes.Sheet;
+
+/**
+ *
+ * @author Rémy Bouquet
+ */
[email protected](service = FilterNode.class)
+public class JmeFXAAFilter extends AbstractFilterNode {
+
+    public JmeFXAAFilter() {
+    }
+
+    public JmeFXAAFilter(FXAAFilter filter, DataObject object, boolean readOnly) {
+        super(filter);
+        this.dataObject = object;
+        this.readOnly = readOnly;
+    }
+
+    @Override
+    protected Sheet createSheet() {
+        Sheet sheet = super.createSheet();
+
+        Sheet.Set set = Sheet.createPropertiesSet();
+        set.setDisplayName("FXAA");
+        set.setName("FXAA");
+        FXAAFilter obj = (FXAAFilter) filter;
+
+        if (obj == null) {
+            return sheet;
+        }
+
+        createFields(FXAAFilter.class, set, obj);
+
+        sheet.put(set);
+        return sheet;
+
+    }
+
+    @Override
+    public Class<?> getExplorerObjectClass() {
+        return FXAAFilter.class;
+    }
+
+    @Override
+    public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
+        return new Node[]{new JmeFXAAFilter((FXAAFilter) key, dataObject, readOnly)};
+    }
+}

+ 85 - 0
jme3-core/src/com/jme3/gde/core/filters/impl/JmeFogFilter.java

@@ -0,0 +1,85 @@
+/*
+ *  Copyright (c) 2009-2010 jMonkeyEngine
+ *  All rights reserved.
+ * 
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are
+ *  met:
+ * 
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 
+ *  * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ * 
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ *  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package com.jme3.gde.core.filters.impl;
+
+import com.jme3.gde.core.filters.AbstractFilterNode;
+import com.jme3.gde.core.filters.FilterNode;
+import com.jme3.post.filters.FogFilter;
+import org.openide.loaders.DataObject;
+import org.openide.nodes.Node;
+import org.openide.nodes.Sheet;
+
+/**
+ *
+ * @author normenhansen
+ */
[email protected](service = FilterNode.class)
+public class JmeFogFilter extends AbstractFilterNode {
+
+    public JmeFogFilter() {
+    }
+
+    public JmeFogFilter(FogFilter filter, DataObject object, boolean readOnly) {
+        super(filter);
+        this.dataObject = object;
+        this.readOnly = readOnly;
+    }
+
+    @Override
+    protected Sheet createSheet() {
+        Sheet sheet = super.createSheet();
+        Sheet.Set set = Sheet.createPropertiesSet();
+        set.setDisplayName("Fog");
+        set.setName(Node.class.getName());
+        FogFilter obj = (FogFilter) filter;
+        if (obj == null) {
+            return sheet;
+        }
+//        set.put(makeProperty(obj, float.class, "getFogDistance", "setFogDistance", "Distance"));
+//        set.put(makeProperty(obj, float.class, "getFogDensity", "setFogDensity", "Density"));
+//        set.put(makeProperty(obj, ColorRGBA.class, "getFogColor", "setFogColor", "Color"));
+         createFields(FogFilter.class, set, obj);
+        sheet.put(set);
+        return sheet;
+
+    }
+
+    @Override
+    public Class<?> getExplorerObjectClass() {
+        return FogFilter.class;
+    }
+
+    @Override
+    public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
+        return new Node[]{new JmeFogFilter((FogFilter) key, dataObject, readOnly)};
+    }
+}

+ 88 - 0
jme3-core/src/com/jme3/gde/core/filters/impl/JmeLightScatteringFilter.java

@@ -0,0 +1,88 @@
+/*
+ *  Copyright (c) 2009-2010 jMonkeyEngine
+ *  All rights reserved.
+ * 
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are
+ *  met:
+ * 
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 
+ *  * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ * 
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ *  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package com.jme3.gde.core.filters.impl;
+
+import com.jme3.gde.core.filters.AbstractFilterNode;
+import com.jme3.gde.core.filters.FilterNode;
+import com.jme3.post.filters.LightScatteringFilter;
+import org.openide.loaders.DataObject;
+import org.openide.nodes.Node;
+import org.openide.nodes.Sheet;
+
+/**
+ *
+ * @author normenhansen
+ */
[email protected](service = FilterNode.class)
+public class JmeLightScatteringFilter extends AbstractFilterNode {
+
+    public JmeLightScatteringFilter() {
+    }
+
+    public JmeLightScatteringFilter(LightScatteringFilter filter, DataObject object, boolean readOnly) {
+        super(filter);
+        this.dataObject = object;
+        this.readOnly = readOnly;
+    }
+
+    @Override
+    protected Sheet createSheet() {
+        Sheet sheet = super.createSheet();
+        Sheet.Set set = Sheet.createPropertiesSet();
+        set.setDisplayName("Blur");
+        set.setName(Node.class.getName());
+        LightScatteringFilter obj = (LightScatteringFilter) filter;
+        if (obj == null) {
+            return sheet;
+        }
+//        set.put(makeProperty(obj, float.class, "getBlurStart", "setBlurStart", "Blur Start"));
+//        set.put(makeProperty(obj, float.class, "getBlurWidth", "setBlurWidth", "Blur Width"));
+//        set.put(makeProperty(obj, float.class, "getLightDensity", "setLightDensity", "Light Density"));
+//        set.put(makeProperty(obj, Vector3f.class, "getLightPosition", "setLightPosition", "Light Position"));
+//        set.put(makeProperty(obj, int.class, "getNbSamples", "setNbSamples", "Sample Number"));
+        
+        createFields(LightScatteringFilter.class, set, obj);
+        sheet.put(set);
+        return sheet;
+
+    }
+
+    @Override
+    public Class<?> getExplorerObjectClass() {
+        return LightScatteringFilter.class;
+    }
+
+    @Override
+    public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
+        return new Node[]{new JmeLightScatteringFilter((LightScatteringFilter) key, dataObject, readOnly)};
+    }
+}

+ 85 - 0
jme3-core/src/com/jme3/gde/core/filters/impl/JmePosterizationFilter.java

@@ -0,0 +1,85 @@
+/*
+ *  Copyright (c) 2009-2010 jMonkeyEngine
+ *  All rights reserved.
+ * 
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are
+ *  met:
+ * 
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 
+ *  * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ * 
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ *  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package com.jme3.gde.core.filters.impl;
+
+import com.jme3.gde.core.filters.AbstractFilterNode;
+import com.jme3.gde.core.filters.FilterNode;
+import com.jme3.post.filters.PosterizationFilter;
+import org.openide.loaders.DataObject;
+import org.openide.nodes.Node;
+import org.openide.nodes.Sheet;
+
+/**
+ *
+ * @author normenhansen
+ */
[email protected](service = FilterNode.class)
+public class JmePosterizationFilter extends AbstractFilterNode {
+
+    public JmePosterizationFilter() {
+    }
+
+    public JmePosterizationFilter(PosterizationFilter filter, DataObject object, boolean readOnly) {
+        super(filter);
+        this.dataObject = object;
+        this.readOnly = readOnly;
+    }
+
+    @Override
+    protected Sheet createSheet() {
+        Sheet sheet = super.createSheet();
+        Sheet.Set set = Sheet.createPropertiesSet();
+        set.setDisplayName("Posterization");
+        set.setName(Node.class.getName());
+        PosterizationFilter obj = (PosterizationFilter) filter;
+        if (obj == null) {
+            return sheet;
+        }
+//        set.put(makeProperty(obj, float.class, "getGamma", "setGamma", "Gamma"));
+//        set.put(makeProperty(obj, int.class, "getNumColors", "setNumColors", "Color Number"));
+//        set.put(makeProperty(obj, float.class, "getStrength", "setStrength", "Strength"));
+        createFields(PosterizationFilter.class, set, obj);
+        sheet.put(set);
+        return sheet;
+
+    }
+
+    @Override
+    public Class<?> getExplorerObjectClass() {
+        return PosterizationFilter.class;
+    }
+
+    @Override
+    public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
+        return new Node[]{new JmePosterizationFilter((PosterizationFilter) key, dataObject, readOnly)};
+    }
+}

+ 15 - 16
jme3-core/src/com/jme3/gde/core/filters/impl/JmeFilter.java → jme3-core/src/com/jme3/gde/core/filters/impl/JmeSSAOFilter.java

@@ -1,5 +1,5 @@
 /*
 /*
- *  Copyright (c) 2009-2016 jMonkeyEngine
+ *  Copyright (c) 2009-2010 jMonkeyEngine
  *  All rights reserved.
  *  All rights reserved.
  * 
  * 
  *  Redistribution and use in source and binary forms, with or without
  *  Redistribution and use in source and binary forms, with or without
@@ -33,24 +33,22 @@ package com.jme3.gde.core.filters.impl;
 
 
 import com.jme3.gde.core.filters.AbstractFilterNode;
 import com.jme3.gde.core.filters.AbstractFilterNode;
 import com.jme3.gde.core.filters.FilterNode;
 import com.jme3.gde.core.filters.FilterNode;
-import com.jme3.post.Filter;
+import com.jme3.post.ssao.SSAOFilter;
 import org.openide.loaders.DataObject;
 import org.openide.loaders.DataObject;
 import org.openide.nodes.Node;
 import org.openide.nodes.Node;
 import org.openide.nodes.Sheet;
 import org.openide.nodes.Sheet;
 
 
-
 /**
 /**
  *
  *
- * @author dokthar
+ * @author Rémy Bouquet
  */
  */
 @org.openide.util.lookup.ServiceProvider(service = FilterNode.class)
 @org.openide.util.lookup.ServiceProvider(service = FilterNode.class)
-public class JmeFilter extends AbstractFilterNode {
+public class JmeSSAOFilter extends AbstractFilterNode {
 
 
-    
-    public JmeFilter() {
+    public JmeSSAOFilter() {
     }
     }
 
 
-    public JmeFilter(Filter filter, DataObject object, boolean readOnly) {
+    public JmeSSAOFilter(SSAOFilter filter, DataObject object, boolean readOnly) {
         super(filter);
         super(filter);
         this.dataObject = object;
         this.dataObject = object;
         this.readOnly = readOnly;
         this.readOnly = readOnly;
@@ -59,16 +57,18 @@ public class JmeFilter extends AbstractFilterNode {
     @Override
     @Override
     protected Sheet createSheet() {
     protected Sheet createSheet() {
         Sheet sheet = super.createSheet();
         Sheet sheet = super.createSheet();
+
         Sheet.Set set = Sheet.createPropertiesSet();
         Sheet.Set set = Sheet.createPropertiesSet();
-        set.setDisplayName(filter.getName());
-        set.setName(Node.class.getName());
-        
-        Filter obj = filter;
+        set.setDisplayName("SSAO");
+        set.setName("SSAO");
+        SSAOFilter obj = (SSAOFilter) filter;
+
         if (obj == null) {
         if (obj == null) {
             return sheet;
             return sheet;
         }
         }
 
 
-        createFields(filter.getClass(), set, obj);
+        createFields(SSAOFilter.class, set, obj);
+
         sheet.put(set);
         sheet.put(set);
         return sheet;
         return sheet;
 
 
@@ -76,12 +76,11 @@ public class JmeFilter extends AbstractFilterNode {
 
 
     @Override
     @Override
     public Class<?> getExplorerObjectClass() {
     public Class<?> getExplorerObjectClass() {
-        return filter.getClass();
+        return SSAOFilter.class;
     }
     }
 
 
     @Override
     @Override
     public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
     public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
-        return new Node[]{new JmeFilter((Filter) key, dataObject, readOnly)};
+        return new Node[]{new JmeSSAOFilter((SSAOFilter) key, dataObject, readOnly)};
     }
     }
-    
 }
 }

+ 86 - 0
jme3-core/src/com/jme3/gde/core/filters/impl/JmeWaterFilter.java

@@ -0,0 +1,86 @@
+/*
+ *  Copyright (c) 2009-2010 jMonkeyEngine
+ *  All rights reserved.
+ * 
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are
+ *  met:
+ * 
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 
+ *  * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ * 
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ *  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package com.jme3.gde.core.filters.impl;
+
+import com.jme3.gde.core.filters.AbstractFilterNode;
+import com.jme3.gde.core.filters.FilterNode;
+import com.jme3.water.WaterFilter;
+import org.openide.loaders.DataObject;
+import org.openide.nodes.Node;
+import org.openide.nodes.Sheet;
+
+/**
+ *
+ * @author Rémy Bouquet
+ */
[email protected](service = FilterNode.class)
+public class JmeWaterFilter extends AbstractFilterNode {
+
+    public JmeWaterFilter() {
+    }
+
+    public JmeWaterFilter(WaterFilter filter, DataObject object, boolean readOnly) {
+        super(filter);
+        this.dataObject = object;
+        this.readOnly = readOnly;
+    }
+
+    @Override
+    protected Sheet createSheet() {
+        Sheet sheet = super.createSheet();
+
+        Sheet.Set set = Sheet.createPropertiesSet();
+        set.setDisplayName("Water");
+        set.setName("Water");
+        WaterFilter obj = (WaterFilter) filter;
+
+        if (obj == null) {
+            return sheet;
+        }
+
+        createFields(WaterFilter.class, set, obj);
+
+        sheet.put(set);
+        return sheet;
+
+    }
+
+    @Override
+    public Class<?> getExplorerObjectClass() {
+        return WaterFilter.class;
+    }
+
+    @Override
+    public Node[] createNodes(Object key, DataObject dataObject, boolean readOnly) {
+        return new Node[]{new JmeWaterFilter((WaterFilter) key, dataObject, readOnly)};
+    }
+}