Line 5... |
Line 5... |
5 |
|
5 |
|
6 |
import org.tela_botanica.client.Mediateur;
|
6 |
import org.tela_botanica.client.Mediateur;
|
7 |
import org.tela_botanica.client.images.Images;
|
7 |
import org.tela_botanica.client.images.Images;
|
8 |
import org.tela_botanica.client.interfaces.Rafraichissable;
|
8 |
import org.tela_botanica.client.interfaces.Rafraichissable;
|
9 |
import org.tela_botanica.client.modeles.Information;
|
- |
|
10 |
import org.tela_botanica.client.modeles.Personne;
|
- |
|
11 |
import org.tela_botanica.client.modeles.PersonneListe;
|
9 |
import org.tela_botanica.client.modeles.Information;
|
12 |
import org.tela_botanica.client.modeles.Publication;
|
10 |
import org.tela_botanica.client.modeles.Publication;
|
13 |
import org.tela_botanica.client.modeles.PublicationListe;
|
11 |
import org.tela_botanica.client.modeles.PublicationListe;
|
Line 14... |
Line 12... |
14 |
import org.tela_botanica.client.modeles.ValeurListe;
|
12 |
import org.tela_botanica.client.modeles.ValeurListe;
|
Line 23... |
Line 21... |
23 |
import com.extjs.gxt.ui.client.store.ListStore;
|
21 |
import com.extjs.gxt.ui.client.store.ListStore;
|
24 |
import com.extjs.gxt.ui.client.store.Store;
|
22 |
import com.extjs.gxt.ui.client.store.Store;
|
25 |
import com.extjs.gxt.ui.client.store.StoreEvent;
|
23 |
import com.extjs.gxt.ui.client.store.StoreEvent;
|
26 |
import com.extjs.gxt.ui.client.widget.ContentPanel;
|
24 |
import com.extjs.gxt.ui.client.widget.ContentPanel;
|
27 |
import com.extjs.gxt.ui.client.widget.Info;
|
25 |
import com.extjs.gxt.ui.client.widget.Info;
|
28 |
import com.extjs.gxt.ui.client.widget.InfoConfig;
|
- |
|
29 |
import com.extjs.gxt.ui.client.widget.button.Button;
|
26 |
import com.extjs.gxt.ui.client.widget.button.Button;
|
30 |
import com.extjs.gxt.ui.client.widget.button.ButtonBar;
|
27 |
import com.extjs.gxt.ui.client.widget.button.ButtonBar;
|
31 |
import com.extjs.gxt.ui.client.widget.form.ComboBox;
|
28 |
import com.extjs.gxt.ui.client.widget.form.ComboBox;
|
32 |
import com.extjs.gxt.ui.client.widget.form.FormPanel;
|
29 |
import com.extjs.gxt.ui.client.widget.form.FormPanel;
|
33 |
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
|
30 |
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
|
Line 35... |
Line 32... |
35 |
import com.extjs.gxt.ui.client.widget.grid.ColumnData;
|
32 |
import com.extjs.gxt.ui.client.widget.grid.ColumnData;
|
36 |
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;
|
33 |
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;
|
37 |
import com.extjs.gxt.ui.client.widget.grid.Grid;
|
34 |
import com.extjs.gxt.ui.client.widget.grid.Grid;
|
38 |
import com.extjs.gxt.ui.client.widget.grid.GridCellRenderer;
|
35 |
import com.extjs.gxt.ui.client.widget.grid.GridCellRenderer;
|
39 |
import com.extjs.gxt.ui.client.widget.grid.GridSelectionModel;
|
36 |
import com.extjs.gxt.ui.client.widget.grid.GridSelectionModel;
|
40 |
import com.extjs.gxt.ui.client.widget.grid.HeaderGroupConfig;
|
- |
|
41 |
import com.extjs.gxt.ui.client.widget.grid.RowNumberer;
|
37 |
import com.extjs.gxt.ui.client.widget.grid.RowNumberer;
|
42 |
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
|
38 |
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
|
43 |
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
|
39 |
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
|
44 |
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
|
40 |
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
|
45 |
import com.google.gwt.core.client.GWT;
|
41 |
import com.google.gwt.core.client.GWT;
|
Line 55... |
Line 51... |
55 |
private ComboBox<Publication> publicationsSaisiesComboBox = null;
|
51 |
private ComboBox<Publication> publicationsSaisiesComboBox = null;
|
56 |
private Button publicationsBoutonSupprimer = null;
|
52 |
private Button publicationsBoutonSupprimer = null;
|
57 |
private Button publicationsBoutonModifier = null;
|
53 |
private Button publicationsBoutonModifier = null;
|
58 |
private Button ajouterPublicationSaisieBouton = null;
|
54 |
private Button ajouterPublicationSaisieBouton = null;
|
Line -... |
Line 55... |
- |
|
55 |
|
- |
|
56 |
private FenetreForm fenetreFormulaire = null;
|
59 |
|
57 |
|
60 |
private static final String ETAT_AJOUTE = "A";
|
58 |
private static final String ETAT_AJOUTE = "A";
|
Line 61... |
Line 59... |
61 |
private static final String ETAT_SUPPRIME = "S";
|
59 |
private static final String ETAT_SUPPRIME = "S";
|
62 |
|
60 |
|
Line 132... |
Line 130... |
132 |
Button bouton = new Button(i18nC.ajouter());
|
130 |
Button bouton = new Button(i18nC.ajouter());
|
133 |
bouton.setIcon(Images.ICONES.vcardAjouter());
|
131 |
bouton.setIcon(Images.ICONES.vcardAjouter());
|
134 |
bouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
|
132 |
bouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
|
135 |
@Override
|
133 |
@Override
|
136 |
public void componentSelected(ButtonEvent ce) {
|
134 |
public void componentSelected(ButtonEvent ce) {
|
137 |
final FenetreForm fenetre = creerFenetreModaleAvecFormulairePersonne(Formulaire.MODE_AJOUTER);
|
135 |
fenetreFormulaire = creerFenetreModaleAvecFormulairePersonne(Formulaire.MODE_AJOUTER);
|
138 |
fenetre.show();
|
136 |
fenetreFormulaire.show();
|
139 |
}
|
137 |
}
|
140 |
});
|
138 |
});
|
141 |
return bouton;
|
139 |
return bouton;
|
142 |
}
|
140 |
}
|
Line 150... |
Line 148... |
150 |
Publication publicationSaisieSelectionnee = grille.getSelectionModel().getSelectedItem();
|
148 |
Publication publicationSaisieSelectionnee = grille.getSelectionModel().getSelectedItem();
|
Line 151... |
Line 149... |
151 |
|
149 |
|
152 |
if (publicationSaisieSelectionnee == null) {
|
150 |
if (publicationSaisieSelectionnee == null) {
|
153 |
Info.display(i18nC.informationTitreGenerique(), i18nC.selectionnerPublication());
|
151 |
Info.display(i18nC.informationTitreGenerique(), i18nC.selectionnerPublication());
|
154 |
} else {
|
152 |
} else {
|
155 |
final FenetreForm fenetre = creerFenetreModaleAvecFormulairePersonne(Formulaire.MODE_MODIFIER);
|
153 |
fenetreFormulaire = creerFenetreModaleAvecFormulairePersonne(Formulaire.MODE_MODIFIER);
|
156 |
fenetre.show();
|
154 |
fenetreFormulaire.show();
|
157 |
}
|
155 |
}
|
158 |
}
|
156 |
}
|
159 |
});
|
157 |
});
|
160 |
return bouton;
|
158 |
return bouton;
|
Line 161... |
Line 159... |
161 |
}
|
159 |
}
|
- |
|
160 |
|
- |
|
161 |
private FenetreForm creerFenetreModaleAvecFormulairePersonne(String mode) {
|
- |
|
162 |
String publicationId = null;
|
- |
|
163 |
if (mode.equals(Formulaire.MODE_MODIFIER)) {
|
- |
|
164 |
Publication publicationSaisiSelectionne = grille.getSelectionModel().getSelectedItem();
|
- |
|
165 |
publicationId = publicationSaisiSelectionne.getId();
|
162 |
|
166 |
}
|
163 |
private FenetreForm creerFenetreModaleAvecFormulairePersonne(String mode) {
|
167 |
|
164 |
final FenetreForm fenetre = new FenetreForm("");
|
168 |
final FenetreForm fenetre = new FenetreForm("");
|
165 |
final PublicationForm formulaire = creerFormulairePublication(fenetre, mode);
|
169 |
final PublicationForm formulaire = creerFormulairePublication(fenetre, publicationId);
|
166 |
fenetre.add(formulaire);
|
170 |
fenetre.add(formulaire);
|
Line 167... |
Line 171... |
167 |
return fenetre;
|
171 |
return fenetre;
|
168 |
}
|
172 |
}
|
169 |
|
173 |
|
170 |
private PublicationForm creerFormulairePublication(final FenetreForm fenetre, final String mode) {
|
174 |
private PublicationForm creerFormulairePublication(final FenetreForm fenetre, final String publicationId) {
|
171 |
PublicationForm formulairePublication = new PublicationForm(mediateur, mode);
|
175 |
PublicationForm formulairePublication = new PublicationForm(mediateur, publicationId);
|
172 |
FormPanel panneauFormulaire = formulairePublication.getFormulaire();
|
176 |
FormPanel panneauFormulaire = formulairePublication.getFormulaire();
|
Line 173... |
Line 177... |
173 |
fenetre.setHeading(panneauFormulaire.getHeading());
|
177 |
fenetre.setHeading(panneauFormulaire.getHeading());
|
174 |
panneauFormulaire.setHeaderVisible(false);
|
178 |
panneauFormulaire.setHeaderVisible(false);
|
175 |
panneauFormulaire.setTopComponent(null);
|
179 |
panneauFormulaire.setTopComponent(null);
|
176 |
|
180 |
|
Line 177... |
Line -... |
177 |
// TODO : gérer la barre d'outil avec des évènements spécifique au contexte de fenêtre modale
|
- |
|
178 |
SelectionListener<ButtonEvent> ecouteur = creerEcouteurValidationFormulairePublication(fenetre, formulairePublication);
|
- |
|
179 |
final ButtonBar barreValidation = new FormulaireBarreValidation(ecouteur);
|
- |
|
180 |
panneauFormulaire.setBottomComponent(barreValidation);
|
- |
|
181 |
|
- |
|
182 |
if (mode.equals(Formulaire.MODE_MODIFIER)) {
|
181 |
// TODO : gérer la barre d'outil avec des évènements spécifique au contexte de fenêtre modale
|
183 |
Publication publicationSaisiSelectionne = grille.getSelectionModel().getSelectedItem();
|
182 |
SelectionListener<ButtonEvent> ecouteur = creerEcouteurValidationFormulairePublication(fenetre, formulairePublication);
|
Line 184... |
Line 183... |
184 |
formulairePublication.rafraichir(publicationSaisiSelectionne);
|
183 |
final ButtonBar barreValidation = new FormulaireBarreValidation(ecouteur);
|
185 |
}
|
184 |
panneauFormulaire.setBottomComponent(barreValidation);
|
186 |
|
185 |
|
187 |
return formulairePublication;
|
186 |
return formulairePublication;
|
188 |
}
|
187 |
}
|
189 |
|
188 |
|
190 |
private SelectionListener<ButtonEvent> creerEcouteurValidationFormulairePublication(final FenetreForm fenetre, final PublicationForm formulaire) {
|
189 |
private SelectionListener<ButtonEvent> creerEcouteurValidationFormulairePublication(final FenetreForm fenetre, final PublicationForm formulaire) {
|
191 |
SelectionListener<ButtonEvent> ecouteur = new SelectionListener<ButtonEvent>() {
|
190 |
SelectionListener<ButtonEvent> ecouteur = new SelectionListener<ButtonEvent>() {
|
192 |
@Override
|
191 |
@Override
|
193 |
public void componentSelected(ButtonEvent ce) {
|
192 |
public void componentSelected(ButtonEvent ce) {
|
194 |
String code = ((Button) ce.getComponent()).getData("code");
|
193 |
String code = ((Button) ce.getComponent()).getData("code");
|
195 |
if (code.equals(FormulaireBarreValidation.CODE_BOUTON_VALIDER)) {
|
194 |
if (code.equals(FormulaireBarreValidation.CODE_BOUTON_VALIDER)) {
|
196 |
formulaire.soumettreFormulaire();
|
195 |
formulaire.soumettreFormulaire(renvoyerCollectionFormPublication());
|
- |
|
196 |
fenetre.hide();
|
- |
|
197 |
} else if (code.equals(FormulaireBarreValidation.CODE_BOUTON_APPLIQUER)) {
|
197 |
fenetre.hide();
|
198 |
formulaire.soumettreFormulaire(renvoyerCollectionFormPublication());
|
198 |
} else if (code.equals(FormulaireBarreValidation.CODE_BOUTON_APPLIQUER)) {
|
199 |
} else if (code.equals(FormulaireBarreValidation.CODE_BOUTON_ANNULER)) {
|
199 |
formulaire.soumettreFormulaire();
|
200 |
fenetre.hide();
|
200 |
} else if (code.equals(FormulaireBarreValidation.CODE_BOUTON_ANNULER)) {
|
201 |
} else if (code.equals(FormulaireBarreValidation.CODE_BOUTON_REINITIALISER)) {
|
Line 201... |
Line 202... |
201 |
fenetre.hide();
|
202 |
fenetreFormulaire.hide();
|
202 |
} else if (code.equals(FormulaireBarreValidation.CODE_BOUTON_REINITIALISER)) {
|
203 |
fenetreFormulaire = creerFenetreModaleAvecFormulairePersonne(formulaire.mode);
|
203 |
formulaire.reinitialiserFormulaire();
|
204 |
fenetreFormulaire.show();
|
- |
|
205 |
}
|
- |
|
206 |
}
|
- |
|
207 |
};
|
- |
|
208 |
|
204 |
}
|
209 |
return ecouteur;
|
205 |
}
|
210 |
}
|
206 |
};
|
211 |
|
207 |
|
212 |
private CollectionFormPublication renvoyerCollectionFormPublication() {
|
208 |
return ecouteur;
|
213 |
return this;
|