/trunk/src/org/tela_botanica/client/vues/StructureVue.java |
---|
2,7 → 2,7 |
import org.tela_botanica.client.RegistreId; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.ListeStructure; |
import org.tela_botanica.client.modeles.StructureListe; |
import com.extjs.gxt.ui.client.Registry; |
import com.extjs.gxt.ui.client.Style.LayoutRegion; |
33,14 → 33,14 |
} |
public void rafraichir(Object nouvelleDonnees) { |
if (nouvelleDonnees instanceof ListeStructure) { |
remplirListe((ListeStructure) nouvelleDonnees); |
if (nouvelleDonnees instanceof StructureListe) { |
remplirListe((StructureListe) nouvelleDonnees); |
} else { |
Window.alert("Problème!"); |
} |
} |
private void remplirListe(ListeStructure listeInstitutions) { |
private void remplirListe(StructureListe listeInstitutions) { |
LayoutContainer panneauCentre = (LayoutContainer) Registry.get(RegistreId.PANNEAU_CENTRE); |
panneauInstitutionListe.rafraichir(listeInstitutions); |
panneauInstitutionDetail.rafraichir(listeInstitutions); |
/trunk/src/org/tela_botanica/client/vues/FormStructureVue.java |
---|
New file |
0,0 → 1,151 |
package org.tela_botanica.client.vues; |
import java.util.Collections; |
import java.util.Comparator; |
import java.util.List; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import com.extjs.gxt.ui.client.Style.HorizontalAlignment; |
import com.extjs.gxt.ui.client.data.BasePagingLoadResult; |
import com.extjs.gxt.ui.client.data.BasePagingLoader; |
import com.extjs.gxt.ui.client.data.JsonReader; |
import com.extjs.gxt.ui.client.data.ListLoadResult; |
import com.extjs.gxt.ui.client.data.ModelData; |
import com.extjs.gxt.ui.client.data.ModelType; |
import com.extjs.gxt.ui.client.data.PagingLoadConfig; |
import com.extjs.gxt.ui.client.data.PagingLoadResult; |
import com.extjs.gxt.ui.client.data.PagingLoader; |
import com.extjs.gxt.ui.client.data.ScriptTagProxy; |
import com.extjs.gxt.ui.client.store.ListStore; |
import com.extjs.gxt.ui.client.widget.LayoutContainer; |
import com.extjs.gxt.ui.client.widget.button.Button; |
import com.extjs.gxt.ui.client.widget.form.ComboBox; |
import com.extjs.gxt.ui.client.widget.form.FormPanel; |
import com.extjs.gxt.ui.client.widget.form.Radio; |
import com.extjs.gxt.ui.client.widget.form.RadioGroup; |
import com.extjs.gxt.ui.client.widget.form.TextField; |
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction; |
import com.extjs.gxt.ui.client.widget.form.FormPanel.LabelAlign; |
import com.extjs.gxt.ui.client.widget.layout.ColumnData; |
import com.extjs.gxt.ui.client.widget.layout.ColumnLayout; |
import com.extjs.gxt.ui.client.widget.layout.FitLayout; |
import com.extjs.gxt.ui.client.widget.layout.FlowLayout; |
import com.extjs.gxt.ui.client.widget.layout.FormLayout; |
public class FormStructureVue extends LayoutContainer implements Rafraichissable { |
public FormStructureVue() { |
setLayout(new FitLayout()); |
// Création du panneau Formulaire |
FormPanel panel = new FormPanel(); |
panel.setFrame(true); |
panel.setIconStyle("icone-form-ajouter"); |
panel.setCollapsible(false); |
panel.setHeading("Ajout d'une institution"); |
panel.setButtonAlign(HorizontalAlignment.CENTER); |
panel.setLayout(new FlowLayout()); |
LayoutContainer main = new LayoutContainer(); |
main.setLayout(new ColumnLayout()); |
// Création de la dispostion : GAUCHE |
LayoutContainer gauche = new LayoutContainer(); |
FormLayout layout = new FormLayout(); |
layout.setLabelAlign(LabelAlign.LEFT); |
layout.setLabelWidth(200); |
gauche.setLayout(layout); |
// Création de la dispostion : DROITE |
LayoutContainer droite = new LayoutContainer(); |
layout = new FormLayout(); |
layout.setLabelAlign(LabelAlign.LEFT); |
droite.setLayout(layout); |
// Formulaire GAUCHE |
TextField<String> nomStructureChp = new TextField<String>(); |
nomStructureChp.setFieldLabel("Nom de la structure"); |
nomStructureChp.setAllowBlank(false); |
gauche.add(nomStructureChp); |
TextField<String> ihChp = new TextField<String>(); |
ihChp.setFieldLabel("Acronyme Index Herbariorum"); |
ihChp.setToolTip("Herbier de plus de 5000 échantillons"); |
gauche.add(ihChp); |
TextField<String> mnhnChp = new TextField<String>(); |
mnhnChp.setFieldLabel("Acronyme MNHN"); |
mnhnChp.setToolTip("Herbier de moins de 5000 échantillons"); |
gauche.add(mnhnChp); |
// Combobox |
String url = "http://localhost/jrest/CoelValeurListe/ab/12"; |
ScriptTagProxy<Object, PagingLoadResult<ModelData>> proxy = new ScriptTagProxy<Object, PagingLoadResult<ModelData>>(url); |
ModelType type = new ModelType(); |
type.root = "topics"; |
type.totalName = "totalCount"; |
type.addField("cmlv_id_valeur", "id"); |
type.addField("cmlv_ce_parent", "ce_parent"); |
type.addField("cmlv_ce_projet", "ce_projet"); |
type.addField("cmlv_nom", "nom"); |
type.addField("cmlv_abreviation", "abreviation"); |
type.addField("cmlv_description", "description"); |
type.addField("cmlv_ce_meta", "ce_meta"); |
JsonReader<PagingLoadConfig> reader = new JsonReader<PagingLoadConfig>(type) { |
protected ListLoadResult newLoadResult(PagingLoadConfig loadConfig, List<ModelData> models) { |
PagingLoadResult result = new BasePagingLoadResult(models, loadConfig.getOffset(), |
loadConfig.getLimit()); |
return result; |
} |
}; |
PagingLoader loader = new BasePagingLoader(proxy, reader); |
ListStore<ModelData> store = new ListStore<ModelData>(loader); |
ComboBox<ModelData> combo = new ComboBox<ModelData>(); |
combo.setFieldLabel("Statut des structures publiques"); |
combo.setDisplayField("nom"); |
combo.setItemSelector("div.search-item"); |
//combo.setTemplate(getTemplate()); |
combo.setStore(store); |
combo.setHideTrigger(false); |
combo.setPageSize(5); |
gauche.add(combo); |
// Formulaire DROITE |
RadioGroup group = new RadioGroup(); |
group.setFieldLabel("Type"); |
Radio structureRadio = new Radio(); |
structureRadio.setBoxLabel("Structure"); |
structureRadio.setValue(true); |
group.add(structureRadio); |
Radio particulierRadio = new Radio(); |
particulierRadio.setBoxLabel("Particulier"); |
group.add(particulierRadio); |
droite.add(group); |
// Ajout des colonnes |
main.add(gauche, new ColumnData(.5)); |
main.add(droite, new ColumnData(.5)); |
panel.add(main); |
// Ajout des boutons au panneau formulaire |
Button annulerBtn = new Button("Annuler"); |
panel.addButton(annulerBtn); |
Button validerBtn = new Button("Valider"); |
panel.addButton(validerBtn); |
// Ajout du panneau Formulaire à la disposition générale |
add(panel); |
} |
public void rafraichir(Object nouvelleDonnees) { |
// TODO Auto-generated method stub |
} |
} |
/trunk/src/org/tela_botanica/client/vues/StructureListePanneauVue.java |
---|
4,17 → 4,20 |
import java.util.Iterator; |
import java.util.List; |
import org.tela_botanica.client.ComposantClass; |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.RegistreId; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Structure; |
import org.tela_botanica.client.modeles.ListeStructure; |
import org.tela_botanica.client.modeles.StructureListe; |
import com.extjs.gxt.ui.client.Registry; |
import com.extjs.gxt.ui.client.Style.SelectionMode; |
import com.extjs.gxt.ui.client.binder.TableBinder; |
import com.extjs.gxt.ui.client.event.ComponentEvent; |
import com.extjs.gxt.ui.client.event.SelectionChangedEvent; |
import com.extjs.gxt.ui.client.event.SelectionChangedListener; |
import com.extjs.gxt.ui.client.event.SelectionListener; |
import com.extjs.gxt.ui.client.store.ListStore; |
import com.extjs.gxt.ui.client.widget.ContentPanel; |
import com.extjs.gxt.ui.client.widget.layout.FitLayout; |
37,15 → 40,20 |
ToolBar toolBar = new ToolBar(); |
TextToolItem ajouter = new TextToolItem("Ajouter"); |
ajouter.setIconStyle("icone-ajouter"); |
ajouter.setIconStyle(ComposantClass.ICONE_AJOUTER); |
ajouter.addSelectionListener(new SelectionListener<ComponentEvent>() { |
public void componentSelected(ComponentEvent ce) { |
coelMediateur.clicAjouterStructure(); |
} |
}); |
toolBar.add(ajouter); |
TextToolItem modifier = new TextToolItem("Modifier"); |
modifier.setIconStyle("icone-modifier"); |
modifier.setIconStyle(ComposantClass.ICONE_MODIFIER); |
toolBar.add(modifier); |
TextToolItem supprimer = new TextToolItem("Supprimer"); |
supprimer.setIconStyle("icone-supprimer"); |
supprimer.setIconStyle(ComposantClass.ICONE_SUPPRIMER); |
toolBar.add(supprimer); |
setTopComponent(toolBar); |
90,8 → 98,8 |
} |
public void rafraichir(Object nouvelleDonnees) { |
if (nouvelleDonnees instanceof ListeStructure) { |
ListeStructure listeInstitutions = (ListeStructure) nouvelleDonnees; |
if (nouvelleDonnees instanceof StructureListe) { |
StructureListe listeInstitutions = (StructureListe) nouvelleDonnees; |
setHeading("Institutions"); |
List<Structure> liste = new ArrayList<Structure>(); |
/trunk/src/org/tela_botanica/client/vues/StructureDetailPanneauVue.java |
---|
3,7 → 3,7 |
import org.tela_botanica.client.RegistreId; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Structure; |
import org.tela_botanica.client.modeles.ListeStructure; |
import org.tela_botanica.client.modeles.StructureListe; |
import com.extjs.gxt.ui.client.Registry; |
import com.extjs.gxt.ui.client.Style.Scroll; |
81,8 → 81,8 |
public void rafraichir(Object nouvelleDonnees) { |
if (nouvelleDonnees instanceof Structure) { |
afficherDetailInstitution((Structure) nouvelleDonnees); |
} else if (nouvelleDonnees instanceof ListeStructure) { |
ListeStructure listeInstitutions = (ListeStructure) nouvelleDonnees; |
} else if (nouvelleDonnees instanceof StructureListe) { |
StructureListe listeInstitutions = (StructureListe) nouvelleDonnees; |
// Test pour savoir si la liste contient des éléments |
if (listeInstitutions.size() == 0) { |
afficherDetailInstitution(null); |
/trunk/src/org/tela_botanica/client/vues/EntetePanneauVue.java |
---|
69,9 → 69,11 |
barreBoutons.setButtonAlign(Style.HorizontalAlignment.RIGHT); |
Button parametresBouton = new Button("Paramêtres", boutonEcouteur); |
parametresBouton.setId(ComposantId.BTN_PARAMETRES); |
parametresBouton.setIconStyle("icone-param"); |
barreBoutons.add(parametresBouton); |
Button aideBouton = new Button("Aide", boutonEcouteur); |
aideBouton.setId(ComposantId.BTN_AIDE); |
aideBouton.setIconStyle("icone-aide"); |
barreBoutons.add(aideBouton); |
identificationBouton = new Button("Identifiez vous...", boutonEcouteur); |
identificationBouton.setId(ComposantId.BTN_CONNEXION); |
92,6 → 94,7 |
} |
}); |
menuCel.setId(ComposantId.MENU_CEL); |
menuCel.setIconStyle("icone-cel"); |
menu.add(menuCel); |
MenuItem menuBel = new MenuItem("Biblio en ligne", new SelectionListener<ComponentEvent>() { |
@Override |
103,9 → 106,11 |
} |
}); |
menuBel.setId(ComposantId.MENU_BEL); |
menuBel.setIconStyle("icone-bel"); |
menu.add(menuBel); |
applisBouton.setMenu(menu); |
applisBouton.setMenu(menu); |
applisBouton.setIconStyle("icone-bascule"); |
barreBoutons.add(applisBouton); |
add(html, new RowData(.3, 1)); |
119,10 → 124,12 |
if (utilisateur.isIdentifie() == true) { |
identificationInfoHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add("Bienvenue : "+utilisateur.getLogin()))); |
identificationBouton.setText("Deconnexion"); |
identificationBouton.setIconStyle("icone-deconnexion"); |
identificationBouton.setId(ComposantId.BTN_DECONNEXION); |
} else { |
identificationInfoHtml.setHtml(Format.substitute(identificationInfoTpl, (new Params()).add("Mode anonyme"))); |
identificationBouton.setText("Identifiez vous..."); |
identificationBouton.setIconStyle("icone-connexion"); |
identificationBouton.setId(ComposantId.BTN_CONNEXION); |
} |
} |
/trunk/src/org/tela_botanica/client/vues/MenuPanneauVue.java |
---|
54,11 → 54,15 |
public Menu listerMenu() { |
Menu menus = new Menu(); |
Menu accueilMenu = new Menu("Accueil"); |
Menu projetMenu = new Menu("Projets"); |
Menu menuInstitution = new Menu("Institutions"); |
Menu menuCollections = new Menu("Collections"); |
Menu menuPersonnes = new Menu("Personnes"); |
Menu menuPublications = new Menu("Publications"); |
menus.add(accueilMenu); |
menus.add(projetMenu); |
menus.add(menuInstitution); |
menus.add(menuCollections); |
menus.add(menuPersonnes); |