Subversion Repositories eFlore/Applications.coel

Compare Revisions

Ignore whitespace Rev 912 → Rev 913

/trunk/src/org/tela_botanica/client/vues/accueil/AccueilVue.java
116,6 → 116,8
int colonne = Integer.parseInt(appletteNoeud.getAttribute("colonne"));
int index = Integer.parseInt(appletteNoeud.getAttribute("index"));
HashMap<String, String> infoApplette = new HashMap<String, String>();
infoApplette.put("reduite", appletteNoeud.getAttribute("reduite"));
infoApplette.put("epingle", appletteNoeud.getAttribute("epingle"));
infoApplette.put("type", appletteNoeud.getAttribute("type"));
infoApplette.put("colonne", appletteNoeud.getAttribute("colonne"));
infoApplette.put("index", appletteNoeud.getAttribute("index"));
126,7 → 128,11
while (it.hasNext()) {
String id = it.next();
HashMap<String, String> infoApplette = tableApplettes.get(id);
ajouterPortlet(infoApplette.get("type"), Integer.parseInt(infoApplette.get("colonne")), Integer.parseInt(infoApplette.get("index")), infoApplette.get("contenu"));
boolean reduite = (infoApplette.get("reduite") != null && infoApplette.get("reduite").equals("true")) ? true : false;
boolean epingle = (infoApplette.get("epingle") != null && infoApplette.get("epingle").equals("true")) ? true : false;
int index = Integer.parseInt(infoApplette.get("index"));
int colonne = Integer.parseInt(infoApplette.get("colonne"));
ajouterPortlet(reduite, epingle, infoApplette.get("type"), colonne, index, infoApplette.get("contenu"));
}
}
Debug.log("Nbre aplletes c0 :"+portail.getItem(0).getItemCount());
164,14 → 170,20
// Ajout des noeuds "applette" au noeud "accueil"
while (it.hasNext()) {
Portlet applette = it.next();
String reduite = (applette.isCollapsed() ? "true" : "false");
String epingle = (applette.isPinned() ? "true" : "false");
String index = Integer.toString(portail.getPortletIndex(applette));
String colonne = Integer.toString(portail.getPortletColumn(applette));
String contenu = applette.getData("contenu");
Element appletteElement = paramXml.createElement("applette");
appletteElement.setAttribute("reduite", reduite);
appletteElement.setAttribute("epingle", epingle);
appletteElement.setAttribute("type", "statistique");
appletteElement.setAttribute("colonne", colonne);
appletteElement.setAttribute("index", index);
appletteElement.setAttribute("contenu", contenu);
accueilNoeud.appendChild(appletteElement);
}
194,16 → 206,21
}
private void ajouterPortlet() {
ajouterPortlet("statistique", 0, 0, null);
ajouterPortlet(false, false, "statistique", 0, 0, null);
}
private void ajouterPortlet(String type, int colonne, int index, String contenu) {
Debug.log("Ajout:"+type+"-"+colonne+"-"+index+"-"+contenu);
Portlet portlet = null;
private void ajouterPortlet(boolean reduite, boolean epingle, String type, int colonne, int index, String contenu) {
Debug.log("Ajout:"+reduite+"-"+epingle+"-"+type+"-"+colonne+"-"+index+"-"+contenu);
Applette applette = null;
if (type.equals("statistique")) {
portlet = new AppletteStatistique(contenu);
applette = new AppletteStatistique(contenu);
}
portail.insert(portlet, index, colonne);
if (reduite) {
applette.collapse();
}
portail.insert(applette, index, colonne);
applette.setEpingler(epingle);
layout();
}
/trunk/src/org/tela_botanica/client/vues/accueil/Applette.java
New file
0,0 → 1,81
package org.tela_botanica.client.vues.accueil;
 
import org.tela_botanica.client.util.Debug;
 
import com.extjs.gxt.ui.client.Style.Scroll;
import com.extjs.gxt.ui.client.event.IconButtonEvent;
import com.extjs.gxt.ui.client.event.SelectionListener;
import com.extjs.gxt.ui.client.widget.button.ToolButton;
import com.extjs.gxt.ui.client.widget.custom.Portlet;
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
 
abstract public class Applette extends Portlet {
private ToolButton epingleBouton = null;
private ToolButton configurationBouton = null;
private ToolButton fermetureBouton = null;
protected void initialiserApplette() {
initialiserApplette(null);
}
protected void initialiserApplette(String titre) {
setLayout(new FitLayout());
setHeight(250);
setCollapsible(true);
setAnimCollapse(true);
setScrollMode(Scroll.AUTO);
setTitre(titre);
configurationBouton = new ToolButton("x-tool-gear");
getHeader().addTool(configurationBouton);
epingleBouton = getBoutonEpingle();
getHeader().addTool(epingleBouton);
fermetureBouton = getBoutonFermeture();
getHeader().addTool(fermetureBouton);
}
private ToolButton getBoutonEpingle() {
ToolButton bouton = new ToolButton("x-tool-pin", new SelectionListener<IconButtonEvent>() {
@Override
public void componentSelected(IconButtonEvent ce) {
setEpingler(!isPinned());
}
});
return bouton;
}
private ToolButton getBoutonFermeture() {
ToolButton bouton = new ToolButton("x-tool-close", new SelectionListener<IconButtonEvent>() {
@Override
public void componentSelected(IconButtonEvent ce) {
removeFromParent();
}
});
return bouton;
}
public void setTitre(String titre) {
if (titre != null) {
setHeading(titre);
}
}
public void setEpingler(boolean epingler) {
if (epingler) {
epingleBouton.setStyleName("x-tool-unpin x-tool");
setPinned(true);
} else {
epingleBouton.setStyleName("x-tool-pin x-tool");
setPinned(false);
}
Debug.log(epingleBouton.getStyleName());
layout();
}
protected void ajouterConfigurationListener(SelectionListener<IconButtonEvent> configurationListener) {
configurationBouton.addSelectionListener(configurationListener);
}
}
/trunk/src/org/tela_botanica/client/vues/accueil/AppletteStatistique.java
3,12 → 3,9
import org.tela_botanica.client.RegistreId;
import org.tela_botanica.client.configuration.Configuration;
import org.tela_botanica.client.modeles.InterneValeur;
import org.tela_botanica.client.util.Debug;
import org.tela_botanica.client.vues.Formulaire;
 
import com.extjs.gxt.ui.client.Registry;
import com.extjs.gxt.ui.client.Style.Scroll;
import com.extjs.gxt.ui.client.event.Events;
import com.extjs.gxt.ui.client.event.IconButtonEvent;
import com.extjs.gxt.ui.client.event.SelectionListener;
import com.extjs.gxt.ui.client.event.WindowEvent;
17,16 → 14,15
import com.extjs.gxt.ui.client.widget.ContentPanel;
import com.extjs.gxt.ui.client.widget.Dialog;
import com.extjs.gxt.ui.client.widget.HtmlContainer;
import com.extjs.gxt.ui.client.widget.button.ToolButton;
import com.extjs.gxt.ui.client.widget.custom.Portlet;
import com.extjs.gxt.ui.client.widget.form.ComboBox;
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.FitLayout;
 
public class AppletteStatistique extends Portlet {
public class AppletteStatistique extends Applette {
private String baseUrl = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl();
 
public AppletteStatistique() {
initialiserAppletteStatistique(null);
37,16 → 33,10
}
private void initialiserAppletteStatistique(String contenu) {
setLayout(new FitLayout());
setHeading("Statistiques des collections");
setHeight(250);
setCollapsible(true);
setAnimCollapse(true);
setScrollMode(Scroll.AUTO);
String titre = "Statistiques des collections";
initialiserApplette(titre);
attribuerContenu(contenu);
getHeader().addTool(new ToolButton("x-tool-gear", new SelectionListener<IconButtonEvent>() {
SelectionListener<IconButtonEvent> configurationListener = new SelectionListener<IconButtonEvent>() {
@Override
public void componentSelected(IconButtonEvent ce) {
ContentPanel panneau = new ContentPanel();
87,31 → 77,12
configurationFenetre.add(panneau);
configurationFenetre.show();
}
}));
};
ajouterConfigurationListener(configurationListener);
getHeader().addTool(new ToolButton("x-tool-pin", new SelectionListener<IconButtonEvent>() {
@Override
public void componentSelected(IconButtonEvent ce) {
if (isPinned()) {
ce.getComponent().setStylePrimaryName("x-tool-pin");
setPinned(false);
} else {
ce.getComponent().setStylePrimaryName("x-tool-unpin");
setPinned(true);
}
layout();
}
}));
getHeader().addTool(new ToolButton("x-tool-close", new SelectionListener<IconButtonEvent>() {
@Override
public void componentSelected(IconButtonEvent ce) {
removeFromParent();
}
}));
attribuerContenu(contenu);
}
 
private void attribuerContenu(String abreviation) {
if (abreviation == null) {
abreviation = "NombreDonnees";