Line 478... |
Line 478... |
478 |
personnesSaisiesComboBox.getCombo().addListener(Events.Select, new Listener<BaseEvent>() {
|
478 |
personnesSaisiesComboBox.getCombo().addListener(Events.Select, new Listener<BaseEvent>() {
|
479 |
public void handleEvent(BaseEvent be) {
|
479 |
public void handleEvent(BaseEvent be) {
|
480 |
if (personnesSaisiesComboBox.getValeur() instanceof ModelData) {
|
480 |
if (personnesSaisiesComboBox.getValeur() instanceof ModelData) {
|
481 |
// N'ajouter l'auteur que s'il n'est pas déjà présent dans la grille et dans les valeurs initiales
|
481 |
// N'ajouter l'auteur que s'il n'est pas déjà présent dans la grille et dans les valeurs initiales
|
482 |
Personne personneSaisieSelectionnee = new Personne(personnesSaisiesComboBox.getValeur());
|
482 |
Personne personneSaisieSelectionnee = new Personne(personnesSaisiesComboBox.getValeur());
|
- |
|
483 |
Log.debug("Récupération info combo :"+personneSaisieSelectionnee.toString());
|
483 |
PublicationAPersonne pap = new PublicationAPersonne(false);
|
484 |
PublicationAPersonne pap = new PublicationAPersonne(aDonnee.GARDER_PREFIXE);
|
484 |
pap.setPersonne(personneSaisieSelectionnee, true);
|
485 |
pap.setPersonne(personneSaisieSelectionnee, aDonnee.INTEGRER_PROPRIETES);
|
485 |
pap.setOrdreAuteurs(String.valueOf(grilleAuteurs.getStore().getCount()+1));
|
486 |
pap.setOrdreAuteurs(String.valueOf(grilleAuteurs.getStore().getCount()+1));
|
486 |
if (modeDeCreation != Formulaire.MODE_AJOUTER) {
|
487 |
if (modeDeCreation != Formulaire.MODE_AJOUTER) {
|
487 |
pap.setPublicationLiee(publication);
|
488 |
pap.setPublicationLiee(publication);
|
488 |
pap.setIdPublication(publicationId);
|
489 |
pap.setIdPublication(publicationId);
|
489 |
}
|
490 |
}
|
490 |
if (grilleAuteurs.getStore().findModel(pap) != null) {
|
491 |
pap.setIdRole(PublicationAPersonne.ROLE_AUTEUR);
|
491 |
Info.display("Information", "La personne est déjà présente dans la liste d'auteurs");
|
492 |
Log.debug("Récupération info combo pap id :"+pap.getId());
|
492 |
} else {
|
493 |
|
493 |
ajouterDansGrille(pap);
|
494 |
if (ajouterDansGrille(pap)) {
|
494 |
personnesSaisiesComboBox.getCombo().setValue(null);
|
495 |
personnesSaisiesComboBox.getCombo().setValue(null);
|
495 |
}
|
496 |
}
|
496 |
}
|
497 |
}
|
497 |
}
|
498 |
}
|
498 |
});
|
499 |
});
|
499 |
}
|
500 |
}
|
Line 500... |
Line 501... |
500 |
|
501 |
|
501 |
private void ajouterDansGrille(PublicationAPersonne pap) {
|
502 |
private boolean ajouterDansGrille(PublicationAPersonne pap) {
|
502 |
ajouterDansGrille(pap, grilleAuteurs.getStore().getCount());
|
503 |
return ajouterDansGrille(pap, grilleAuteurs.getStore().getCount());
|
Line 503... |
Line 504... |
503 |
}
|
504 |
}
|
- |
|
505 |
|
504 |
|
506 |
private boolean ajouterDansGrille(PublicationAPersonne pap, int index) {
|
- |
|
507 |
boolean ok = false;
|
505 |
private void ajouterDansGrille(PublicationAPersonne pap, int index) {
|
508 |
if (pap != null) {
|
506 |
if (pap != null) {
|
509 |
Log.debug("Début ajout dans grille :"+pap.toString());
|
507 |
if (grilleAuteurs.getStore().contains(pap)) {
|
510 |
if (grilleAuteurs.getStore().contains((ModelData) pap)) {
|
508 |
InfoLogger.display("Information", "La personne choisie existe déjà dans la liste.");
|
511 |
InfoLogger.display("Information", "La personne choisie existe déjà dans la liste d'auteurs.");
|
509 |
} else {
|
512 |
} else {
|
510 |
// 1) si elle ne fait pas partie des initiaux, ajouter à la liste à ajouter
|
513 |
// 1) si elle ne fait pas partie des initiaux, ajouter à la liste à ajouter
|
- |
|
514 |
if (!auteursInitialListe.containsValue(pap)) {
|
511 |
if (!auteursInitialListe.containsValue(pap)) {
|
515 |
auteursAjoutes.put(pap.getId(), pap);
|
Line 512... |
Line 516... |
512 |
auteursAjoutes.put(pap.getId(), pap);
|
516 |
Log.debug("Ajout dans grille -> auteur '"+pap.getId()+"' a été ajouté à la liste des ajoutés (il ne fait pas parti de la liste initiale).");
|
513 |
}
|
517 |
}
|
514 |
|
518 |
|
- |
|
519 |
// L'enlever de la liste à supprimer
|
515 |
// L'enlever de la liste à supprimer
|
520 |
if (auteursSupprimes.containsValue(pap)) {
|
Line 516... |
Line 521... |
516 |
if (auteursSupprimes.containsValue(pap)) {
|
521 |
auteursSupprimes.remove(pap);
|
517 |
auteursSupprimes.remove(pap);
|
522 |
Log.debug("Ajout dans grille -> auteur '"+pap.getId()+"' a été retiré de la liste des supprimés.");
|
518 |
}
|
523 |
}
|
- |
|
524 |
|
519 |
|
525 |
// 2) Ajouter a la grille
|
520 |
// 2) Ajouter a la grille
|
526 |
grilleAuteurs.getStore().insert((ModelData) pap, index);
|
- |
|
527 |
grilleAuteurs.getSelectionModel().select(index, false);
|
521 |
grilleAuteurs.getStore().insert(pap, index);
|
528 |
ok = true;
|
Line 522... |
Line 529... |
522 |
grilleAuteurs.getSelectionModel().select(index, false);
|
529 |
}
|
523 |
}
|
530 |
}
|
524 |
}
|
531 |
return ok;
|
- |
|
532 |
}
|
525 |
}
|
533 |
|
526 |
|
534 |
private void supprimerDansGrille() {
|
527 |
private void supprimerDansGrille() {
|
535 |
ModelData donneeSelectionnee = grilleAuteurs.getSelectionModel().getSelectedItem();
|
528 |
ModelData donneeSelectionnee = grilleAuteurs.getSelectionModel().getSelectedItem();
|
536 |
PublicationAPersonne personneSelectionnee = new PublicationAPersonne(donneeSelectionnee, aDonnee.GARDER_PREFIXE);
|
529 |
PublicationAPersonne personneSelectionnee = new PublicationAPersonne(donneeSelectionnee, false);
|
537 |
Log.debug("Début supprimer auteur dans grille : "+personneSelectionnee.toString());
|
530 |
if (personneSelectionnee.getId() == null) {
|
538 |
if (personneSelectionnee.getId() == null) {
|
531 |
InfoLogger.display(i18nC.informationTitreGenerique(), i18nC.selectionnerAuteur());
|
539 |
InfoLogger.display(i18nC.informationTitreGenerique(), i18nC.selectionnerAuteur());
|
532 |
} else {
|
540 |
} else {
|
Line 533... |
Line 541... |
533 |
// 1) Ajouter a la liste des personne à supprimer uniquement si est présente dans la liste initiale
|
541 |
// 1) Ajouter a la liste des personne à supprimer uniquement si est présente dans la liste initiale
|
534 |
if (auteursInitialListe.containsKey(personneSelectionnee.getId())) {
|
542 |
if (auteursInitialListe.containsKey(personneSelectionnee.getId())) {
|
535 |
auteursSupprimes.put(personneSelectionnee.getId(), personneSelectionnee);
|
543 |
auteursSupprimes.put(personneSelectionnee.getId(), personneSelectionnee);
|
Line 536... |
Line 544... |
536 |
Log.debug("Ajout Personne à supprimer : "+auteursSupprimes.toString());
|
544 |
Log.debug("Ajout Personne à supprimer : "+auteursSupprimes.toString());
|
537 |
}
|
545 |
}
|
538 |
|
546 |
|
Line 539... |
Line 547... |
539 |
if (auteursAjoutes.containsValue(personneSelectionnee)) {
|
547 |
if (auteursAjoutes.containsKey(personneSelectionnee.getId())) {
|
540 |
auteursAjoutes.remove(personneSelectionnee);
|
548 |
auteursAjoutes.remove(personneSelectionnee.getId());
|
541 |
}
|
549 |
}
|
Line 610... |
Line 618... |
610 |
public void handleEvent(LoadEvent be) {
|
618 |
public void handleEvent(LoadEvent be) {
|
611 |
List<ModelData> auteurs = grilleAuteurs.getStore().getModels();
|
619 |
List<ModelData> auteurs = grilleAuteurs.getStore().getModels();
|
612 |
Iterator<ModelData> itAuteurs = auteurs.iterator();
|
620 |
Iterator<ModelData> itAuteurs = auteurs.iterator();
|
613 |
while (itAuteurs.hasNext()) {
|
621 |
while (itAuteurs.hasNext()) {
|
614 |
ModelData selection = itAuteurs.next();
|
622 |
ModelData selection = itAuteurs.next();
|
615 |
PublicationAPersonne auteur = new PublicationAPersonne(selection, false);
|
623 |
PublicationAPersonne pap = new PublicationAPersonne(selection, aDonnee.GARDER_PREFIXE);
|
616 |
auteursInitialListe.put(auteur.getId(), auteur);
|
624 |
auteursInitialListe.put(pap.getId(), pap);
|
- |
|
625 |
Log.debug("PublicationAPersonne ajoutée à la liste initiale avec l'id :"+pap.getId()+pap.toString()+selection.getProperties().toString());
|
617 |
}
|
626 |
}
|
618 |
Log.debug("Initialisation liste auteur :"+auteursInitialListe.size());
|
627 |
Log.debug("Initialisation liste auteur :"+auteursInitialListe.size());
|
619 |
}
|
628 |
}
|
620 |
});
|
629 |
});
|