Subversion Repositories eFlore/Applications.coel

Rev

Rev 956 | Rev 968 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 956 Rev 960
Line 64... Line 64...
64
	private Collection collection = null;
64
	private Collection collection = null;
65
	private CollectionBotanique collectionBotanique = null;
65
	private CollectionBotanique collectionBotanique = null;
66
	private Collection collectionCollectee = null;
66
	private Collection collectionCollectee = null;
67
	private CollectionBotanique collectionBotaniqueCollectee = null;
67
	private CollectionBotanique collectionBotaniqueCollectee = null;
Line 68... Line 68...
68
	
68
	
69
	private ListStore<InterneValeur> precisionStore = null;
69
	private static ListStore<InterneValeur> precisionStore = null;
70
	private ChampComboBoxListeValeurs typesCollectionBotaCombo = null;
70
	private ChampComboBoxListeValeurs typesCollectionBotaCombo = null;
71
	private NumberField nbreEchantillonChp = null;
71
	private NumberField nbreEchantillonChp = null;
72
	private EditorGrid<UniteRangement> uniteRangementGrille = null;
72
	private EditorGrid<UniteRangement> uniteRangementGrille = null;
73
	private ChampComboBoxListeValeurs etatUniteRangementCombo = null;
73
	private ChampComboBoxListeValeurs etatUniteRangementCombo = null;
Line 126... Line 126...
126
		precisionFieldSet.add(nbreEchantillonChp);
126
		precisionFieldSet.add(nbreEchantillonChp);
Line 127... Line 127...
127
		
127
		
128
		this.add(precisionFieldSet);
128
		this.add(precisionFieldSet);
Line 129... Line 129...
129
	}
129
	}
-
 
130
	
130
	
131
	private static void creerStorePrecision() {
131
	private void creerStorePrecision() {
132
		if (precisionStore == null) {
132
		precisionStore = new ListStore<InterneValeur>();
133
			precisionStore = new ListStore<InterneValeur>();
-
 
134
			precisionStore.add(new InterneValeur(UniteRangement.COMPTE_APPROXIMATIF, Mediateur.i18nC.precisionApproximatif()));  
133
		precisionStore.add(new InterneValeur(UniteRangement.COMPTE_APPROXIMATIF, i18nC.precisionApproximatif()));  
135
			precisionStore.add(new InterneValeur(UniteRangement.COMPTE_EXACT, Mediateur.i18nC.precisionExact()));
Line 134... Line 136...
134
		precisionStore.add(new InterneValeur(UniteRangement.COMPTE_EXACT, i18nC.precisionExact()));
136
		}
135
	}
137
	}
136
	
138
	
-
 
139
	private static String getPrecisionNom(String precisionAbr) {
137
	private String getPrecisionNom(String precisionAbr) {
140
		String precision = "";
138
		String precision = "";
141
		if (!precisionAbr.equals("NULL")) {
139
		if (!precisionAbr.equals("NULL")) {
142
			creerStorePrecision();
140
			InterneValeur precisionValeur = precisionStore.findModel("abr", precisionAbr);
143
			InterneValeur precisionValeur = precisionStore.findModel("abr", precisionAbr);
141
			if (precisionValeur != null && !precisionValeur.getNom().equals("NULL")) {
144
			if (precisionValeur != null && !precisionValeur.getNom().equals("NULL")) {
142
				precision = precisionValeur.getNom();
145
				precision = precisionValeur.getNom();
143
			}
146
			}
Line 144... Line 147...
144
		}
147
		}
145
		return precision;
148
		return precision;
146
	}
149
	}
-
 
150
	
147
	
151
	private static String getPrecisionAbr(String precisionNom) {
148
	private String getPrecisionAbr(String precisionNom) {
152
		String precision = "";
149
		String precision = "";
153
		if (!precisionNom.equals("NULL")) {
150
		if (!precisionNom.equals("NULL")) {
154
			creerStorePrecision();
151
			InterneValeur precisionValeur = precisionStore.findModel("nom", precisionNom);
155
			InterneValeur precisionValeur = precisionStore.findModel("nom", precisionNom);
Line 285... Line 289...
285
		return truk;
289
		return truk;
286
	}
290
	}
Line 287... Line 291...
287
	
291
	
288
	private void peuplerGrilleUniteRangement(String valeurTruk) {
292
	private void peuplerGrilleUniteRangement(String valeurTruk) {
289
		if (!UtilString.isEmpty(valeurTruk)) {
293
		if (!UtilString.isEmpty(valeurTruk)) {
-
 
294
			HashMap<String,UniteRangement> unitesEnregistrees = parserValeurUniteRangement(valeurTruk);
290
			HashMap<String,UniteRangement> unitesEnregistrees = new HashMap<String,UniteRangement>();
295
			
-
 
296
			ArrayList<UniteRangement> listeUniteMaj = new ArrayList<UniteRangement>();
-
 
297
			int nbreUnite = uniteRangementGrille.getStore().getCount();
-
 
298
			for (int i = 0; i < nbreUnite; i++) {
-
 
299
				UniteRangement uniteDansGrille = uniteRangementGrille.getStore().getAt(i);
-
 
300
				UniteRangement uniteEnregistree = unitesEnregistrees.get(uniteDansGrille.getId());
-
 
301
				if (uniteEnregistree != null) {
-
 
302
					uniteEnregistree.setType(uniteDansGrille.getType());
-
 
303
					listeUniteMaj.add(uniteEnregistree);
-
 
304
				} else {
-
 
305
					listeUniteMaj.add(uniteDansGrille);
-
 
306
				}
-
 
307
			}
-
 
308
			
-
 
309
			Iterator<String> it = unitesEnregistrees.keySet().iterator();
-
 
310
			while (it.hasNext()) {
-
 
311
				String cle = it.next();
-
 
312
				if (cle.matches(aDonnee.TYPE_AUTRE+aDonnee.SEPARATEUR_TYPE_VALEUR)) {
-
 
313
					UniteRangement uniteAutreEnregistree = unitesEnregistrees.get(cle);
-
 
314
					listeUniteMaj.add(uniteAutreEnregistree);
-
 
315
				}
-
 
316
			}
-
 
317
			
-
 
318
			uniteRangementGrille.getStore().removeAll();
-
 
319
			uniteRangementGrille.getStore().add(listeUniteMaj);
-
 
320
			layout();
-
 
321
		}
-
 
322
	}
-
 
323
	
-
 
324
	public static HashMap<String,UniteRangement> parserValeurUniteRangement(String valeurTruk) {
-
 
325
		HashMap<String,UniteRangement> unitesEnregistrees = new HashMap<String,UniteRangement>(); 
291
			ArrayList<UniteRangement> unitesAutreEnregistrees = new ArrayList<UniteRangement>();
326
		if (!UtilString.isEmpty(valeurTruk)) {
292
			String[] unites = valeurTruk.split(Pattern.quote(aDonnee.SEPARATEUR_VALEURS));
327
			String[] unites = valeurTruk.split(Pattern.quote(aDonnee.SEPARATEUR_VALEURS));
293
			for (int i = 0; i < unites.length; i++) {
328
			for (int i = 0; i < unites.length; i++) {
294
				String[] uniteTypeIdDonnees = unites[i].split(Pattern.quote(aDonnee.SEPARATEUR_TYPE_VALEUR));
329
				String[] uniteTypeIdDonnees = unites[i].split(Pattern.quote(aDonnee.SEPARATEUR_TYPE_VALEUR));
295
				String uniteChaineDonnees = uniteTypeIdDonnees[1];
330
				String uniteChaineDonnees = uniteTypeIdDonnees[1];
Line 311... Line 346...
311
					uniteRangement.setTypeAutre(false);
346
					uniteRangement.setTypeAutre(false);
312
					unitesEnregistrees.put(uniteTypeIdDonnees[0], uniteRangement);
347
					unitesEnregistrees.put(uniteTypeIdDonnees[0], uniteRangement);
313
				} else {
348
				} else {
314
					uniteRangement.setType(uniteTypeIdDonnees[0]);
349
					uniteRangement.setType(uniteTypeIdDonnees[0]);
315
					uniteRangement.setTypeAutre(true);
350
					uniteRangement.setTypeAutre(true);
316
					unitesAutreEnregistrees.add(uniteRangement);
-
 
317
				}
-
 
318
			}
-
 
319
			
-
 
320
			ArrayList<UniteRangement> listeUniteMaj = new ArrayList<UniteRangement>();
-
 
321
			int nbreUnite = uniteRangementGrille.getStore().getCount();
-
 
322
			for (int i = 0; i < nbreUnite; i++) {
-
 
323
				UniteRangement uniteDansGrille = uniteRangementGrille.getStore().getAt(i);
-
 
324
				UniteRangement uniteEnregistree = unitesEnregistrees.get(uniteDansGrille.getId());
351
					String id = aDonnee.TYPE_AUTRE+aDonnee.SEPARATEUR_TYPE_VALEUR+uniteTypeIdDonnees[0]+"-"+i;
325
				if (uniteEnregistree != null) {
-
 
326
					uniteEnregistree.setType(uniteDansGrille.getType());
352
					unitesEnregistrees.put(id, uniteRangement);
327
					listeUniteMaj.add(uniteEnregistree);
-
 
328
				} else {
-
 
329
					listeUniteMaj.add(uniteDansGrille);
-
 
330
				}
353
				}
331
			}
354
			}
332
			
-
 
333
			int nbreUniteAutre = unitesAutreEnregistrees.size();
-
 
334
			for (int i = 0; i < nbreUniteAutre; i++) {
-
 
335
				UniteRangement uniteAutreEnregistree = unitesAutreEnregistrees.get(i);
-
 
336
				listeUniteMaj.add(uniteAutreEnregistree);
-
 
337
			}
-
 
338
			
-
 
339
			uniteRangementGrille.getStore().removeAll();
-
 
340
			uniteRangementGrille.getStore().add(listeUniteMaj);
-
 
341
			layout();
-
 
342
		}
355
		}
-
 
356
		return unitesEnregistrees;
343
	}
357
	}
Line 344... Line 358...
344
	
358
	
345
	private ToolBar creerBarreOutilsGrilleUniteRangement() {
359
	private ToolBar creerBarreOutilsGrilleUniteRangement() {
Line 544... Line 558...
544
		return truk;
558
		return truk;
545
	}
559
	}
Line 546... Line 560...
546
	
560
	
547
	private void peuplerGrilleUniteBase(String valeurTruk) {
561
	private void peuplerGrilleUniteBase(String valeurTruk) {
548
		if (!UtilString.isEmpty(valeurTruk)) {
562
		if (!UtilString.isEmpty(valeurTruk)) {
-
 
563
			HashMap<String,UniteBase> unitesEnregistrees = parserValeurUniteBase(valeurTruk);
549
			HashMap<String,UniteBase> unitesEnregistrees = new HashMap<String,UniteBase>();
564
			
-
 
565
			ArrayList<UniteBase> listeUniteMaj = new ArrayList<UniteBase>();
-
 
566
			int nbreUnite = uniteBaseGrille.getStore().getCount();
-
 
567
			for (int i = 0; i < nbreUnite; i++) {
-
 
568
				UniteBase uniteDansGrille = uniteBaseGrille.getStore().getAt(i);
-
 
569
				UniteBase uniteEnregistree = unitesEnregistrees.get(uniteDansGrille.getId());
-
 
570
				if (uniteEnregistree != null) {
-
 
571
					uniteEnregistree.setType(uniteDansGrille.getType());
-
 
572
					listeUniteMaj.add(uniteEnregistree);
-
 
573
				} else {
-
 
574
					listeUniteMaj.add(uniteDansGrille);
-
 
575
				}
-
 
576
			}
-
 
577
			
-
 
578
			Iterator<String> it = unitesEnregistrees.keySet().iterator();
-
 
579
			while (it.hasNext()) {
-
 
580
				String cle = it.next();
-
 
581
				if (cle.matches(aDonnee.TYPE_AUTRE+aDonnee.SEPARATEUR_TYPE_VALEUR)) {
-
 
582
					UniteBase uniteAutreEnregistree = unitesEnregistrees.get(cle);
-
 
583
					listeUniteMaj.add(uniteAutreEnregistree);
-
 
584
				}
-
 
585
			}
-
 
586
			
-
 
587
			uniteBaseGrille.getStore().removeAll();
-
 
588
			uniteBaseGrille.getStore().add(listeUniteMaj);
-
 
589
			layout();
-
 
590
		}
-
 
591
	}
-
 
592
	
-
 
593
	public static HashMap<String,UniteBase> parserValeurUniteBase(String valeurTruk) {
-
 
594
		HashMap<String,UniteBase> unitesEnregistrees = new HashMap<String,UniteBase>();
550
			ArrayList<UniteBase> unitesAutreEnregistrees = new ArrayList<UniteBase>();
595
		if (!UtilString.isEmpty(valeurTruk)) {
551
			String[] unites = valeurTruk.split(Pattern.quote(aDonnee.SEPARATEUR_VALEURS));
596
			String[] unites = valeurTruk.split(Pattern.quote(aDonnee.SEPARATEUR_VALEURS));
552
			for (int i = 0; i < unites.length; i++) {
597
			for (int i = 0; i < unites.length; i++) {
553
				String[] uniteTypeIdDonnees = unites[i].split(Pattern.quote(aDonnee.SEPARATEUR_TYPE_VALEUR));
598
				String[] uniteTypeIdDonnees = unites[i].split(Pattern.quote(aDonnee.SEPARATEUR_TYPE_VALEUR));
554
				String uniteChaineDonnees = uniteTypeIdDonnees[1];
599
				String uniteChaineDonnees = uniteTypeIdDonnees[1];
Line 582... Line 627...
582
					uniteBase.setTypeAutre(false);
627
					uniteBase.setTypeAutre(false);
583
					unitesEnregistrees.put(uniteTypeIdDonnees[0], uniteBase);
628
					unitesEnregistrees.put(uniteTypeIdDonnees[0], uniteBase);
584
				} else {
629
				} else {
585
					uniteBase.setType(uniteTypeIdDonnees[0]);
630
					uniteBase.setType(uniteTypeIdDonnees[0]);
586
					uniteBase.setTypeAutre(true);
631
					uniteBase.setTypeAutre(true);
-
 
632
					String id = aDonnee.TYPE_AUTRE+aDonnee.SEPARATEUR_TYPE_VALEUR+uniteTypeIdDonnees[0]+"-"+i;
587
					unitesAutreEnregistrees.add(uniteBase);
633
					unitesEnregistrees.put(id, uniteBase);
588
				}
634
				}
589
			}
635
			}
590
			
-
 
591
			ArrayList<UniteBase> listeUniteMaj = new ArrayList<UniteBase>();
-
 
592
			int nbreUnite = uniteBaseGrille.getStore().getCount();
-
 
593
			for (int i = 0; i < nbreUnite; i++) {
-
 
594
				UniteBase uniteDansGrille = uniteBaseGrille.getStore().getAt(i);
-
 
595
				UniteBase uniteEnregistree = unitesEnregistrees.get(uniteDansGrille.getId());
-
 
596
				if (uniteEnregistree != null) {
-
 
597
					uniteEnregistree.setType(uniteDansGrille.getType());
-
 
598
					listeUniteMaj.add(uniteEnregistree);
-
 
599
				} else {
-
 
600
					listeUniteMaj.add(uniteDansGrille);
-
 
601
				}
-
 
602
			}
-
 
603
			
-
 
604
			int nbreUniteAutre = unitesAutreEnregistrees.size();
-
 
605
			for (int i = 0; i < nbreUniteAutre; i++) {
-
 
606
				UniteBase uniteAutreEnregistree = unitesAutreEnregistrees.get(i);
-
 
607
				listeUniteMaj.add(uniteAutreEnregistree);
-
 
608
			}
-
 
609
			
-
 
610
			uniteBaseGrille.getStore().removeAll();
-
 
611
			uniteBaseGrille.getStore().add(listeUniteMaj);
-
 
612
			layout();
-
 
613
		}
636
		}
-
 
637
		return unitesEnregistrees;
614
	}
638
	}
Line 615... Line 639...
615
	
639
	
616
	private ToolBar creerBarreOutilsGrilleUniteBase() {
640
	private ToolBar creerBarreOutilsGrilleUniteBase() {