Revision 16554 trunk/extensions/extRasterTools-SE/src/org/gvsig/rastertools/filter/FilterListener.java

View differences:

FilterListener.java
57 57
import org.gvsig.raster.grid.filter.RasterFilterListManager;
58 58
import org.gvsig.raster.grid.filter.RegistrableFilterListener;
59 59
import org.gvsig.raster.hierarchy.IRasterRendering;
60
import org.gvsig.raster.util.ExtendedFileFilter;
60 61
import org.gvsig.raster.util.RasterNotLoadException;
61 62
import org.gvsig.raster.util.RasterToolsUtil;
62 63
import org.gvsig.rastertools.RasterModule;
......
293 294
			//A?adimos las extensiones que hayan sido registradas en el driver
294 295
			String[] extList = GeoRasterWriter.getDriversExtensions();
295 296
			for(int i=0;i<extList.length;i++)
296
				chooser.addChoosableFileFilter(new WriterFilter(extList[i]));
297
				chooser.addChoosableFileFilter(new ExtendedFileFilter(extList[i]));
297 298

  
298 299
			if (chooser.showOpenDialog(getFilterPanel()) != JFileChooser.APPROVE_OPTION)
299 300
				return null;
300 301

  
301
			String fName = chooser.getSelectedFile().toString();
302
			String ext = ((WriterFilter)chooser.getFileFilter()).getDescription();
303

  
304
			ext = ext.toLowerCase().substring(ext.lastIndexOf(".") + 1, ext.length());
305

  
306
			if ((fName != null) && !fName.equals(""))
307
				if (!fName.endsWith("." + ext))
308
					fName = fName + "." + ext;
309

  
310 302
			FileOpenWizard.setLastPath(chooser.getSelectedFile().getPath().substring(0, chooser.getSelectedFile().getPath().lastIndexOf(File.separator)));
311
			path = fName;
303

  
304
			ExtendedFileFilter fileFilter = (ExtendedFileFilter) chooser.getFileFilter();
305
			path = fileFilter.getNormalizedFilename(chooser.getSelectedFile());
312 306
		} else {
313 307
			path = Utilities.createTempDirectory() + File.separator + getFilterPanel().getFilenameTextField().getText() + ".tif";
314 308
			filterPanel.setNewLayerText();
......
535 529
	public void actionValuesCompleted(EventObject e) {
536 530
		actionChangeProperties(e);
537 531
	}
538
}
539

  
540
/**
541
 * @author Nacho Brodin <brodin_ign@gva.es>
542
 * Filtro para el selector de formatos de escritura
543
 */
544
class WriterFilter extends javax.swing.filechooser.FileFilter {
545
	private String				filter;
546

  
547
	public WriterFilter(String fil) {
548
		this.filter = fil;
549
	}
550

  
551
	public boolean accept(File f) {
552
		return f.isDirectory() || f.getName().toLowerCase().endsWith("." + filter);
553
	}
554

  
555
	public String getDescription() {
556
		return "." + filter;
557
	}
558 532
}

Also available in: Unified diff