55,9 → 55,12 |
private NameAssistant nameAssistant = null; |
private LocationAssistant locationAssistant = null; |
private TextBox date = new TextBox(); |
private TextBox complementLocation = new TextBox(); |
private TextBox lieudit = new TextBox(); |
private TextBox milieu = new TextBox(); |
private TextBox comment = new TextBox(); |
private Button dateSelector = new Button("..."); |
private Button validButton = new Button("Ajouter"); |
|
boolean visible=false; |
private Mediator mediator=null; |
|
72,58 → 75,109 |
public EntryPanel(final Mediator med) { |
|
|
Grid inner = new Grid(3,4); |
Grid observation = new Grid(4,4); |
|
|
// Formatage affichage |
|
for (int i=0; i<4;i++) { |
observation.getCellFormatter().setWidth(i, 0, "3%"); |
observation.getCellFormatter().setWidth(i, 1, "47%"); |
observation.getCellFormatter().setWidth(i, 2, "3%"); |
observation.getCellFormatter().setWidth(i, 3, "47%"); |
} |
|
|
|
|
mediator=med; |
user=mediator.getUser(); |
|
|
// Declaration des elements du dialogue de saisie aupres du mediator |
|
mediator.registerEntryPanel(this); |
|
mediator.registerDate(date); |
mediator.registerComment(comment); |
mediator.registerComplementLocation(complementLocation); |
mediator.registerMilieu(milieu); |
mediator.registerLieudit(lieudit); |
|
|
VerticalPanel outer = new VerticalPanel(); |
|
|
// Name assistant et location assistant : widget auto-completion sur nom scientifique ou commune |
|
outer.add(new HTML("<b>Saisir un relevé :</b>")); |
nameAssistant = new NameAssistant(mediator); |
locationAssistant = new LocationAssistant(mediator); |
|
|
|
|
for (int i=0; i<3;i++) { |
inner.getCellFormatter().setWidth(i, 0, "3%"); |
inner.getCellFormatter().setWidth(i, 1, "47%"); |
inner.getCellFormatter().setWidth(i, 2, "3%"); |
inner.getCellFormatter().setWidth(i, 3, "47%"); |
} |
// Saisie Commune |
|
observation.setHTML(2,0,"Commune: "); |
observation.setWidget(2,1,locationAssistant); |
|
locationAssistant.setWidth("100%"); |
|
|
|
// Saisie lieu-dit |
|
observation.setHTML(2,2,"Lieu-dit: "); |
observation.setWidget(2,3,lieudit); |
|
lieudit.setWidth("100%"); |
|
nameAssistant = new NameAssistant(mediator); |
locationAssistant = new LocationAssistant(mediator); |
|
|
// Saisie Nom |
|
inner.setHTML(0,0,"Espèce: "); |
inner.setWidget(0,1,nameAssistant); |
|
nameAssistant.setWidth("100%"); |
|
lieudit.addKeyboardListener( new KeyboardListener() { |
|
// Saisie lieu |
public void onKeyDown(Widget arg0, char arg1, int arg2) { |
if(arg1 == KEY_ENTER) |
{ |
onValidateTextBox(lieudit); |
} |
|
} |
|
public void onKeyUp(Widget arg0, char arg1, int arg2) { } |
|
public void onKeyPress(Widget arg0, char arg1, int arg2) { } |
|
} |
); |
|
|
|
// Saisie (milieu) |
|
inner.setHTML(1,0,"Commune: "); |
inner.setWidget(1,1,locationAssistant); |
observation.setHTML(3,0,"Milieu: "); |
observation.setWidget(3,1,milieu); |
|
locationAssistant.setWidth("100%"); |
|
// Saisie Date |
|
milieu.setWidth("100%"); |
|
|
// Validation par entree sur cette zone de texte |
|
milieu.addKeyboardListener( new KeyboardListener() { |
|
public void onKeyDown(Widget arg0, char arg1, int arg2) { |
if(arg1 == KEY_ENTER) |
{ |
onValidateTextBox(milieu); |
} |
|
} |
|
public void onKeyUp(Widget arg0, char arg1, int arg2) { } |
|
public void onKeyPress(Widget arg0, char arg1, int arg2) { } |
|
} |
); |
|
|
// Selecteur de Date |
// Releve |
|
|
dateSelector.addClickListener(new ClickListener () { |
|
public void onClick(Widget w) { |
159,16 → 213,25 |
} |
|
}); |
|
|
|
inner.setHTML(2,0,"Date: "); |
// Saisie Espece |
|
observation.setHTML(0,0,"Espèce: "); |
observation.setWidget(0,1,nameAssistant); |
|
nameAssistant.setWidth("100%"); |
|
observation.setHTML(0,2,"Date: "); |
|
HorizontalPanel datePanel = new HorizontalPanel(); |
datePanel.add(date); |
datePanel.add(dateSelector); |
inner.setWidget(2,1,datePanel); |
observation.setWidget(0,3,datePanel); |
|
// Saisie date |
// Validation par entree sur cette zone de texte |
|
|
date.addKeyboardListener( new KeyboardListener() { |
|
175,14 → 238,7 |
public void onKeyDown(Widget arg0, char arg1, int arg2) { |
if(arg1 == KEY_ENTER) |
{ |
if (ordre==null) { |
mediator.onAddInventoryItem(); |
date.setText(""); |
} |
else { |
mediator.onModifyInventoryItem(ordre); |
ordre=null; |
} |
onValidateTextBox(date); |
} |
} |
|
194,60 → 250,23 |
|
|
|
// Saisie Complement de lieu (station) |
|
inner.setHTML(1,2,"Station: "); |
inner.setWidget(1,3,complementLocation); |
|
complementLocation.setWidth("100%"); |
|
|
complementLocation.addKeyboardListener( new KeyboardListener() { |
|
public void onKeyDown(Widget arg0, char arg1, int arg2) { |
if(arg1 == KEY_ENTER) |
{ |
if (ordre==null) { |
mediator.onAddInventoryItem(); |
complementLocation.setText(""); |
} |
else { |
mediator.onModifyInventoryItem(ordre); |
ordre=null; |
} |
} |
|
} |
|
public void onKeyUp(Widget arg0, char arg1, int arg2) { } |
|
public void onKeyPress(Widget arg0, char arg1, int arg2) { } |
|
} |
); |
|
|
// Saisie Commentaire |
|
inner.setHTML(2,2,"Notes: "); |
inner.setWidget(2,3,comment); |
observation.setHTML(1,0,"Notes: "); |
observation.setWidget(1,1,comment); |
|
comment.setWidth("100%"); |
|
|
|
// Validation par entree sur cette zone de texte |
|
comment.addKeyboardListener( new KeyboardListener() { |
|
public void onKeyDown(Widget arg0, char arg1, int arg2) { |
if(arg1 == KEY_ENTER) |
{ |
if (ordre==null) { |
mediator.onAddInventoryItem(); |
comment.setText(""); |
} |
else { |
mediator.onModifyInventoryItem(ordre); |
ordre=null; |
} |
onValidateTextBox(comment); |
} |
|
} |
258,15 → 277,16 |
} |
); |
|
|
Button validButton = new Button("Valider"); |
|
// Validation par click sur bouton valider |
|
|
|
validButton.addClickListener( |
|
new ClickListener() { |
|
public void onClick(Widget w) { |
// Numero ordre vide : ajout d'une observation |
if (ordre==null) { |
mediator.onAddInventoryItem(); |
} |
285,10 → 305,10 |
actionPanel.add(validButton); |
|
|
inner.setWidth("100%"); |
observation.setWidth("100%"); |
|
outer.add(inner); |
outer.setCellWidth(inner, "100%"); |
outer.add(observation); |
outer.setCellWidth(observation, "100%"); |
outer.setSpacing(10); |
|
outer.setHorizontalAlignment(HorizontalPanel.ALIGN_CENTER); |
311,17 → 331,13 |
|
if ((jsonArray = jsonValue.isArray()) != null) { |
|
String aname = ((JSONString) jsonArray.get(0)).stringValue(); |
String aname = Util.toCelString(((JSONString) jsonArray.get(0)).toString()); |
|
// Nom |
|
if (aname.compareTo("null")!=0) { |
nameAssistant.setText(((JSONString) jsonArray.get(0)).stringValue()); |
|
nameAssistant.setText(aname); |
// Numero nomenclatural |
|
nameAssistant.setValue(anum); |
|
} |
|
} |
339,17 → 355,23 |
} |
|
/* |
* Numero d'ordre du relev� affich� |
* Numero d'ordre du releve affiche + mise à jour bouton |
* |
*/ |
|
public void setOrdre(String ordre) { |
this.ordre = ordre; |
if (ordre==null) { |
this.validButton.setText("Ajouter"); |
} |
else { |
this.validButton.setText("Modifier"); |
} |
} |
|
|
/* |
* Numero d'ordre du relev� affich� |
* Numero d'ordre du releve affiche |
* |
*/ |
|
358,9 → 380,26 |
} |
|
|
// Validation par entree sur cette zone de texte |
|
private void onValidateTextBox(TextBox textbox) { |
|
if (ordre==null) { |
// Numero ordre vide : ajout d'une observation |
mediator.onAddInventoryItem(); |
textbox.setText(""); |
} |
else { |
mediator.onModifyInventoryItem(ordre); |
ordre=null; |
} |
|
} |
|
|
|
/** |
* Mise a jour de l'affichage a partir de donn�es deja saisie |
* Mise a jour de l'affichage a partir de donnees deja saisie |
* |
*/ |
|
377,9 → 416,11 |
|
|
if ((jsonArray = jsonValue.isArray()) != null) { |
|
// Nom saisi |
nameAssistant.setText(((JSONString) jsonArray.get(0)).stringValue()); |
nameAssistant.setText(Util.toCelString(((JSONString) jsonArray.get(0)).toString())); |
|
|
// Numero nomenclatural |
|
String ann=((JSONString) jsonArray .get(3)).stringValue(); |
393,7 → 434,7 |
} |
|
// Commune |
String aloc=((JSONString) jsonArray .get(6)).stringValue(); |
String aloc=Util.toCelString(((JSONString) jsonArray .get(6)).toString()); |
|
if (aloc.compareTo("000null")!=0) { |
locationAssistant.setText(aloc); |
413,18 → 454,18 |
} |
|
|
String astation=((JSONString) jsonArray .get(9)).stringValue(); |
String astation=Util.toCelString(((JSONString) jsonArray .get(9)).toString()); |
|
// Station |
if (astation.compareTo("000null")!=0) { |
complementLocation.setText(astation); |
milieu.setText(astation); |
} |
else { |
complementLocation.setText(""); |
milieu.setText(""); |
} |
|
|
String acomment=((JSONString) jsonArray .get(10)).stringValue(); |
String acomment=Util.toCelString(((JSONString) jsonArray .get(10)).toString()); |
// Notes |
if (acomment.compareTo("null")!=0) { |
comment.setText(acomment); |
450,6 → 491,9 |
|
/* +--Fin du code ---------------------------------------------------------------------------------------+ |
* $Log$ |
* Revision 1.7 2007-09-17 19:25:34 ddelon |
* Documentation |
* |
* Revision 1.6 2007-06-06 13:29:30 ddelon |
* v0.09 |
* |