hey Peppe, your new sextante binding seems to be compiled for java 1.8 . it wont run with java 1.7 anymore. please check and retry.. ede
On 09.10.2016 07:57, [email protected] wrote: > 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 > ------------------------------------------------------------------------------ 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
