Subversion Repositories eFlore/Archives.cel-v1

Compare Revisions

Ignore whitespace Rev 26 → Rev 27

/trunk/src/org/tela_botanica/client/EntryPanel.java
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&nbsp;un&nbsp;relev&eacute;&nbsp;:</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:&nbsp;");
observation.setWidget(2,1,locationAssistant);
locationAssistant.setWidth("100%");
 
 
// Saisie lieu-dit
observation.setHTML(2,2,"Lieu-dit:&nbsp;");
observation.setWidget(2,3,lieudit);
lieudit.setWidth("100%");
 
nameAssistant = new NameAssistant(mediator);
locationAssistant = new LocationAssistant(mediator);
 
// Saisie Nom
inner.setHTML(0,0,"Esp&egrave;ce:&nbsp;");
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:&nbsp;");
inner.setWidget(1,1,locationAssistant);
observation.setHTML(3,0,"Milieu:&nbsp;");
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:&nbsp;");
// Saisie Espece
observation.setHTML(0,0,"Esp&egrave;ce:&nbsp;");
observation.setWidget(0,1,nameAssistant);
nameAssistant.setWidth("100%");
 
observation.setHTML(0,2,"Date:&nbsp;");
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:&nbsp;");
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:&nbsp;");
inner.setWidget(2,3,comment);
observation.setHTML(1,0,"Notes:&nbsp;");
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
*