4,10 → 4,14 |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.vues.ArbreMotsClesVue; |
|
import com.google.gwt.core.client.JavaScriptObject; |
import com.google.gwt.user.client.Timer; |
import com.google.gwt.user.client.Window; |
import com.google.gwt.user.client.ui.Label; |
import com.gwtext.client.core.EventObject; |
import com.gwtext.client.core.Ext; |
import com.gwtext.client.core.NameValuePair; |
import com.gwtext.client.widgets.BoxComponent; |
import com.gwtext.client.widgets.Button; |
import com.gwtext.client.widgets.Component; |
import com.gwtext.client.widgets.Container; |
14,16 → 18,23 |
import com.gwtext.client.widgets.Panel; |
import com.gwtext.client.widgets.TabPanel; |
import com.gwtext.client.widgets.event.ButtonListenerAdapter; |
import com.gwtext.client.widgets.event.ContainerListener; |
import com.gwtext.client.widgets.event.ContainerListenerAdapter; |
import com.gwtext.client.widgets.event.PanelListener; |
import com.gwtext.client.widgets.event.PanelListenerAdapter; |
import com.gwtext.client.widgets.form.DateField; |
import com.gwtext.client.widgets.form.Field; |
import com.gwtext.client.widgets.form.TextArea; |
import com.gwtext.client.widgets.form.TextField; |
import com.gwtext.client.widgets.form.event.FieldListener; |
import com.gwtext.client.widgets.form.event.FieldListenerAdapter; |
import com.gwtext.client.widgets.grid.GridPanel; |
import com.gwtext.client.widgets.grid.GridView; |
import com.gwtext.client.widgets.grid.PropertyGridPanel; |
import com.gwtext.client.widgets.grid.event.GridCellListenerAdapter; |
import com.gwtext.client.widgets.layout.FitLayout; |
import com.gwtext.client.widgets.layout.RowLayout; |
import com.gwtext.client.widgets.layout.RowLayoutData; |
import com.gwtext.client.widgets.layout.VerticalLayout; |
|
/** |
89,6 → 100,11 |
private DateField dateImage = null; |
|
/** |
* La barre de recherche rapide des taxons |
*/ |
private RechercheFiltreTaxonVue rechercheFiltreTaxonVue = null; |
|
/** |
* La mini liste des observations |
*/ |
private MiniListeObservationVue miniListeObservation = null ; |
106,6 → 122,8 |
* Booleen d'instanciation |
*/ |
boolean estInstancie = false; |
|
Timer timerRedimensionnement = null; |
|
/** |
* Constructeur sans argument (privé car ne doit pas être utilisé) |
160,12 → 178,29 |
validerInfo = new Button("OK"); |
|
noteVue = new BarreNotationVue(im, 5); |
panneauMiniListeObservation = new Panel("Observations") ; |
|
panneauMiniListeObservation = new Panel("Observations") ; |
panneauMiniListeObservation.setLayout(new FitLayout()) ; |
panneauMiniListeObservation.setHeight(800) ; |
miniListeObservation = new MiniListeObservationVue(im) ; |
panneauMiniListeObservation.add(miniListeObservation) ; |
if(!Ext.isIE()) { |
panneauMiniListeObservation.setLayout(new RowLayout()); |
} |
|
miniListeObservation = new MiniListeObservationVue(im); |
rechercheFiltreTaxonVue = new RechercheFiltreTaxonVue(im); |
rechercheFiltreTaxonVue.setTitle("Recherche dans les observations"); |
if(Ext.isIE()) { |
panneauMiniListeObservation.add(rechercheFiltreTaxonVue); |
rechercheFiltreTaxonVue.setHeight(90); |
} else { |
panneauMiniListeObservation.add(rechercheFiltreTaxonVue, new RowLayoutData(90)); |
} |
rechercheFiltreTaxonVue.setWidth("100%") ; |
rechercheFiltreTaxonVue.setBorder(false); |
|
if(Ext.isIE()) { |
panneauMiniListeObservation.add(miniListeObservation, new RowLayoutData(400)) ; |
} else { |
panneauMiniListeObservation.add(miniListeObservation, new RowLayoutData()) ; |
} |
|
sousPanneauInfosGenerales.add(labelComm); |
sousPanneauInfosGenerales.add(commentaireGeneral); |
182,6 → 217,7 |
|
panneauInfoGrid.add(sousPanneauInfosGenerales); |
panneauInfoGrid.add(panneauMotsCles); |
|
|
this.add(panneauMiniListeObservation) ; |
this.add(panneauInfoGrid); |
218,7 → 254,7 |
ajouterListeners(); |
|
// on effectue le rendu |
this.doLayout(true); |
//this.doLayout(true); |
|
} |
|
279,7 → 315,6 |
} |
|
// lors d'un double clic d'une cellule |
|
public void onCellDblClick(GridPanel grid, int rowIndex, |
int colIndex, EventObject e) { |
// on empeche l'édition |
290,6 → 325,26 |
|
}); |
|
panneauMiniListeObservation.addListener(new ContainerListenerAdapter() { |
|
public void onResize(BoxComponent component, int adjWidth, int adjHeight, |
int rawWidth, int rawHeight) { |
|
timerRedimensionnement = new Timer() { |
public void run() { |
|
int taille = 500; |
|
if(Window.getClientHeight() > 800 ) { |
taille = Window.getClientHeight() - 226; |
} |
panneauMiniListeObservation.setHeight(taille); |
} |
}; |
|
timerRedimensionnement.schedule(300); |
} |
}); |
} |
|
/** |
328,11 → 383,25 |
|
// si on reçoit un tableau d'objets |
if (nouvelleDonnees instanceof Object[]) { |
|
final Object ressourceObject = nouvelleDonnees; |
|
if(!this.isRendered()) { |
addListener(new PanelListenerAdapter() { |
|
public void onRender(Component component) { |
rafraichir(ressourceObject, false); |
} |
}); |
|
return ; |
} |
|
// extrait infos, exifs et iptc |
Object meta[] = (Object[]) nouvelleDonnees; |
String[][] exif = (String[][]) meta[0]; |
String[][] iptc = (String[][]) meta[1]; |
String[][] gen = (String[][]) meta[2]; |
final String[][] gen = (String[][]) meta[2]; |
|
NameValuePair[] exifSource = new NameValuePair[exif.length]; |
NameValuePair[] iptcSource = new NameValuePair[iptc.length]; |
356,8 → 425,8 |
|
// on met à jour les champs avec la bonne valeur |
commentaireGeneral.setValue(gen[0][1]); |
dateImage.setRawValue(gen[1][1]); |
|
dateImage.setValue(gen[1][1]); |
|
// et on met à jour les données pour l'affichage |
ExifGrid.setSource(exifSource); |
IptcGrid.setSource(iptcSource); |
382,6 → 451,11 |
{ |
return miniListeObservation ; |
} |
|
public RechercheFiltreTaxonVue getRechercheFiltreTaxonVue() |
{ |
return rechercheFiltreTaxonVue ; |
} |
|
public void redimensionner() { |
|