Revision 37944

View differences:

trunk/applications/appgvSIG/config/text_en.properties
59 59
Ajustar_transparencia=Adjust transparency
60 60
Al_leer_la_leyenda=Reading legend
61 61
Albers_Conic_Equal_Area=Albers Conic Equal Area
62
All_supported_files=All supported files
62 63
Altura_en_metros=Height in meters
63 64
Altura_fija=Fixed Height
64 65
Altura_fija_de_texto=Fixed text height
......
679 680
Grid_settings=Grid settings
680 681
Grosor_de_linea=Line width
681 682
GroupByField_not_initialized=GroupByField not initialized
683
Group_with_layer=Group with layer
682 684
Guardar=Save
683 685
Guardar_el_zoom_actual=Save current zoom
684 686
Guardar_leyenda=Save legend
......
1022 1024
More_control_points_needed_for_the_current_transform=Selected type of transformation requires additional control points.
1023 1025
Mostrar_Contorno=Show outline
1024 1026
Mostrar_siempre=Always show
1027
Move_above_layer=Move above
1028
Move_below_layer=Move below
1025 1029
Move_from_view=Move points from view
1026 1030
Mover_geo=Move georeferenced image
1027 1031
Muestra_atributos=Show attribute table of active layer
......
1155 1159
Parameters=Parameters
1156 1160
Parametros=Parameters
1157 1161
Parametros_De_Entrada_Para_La_Correccion=Input data for correction
1162
Paste_above_layer=Paste above
1163
Paste_below_layer=Paste below
1158 1164
Path=Path
1159 1165
Path_where_create_the_new_layer_files=Directory in which to save new layer files
1160 1166
Pegado_sobre_el_terreno=Stuck in terrain
trunk/applications/appgvSIG/config/text_en_US.properties
59 59
Ajustar_transparencia=Adjust transparency
60 60
Al_leer_la_leyenda=Reading legend
61 61
Albers_Conic_Equal_Area=Albers Conic Equal Area
62
All_supported_files=All supported files
62 63
Altura_en_metros=
63 64
Altura_fija=
64 65
Altura_fija_de_texto=Fixed text height
trunk/applications/appgvSIG/config/text.properties
59 59
Ajustar_transparencia=Ajustar transparencia
60 60
Al_leer_la_leyenda=Al leer la leyenda
61 61
Albers_Conic_Equal_Area=C\u00f3nica Iso \u00c1rea de Albers
62
All_supported_files=Todos los ficheros soportados
62 63
Altura_en_metros=Altura en metros
63 64
Altura_fija=Altura fija
64 65
Altura_fija_de_texto=Altura fija de texto
......
679 680
Grid_settings=Propiedades malla
680 681
Grosor_de_linea=Grosor de l\u00ednea
681 682
GroupByField_not_initialized=Campo de agrupaci\u00f3n no inicializado
683
Group_with_layer=Agrupar a la capa
682 684
Guardar=Guardar
683 685
Guardar_el_zoom_actual=Guardar el zoom
684 686
Guardar_leyenda=Guardar leyenda
......
1022 1024
More_control_points_needed_for_the_current_transform=Se requieren m\u00e1s puntos de control para el tipo de transformaci\u00f3n seleccionado
1023 1025
Mostrar_Contorno=Mostrar contorno
1024 1026
Mostrar_siempre=Mostrar siempre
1027
Move_above_layer=Mover encima de
1028
Move_below_layer=Mover debajo de
1025 1029
Move_from_view=Mover puntos desde la vista
1026 1030
Mover_geo=Mover imagen a georreferenciar
1027 1031
Muestra_atributos=Muestra los atributos de las capas seleccionadas.
......
1155 1159
Parameters=Par\u00e1metros
1156 1160
Parametros=Par\u00e1metros
1157 1161
Parametros_De_Entrada_Para_La_Correccion=Parametros de entrada para la correcci\u00f3n
1162
Paste_above_layer=Pegar encima de
1163
Paste_below_layer=Pegar debajo de
1158 1164
Path=Ruta
1159 1165
Path_where_create_the_new_layer_files=Ruta donde crear los ficheros de la nueva capa.
1160 1166
Pegado_sobre_el_terreno=Pegado sobre el terreno
trunk/applications/appgvSIG/src/com/iver/cit/gvsig/addlayer/fileopen/FileOpenWizard.java
71 71
	 * Lista de manejadores de ficheros (extensiones)
72 72
	 */
73 73
	private ArrayList<IFileOpen> listFileOpen = new ArrayList<IFileOpen>();
74
	
75
	private class FileFilterAll extends FileFilter {
76
		private ArrayList<FileFilter> all = null;
77
		
78
		public void setAllFileFilters(ArrayList<FileFilter> all) {
79
			this.all = all;
80
		}
81
		
82
		public String getDescription() {
83
			return PluginServices.getText(null, "All_supported_files");
84
		}
85
		
86
		public boolean accept(File f) {
87
			for (int j = 0; j < all.size(); j++) {
88
				FileFilter fileFilter = all.get(j);
89
				if (fileFilter.accept(f)) {
90
					return true;
91
				}
92
			}
93
			return false;
94
		}
74 95

  
96
	};
97

  
75 98
	/**
76 99
	 * Construye un FileOpenWizard usando la extension por defecto
77 100
	 * 'FileExtendingOpenDialog'
......
287 310
		fileChooser.setMultiSelectionEnabled(true);
288 311
		fileChooser.setAcceptAllFileFilterUsed(false);
289 312

  
313
		FileFilterAll allFileFilter = new FileFilterAll();
314
		
290 315
		boolean finded = false;
291
		FileFilter auxFilter=null;
316
		FileFilter auxFilter=null;		
317
		ArrayList<FileFilter> allFileFilters = new ArrayList<FileFilter>();
292 318
		for (int i = 0; i < listFileOpen.size(); i++) {
293 319
			IFileOpen fileOpen = listFileOpen.get(i);
294 320
			fileOpen.pre();
......
297 323
			for (int j = 0; j < aux.size(); j++) {
298 324
				FileFilter fileFilter = aux.get(j);
299 325
				fileChooser.addChoosableFileFilter(fileFilter);
326
				allFileFilters.add(fileFilter);
300 327
				if (lastFileFilter!=null && lastFileFilter.getDescription().equals(fileFilter.getDescription())){
301 328
					auxFilter=fileFilter;
302 329
					finded = true;
303 330
				}
304 331
			}
305 332
		}
333
		allFileFilter.setAllFileFilters(allFileFilters);
334
		fileChooser.addChoosableFileFilter(allFileFilter);
306 335
		if (finded && (lastFileFilter != null))
307 336
			fileChooser.setFileFilter(auxFilter);
308 337

  
......
314 343
			lastPath = fileChooser.getCurrentDirectory().getAbsolutePath();
315 344
			lastFileFilter = (FileFilter) fileChooser.getFileFilter();
316 345
			newFiles = fileChooser.getSelectedFiles();
346
			
347
			FileFilter selectedFileFilter = fileChooser.getFileFilter();
348
			if (selectedFileFilter == allFileFilter) {
349
			}
317 350

  
318 351
			IFileOpen lastFileOpen = null;
352
			// Para cada fichero, queremos saber su fileFilter para llamar al post correspondiente
353
			
319 354
			for (int i = 0; i < listFileOpen.size(); i++) {
320 355
				IFileOpen fileOpen = listFileOpen.get(i);
321 356
				ArrayList<FileFilter> aux = fileOpen.getFileFilter();
322 357
				for (int j = 0; j < aux.size(); j++) {
323
					if (fileChooser.getFileFilter() == aux.get(j)) {
358
					//if (fileChooser.getFileFilter() == aux.get(j)) {
324 359
						for (int iFile = 0; iFile < newFiles.length; iFile++) {
325 360
							try {
326
								newFiles[iFile] = fileOpen.post(newFiles[iFile]);
361
								File f = newFiles[iFile];
362
								if (aux.get(j).accept(f)) {
363
									newFiles[iFile] = fileOpen.post(f);
364
									String driverName = aux.get(j).getDescription();
365
									toAdd.add(new MyFile(f, driverName, fileOpen));
366
									
367
								}
327 368
							} catch (LoadLayerException e) {
328 369
								newFiles[iFile] = null;
329 370
							}
330 371
						}
331 372
						lastFileOpen = fileOpen;
332
						break;
333
					}
373
//						break;
374
//					}
334 375
				}
335 376
			}
336 377

  
337
			for (int ind = 0; ind < newFiles.length; ind++) {
338
				if (newFiles[ind] == null)
339
					continue;
340
				String driverName = ((FileFilter) fileChooser.getFileFilter()).getDescription();
341
				toAdd.add(new MyFile(newFiles[ind], driverName, lastFileOpen));
342
			}
378
//			for (int ind = 0; ind < newFiles.length; ind++) {
379
//				if (newFiles[ind] == null)
380
//					continue;
381
//				String driverName = ((FileFilter) fileChooser.getFileFilter()).getDescription();
382
//				toAdd.add(new MyFile(newFiles[ind], driverName, lastFileOpen));
383
//			}
343 384

  
344 385
			return toAdd.toArray();
345 386
		} else

Also available in: Unified diff