|
From: <bma...@us...> - 2013-07-29 15:31:18
|
Revision: 8457
http://sourceforge.net/p/fudaa/svn/8457
Author: bmarchan
Date: 2013-07-29 15:31:13 +0000 (Mon, 29 Jul 2013)
Log Message:
-----------
Mascaret : Integration de la fenetre profils en travers dans la fenetre des r?\195?\169sultats.
Modified Paths:
--------------
trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/editor/Hydraulique1dGraphesResultatsEditor.java
trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/editor/profil/Hydraulique1dProfilPane.java
trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/ihmhelper/Hydraulique1dIHM_GraphesResultats.java
Modified: trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/editor/Hydraulique1dGraphesResultatsEditor.java
===================================================================
--- trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/editor/Hydraulique1dGraphesResultatsEditor.java 2013-07-29 14:18:59 UTC (rev 8456)
+++ trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/editor/Hydraulique1dGraphesResultatsEditor.java 2013-07-29 15:31:13 UTC (rev 8457)
@@ -15,6 +15,7 @@
import java.awt.event.ActionEvent;
import java.awt.image.BufferedImage;
import java.awt.print.PageFormat;
+import java.awt.print.Printable;
import java.io.File;
import java.text.NumberFormat;
import java.util.ArrayList;
@@ -27,12 +28,14 @@
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFileChooser;
-import javax.swing.JScrollPane;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
import org.fudaa.ctulu.CtuluLibString;
import org.fudaa.ctulu.gui.CtuluFileChooser;
import org.fudaa.ctulu.image.CtuluImageExport;
import org.fudaa.dodico.hydraulique1d.metier.MetierDonneesHydrauliques;
+import org.fudaa.dodico.hydraulique1d.metier.MetierEtude1d;
import org.fudaa.dodico.hydraulique1d.metier.MetierHydraulique1d;
import org.fudaa.dodico.hydraulique1d.metier.MetierLaisse;
import org.fudaa.dodico.hydraulique1d.metier.MetierReseau;
@@ -50,6 +53,7 @@
import org.fudaa.fudaa.hydraulique1d.CGlobal;
import org.fudaa.fudaa.hydraulique1d.Hydraulique1dBaseApplication;
import org.fudaa.fudaa.hydraulique1d.Hydraulique1dResource;
+import org.fudaa.fudaa.hydraulique1d.editor.profil.Hydraulique1dProfilPane;
import org.fudaa.fudaa.hydraulique1d.graphe.Hydraulique1dGrapheResuBief;
import org.fudaa.fudaa.hydraulique1d.ihmhelper.Hydraulique1dIHMRepository;
import org.fudaa.fudaa.hydraulique1d.ihmhelper.Hydraulique1dIHM_ProfilResultats;
@@ -73,10 +77,17 @@
public class Hydraulique1dGraphesResultatsEditor
extends Hydraulique1dCustomizerImprimable {
- JButton btProfil_, btAvancer_, btAvancerVite_, btReculer_, btReculerVite_/*, btAnimation_*/;
+ JButton btAvancer_, btAvancerVite_, btReculer_, btReculerVite_/*, btAnimation_*/;
+ JButton btProfAvancer_, btProfAvancerVite_, btProfReculer_, btProfReculerVite_;
+ JButton btAnim_;
+ JButton btCustom_;
+ JButton btExportExcel_;
+ JButton btVoir_;
+ JButton btExport_;
private BuTabbedPane onglets_;
- private PanneauGraphesResultats panHydro;
- private PanneauGraphesResultats panQE = null;
+ private PanneauGraphesResultats pnHydro;
+ private PanneauGraphesResultats pnQE = null;
+ private Hydraulique1dProfilPane pnProfils_;
private MetierResultatsTemporelSpatial resultTempoSpatial_;
private MetierResultatsTemporelSpatial resultatsQE_;
MetierDonneesHydrauliques donnneHyd_;
@@ -90,34 +101,72 @@
public Hydraulique1dGraphesResultatsEditor(BDialogContent parent) {
super(parent, Hydraulique1dResource.HYDRAULIQUE1D.getString("Graphes Resultats"));
resultTempoSpatial_ = null;
+
+ setActionPanel(BPanneauNavigation.AUCUN);
+ buildNavigation();
// Create a tabbed pane
onglets_ = new BuTabbedPane();
+ onglets_.addChangeListener(new ChangeListener() {
+
+ @Override
+ public void stateChanged(ChangeEvent e) {
+ switchNavigation();
+ }
+ });
- panHydro = new PanneauGraphesResultats(this);
- onglets_.insertTab(Hydraulique1dResource.HYDRAULIQUE1D.getString("R\xE9sultats hydrauliques"), null, new JScrollPane(panHydro), null, 0);
+ pnHydro = new PanneauGraphesResultats(this);
+ onglets_.addTab(Hydraulique1dResource.HYDRAULIQUE1D.getString("R\xE9sultats hydrauliques"), pnHydro);
+ pnProfils_ = new Hydraulique1dProfilPane(Hydraulique1dProfilPane.VOIR, Hydraulique1dProfilPane.PROFILS);
+ onglets_.addTab(Hydraulique1dResource.getS("Profils en travers"), pnProfils_);
+
getContentPane().add(onglets_/*, BuBorderLayout.CENTER*/);
- this.setActionPanel(
- EbliPreferences.DIALOG.VOIR | EbliPreferences.DIALOG.EXPORTER);
- if (FuLib.isWindows()) {
- addAction("Excel", "EXCEL");
- }
- addAction(Hydraulique1dResource.HYDRAULIQUE1D.getString("Personnaliser"), "PERSONNALISER");
- btProfil_ = (JButton) addAction(Hydraulique1dResource.HYDRAULIQUE1D.getString("Profils en travers"), "PROFILS");
- btReculerVite_ = (JButton) addAction("<<", BuResource.BU.getIcon("reculervite"), "POINTRECULERVITE");
- btReculer_ = (JButton) addAction("<", BuResource.BU.getIcon("reculer"), "POINTRECULER");
- btAvancer_ = (JButton) addAction(">", BuResource.BU.getIcon("avancer"), "POINTAVANCER");
- btAvancerVite_ = (JButton) addAction(">>", BuResource.BU.getIcon("avancervite"), "POINTAVANCERVITE");
-
- addAction("Animation", BuResource.BU.getIcon("video"), "ANIM");
aniAction_ = new EbliAnimationAction(new GrapheAnimation(this));
setNavPanel(BPanneauNavigation.FERMER);
pack();
}
+
+ private void buildNavigation() {
+ this.setActionPanel(EbliPreferences.DIALOG.VOIR | EbliPreferences.DIALOG.EXPORTER);
+
+ btVoir_=getActionPanel().getCustomAction("VOIR");
+ btExport_=getActionPanel().getCustomAction("EXPORTER");
+ btExportExcel_=(JButton) addAction("Excel", "EXCEL");
+ btCustom_= (JButton) addAction(Hydraulique1dResource.getS("Personnaliser"), "PERSONNALISER");
+ btReculerVite_ = (JButton) addAction(Hydraulique1dResource.getS("Reculer vite"), BuResource.BU.getIcon("reculervite"), "POINTRECULERVITE");
+ btReculer_ = (JButton) addAction(Hydraulique1dResource.getS("Reculer"), BuResource.BU.getIcon("reculer"), "POINTRECULER");
+ btAvancer_ = (JButton) addAction(Hydraulique1dResource.getS("Avancer"), BuResource.BU.getIcon("avancer"), "POINTAVANCER");
+ btAvancerVite_ = (JButton) addAction(Hydraulique1dResource.getS("Avancer vite"), BuResource.BU.getIcon("avancervite"), "POINTAVANCERVITE");
+ btAnim_= (JButton) addAction(Hydraulique1dResource.getS("Animation"), BuResource.BU.getIcon("video"), "ANIM");
+
+ btProfReculerVite_ = (JButton) addAction(Hydraulique1dResource.getS("Reculer vite"), BuResource.BU.getIcon("reculervite"), "PROFRECULERVITE");
+ btProfReculer_ = (JButton) addAction(Hydraulique1dResource.getS("Reculer"), BuResource.BU.getIcon("reculer"), "PROFRECULER");
+ btProfAvancer_ = (JButton) addAction(Hydraulique1dResource.getS("Avancer"), BuResource.BU.getIcon("avancer"), "PROFAVANCER");
+ btProfAvancerVite_ = (JButton) addAction(Hydraulique1dResource.getS("Avancer vite"), BuResource.BU.getIcon("avancervite"), "PROFAVANCERVITE");
+ }
+
+ private void switchNavigation() {
+ boolean btravers=onglets_.getSelectedComponent()==pnProfils_;
+
+ btVoir_.setVisible(!btravers);
+ btExport_.setVisible(!btravers);
+ btExportExcel_.setVisible(!btravers && FuLib.isWindows());
+ btCustom_.setVisible(!btravers);
+ btReculerVite_.setVisible(!btravers);
+ btReculer_.setVisible(!btravers);
+ btAvancer_.setVisible(!btravers);
+ btAvancerVite_.setVisible(!btravers);
+ btAnim_.setVisible(!btravers);
+
+ btProfReculerVite_.setVisible(btravers);
+ btProfReculer_.setVisible(btravers);
+ btProfAvancer_.setVisible(btravers);
+ btProfAvancerVite_.setVisible(btravers);
+ }
@Override
public void actionPerformed(ActionEvent _evt) {
@@ -145,7 +194,20 @@
deplaceVisu(1);
} else if ("POINTAVANCERVITE".equals(cmd)) {
deplaceVisu(5);
- } else if ("ANIM".equals(cmd)) {
+ }
+ else if ("PROFRECULERVITE".equals(cmd)) {
+ pnProfils_.setProfilCourant(pnProfils_.getProfilCourant() - 5);
+ }
+ else if ("PROFRECULER".equals(cmd)) {
+ pnProfils_.setProfilCourant(pnProfils_.getProfilCourant() - 1);
+ }
+ else if ("PROFAVANCER".equals(cmd)) {
+ pnProfils_.setProfilCourant(pnProfils_.getProfilCourant() + 1);
+ }
+ else if ("PROFAVANCERVITE".equals(cmd)) {
+ pnProfils_.setProfilCourant(pnProfils_.getProfilCourant() + 5);
+ }
+ else if ("ANIM".equals(cmd)) {
aniAction_.changeAll();
}
}
@@ -166,14 +228,14 @@
/*if (resultatsCasier == resultatsCasier_)
return;
resultatsCasier_= resultatsCasier;*/
- panHydro.setResultatsCasier(resultatsCasier);
+ pnHydro.setResultatsCasier(resultatsCasier);
}
public void setResultatsLiaison(MetierResultatsTemporelSpatial resultatsLiaison) {
/*if (resultatsLiaison == resultatsLiaison_)
return;
resultatsLiaison_= resultatsLiaison;*/
- panHydro.setResultatsLiaison(resultatsLiaison);
+ pnHydro.setResultatsLiaison(resultatsLiaison);
}
public void setResultatsQE(MetierResultatsTemporelSpatial resultatsQE) {
@@ -197,12 +259,12 @@
/*if (resultTempoSpatial == resultatsCasier_)
return;
resultatsCasier_ = resultTempoSpatial;*/
- panHydro.setResultatsCasier(resultTempoSpatial);
+ pnHydro.setResultatsCasier(resultTempoSpatial);
} else if (resultTempoSpatial.resultatsLiaison()) {
/*if (resultTempoSpatial == resultatsLiaison_)
return;
resultatsLiaison_ = resultTempoSpatial;*/
- panHydro.setResultatsLiaison(resultTempoSpatial);
+ pnHydro.setResultatsLiaison(resultTempoSpatial);
} //Utiliser uniquement (je pense) \xE0 l'ouverture d'un fichier r\xE9sultats sans projet
else if (resultTempoSpatial.resultatsTracer()) {
if (resultTempoSpatial == resultatsQE_) {
@@ -210,13 +272,13 @@
}
resultatsQE_ = resultTempoSpatial;
//panHydro.setResultats(resultTempoSpatial);
- panQE.setResultats(resultTempoSpatial);
+ pnQE.setResultats(resultTempoSpatial);
} else {
if (resultTempoSpatial == resultTempoSpatial_) {
return;
}
resultTempoSpatial_ = resultTempoSpatial;
- panHydro.setResultats(resultTempoSpatial_);
+ pnHydro.setResultats(resultTempoSpatial_);
}
setValeurs();
@@ -235,28 +297,34 @@
}
reseau_ = reseau;
}
+ if (_n instanceof MetierEtude1d) {
+ pnProfils_.setEtude((MetierEtude1d)_n);
+ }
}
- public PanneauGraphesResultats getSelectedPanel() {
+ public PanneauGraphesResultats getSelectedProfLongPanel() {
//((PanneauGraphesResultats) onglets_.getSelectedComponent().); => retourne le scrollPane
- if (onglets_.getSelectedIndex() == 0) {
- return panHydro;
- } else //if (onglets_.getSelectedIndex()==1)
+ if (onglets_.getSelectedComponent() == pnHydro) {
+ return pnHydro;
+ } else if (onglets_.getSelectedComponent()==pnQE)
{
- return panQE;
+ return pnQE;
}
+ else {
+ return null;
+ }
}
-
+
public Hydraulique1dGrapheResuBief getSelectedGraph() {
- return getSelectedPanel().bgraphe_;
+ return getSelectedProfLongPanel().bgraphe_;
}
public BuList getListePasTpsSection() {
- return getSelectedPanel().lstPasTpsSection_;
+ return getSelectedProfLongPanel().lstPasTpsSection_;
}
public BuList getListeBiefCasierLiaison() {
- return getSelectedPanel().lstBiefCasierLiaison_;
+ return getSelectedProfLongPanel().lstBiefCasierLiaison_;
}
/**
@@ -268,7 +336,16 @@
*/
@Override
public int print(Graphics _g, PageFormat _format, int _page) {
- return getSelectedGraph().print(_g, _format, _page);
+ if (onglets_.getSelectedComponent()==pnQE) {
+ return pnQE.bgraphe_.print(_g, _format, _page);
+ }
+ else if (onglets_.getSelectedComponent()==pnHydro) {
+ return pnHydro.bgraphe_.print(_g, _format, _page);
+ }
+ else if (onglets_.getSelectedComponent()==pnProfils_) {
+ return pnProfils_.print(_g, _format, _page);
+ }
+ return Printable.NO_SUCH_PAGE;
}
/**
@@ -291,11 +368,11 @@
//Si la fusion a reussie ...
//On fournit les resultats fusionn\xE9s au pannel hydraulique et on modifie le titre de l'onglet
- panHydro.setResultats(resFus);
+ pnHydro.setResultats(resFus);
onglets_.setTitleAt(0, getS("R\xE9sultats hydrauliques et qualit\xE9 d'eau"));
//Si on arrive a fusionner les resultats , on supprime l'onglet QE eventuellment cr\xE9\xE9 lors d'un calcul pr\xE9c\xE9dent avec fusion impossible
- if (panQE != null) {
- onglets_.removeTabAt(1);
+ if (pnQE != null) {
+ onglets_.remove(pnQE);
}
@@ -304,9 +381,9 @@
//Si la fusion est impossible
System.out.println(getS("Fusion des resultats Tracer et Mascaret impossible") + " :" + e.getMessage());
//On cr\xE9\xE9 le panel
- if (panQE == null) {
- panQE = new PanneauGraphesResultats(this);
- onglets_.insertTab(getS("R\xE9sultats qualit\xE9 d'eau"), null, new JScrollPane(panQE), null, 1);
+ if (pnQE == null) {
+ pnQE = new PanneauGraphesResultats(this);
+ onglets_.insertTab(getS("R\xE9sultats qualit\xE9 d'eau"), null, pnQE, null, 1);
//On modifie le titre de l'onglet hydro
onglets_.setTitleAt(0, getS("R\xE9sultats hydrauliques"));
}
@@ -318,22 +395,20 @@
}
//On fournit les valeurs de QE au panel QE, et on set les valeurs
- panQE.setResultats(resultatsQE_);
- panQE.setValeurs();
- panQE.setResultatsLiaison(null);//Jamais de casier avec la qualit\xE9 d'eau
- panQE.setResultatsCasier(null);
+ pnQE.setResultats(resultatsQE_);
+ pnQE.setValeurs();
+ pnQE.setResultatsLiaison(null);//Jamais de casier avec la qualit\xE9 d'eau
+ pnQE.setResultatsCasier(null);
//e.printStackTrace();
} finally { //Dans tous les cas...
//On set les valeurs hydrauliques et les profils si disponible
- panHydro.setValeurs();
- btProfil_.setVisible((reseau_ != null));
+ pnHydro.setValeurs();
}
} else {
//Le cas sans qualit\xE9 d'eau.........
- panHydro.setValeurs();
- btProfil_.setVisible((reseau_ != null));
+ pnHydro.setValeurs();
onglets_.setTitleAt(0, getS("R\xE9sultats hydrauliques"));
}
@@ -360,11 +435,12 @@
}
protected void visualiser(boolean calculBorne) {
- if (onglets_.getSelectedIndex() == 0) {
- panHydro.visualiser(calculBorne);
- } else {
- panQE.visualiser(calculBorne);
+ if (onglets_.getSelectedComponent() == pnHydro) {
+ pnHydro.visualiser(calculBorne);
}
+ else if (onglets_.getSelectedComponent() == pnQE) {
+ pnQE.visualiser(calculBorne);
+ }
}
/**
@@ -449,10 +525,10 @@
protected List<GrapheComponent> getListLaisse() {
List<GrapheComponent> listeLaisse = new ArrayList<GrapheComponent>();
- if (getSelectedPanel().cbLaisse_.isSelected()) {
+ if (getSelectedProfLongPanel().cbLaisse_.isSelected()) {
MetierLaisse[] laisses = donnneHyd_.laisses();
//Si Profil spatial
- if (getSelectedPanel().rbSpatial_.isSelected()) {
+ if (getSelectedProfLongPanel().rbSpatial_.isSelected()) {
Vector<Valeur> vLaissesBief = new Vector<Valeur>();
for (int j = getListeBiefCasierLiaison().getMinSelectionIndex(); j <= getListeBiefCasierLiaison().getMaxSelectionIndex(); j++) {
if (j < reseau_.biefs().length) {
Modified: trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/editor/profil/Hydraulique1dProfilPane.java
===================================================================
--- trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/editor/profil/Hydraulique1dProfilPane.java 2013-07-29 14:18:59 UTC (rev 8456)
+++ trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/editor/profil/Hydraulique1dProfilPane.java 2013-07-29 15:31:13 UTC (rev 8457)
@@ -48,6 +48,7 @@
import javax.swing.event.ListSelectionListener;
import org.fudaa.ctulu.gui.CtuluDialog;
+import org.fudaa.dodico.hydraulique1d.metier.EnumMetierRegime;
import org.fudaa.dodico.hydraulique1d.metier.MetierBief;
import org.fudaa.dodico.hydraulique1d.metier.MetierEtude1d;
import org.fudaa.dodico.hydraulique1d.metier.MetierReseau;
@@ -367,6 +368,7 @@
public void setEtude(MetierEtude1d _etude) {
etude_=_etude;
+ isTranscritique_=etude_.paramGeneraux().regime().value() == EnumMetierRegime._TRANSCRITIQUE;
mdlBief_=new AbstractListModel() {
@@ -377,7 +379,7 @@
@Override
public Object getElementAt(int index) {
- return etude_.reseau().biefs()[index];
+ return Hydraulique1dResource.getS("Bief")+" "+(index+1);
}
};
Modified: trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/ihmhelper/Hydraulique1dIHM_GraphesResultats.java
===================================================================
--- trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/ihmhelper/Hydraulique1dIHM_GraphesResultats.java 2013-07-29 14:18:59 UTC (rev 8456)
+++ trunk/soft/fudaa-mascaret/ui/src/main/java/org/fudaa/fudaa/hydraulique1d/ihmhelper/Hydraulique1dIHM_GraphesResultats.java 2013-07-29 15:31:13 UTC (rev 8457)
@@ -44,6 +44,7 @@
if (res == null) {
edit_.setObject(etude_.donneesHydro());
edit_.setObject(etude_.reseau());
+ edit_.setObject(etude_);
//Test des casiers et liaisons
if (etude_.reseau().casiers().length > 0) {
edit_.setResultatsCasier(
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|