/trunk/src/org/tela_botanica/client/interfaces/Rafraichissable.java |
---|
New file |
0,0 → 1,21 |
package org.tela_botanica.client.interfaces; |
/** |
* Toutes les classes qui recoivent des données de manières asynchrones ou imprévisible |
* implémentent cette interface. |
* Elle permet de faire transiter le rafraichissable jusqu'au DAO et d'appeler sa méthode rafraichir un fois |
* les données reçues, tout celà en préservant bien la séparation des rôles car les classes qui font transiter |
* le rafraichissable ne connaissent que cette interface et pas le restye de l'objet |
* @author aurelien |
* |
*/ |
public interface Rafraichissable { |
/** |
* Méthode de mise à jour d'un objet |
* @param nouvelleDonnees Un objet de n'importe quel type (programmation générique) qui contient les données de mise à jour |
* @param repandreRaffraichissement indique si l'élement doit notifier d'autres éléments de sa mise à jour |
*/ |
public void rafraichir(Object nouvelleDonnees, boolean repandreRaffraichissement); |
} |
/trunk/src/org/tela_botanica/client/interfaces/Filtrable.java |
---|
New file |
0,0 → 1,34 |
package org.tela_botanica.client.interfaces; |
/** |
* Les classes qui implémentent cette interface fonctionnent sous forme de filtres |
* et doivent être capable de rendre compte de leur état (modifié ou non) |
* et de renvoyer les valeurs de filtrage |
* @author aurelien |
* |
*/ |
public interface Filtrable { |
/** |
* Renvoie un tableau contenant le nom du filtre et sa valeur |
* @return un tableau contenant le nom du filtre (exemple : "ci_meta_mots_cle") et sa valeur |
*/ |
public String[] renvoyerValeursAFiltrer() ; |
/** |
* Renvoie le nom du filtre de manière lisible (exemple : Filtre pour les mots clés) |
* @return le nom du filtre |
*/ |
public String renvoyerNomFiltre() ; |
/** |
* Renvoie l'état du filtre (modifié ou non) |
* @return true si le filtre à été modifié depuis le dernier appel, false sinon |
*/ |
public boolean renvoyerEtatFiltre() ; |
/** |
* Rassemble les valeurs contenant dans le ou les champs du filtre, les vérifie, et si celles-ci on |
* changées, appelle le médiateur |
*/ |
public void valider() ; |
} |
/trunk/src/org/tela_botanica/client/interfaces/iRetourUtilisateur.java |
---|
New file |
0,0 → 1,8 |
package org.tela_botanica.client.interfaces; |
import org.tela_botanica.client.modeles.Utilisateur; |
public interface iRetourUtilisateur { |
public void onRetour(Utilisateur utilisateur); |
} |
/trunk/src/org/tela_botanica/client/interfaces/iRetourObservation.java |
---|
New file |
0,0 → 1,8 |
package org.tela_botanica.client.interfaces; |
import org.tela_botanica.client.modeles.Observation; |
public interface iRetourObservation { |
public void onRetour(Observation observation); |
} |
/trunk/src/org/tela_botanica/client/interfaces/iMediateur.java |
---|
New file |
0,0 → 1,11 |
package org.tela_botanica.client.interfaces; |
/* |
* Interface Mediateur |
* |
*/ |
public interface iMediateur { |
} |
/trunk/src/org/tela_botanica/client/interfaces/IRetourImage.java |
---|
New file |
0,0 → 1,9 |
package org.tela_botanica.client.interfaces; |
import org.tela_botanica.client.modeles.ListeImageCarnet; |
public interface IRetourImage { |
public void onRetour(ListeImageCarnet listeImage); |
} |
/trunk/src/org/tela_botanica/client/interfaces/IdVue.java |
---|
New file |
0,0 → 1,99 |
package org.tela_botanica.client.interfaces; |
import org.tela_botanica.client.image.ImageMediateur; |
import com.gwtext.client.core.EventObject; |
import com.gwtext.client.widgets.Button; |
import com.gwtext.client.widgets.Panel; |
import com.gwtext.client.widgets.Window; |
import com.gwtext.client.widgets.event.ButtonListenerAdapter; |
import com.gwtext.client.widgets.event.KeyListener; |
import com.gwtext.client.widgets.event.WindowListenerAdapter; |
import com.gwtext.client.widgets.form.TextField; |
public class IdVue extends Window implements Rafraichissable { |
private ImageMediateur iMediateur ; |
private TextField champId = null ; |
private Button ok = null ; |
public IdVue(ImageMediateur im) |
{ |
super("Identification") ; |
iMediateur = im ; |
champId = new TextField() ; |
ok = new Button("OK") ; |
add(champId) ; |
add(ok) ; |
setSize(156,75) ; |
setClosable(false) ; |
setModal(true) ; |
this.setCloseAction(HIDE) ; |
ajouterListeners() ; |
} |
private void ajouterListeners() { |
// gestion du clic sur le bouton |
ok.addListener(new ButtonListenerAdapter() { |
public void onClick(Button button, EventObject e) { |
valider() ; |
} |
}) ; |
// gestion de la touche entrée |
champId.addKeyListener(EventObject.ENTER, new KeyListener() { |
public void onKey(int key, EventObject e) { |
valider() ; |
} |
}) ; |
this.addListener(new WindowListenerAdapter() { |
public void onClose(Panel panel) { |
} |
}); |
} |
public ImageMediateur getIMediateur() |
{ |
return iMediateur ; |
} |
protected void valider() { |
String id = champId.getText() ; |
getIMediateur().setIdentifiant(""+id.hashCode()) ; |
getIMediateur().changerUtilisateur() ; |
this.close() ; |
} |
public void rafraichir(Object nouvelleDonnees, |
boolean repandreRaffraichissement) { |
} |
} |
/trunk/src/org/tela_botanica/client/interfaces/VueListable.java |
---|
New file |
0,0 → 1,19 |
package org.tela_botanica.client.interfaces; |
/** |
* Les classes qui implétement cette interface sont des classes qui affichent |
* des éléments qui peuvent être identifiés de manière unique |
* Cette interface facilite le travail du médiateur dans la mesure ou il peut obtenir |
* les éléments selectionnés d'une vue sans se préoccuper de son type précis |
* @author aurelien |
* |
*/ |
public interface VueListable { |
/** |
* Renvoie un tableau contenant les identifiants des élements selectionnés |
* @return les id des éléments sélectionnés |
*/ |
public String[] getIdSelectionnees() ; |
} |