Revision: 5060
          http://sourceforge.net/p/jump-pilot/code/5060
Author:   ma15569
Date:     2016-10-09 05:57:28 +0000 (Sun, 09 Oct 2016)
Log Message:
-----------
Correct bug 410. Added Data Explorer plugin

Modified Paths:
--------------
    plug-ins/SextantePlugIn/.classpath
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/core/OpenJUMPRasterLayer.java
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/extensions/SextanteExtension.java
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante.properties
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_ca.properties
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_de.properties
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_en.properties
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_es.properties
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_fi.properties
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_fr.properties
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_hr.properties
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_it.properties
    
plug-ins/SextantePlugIn/src/org/openjump/sigle/plugin/tutorial/HelpDialog.java

Added Paths:
-----------
    plug-ins/SextantePlugIn/dist/.classpath
    plug-ins/SextantePlugIn/dist/.project
    plug-ins/SextantePlugIn/dist/ojsextante_binding_oct2016.jar
    
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/extensions/SextanteDataExplorerPlugin.java

Modified: plug-ins/SextantePlugIn/.classpath
===================================================================
--- plug-ins/SextantePlugIn/.classpath  2016-10-08 23:23:12 UTC (rev 5059)
+++ plug-ins/SextantePlugIn/.classpath  2016-10-09 05:57:28 UTC (rev 5060)
@@ -1,12 +1,15 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-       <classpathentry kind="src" path="src"/>
-       <classpathentry kind="con" 
path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-       <classpathentry combineaccessrules="false" kind="src" path="/sextante"/>
-       <classpathentry combineaccessrules="false" kind="src" 
path="/sextante_gui"/>
-       <classpathentry combineaccessrules="false" kind="src" 
path="/openjump_app"/>
-       <classpathentry kind="con" 
path="org.eclipse.jdt.USER_LIBRARY/OpenJUMPLibs"/>
-       <classpathentry kind="con" 
path="org.eclipse.jdt.USER_LIBRARY/SextanteLibs"/>
-       <classpathentry kind="lib" 
path="/home/giusepppe/Scrivania/GIS/OpenJUMP-Test/lib/OpenJUMP_test.jar"/>
-       <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+       <classpathentry kind="src" path="src"/>
+       <classpathentry kind="con" 
path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/OpenJUMP-20160706-r4951-nolang.jar"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/ext/sextante/sextante.jar"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/ext/sextante/sextante_algorithms.jar"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/ext/sextante/sextante_gui.jar"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/jts-core-1.14.0.jar"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/jts-io-1.14.0.jar"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/jai_codec-1.1.3.jar"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/jai_core-1.1.3.jar"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/jai_imageio-1.1.jar"/>
+       <classpathentry kind="output" path="bin"/>
+</classpath>

Added: plug-ins/SextantePlugIn/dist/.classpath
===================================================================
--- plug-ins/SextantePlugIn/dist/.classpath                             (rev 0)
+++ plug-ins/SextantePlugIn/dist/.classpath     2016-10-09 05:57:28 UTC (rev 
5060)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+       <classpathentry kind="src" path="src"/>
+       <classpathentry kind="con" 
path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+       <classpathentry kind="con" 
path="org.eclipse.jdt.USER_LIBRARY/OpenJUMP"/>
+       <classpathentry kind="con" 
path="org.eclipse.jdt.USER_LIBRARY/OpenJUMP_libraries"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/ext/sextante/sextante.jar"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/ext/sextante/sextante_algorithms.jar"/>
+       <classpathentry kind="lib" 
path="C:/Users/Beppe/Desktop/OpenJUMP-Portable-20160706-r4951-CORE/OpenJUMP-20160706-r4951-CORE/lib/ext/sextante/sextante_gui.jar"/>
+       <classpathentry kind="output" path="bin"/>
+</classpath>


Property changes on: plug-ins/SextantePlugIn/dist/.classpath
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/SextantePlugIn/dist/.project
===================================================================
--- plug-ins/SextantePlugIn/dist/.project                               (rev 0)
+++ plug-ins/SextantePlugIn/dist/.project       2016-10-09 05:57:28 UTC (rev 
5060)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+       <name>Sextante</name>
+       <comment></comment>
+       <projects>
+       </projects>
+       <buildSpec>
+               <buildCommand>
+                       <name>org.eclipse.jdt.core.javabuilder</name>
+                       <arguments>
+                       </arguments>
+               </buildCommand>
+       </buildSpec>
+       <natures>
+               <nature>org.eclipse.jdt.core.javanature</nature>
+       </natures>
+</projectDescription>


Property changes on: plug-ins/SextantePlugIn/dist/.project
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/SextantePlugIn/dist/ojsextante_binding_oct2016.jar
===================================================================
(Binary files differ)

Index: plug-ins/SextantePlugIn/dist/ojsextante_binding_oct2016.jar
===================================================================
--- plug-ins/SextantePlugIn/dist/ojsextante_binding_oct2016.jar 2016-10-08 
23:23:12 UTC (rev 5059)
+++ plug-ins/SextantePlugIn/dist/ojsextante_binding_oct2016.jar 2016-10-09 
05:57:28 UTC (rev 5060)

Property changes on: plug-ins/SextantePlugIn/dist/ojsextante_binding_oct2016.jar
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Modified: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/core/OpenJUMPRasterLayer.java
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/core/OpenJUMPRasterLayer.java
 2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/core/OpenJUMPRasterLayer.java
 2016-10-09 05:57:28 UTC (rev 5060)
@@ -6,15 +6,24 @@
 import java.awt.image.DataBuffer;
 import java.awt.image.Raster;
 import java.awt.image.WritableRaster;
+import java.io.BufferedWriter;
 import java.io.FileOutputStream;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.text.DecimalFormat;
+import java.text.DecimalFormatSymbols;
+import java.util.Locale;
 
 import javax.media.jai.PlanarImage;
 import javax.media.jai.RasterFactory;
 
+import org.openjump.core.rasterimage.GeoTiffConstants;
 import org.openjump.core.rasterimage.RasterImageLayer;
+import org.openjump.core.rasterimage.TiffTags;
 import org.openjump.core.rasterimage.WorldFileHandler;
 
 import com.sun.media.jai.codec.TIFFEncodeParam;
+import com.sun.media.jai.codec.TIFFField;
 import com.sun.media.jai.codecimpl.TIFFCodec;
 import com.sun.media.jai.codecimpl.TIFFImageEncoder;
 import com.vividsolutions.jts.geom.Envelope;
@@ -24,313 +33,482 @@
 import es.unex.sextante.gui.core.SextanteGUI;
 import es.unex.sextante.outputs.FileOutputChannel;
 import es.unex.sextante.outputs.IOutputChannel;
-import java.io.IOException;
 
-public class OpenJUMPRasterLayer
-         extends
-            AbstractRasterLayer {
+public class OpenJUMPRasterLayer extends AbstractRasterLayer {
 
-   private static final double DEFAULT_NO_DATA_VALUE = -99999.;
+    private static final double DEFAULT_NO_DATA_VALUE = -99999.;
 
-   private String              m_sFilename;
-   private String              m_sName               = "";
-   private AnalysisExtent      m_LayerExtent;
-   private double              m_dNoDataValue;
-   private Raster              m_Raster;
-   RasterImageLayer            m_Layer;
+    private String m_sFilename;
+    private String m_sName = "";
+    private AnalysisExtent m_LayerExtent;
+    private double m_dNoDataValue;
+    private Raster m_Raster;
+    RasterImageLayer m_Layer;
 
+    public void create(final RasterImageLayer layer) throws IOException {
 
-   public void create(final RasterImageLayer layer) throws IOException {
+        // [Giuseppe Aruta 8 Oct. 2016] add few modification to correct bug 
#410
 
-      /* [sstein 26 Oct. 2010] - don't use code below because
-       * the raster data should be loaded new from file.
-       * It happened in tests that with the code below data from
-       * another raster, created last, was used instead.
-       * (e.g. calculated Point-KDE first, and then Line-KDE=> then getting 
the polygon grid from
-       * the point-KDE raster delivered the Line-KDE raster as poly grid)
-       *
-      m_BaseDataObject = layer;
-      //[sstein 2 Aug 2010], changed so we work now with the raster and not 
the image, which may be scaled for display.
-      //m_Raster = layer.getImage().getData();
-      m_Raster = layer.getRasterData();
-      //-- end
-      m_sName = layer.getName();
-      m_sFilename = layer.getImageFileName();
-      Envelope env = layer.getEnvelope();
-      m_LayerExtent = new GridExtent();
-      m_LayerExtent.setXRange(env.getMinX(), env.getMaxX());
-      m_LayerExtent.setYRange(env.getMinY(), env.getMaxY());
-      m_LayerExtent.setCellSize((env.getMaxX() - env.getMinX())
-                                       / (double)m_Raster.getWidth());
-      m_dNoDataValue = DEFAULT_NO_DATA_VALUE;
-      */
+        /*
+         * [sstein 26 Oct. 2010] - don't use code below because the raster data
+         * should be loaded new from file. It happened in tests that with the
+         * code below data from another raster, created last, was used instead.
+         * (e.g. calculated Point-KDE first, and then Line-KDE=> then getting
+         * the polygon grid from the point-KDE raster delivered the Line-KDE
+         * raster as poly grid)
+         * 
+         * m_BaseDataObject = layer; //[sstein 2 Aug 2010], changed so we work
+         * now with the raster and not the image, which may be scaled for
+         * display. //m_Raster = layer.getImage().getData(); m_Raster =
+         * layer.getRasterData(); //-- end m_sName = layer.getName();
+         * m_sFilename = layer.getImageFileName(); Envelope env =
+         * layer.getEnvelope(); m_LayerExtent = new GridExtent();
+         * m_LayerExtent.setXRange(env.getMinX(), env.getMaxX());
+         * m_LayerExtent.setYRange(env.getMinY(), env.getMaxY());
+         * m_LayerExtent.setCellSize((env.getMaxX() - env.getMinX()) /
+         * (double)m_Raster.getWidth()); m_dNoDataValue = 
DEFAULT_NO_DATA_VALUE;
+         */
 
-      //[sstein 26 Oct. 2010] using the new method instead
-      // so I do not need to change the code in all the cases
-      // where #.create(layer) is used
-         System.out.println("creation of raster layer"); 
-      create(layer, true);
+        // [sstein 26 Oct. 2010] using the new method instead
+        // so I do not need to change the code in all the cases
+        // where #.create(layer) is used
+        System.out.println("creation of raster layer");
+        create(layer, true);
 
-   }
+    }
 
+    public void create(final RasterImageLayer layer, final boolean 
loadFromFile)
+            throws IOException {
 
-   public void create(final RasterImageLayer layer,
-                      final boolean loadFromFile) throws IOException {
+        if (loadFromFile == false) {
+            m_Layer = layer;
+            // [sstein 2 Aug 2010], changed so we work now with the raster and
+            // not the image, which may be scaled for display.
+            // m_Raster = layer.getImage().getData();
+            m_Raster = layer.getRasterData(null);
+            // -- end
+            m_sName = layer.getName();
+            m_sFilename = layer.getImageFileName();
+            final Envelope env = layer.getWholeImageEnvelope();
+            m_LayerExtent = new AnalysisExtent();
+            // [sstein 18 Mar 2013], set cell size first, and then the extent,
+            // otherwise maxX and maxY will be reset
+            m_LayerExtent.setCellSize((env.getMaxX() - env.getMinX())
+                    / m_Raster.getWidth());
+            m_LayerExtent.setXRange(env.getMinX(), env.getMaxX(), true);
+            m_LayerExtent.setYRange(env.getMinY(), env.getMaxY(), true);
+            // [Giuseppe Aruta 8 Oct. 2016] using selected rasterlayer no data
+            // value instead
+            m_dNoDataValue = layer.getNoDataValue();
+            // m_dNoDataValue = DEFAULT_NO_DATA_VALUE;
+        } else {
+            final RasterImageLayer rasterLayer = new RasterImageLayer(
+                    layer.getName(), layer.getLayerManager(),
+                    layer.getImageFileName(), null,
+                    layer.getWholeImageEnvelope());
+            m_Layer = rasterLayer;
+            m_Raster = rasterLayer.getRasterData(null);
+            // -- end
+            m_sName = rasterLayer.getName();
+            m_sFilename = rasterLayer.getImageFileName();
+            final Envelope env = rasterLayer.getWholeImageEnvelope();
+            m_LayerExtent = new AnalysisExtent();
+            // [sstein 18 Mar 2013], set cell size first, and then the extent,
+            // otherwise maxX and maxY will be reset
+            m_LayerExtent.setCellSize((env.getMaxX() - env.getMinX())
+                    / m_Raster.getWidth());
+            m_LayerExtent.setXRange(env.getMinX(), env.getMaxX(), true);
+            m_LayerExtent.setYRange(env.getMinY(), env.getMaxY(), true);
+            // [Giuseppe Aruta 8 Oct. 2016] using selected rasterlayer no data
+            // value instead
+            m_dNoDataValue = layer.getNoDataValue();
+            // m_dNoDataValue = DEFAULT_NO_DATA_VALUE;
+        }
 
-      if (loadFromFile == false) {
-         m_Layer = layer;
-         //[sstein 2 Aug 2010], changed so we work now with the raster and not 
the image, which may be scaled for display.
-         //m_Raster = layer.getImage().getData();
-         m_Raster = layer.getRasterData(null);
-         //-- end
-         m_sName = layer.getName();
-         m_sFilename = layer.getImageFileName();
-         final Envelope env = layer.getWholeImageEnvelope();
-         m_LayerExtent = new AnalysisExtent();
-         //[sstein 18 Mar 2013], set cell size first, and then the extent, 
otherwise maxX and maxY will be reset
-         m_LayerExtent.setCellSize((env.getMaxX() - env.getMinX()) / 
m_Raster.getWidth());
-         m_LayerExtent.setXRange(env.getMinX(), env.getMaxX(), true);
-         m_LayerExtent.setYRange(env.getMinY(), env.getMaxY(), true);
-         m_dNoDataValue = DEFAULT_NO_DATA_VALUE;
-      }
-      else {
-         final RasterImageLayer rasterLayer = new 
RasterImageLayer(layer.getName(), layer.getLayerManager(),
-                  layer.getImageFileName(), null, 
layer.getWholeImageEnvelope());
-         m_Layer = rasterLayer;
-         m_Raster = rasterLayer.getRasterData(null);
-         //-- end
-         m_sName = rasterLayer.getName();
-         m_sFilename = rasterLayer.getImageFileName();
-         final Envelope env = rasterLayer.getWholeImageEnvelope();
-         m_LayerExtent = new AnalysisExtent();
-         //[sstein 18 Mar 2013], set cell size first, and then the extent, 
otherwise maxX and maxY will be reset
-         m_LayerExtent.setCellSize((env.getMaxX() - env.getMinX()) / 
m_Raster.getWidth());
-         m_LayerExtent.setXRange(env.getMinX(), env.getMaxX(), true);
-         m_LayerExtent.setYRange(env.getMinY(), env.getMaxY(), true);
-         m_dNoDataValue = DEFAULT_NO_DATA_VALUE;
-      }
+    }
 
-   }
+    public void create(final String name, final String filename,
+            final AnalysisExtent ge, final int dataType, final int numBands,
+            final Object crs) {
 
+        m_Raster = RasterFactory.createBandedRaster(dataType, ge.getNX(),
+                ge.getNY(), numBands, null);
 
-   public void create(final String name,
-                      final String filename,
-                      final AnalysisExtent ge,
-                      final int dataType,
-                      final int numBands,
-                      final Object crs) {
+        final OpenJUMPOutputFactory fact = (OpenJUMPOutputFactory) SextanteGUI
+                .getOutputFactory();
 
-      m_Raster = RasterFactory.createBandedRaster(dataType, ge.getNX(), 
ge.getNY(), numBands, null);
+        final Envelope envelope = new Envelope();
+        envelope.init(ge.getXMin(), ge.getXMax(), ge.getYMin(), ge.getYMax());
+        final ColorModel colorModel = PlanarImage.createColorModel(m_Raster
+                .getSampleModel());
+        final BufferedImage bufimg = new BufferedImage(colorModel,
+                (WritableRaster) m_Raster, false, null);
+        // final PlanarImage pimage = PlanarImage.wrapRenderedImage(bufimg);
+        m_Layer = new RasterImageLayer(name, fact.getContext()
+                .getLayerManager(), filename, bufimg, envelope);
+        m_sName = name;
+        m_sFilename = filename;
+        m_LayerExtent = ge;
+        // [Giuseppe Aruta 8 Oct. 2016] using Sextante GUI to get no data value
+        // instead
+        m_dNoDataValue = 
SextanteGUI.getOutputFactory().getDefaultNoDataValue();
+        // m_dNoDataValue = DEFAULT_NO_DATA_VALUE;
 
-      final OpenJUMPOutputFactory fact = (OpenJUMPOutputFactory) 
SextanteGUI.getOutputFactory();
+    }
 
-      final Envelope envelope = new Envelope();
-      envelope.init(ge.getXMin(), ge.getXMax(), ge.getYMin(), ge.getYMax());
-      final ColorModel colorModel = 
PlanarImage.createColorModel(m_Raster.getSampleModel());
-      final BufferedImage bufimg = new BufferedImage(colorModel, 
(WritableRaster) m_Raster, false, null);
-//      final PlanarImage pimage = PlanarImage.wrapRenderedImage(bufimg);
-      m_Layer = new RasterImageLayer(name, 
fact.getContext().getLayerManager(), filename, bufimg, envelope);
-      m_sName = name;
-      m_sFilename = filename;
-      m_LayerExtent = ge;
-      m_dNoDataValue = DEFAULT_NO_DATA_VALUE;
+    public int getBandsCount() {
 
-   }
+        if (m_Raster != null) {
+            return m_Raster.getNumBands();
+        } else {
+            return 0;
+        }
 
+    }
 
-   public int getBandsCount() {
+    public double getCellValueInLayerCoords(final int x, final int y,
+            final int band) {
 
-      if (m_Raster != null) {
-         return m_Raster.getNumBands();
-      }
-      else {
-         return 0;
-      }
+        try {
+            if (m_Raster != null) {
+                return m_Raster.getSampleDouble(x, y, band);
+            } else {
+                return getNoDataValue();
+            }
+        } catch (final Exception e) {
+            return getNoDataValue();
+        }
 
-   }
+    }
 
+    public int getDataType() {
 
-   public double getCellValueInLayerCoords(final int x,
-                                           final int y,
-                                           final int band) {
+        if (m_Raster != null) {
+            return m_Raster.getDataBuffer().getDataType();
+        } else {
+            return DataBuffer.TYPE_DOUBLE;
+        }
 
-      try {
-         if (m_Raster != null) {
-            return m_Raster.getSampleDouble(x, y, band);
-         }
-         else {
-            return getNoDataValue();
-         }
-      }
-      catch (final Exception e) {
-         return getNoDataValue();
-      }
+    }
 
-   }
+    public double getLayerCellSize() {
 
+        if (m_LayerExtent != null) {
+            return m_LayerExtent.getCellSize();
+        } else {
+            return 0;
+        }
 
-   public int getDataType() {
+    }
 
-      if (m_Raster != null) {
-         return m_Raster.getDataBuffer().getDataType();
-      }
-      else {
-         return DataBuffer.TYPE_DOUBLE;
-      }
+    public AnalysisExtent getLayerGridExtent() {
 
-   }
+        return m_LayerExtent;
 
+    }
 
-   public double getLayerCellSize() {
+    public double getNoDataValue() {
 
-      if (m_LayerExtent != null) {
-         return m_LayerExtent.getCellSize();
-      }
-      else {
-         return 0;
-      }
+        return m_dNoDataValue;
 
-   }
+    }
 
+    public void setCellValue(final int x, final int y, final int band,
+            final double value) {
 
-   public AnalysisExtent getLayerGridExtent() {
+        if (m_Raster instanceof WritableRaster) {
+            if (this.getWindowGridExtent().containsCell(x, y)) {
+                ((WritableRaster) m_Raster).setSample(x, y, band, value);
+            }
+        }
 
-      return m_LayerExtent;
+    }
 
-   }
+    public void setNoDataValue(final double noDataValue) {
 
+        m_dNoDataValue = noDataValue;
 
-   public double getNoDataValue() {
+    }
 
-      return m_dNoDataValue;
+    public Object getCRS() {
 
-   }
+        return null;
 
+    }
 
-   public void setCellValue(final int x,
-                            final int y,
-                            final int band,
-                            final double value) {
+    /**
+     * Returns the extent covered by the layer
+     * 
+     * @return the extent of the layer
+     */
+    public Rectangle2D getFullExtent() {
 
-      if (m_Raster instanceof WritableRaster) {
-         if (this.getWindowGridExtent().containsCell(x, y)) {
-            ((WritableRaster) m_Raster).setSample(x, y, band, value);
-         }
-      }
+        if (m_Layer != null) {
+            final Envelope envelope = m_Layer.getWholeImageEnvelope();
+            return new Rectangle2D.Double(envelope.getMinX(),
+                    envelope.getMinY(), envelope.getWidth(),
+                    envelope.getHeight());
+        } else {
+            return null;
+        }
 
-   }
+    }
 
+    public void open() {
+    }
 
-   public void setNoDataValue(final double noDataValue) {
+    public void close() {
+    }
 
-      m_dNoDataValue = noDataValue;
+    public void postProcess() throws Exception {
 
-   }
+        if (m_Layer != null) {
 
+            final FileOutputStream tifOut = new FileOutputStream(m_sFilename);
+            final TIFFEncodeParam param = new TIFFEncodeParam();
+            param.setCompression(TIFFEncodeParam.COMPRESSION_NONE);
+            TIFFField[] tiffFields = new TIFFField[2];
 
-   public Object getCRS() {
+            // [Giuseppe Aruta 8 Oct. 2016] the following parameters come from
+            // RasterImageIO class
+            // and add cell size/no data value and Tie point to the new created
+            // file
+            // Cell size
+            tiffFields[0] = new TIFFField(GeoTiffConstants.ModelPixelScaleTag,
+                    TIFFField.TIFF_DOUBLE, 2, getLayerCellSize());
+            // No data
+            String noDataS = Double.toString(getNoDataValue());
+            byte[] bytes = noDataS.getBytes();
+            tiffFields[0] = new TIFFField(TiffTags.TIFFTAG_GDAL_NODATA,
+                    TIFFField.TIFF_BYTE, noDataS.length(), bytes);
+            // Tie point
+            final Envelope envelope = m_Layer.getWholeImageEnvelope();
+            tiffFields[1] = new TIFFField(GeoTiffConstants.ModelTiepointTag,
+                    TIFFField.TIFF_DOUBLE, 6, new double[] { 0, 0, 0,
+                            envelope.getMinX(), envelope.getMaxY(), 0 });
+            param.setExtraFields(tiffFields);
 
-      return null;
+            final TIFFImageEncoder encoder = (TIFFImageEncoder) TIFFCodec
+                    .createImageEncoder("tiff", tifOut, param);
+            // -- [sstein 2 Aug 2010]
+            // BufferedImage image = layer.getImage().getAsBufferedImage();
+            final ColorModel colorModel = PlanarImage.createColorModel(m_Raster
+                    .getSampleModel());
+            final BufferedImage image = new BufferedImage(colorModel,
+                    (WritableRaster) m_Raster, false, null);
+            // -- end
+            encoder.encode(image);
+            tifOut.close();
 
-   }
+            /* save geodata: */
+            // final Envelope envelope = m_Layer.getWholeImageEnvelope();
 
+            final WorldFileHandler worldFileHandler = new WorldFileHandler(
+                    m_sFilename, false);
+            worldFileHandler.writeWorldFile(envelope, image.getWidth(),
+                    image.getHeight());
 
-   /**
-    * Returns the extent covered by the layer
-    * 
-    * @return the extent of the layer
-    */
-   public Rectangle2D getFullExtent() {
+            // Switch RAM mode of the RasterImage
+            m_Layer.setImageFileName(m_sFilename);
+            m_Layer.setNeedToKeepImage(false);
 
-      if (m_Layer != null) {
-         final Envelope envelope = m_Layer.getWholeImageEnvelope();
-         return new Rectangle2D.Double(envelope.getMinX(), envelope.getMinY(), 
envelope.getWidth(), envelope.getHeight());
-      }
-      else {
-         return null;
-      }
+        }
 
-   }
+    }
 
+    public boolean export(final String sFilename) {
 
-   public void open() {}
+        if (sFilename.endsWith("asc")) {
+            return exportToArcInfoASCIIFile(sFilename);
+        } else if (sFilename.endsWith("tif")) {
+            return exportToGeoTIFFFile(sFilename);
+        } else {
+            return exportToGeoTIFFFile(sFilename);
+        }
 
+    }
 
-   public void close() {}
+    /*
+     * public void postProces() throws Exception {
+     * 
+     * if (m_Layer != null) {
+     * 
+     * final FileOutputStream tifOut = new FileOutputStream(m_sFilename); final
+     * TIFFEncodeParam param = new TIFFEncodeParam();
+     * param.setCompression(TIFFEncodeParam.COMPRESSION_NONE); TIFFField[]
+     * tiffFields = new TIFFField[2];
+     * 
+     * // Cell size
+     * 
+     * 
+     * 
+     * // No data String noDataS = Double.toString(getNoDataValue()); byte[]
+     * bytes = noDataS.getBytes(); tiffFields[0] = new
+     * TIFFField(TiffTags.TIFFTAG_GDAL_NODATA, TIFFField.TIFF_BYTE,
+     * noDataS.length(), bytes);
+     * 
+     * // Tie point final Envelope envelope = m_Layer.getWholeImageEnvelope();
+     * tiffFields[1] = new TIFFField(GeoTiffConstants.ModelTiepointTag,
+     * TIFFField.TIFF_DOUBLE, 6, new double[] { 0, 0, 0, envelope.getMinX(),
+     * envelope.getMaxY(), 0 }); param.setExtraFields(tiffFields); final
+     * TIFFImageEncoder encoder = (TIFFImageEncoder) TIFFCodec
+     * .createImageEncoder("tiff", tifOut, param); // -- [sstein 2 Aug 2010] //
+     * BufferedImage image = layer.getImage().getAsBufferedImage(); final
+     * ColorModel colorModel = PlanarImage.createColorModel(m_Raster
+     * .getSampleModel()); final BufferedImage image = new
+     * BufferedImage(colorModel, (WritableRaster) m_Raster, false, null); // --
+     * end encoder.encode(image); tifOut.close();
+     * 
+     * 
+     * 
+     * final WorldFileHandler worldFileHandler = new WorldFileHandler(
+     * m_sFilename, false); worldFileHandler.writeWorldFile(envelope,
+     * image.getWidth(), image.getHeight());
+     * 
+     * // Switch RAM mode of the RasterImage
+     * m_Layer.setImageFileName(m_sFilename); 
m_Layer.setNeedToKeepImage(false);
+     * 
+     * }
+     * 
+     * }
+     */
 
+    private boolean exportToGeoTIFFFile(final String sFilename) {
+        try {
+            final FileOutputStream tifOut = new FileOutputStream(m_sFilename);
+            final TIFFEncodeParam param = new TIFFEncodeParam();
+            param.setCompression(TIFFEncodeParam.COMPRESSION_NONE);
+            TIFFField[] tiffFields = new TIFFField[2];
 
-   public void postProcess() throws Exception {
+            // Cell size
 
-      if (m_Layer != null) {
+            /*
+             * tiffFields[0] = new
+             * TIFFField(GeoTiffConstants.ModelPixelScaleTag,
+             * TIFFField.TIFF_DOUBLE, 2, new double[] { cellSize.cellSizeX,
+             * cellSize.cellSizeY });
+             */
 
-         final FileOutputStream tifOut = new FileOutputStream(m_sFilename);
-         final TIFFEncodeParam param = new TIFFEncodeParam();
-         param.setCompression(TIFFEncodeParam.COMPRESSION_NONE);
-         final TIFFImageEncoder encoder = (TIFFImageEncoder) 
TIFFCodec.createImageEncoder("tiff", tifOut, param);
-         //-- [sstein 2 Aug 2010]
-         //BufferedImage image = layer.getImage().getAsBufferedImage();
-         final ColorModel colorModel = 
PlanarImage.createColorModel(m_Raster.getSampleModel());
-         final BufferedImage image = new BufferedImage(colorModel, 
(WritableRaster) m_Raster, false, null);
-         //-- end
-         encoder.encode(image);
-         tifOut.close();
+            // No data
+            String noDataS = Double.toString(getNoDataValue());
+            byte[] bytes = noDataS.getBytes();
+            tiffFields[0] = new TIFFField(TiffTags.TIFFTAG_GDAL_NODATA,
+                    TIFFField.TIFF_BYTE, noDataS.length(), bytes);
 
-         /* save geodata: */
-         final Envelope envelope = m_Layer.getWholeImageEnvelope();
+            // Tie point
+            final Envelope envelope = m_Layer.getWholeImageEnvelope();
+            tiffFields[1] = new TIFFField(GeoTiffConstants.ModelTiepointTag,
+                    TIFFField.TIFF_DOUBLE, 6, new double[] { 0, 0, 0,
+                            envelope.getMinX(), envelope.getMaxY(), 0 });
+            param.setExtraFields(tiffFields);
+            final TIFFImageEncoder encoder = (TIFFImageEncoder) TIFFCodec
+                    .createImageEncoder("tiff", tifOut, param);
+            // -- [sstein 2 Aug 2010]
+            // BufferedImage image = layer.getImage().getAsBufferedImage();
+            final ColorModel colorModel = PlanarImage.createColorModel(m_Raster
+                    .getSampleModel());
+            final BufferedImage image = new BufferedImage(colorModel,
+                    (WritableRaster) m_Raster, false, null);
+            // -- end
+            encoder.encode(image);
+            tifOut.close();
 
-         final WorldFileHandler worldFileHandler = new 
WorldFileHandler(m_sFilename, false);
-         worldFileHandler.writeWorldFile(envelope, image.getWidth(), 
image.getHeight());
+            /* save geodata: */
+            // final Envelope envelope = m_Layer.getWholeImageEnvelope();
 
-         // Switch RAM mode of the RasterImage
-         m_Layer.setImageFileName(m_sFilename);
-         m_Layer.setNeedToKeepImage(false);
+            final WorldFileHandler worldFileHandler = new WorldFileHandler(
+                    m_sFilename, false);
+            worldFileHandler.writeWorldFile(envelope, image.getWidth(),
+                    image.getHeight());
 
-      }
+            // Switch RAM mode of the RasterImage
+            m_Layer.setImageFileName(m_sFilename);
+            m_Layer.setNeedToKeepImage(false);
 
-   }
+        } catch (final Exception e) {
+            return false;
+        }
 
+        return true;
+    }
 
-   public String getName() {
+    private boolean exportToArcInfoASCIIFile(final String sFilename) {
 
-      return m_sName;
+        try {
+            final FileWriter f = new FileWriter(sFilename);
+            final BufferedWriter fout = new BufferedWriter(f);
+            final DecimalFormat df = new DecimalFormat("##.###");
+            df.setDecimalFormatSymbols(new DecimalFormatSymbols(Locale.US));
+            df.setDecimalSeparatorAlwaysShown(true);
 
-   }
+            fout.write("ncols " + Integer.toString(m_LayerExtent.getNX()));
+            fout.newLine();
+            fout.write("nrows " + Integer.toString(m_LayerExtent.getNY()));
+            fout.newLine();
+            fout.write("xllcorner " + 
Double.toString(m_LayerExtent.getXMin()));
+            fout.newLine();
+            fout.write("yllcorner " + 
Double.toString(m_LayerExtent.getYMin()));
+            fout.newLine();
+            // ArcInfo ASCII does not support individual x/y cell sizes. But 
who
+            // cares?
+            fout.write("cellsize "
+                    + Double.toString(m_LayerExtent.getCellSize()));
+            fout.newLine();
+            fout.write("nodata_value " + Double.toString(getNoDataValue()));
+            fout.newLine();
 
+            for (int i = 0; i < m_LayerExtent.getNY(); i++) {
+                for (int j = 0; j < m_LayerExtent.getNX(); j++) {
+                    fout.write(df.format(getCellValueAsDouble(j, i)) + " ");
+                }
+                fout.newLine();
+            }
+            fout.close();
+            f.close();
+        } catch (final Exception e) {
+            return false;
+        }
 
-   public void setName(final String sName) {
+        return true;
 
-      m_sName = sName;
+    }
 
-      if (m_Layer != null) {
-         m_Layer.setName(sName);
-      }
+    public String getName() {
 
-   }
+        return m_sName;
 
+    }
 
-   public void free() {
-   // TODO Auto-generated method stub
+    public void setName(final String sName) {
 
-   }
+        m_sName = sName;
 
+        if (m_Layer != null) {
+            m_Layer.setName(sName);
+        }
 
-   public Object getBaseDataObject() {
+    }
 
-      return m_Layer;
+    public void free() {
+        // TODO Auto-generated method stub
 
-   }
+    }
 
+    public Object getBaseDataObject() {
 
-   public IOutputChannel getOutputChannel() {
+        return m_Layer;
 
-      return new FileOutputChannel(m_sFilename);
+    }
 
-   }
+    public IOutputChannel getOutputChannel() {
 
-   //[sstein 26. Oct. 2012] added method back-in
-   public String getFilename() {
-       return m_sFilename;
-   }
+        return new FileOutputChannel(m_sFilename);
 
+    }
 
+    // [sstein 26. Oct. 2012] added method back-in
+    public String getFilename() {
+        return m_sFilename;
+    }
+
 }

Added: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/extensions/SextanteDataExplorerPlugin.java
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/extensions/SextanteDataExplorerPlugin.java
                            (rev 0)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/extensions/SextanteDataExplorerPlugin.java
    2016-10-09 05:57:28 UTC (rev 5060)
@@ -0,0 +1,49 @@
+package es.unex.sextante.openjump.extensions;
+
+import javax.swing.ImageIcon;
+
+import com.vividsolutions.jump.workbench.plugin.PlugIn;
+import com.vividsolutions.jump.workbench.plugin.PlugInContext;
+import com.vividsolutions.jump.workbench.ui.WorkbenchToolBar;
+
+import es.unex.sextante.gui.core.SextanteGUI;
+import es.unex.sextante.openjump.language.I18NPlug;
+
+public class SextanteDataExplorerPlugin implements PlugIn {
+
+    public boolean execute(final PlugInContext context) throws Exception {
+
+        SextanteGUI.getGUIFactory().showDataExplorer();
+        ;
+
+        return true;
+
+    }
+
+    public ImageIcon getIcon() {
+
+        return new ImageIcon(SextanteGUI.class.getClassLoader().getResource(
+                "images/layers.gif"));
+
+    }
+
+    public String getName() {// Giuseppe Aruta - PlugIn Internationalized
+                             // 2013_05_25//
+
+        return I18NPlug
+                
.getI18N("es.unex.sextante.kosmo.extensions.SextanteDataExplorerPlugin.dataexplorer");
+
+    }
+
+    public void initialize(final PlugInContext context) throws Exception {
+
+        context.getFeatureInstaller().addMainMenuPlugin(this,
+                new String[] { "Sextante" }, getName(), false, getIcon(), 
null);
+        WorkbenchToolBar localWorkbenchToolBar = context.getWorkbenchFrame()
+                .getToolBar();
+
+        localWorkbenchToolBar.addPlugIn(getIcon(), this, null,
+                context.getWorkbenchContext());
+    }
+
+}


Property changes on: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/extensions/SextanteDataExplorerPlugin.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/extensions/SextanteExtension.java
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/extensions/SextanteExtension.java
     2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/extensions/SextanteExtension.java
     2016-10-09 05:57:28 UTC (rev 5060)
@@ -4,6 +4,10 @@
 
 import sun.security.x509.Extension;
 
+import com.vividsolutions.jump.workbench.WorkbenchContext;
+import com.vividsolutions.jump.workbench.plugin.PlugInContext;
+import com.vividsolutions.jump.workbench.ui.plugin.FeatureInstaller;
+
 public class SextanteExtension extends Extension {
 
     /*
@@ -28,12 +32,17 @@
     }
 
     public void configure(PlugInContext context) throws Exception {
+        WorkbenchContext workbenchContext = context.getWorkbenchContext();
+        FeatureInstaller featureInstaller = new FeatureInstaller(
+                workbenchContext);
 
         new SextanteToolboxPlugin().initialize(context);
         new SextanteResultsPlugin().initialize(context);
         new SextanteHistoryPlugin().initialize(context);
         new SextanteModelerPlugin().initialize(context);
         new SextanteCommandLinePlugin().initialize(context);
+        new SextanteDataExplorerPlugin().initialize(context);
+        featureInstaller.addMenuSeparator(new String[] { "Sextante" });
         new HelpPlugIn().initialize(context);
 
     }

Modified: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante.properties
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante.properties
  2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante.properties
  2016-10-09 05:57:28 UTC (rev 5060)
@@ -9,3 +9,4 @@
 
es.unex.sextante.kosmo.extensions.SextanteToolboxPlugin.Sextante-toolbox=Sextante
 toolbox
 
es.unex.sextante.kosmo.gui.KosmoGUIFactory.Batch-processing-not-yet-implemented=Batch
 processing not yet implemented
 es.unex.sextante.kosmo.gui.KosmoGUIFactory.Warning=Warning
+es.unex.sextante.kosmo.extensions.SextanteDataExplorerPlugin.dataexplorer=Data 
Explorer

Modified: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_ca.properties
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_ca.properties
       2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_ca.properties
       2016-10-09 05:57:28 UTC (rev 5060)
@@ -9,3 +9,4 @@
 es.unex.sextante.kosmo.extensions.SextanteToolboxPlugin.Sextante-toolbox=Barra 
d'eines de Sextante
 
es.unex.sextante.kosmo.gui.KosmoGUIFactory.Batch-processing-not-yet-implemented=El
 processament per lots (Batch processing) encara no est\u00E0 implementat
 es.unex.sextante.kosmo.gui.KosmoGUIFactory.Warning=Atenci\u00F3
+es.unex.sextante.kosmo.extensions.SextanteDataExplorerPlugin.dataexplorer=Explorar
 les dades

Modified: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_de.properties
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_de.properties
       2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_de.properties
       2016-10-09 05:57:28 UTC (rev 5060)
@@ -9,3 +9,4 @@
 
es.unex.sextante.kosmo.extensions.SextanteToolboxPlugin.Sextante-toolbox=Sextante
 Werkzeugkasten
 
es.unex.sextante.kosmo.gui.KosmoGUIFactory.Batch-processing-not-yet-implemented=Batch
 Verarbeitung noch nicht implementiert
 es.unex.sextante.kosmo.gui.KosmoGUIFactory.Warning=Warnung
+es.unex.sextante.kosmo.extensions.SextanteDataExplorerPlugin.dataexplorer=Entdecken
 Daten

Modified: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_en.properties
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_en.properties
       2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_en.properties
       2016-10-09 05:57:28 UTC (rev 5060)
@@ -9,3 +9,4 @@
 
es.unex.sextante.kosmo.extensions.SextanteToolboxPlugin.Sextante-toolbox=Sextante
 toolbox
 
es.unex.sextante.kosmo.gui.KosmoGUIFactory.Batch-processing-not-yet-implemented=Batch
 processing not yet implemented
 es.unex.sextante.kosmo.gui.KosmoGUIFactory.Warning=Warning
+es.unex.sextante.kosmo.extensions.SextanteDataExplorerPlugin.dataexplorer=Data 
Explorer

Modified: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_es.properties
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_es.properties
       2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_es.properties
       2016-10-09 05:57:28 UTC (rev 5060)
@@ -9,3 +9,4 @@
 es.unex.sextante.kosmo.extensions.SextanteToolboxPlugin.Sextante-toolbox=Barra 
de herramientas de Sextante
 
es.unex.sextante.kosmo.gui.KosmoGUIFactory.Batch-processing-not-yet-implemented=El
 procesamiento por lotes no est\u00E1 a\u00FAn implementado
 es.unex.sextante.kosmo.gui.KosmoGUIFactory.Warning=Atenci\u00F3n
+es.unex.sextante.kosmo.extensions.SextanteDataExplorerPlugin.dataexplorer=Explorar
 los datos
\ No newline at end of file

Modified: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_fi.properties
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_fi.properties
       2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_fi.properties
       2016-10-09 05:57:28 UTC (rev 5060)
@@ -9,3 +9,4 @@
 
es.unex.sextante.kosmo.extensions.SextanteToolboxPlugin.Sextante-toolbox=Sextante-ty\u00F6kalut
 
es.unex.sextante.kosmo.gui.KosmoGUIFactory.Batch-processing-not-yet-implemented=Er\u00E4ajoprosessointia
 ei ole viel\u00E4 toteutettu
 es.unex.sextante.kosmo.gui.KosmoGUIFactory.Warning=Varoitus
+es.unex.sextante.kosmo.extensions.SextanteDataExplorerPlugin.dataexplorer=Tutustu
 tiedot

Modified: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_fr.properties
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_fr.properties
       2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_fr.properties
       2016-10-09 05:57:28 UTC (rev 5060)
@@ -7,4 +7,5 @@
 
es.unex.sextante.kosmo.extensions.SextanteToolboxPlugin.Help-files-placed-on-{0}=Les
 fichiers d'aide sont dans {0}
 
es.unex.sextante.kosmo.extensions.SextanteToolboxPlugin.Sextante-toolbox=Bo\xEEte
 \xE0 outils SEXTANTE
 
es.unex.sextante.kosmo.gui.KosmoGUIFactory.Batch-processing-not-yet-implemented=Le
 traitement par lots n'est pas disponible
-es.unex.sextante.kosmo.gui.KosmoGUIFactory.Warning=Attention
\ No newline at end of file
+es.unex.sextante.kosmo.gui.KosmoGUIFactory.Warning=Attention
+es.unex.sextante.kosmo.extensions.SextanteDataExplorerPlugin.dataexplorer=Explorer
 les donn\xE9es
\ No newline at end of file

Modified: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_hr.properties
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_hr.properties
       2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_hr.properties
       2016-10-09 05:57:28 UTC (rev 5060)
@@ -9,3 +9,4 @@
 
es.unex.sextante.kosmo.extensions.SextanteToolboxPlugin.Sextante-toolbox=Sextante
 alatna traka
 
es.unex.sextante.kosmo.gui.KosmoGUIFactory.Batch-processing-not-yet-implemented=Masovno
 procesiranje jo\u0161 nije implementirano
 es.unex.sextante.kosmo.gui.KosmoGUIFactory.Warning=Upozorenje
+es.unex.sextante.kosmo.extensions.SextanteDataExplorerPlugin.dataexplorer=Fedezze
 fel az adatok

Modified: 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_it.properties
===================================================================
--- 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_it.properties
       2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/es/unex/sextante/openjump/language/Sextante_it.properties
       2016-10-09 05:57:28 UTC (rev 5060)
@@ -9,3 +9,4 @@
 es.unex.sextante.kosmo.extensions.SextanteToolboxPlugin.Sextante-toolbox=Barra 
strumenti di Sextante
 
es.unex.sextante.kosmo.gui.KosmoGUIFactory.Batch-processing-not-yet-implemented=Il
 processo batch non \u00E8 stato ancora implementato
 es.unex.sextante.kosmo.gui.KosmoGUIFactory.Warning=Attenzione
+es.unex.sextante.kosmo.extensions.SextanteDataExplorerPlugin.dataexplorer=Esplora
 dati

Modified: 
plug-ins/SextantePlugIn/src/org/openjump/sigle/plugin/tutorial/HelpDialog.java
===================================================================
--- 
plug-ins/SextantePlugIn/src/org/openjump/sigle/plugin/tutorial/HelpDialog.java  
    2016-10-08 23:23:12 UTC (rev 5059)
+++ 
plug-ins/SextantePlugIn/src/org/openjump/sigle/plugin/tutorial/HelpDialog.java  
    2016-10-09 05:57:28 UTC (rev 5060)
@@ -19,6 +19,8 @@
 import javax.swing.event.TreeSelectionListener;
 import javax.swing.tree.DefaultMutableTreeNode;
 
+import com.vividsolutions.jump.workbench.ui.images.IconLoader;
+
 public class HelpDialog extends JPanel implements TreeSelectionListener {
     /**
      * Class adapted from HelpOJPlugIn.class from SIGLE OpenJump Viatoris


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to