From: <emm...@us...> - 2009-01-05 15:05:44
|
Revision: 4321 http://fudaa.svn.sourceforge.net/fudaa/?rev=4321&view=rev Author: emmanuel_martin Date: 2009-01-05 15:05:39 +0000 (Mon, 05 Jan 2009) Log Message: ----------- Lors de l'export 1d le radioBox correspondant ?\195?\160 l'extension ?\195?\169crite est automatiquement selectionn?\195?\169e. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/modeleur1d/controller/Controller1d.java branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/modeleur1d/view/VueExport.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/modeleur1d/controller/Controller1d.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/modeleur1d/controller/Controller1d.java 2009-01-05 12:46:28 UTC (rev 4320) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/modeleur1d/controller/Controller1d.java 2009-01-05 15:05:39 UTC (rev 4321) @@ -306,6 +306,8 @@ MascaretWriter mascaretWriter=new MascaretWriter(); mascaretWriter.setFile(vueExport.getFile()); Bief bief=controllerBief_.getSelectedBief(); + if(bief==null) + return; Object[] zones=new Object[]{bief.axeHydraulique_.getGeomData(), bief.lignesDirectrices_.getGeomData(), bief.limitesStockages_.getGeomData(), bief.profils_.getGeomData(), bief.rives_.getGeomData()}; MascaretWriter.FunctorSelectProfil functorSelectProfil=new MascaretWriter.FunctorSelectProfil() { Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/modeleur1d/view/VueExport.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/modeleur1d/view/VueExport.java 2009-01-05 12:46:28 UTC (rev 4320) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/modeleur1d/view/VueExport.java 2009-01-05 15:05:39 UTC (rev 4321) @@ -12,6 +12,8 @@ import javax.swing.ButtonGroup; import javax.swing.JPanel; +import javax.swing.event.DocumentEvent; +import javax.swing.event.DocumentListener; import org.fudaa.ctulu.CtuluLib; import org.fudaa.ctulu.CtuluLibFile; @@ -28,31 +30,46 @@ import com.memoire.bu.BuVerticalLayout; /** - * GUI de l'exporteur des donn\xE9es 1d. Il se contante de faire apparaitre un + * GUI de l'exporteur des donn\xE9es 1d. Il se contente de faire apparaitre une * fen\xEAtre modale (via la m\xE9thode 'run') puis met \xE0 disposition les * informations. Il ne fait aucun traitement par lui m\xEAme. * * @author Emmanuel MARTIN - * @version $Id:$ + * @version $Id$ */ public class VueExport extends CtuluDialogPanel { private CtuluFileChooserPanel fileChooser_; - private BuFileFilter[] filters_; private BuRadioButton mascaret1d_; private BuRadioButton mascaret2d_; private CtuluUI ui_; + private BuFileFilter filtre1d_; + private BuFileFilter filtre2d_; public VueExport(CtuluUI _ui) { ui_=_ui; - filters_=new BuFileFilter[]{new BuFileFilter("georef", FSigLib.getS("Fichier Mascaret"))}; + filtre1d_=new BuFileFilter("geo", FSigLib.getS("Fichier Mascaret 1d")); + filtre2d_=new BuFileFilter("georef", FSigLib.getS("Fichier Mascaret 2d")); setLayout(new BuVerticalLayout(5, true, true)); final String title=FSigLib.getS("Fichier d'exportation"); fileChooser_=new CtuluFileChooserPanel(title); fileChooser_.setAllFileFilter(false); fileChooser_.setWriteMode(true); - fileChooser_.setFilter(filters_); + fileChooser_.setFilter(new BuFileFilter[]{filtre1d_, filtre2d_}); + fileChooser_.getTf().getDocument().addDocumentListener(new DocumentListener(){ + private void updateRb() { + // Selection automatique du checkbox correspondant \xE0 l'extension + String name=fileChooser_.getTf().getText(); + if(filtre1d_.accept(name)) + mascaret1d_.setSelected(true); + else if(filtre2d_.accept(name)) + mascaret2d_.setSelected(true); + } + public void changedUpdate(DocumentEvent e) {updateRb();} + public void insertUpdate(DocumentEvent e) {updateRb();} + public void removeUpdate(DocumentEvent e) {updateRb();} + }); BuLabel lbFile=new BuLabel(title); JPanel pnFile=new JPanel(); @@ -93,14 +110,12 @@ setErrorText(CtuluLib.getS("Donnez un nom au fichier d'exportation")); return false; } - boolean bextok=false; - for (int i=0; i<filters_.length; i++) - if (filters_[i].accept(f)) - bextok=true; - if (!bextok) { + // Verification de l'extension + if(!filtre1d_.accept(f)&&!filtre2d_.accept(f)) { setErrorText(TrResource.getS("Le fichier choisi a une extension inconnue")); return false; } + // Verification de l'\xE9crasement if(f.exists()&&!ui_.question(CtuluLib.getS("Attention"), CtuluLib.getS("Le fichier {0} existe d\xE9j\xE0. Voulez-vous l'\xE9craser?", CtuluLibFile.getSansExtension(f.getName())))) return false; if (CtuluLibFile.getExtension(CtuluLibFile.getSansExtension(f.getName()))!=null) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |