Revision 24793
branches/v2_0_0_prep/applications/appgvSIG/src/com/iver/cit/gvsig/addlayer/fileopen/FileOpenWizard.java | ||
---|---|---|
24 | 24 |
import java.io.File; |
25 | 25 |
import java.util.ArrayList; |
26 | 26 |
import java.util.Iterator; |
27 |
import java.util.List; |
|
27 | 28 |
import java.util.prefs.Preferences; |
28 | 29 |
|
29 | 30 |
import javax.swing.BorderFactory; |
... | ... | |
90 | 91 |
* parametro |
91 | 92 |
* |
92 | 93 |
* @param nameExtension |
93 |
* |
|
94 |
*
|
|
94 | 95 |
*/ |
95 | 96 |
public FileOpenWizard(String nameExtension) { |
96 | 97 |
this(nameExtension, true); |
... | ... | |
303 | 304 |
for (int i = 0; i < listFileOpen.size(); i++) { |
304 | 305 |
IFileOpen fileOpen = listFileOpen.get(i); |
305 | 306 |
fileOpen.pre(); |
306 |
ArrayList<FileFilter> aux = fileOpen.getFileFilter();
|
|
307 |
List<FileFilter> aux = fileOpen.getFileFilter(); |
|
307 | 308 |
|
308 | 309 |
for (int j = 0; j < aux.size(); j++) { |
309 | 310 |
FileFilter fileFilter = aux.get(j); |
... | ... | |
330 | 331 |
IFileOpen lastFileOpen = null; |
331 | 332 |
for (int i = 0; i < listFileOpen.size(); i++) { |
332 | 333 |
IFileOpen fileOpen = listFileOpen.get(i); |
333 |
ArrayList<FileFilter> aux = fileOpen.getFileFilter();
|
|
334 |
List<FileFilter> aux = fileOpen.getFileFilter(); |
|
334 | 335 |
for (int j = 0; j < aux.size(); j++) { |
335 | 336 |
if (fileChooser.getFileFilter() == aux.get(j)) { |
336 | 337 |
for (int iFile=0; iFile<newFiles.length; iFile++) { |
branches/v2_0_0_prep/applications/appgvSIG/src/com/iver/cit/gvsig/addlayer/fileopen/AbstractFileOpen.java | ||
---|---|---|
20 | 20 |
|
21 | 21 |
import java.io.File; |
22 | 22 |
import java.util.ArrayList; |
23 |
import java.util.List; |
|
23 | 24 |
|
24 | 25 |
import javax.swing.filechooser.FileFilter; |
25 | 26 |
/** |
... | ... | |
51 | 52 |
* (non-Javadoc) |
52 | 53 |
* @see org.gvsig.raster.gui.wizards.IFileOpen#getFileFilter() |
53 | 54 |
*/ |
54 |
public final ArrayList getFileFilter() {
|
|
55 |
public final List getFileFilter() { |
|
55 | 56 |
if (arrayFileFilter == null) { |
56 | 57 |
arrayFileFilter = new ArrayList<FileFilter>(); |
57 | 58 |
} |
branches/v2_0_0_prep/applications/appgvSIG/src/com/iver/cit/gvsig/addlayer/fileopen/vectorial/VectorialFileOpen.java | ||
---|---|---|
19 | 19 |
package com.iver.cit.gvsig.addlayer.fileopen.vectorial; |
20 | 20 |
|
21 | 21 |
import java.io.File; |
22 |
import java.util.Comparator;
|
|
22 |
import java.util.ArrayList;
|
|
23 | 23 |
import java.util.Iterator; |
24 |
import java.util.TreeSet;
|
|
24 |
import java.util.List;
|
|
25 | 25 |
|
26 | 26 |
import javax.swing.filechooser.FileFilter; |
27 | 27 |
|
... | ... | |
29 | 29 |
import org.gvsig.fmap.dal.DALLocator; |
30 | 30 |
import org.gvsig.fmap.dal.DataManager; |
31 | 31 |
import org.gvsig.fmap.dal.DataStoreParameters; |
32 |
import org.gvsig.fmap.dal.exception.DataException; |
|
32 | 33 |
import org.gvsig.fmap.dal.exception.InitializeException; |
33 |
import org.gvsig.fmap.dal.exception.ReadException; |
|
34 |
import org.gvsig.fmap.dal.exception.ProviderNotRegisteredException; |
|
35 |
import org.gvsig.fmap.dal.explorer.filesystem.FilesystemExplorer; |
|
36 |
import org.gvsig.fmap.dal.explorer.filesystem.FilesystemExplorerParameters; |
|
37 |
import org.gvsig.fmap.dal.explorer.filesystem.FilesystemFileFilter; |
|
38 |
import org.gvsig.fmap.dal.explorer.filesystem.FilesystemStoreParameters; |
|
34 | 39 |
import org.gvsig.fmap.geom.primitive.Envelope; |
35 | 40 |
import org.gvsig.fmap.mapcontext.exceptions.LoadLayerException; |
36 | 41 |
import org.gvsig.fmap.mapcontext.layers.FLayer; |
... | ... | |
39 | 44 |
|
40 | 45 |
import com.iver.andami.messages.NotificationManager; |
41 | 46 |
import com.iver.cit.gvsig.AddLayer; |
42 |
import com.iver.cit.gvsig.addlayer.fileopen.AbstractFileOpen;
|
|
47 |
import com.iver.cit.gvsig.addlayer.fileopen.IFileOpen;
|
|
43 | 48 |
/** |
44 | 49 |
* Clase que indicar? que ficheros puede tratar al panel de apertura de ficheros |
45 | 50 |
* |
46 | 51 |
* @version 04/09/2007 |
47 | 52 |
* @author BorSanZa - Borja S?nchez Zamorano (borja.sanchez@iver.es) |
48 | 53 |
*/ |
49 |
public class VectorialFileOpen extends AbstractFileOpen{
|
|
54 |
public class VectorialFileOpen implements IFileOpen {
|
|
50 | 55 |
|
56 |
private FilesystemExplorer explorer; |
|
57 |
private List filters; |
|
58 |
|
|
51 | 59 |
/** |
52 | 60 |
* Constructor de FileOpenRaster |
61 |
* |
|
62 |
* @throws ProviderNotRegisteredException |
|
63 |
* @throws InitializeException |
|
53 | 64 |
*/ |
54 |
public VectorialFileOpen() { |
|
55 |
TreeSet filters = new TreeSet(new Comparator() { |
|
56 |
public int compare(Object o1, Object o2) { |
|
57 |
VectorialFileFilter dff1 = (VectorialFileFilter) o1; |
|
58 |
VectorialFileFilter dff2 = (VectorialFileFilter) o2; |
|
59 |
|
|
60 |
return dff1.params.toString().compareTo(dff2.params.toString()); |
|
61 |
} |
|
62 |
}); |
|
63 |
|
|
64 |
VectorialFileFilter auxF=null; |
|
65 |
public VectorialFileOpen() throws InitializeException, |
|
66 |
ProviderNotRegisteredException { |
|
65 | 67 |
DataManager dm = DALLocator.getDataManager(); |
66 |
String[] names = dm.getStoreProviders(); |
|
67 |
DataStoreParameters params; |
|
68 |
for (int i = 0; i < names.length; i++) { |
|
69 |
try { |
|
70 |
params = dm.createDataStoreParameters(names[i]); |
|
71 |
} catch (InitializeException e) { |
|
72 |
NotificationManager.addError( |
|
73 |
"Problema al acceder al driver '" |
|
74 |
+ names[i], e); |
|
75 |
continue; |
|
76 |
|
|
77 |
} |
|
78 |
if (params instanceof FileStoreParameters) { |
|
79 |
auxF = new VectorialFileFilter((FileStoreParameters) params); |
|
80 |
filters.add(auxF); |
|
81 |
} |
|
68 |
FilesystemExplorerParameters param = (FilesystemExplorerParameters) dm |
|
69 |
.createExplorerParameters(FilesystemExplorer.NAME); |
|
70 |
FilesystemExplorer explorer = (FilesystemExplorer) dm |
|
71 |
.createExplorer(param); |
|
72 |
this.filters = new ArrayList(); |
|
73 |
Iterator<FilesystemFileFilter> iter = FilesystemExplorer.getFilters(); |
|
74 |
while (iter.hasNext()) { |
|
75 |
this.filters.add(new VectorialFileFilter(iter.next())); |
|
82 | 76 |
} |
83 |
Iterator i = filters.iterator(); |
|
84 |
while (i.hasNext()) { |
|
85 |
VectorialFileFilter element = (VectorialFileFilter) i.next(); |
|
86 |
getFileFilter().add(element); |
|
87 |
} |
|
88 |
|
|
89 | 77 |
} |
90 | 78 |
|
91 | 79 |
/* |
... | ... | |
99 | 87 |
|
100 | 88 |
try { |
101 | 89 |
// try to load the drivers referenced by the file dialog |
102 |
DataManager dm = DataManager.getManager(); |
|
103 |
DataStoreParameters params = null; |
|
104 |
params = dm |
|
105 |
.createDataStoreParameters(((DataStoreParameters)((VectorialFileFilter) filter).params) |
|
106 |
.getDataStoreName()); |
|
90 |
DataStoreParameters params = this.explorer.getParametersFor(file); |
|
107 | 91 |
|
108 |
|
|
109 |
// Envelope de cada fichero seleccionado por el usuario |
|
110 | 92 |
String layerName = file.getName(); |
111 | 93 |
|
112 | 94 |
|
113 |
((FileStoreParameters) params).setFile(file); |
|
95 |
((FilesystemStoreParameters) params).setFile(file);
|
|
114 | 96 |
lyr = LayerFactory.getInstance().createLayer( |
115 | 97 |
layerName, params, proj); |
116 | 98 |
|
... | ... | |
122 | 104 |
} |
123 | 105 |
} catch (LoadLayerException e) { |
124 | 106 |
NotificationManager.showMessageError("Error_creating_layer", e); |
125 |
} catch (ReadException e) {
|
|
107 |
} catch (DataException e) {
|
|
126 | 108 |
NotificationManager.showMessageError("Error_creating_layer", e); |
127 | 109 |
} |
128 | 110 |
return null; |
129 | 111 |
} |
112 |
|
|
113 |
public List getFileFilter() { |
|
114 |
return this.filters; |
|
115 |
} |
|
116 |
|
|
117 |
public File post(File file) { |
|
118 |
// TODO Auto-generated method stub |
|
119 |
return null; |
|
120 |
} |
|
121 |
|
|
122 |
public void pre() { |
|
123 |
// TODO Par?meteros?? |
|
124 |
|
|
125 |
} |
|
130 | 126 |
} |
branches/v2_0_0_prep/applications/appgvSIG/src/com/iver/cit/gvsig/addlayer/fileopen/vectorial/VectorialFileFilter.java | ||
---|---|---|
22 | 22 |
|
23 | 23 |
import javax.swing.filechooser.FileFilter; |
24 | 24 |
|
25 |
import org.gvsig.fmap.data.DataStoreParameters;
|
|
26 |
import org.gvsig.fmap.data.feature.file.FileStoreParameters;
|
|
25 |
import org.gvsig.fmap.dal.DataStoreParameters;
|
|
26 |
import org.gvsig.fmap.dal.explorer.filesystem.FilesystemFileFilter;
|
|
27 | 27 |
|
28 | 28 |
/** |
29 | 29 |
* Clase para definir que ficheros aceptara la extension vectorial, es necesario |
... | ... | |
33 | 33 |
* @author BorSanZa - Borja S?nchez Zamorano (borja.sanchez@iver.es) |
34 | 34 |
*/ |
35 | 35 |
public class VectorialFileFilter extends FileFilter { |
36 |
public FileStoreParameters params = null;
|
|
36 |
public FilesystemFileFilter filter = null;
|
|
37 | 37 |
|
38 |
public VectorialFileFilter(FileStoreParameters params) {
|
|
39 |
this.params = params;
|
|
38 |
public VectorialFileFilter(FilesystemFileFilter params) {
|
|
39 |
this.filter = params;
|
|
40 | 40 |
} |
41 | 41 |
|
42 | 42 |
/** |
... | ... | |
46 | 46 |
if (f.isDirectory()) { |
47 | 47 |
return true; |
48 | 48 |
} |
49 |
return (params).fileAccept(f);
|
|
49 |
return filter.accept(f);
|
|
50 | 50 |
|
51 | 51 |
} |
52 | 52 |
|
... | ... | |
54 | 54 |
* @see javax.swing.filechooser.FileFilter#getDescription() |
55 | 55 |
*/ |
56 | 56 |
public String getDescription() { |
57 |
return ((DataStoreParameters)params).getDescription();
|
|
57 |
return ((DataStoreParameters) filter).getDescription();
|
|
58 | 58 |
} |
59 | 59 |
} |
branches/v2_0_0_prep/applications/appgvSIG/src/com/iver/cit/gvsig/addlayer/fileopen/IFileOpen.java | ||
---|---|---|
19 | 19 |
package com.iver.cit.gvsig.addlayer.fileopen; |
20 | 20 |
|
21 | 21 |
import java.io.File; |
22 |
import java.util.ArrayList;
|
|
22 |
import java.util.List; |
|
23 | 23 |
|
24 | 24 |
import javax.swing.filechooser.FileFilter; |
25 | 25 |
|
... | ... | |
69 | 69 |
* Devolver? todos los FileFilter que puede manejar dicha extensi?n |
70 | 70 |
* @return |
71 | 71 |
*/ |
72 |
public ArrayList getFileFilter();
|
|
72 |
public List<FileFilter> getFileFilter();
|
|
73 | 73 |
} |
Also available in: Unified diff