From: Frederic D. <de...@us...> - 2004-04-30 07:33:59
|
Update of /cvsroot/fudaa/fudaa_devel/fudaa/src/org/fudaa/fudaa/cubature In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5002/src/org/fudaa/fudaa/cubature Modified Files: CubatureImplementation.java Added Files: CubaturePreferences.java Log Message: Connexion automatique --- NEW FILE: CubaturePreferences.java --- /** * @file CubaturePreferences.java * @creation 29 avr. 2004 * @modification $Date: 2004/04/30 07:33:19 $ * @license GNU General Public License 2 * @copyright (c)1998-2001 CETMEF 2 bd Gambetta F-60231 Compiegne * @mail fud...@li... */ package org.fudaa.fudaa.cubature; import com.memoire.bu.BuPreferences; /** * @author Fred Deniger * @version $Id: CubaturePreferences.java,v 1.1 2004/04/30 07:33:19 deniger Exp $ */ public class CubaturePreferences extends BuPreferences { public final static CubaturePreferences CUBATURE= new CubaturePreferences(); /** * */ private CubaturePreferences() { super(); } } Index: CubatureImplementation.java =================================================================== RCS file: /cvsroot/fudaa/fudaa_devel/fudaa/src/org/fudaa/fudaa/cubature/CubatureImplementation.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** CubatureImplementation.java 25 Nov 2003 10:13:37 -0000 1.5 --- CubatureImplementation.java 30 Apr 2004 07:33:19 -0000 1.6 *************** *** 1,17 **** /* ! * @file CubatureImplementation.java ! * @creation 2000-12-12 ! * @modification $Date$ ! * @license GNU General Public License 2 ! * @copyright (c)1998-2001 CETMEF 2 bd Gambetta F-60231 Compiegne ! * @mail de...@fu... */ package org.fudaa.fudaa.cubature; import org.fudaa.dodico.corba.objet.*; import org.fudaa.dodico.corba.cubature.*; import org.fudaa.dodico.cubature.*; import com.memoire.bu.*; import org.fudaa.fudaa.commun.*; import org.fudaa.fudaa.commun.dodico.*; import java.awt.event.*; import java.awt.*; --- 1,19 ---- /* ! * @file CubatureImplementation.java @creation 2000-12-12 @modification $Date$ ! * @license GNU General Public License 2 @copyright (c)1998-2001 CETMEF 2 bd Gambetta F-60231 ! * Compiegne @mail de...@fu... */ package org.fudaa.fudaa.cubature; + + import org.fudaa.ctulu.CtuluLib; import org.fudaa.dodico.corba.objet.*; import org.fudaa.dodico.corba.cubature.*; import org.fudaa.dodico.cubature.*; import com.memoire.bu.*; + import org.fudaa.fudaa.commun.*; import org.fudaa.fudaa.commun.dodico.*; + import org.fudaa.fudaa.ressource.FudaaResource; + import java.awt.event.*; import java.awt.*; *************** *** 24,70 **** import javax.swing.event.ChangeListener; /** ! * Classe principale d'implémentation de Cubature. Commune à l'application et à ! * l'applet. ! * ! * @version $Revision$ $Date$ by $Author$ ! * @author B.Marchand */ ! public class CubatureImplementation extends BuCommonImplementation { /** * Objet Calcul Cubature */ ! public static ICalculCubature SERVEUR_CUBATURE= null; ! public static IConnexion CONNEXION_CUBATURE= null; ! public static IPersonne PERSONNE= null; /** * Console système. */ ! public static JFrame ts= null; /** * Barre de status pour affichage messages. */ ! public static BuStatusBar statusBar= null; // Informations sur Cubature ! private final static BuInformationsSoftware isCubature_= ! new BuInformationsSoftware(); static { ! isCubature_.name= "Cubature"; ! isCubature_.version= "1.00"; ! isCubature_.date= "12-Dec-2000"; ! isCubature_.rights= "Tous droits réservés. GHN (c) 2000"; ! isCubature_.contact= "Sof...@ut..."; ! isCubature_.license= "GPL2"; ! isCubature_.ftp= "ftp://www.utc.fr/ghn/"; ! isCubature_.http= "http://www.utc.fr/ghn/"; ! isCubature_.man= "http://www.utc.fr/ghn/manuels/"; ! isCubature_.update= "http://www.utc.fr/ghn/fudaa/deltas/"; ! isCubature_.authors= new String[] { "Bertrand Marchand", "Sofiane Hadji" }; ! isCubature_.contributors= null; ! isCubature_.testers= null; ! BuPrinter.INFO_LOG= isCubature_; } ! private File openDir_= new File(System.getProperty("user.dir")); ! private JFileChooser diOpen_= null; public CubatureImplementation() {} public void init() { super.init(); --- 26,74 ---- import javax.swing.event.ChangeListener; /** ! * Classe principale d'implémentation de Cubature. Commune à l'application et à l'applet. ! * ! * @version $Revision$ $Date$ by $Author$ ! * @author B.Marchand */ ! public class CubatureImplementation extends FudaaImplementation { ! /** * Objet Calcul Cubature */ ! public static ICalculCubature SERVEUR_CUBATURE = null; ! public static IConnexion CONNEXION_CUBATURE = null; ! //public static IPersonne PERSONNE= null; /** * Console système. */ ! public static JFrame ts = null; /** * Barre de status pour affichage messages. */ ! public static BuStatusBar statusBar = null; // Informations sur Cubature ! private final static BuInformationsSoftware isCubature_ = new BuInformationsSoftware(); static { ! isCubature_.name = "Cubature"; ! isCubature_.version = "1.00"; ! isCubature_.date = "12-Dec-2000"; ! isCubature_.rights = "Tous droits réservés. GHN (c) 2000"; ! isCubature_.contact = "Sof...@ut..."; ! isCubature_.license = "GPL2"; ! isCubature_.ftp = "ftp://www.utc.fr/ghn/"; ! isCubature_.http = "http://www.utc.fr/ghn/"; ! isCubature_.man = "http://www.utc.fr/ghn/manuels/"; ! isCubature_.update = "http://www.utc.fr/ghn/fudaa/deltas/"; ! isCubature_.authors = new String[] { "Bertrand Marchand", "Sofiane Hadji"}; ! isCubature_.contributors = null; ! isCubature_.testers = null; ! BuPrinter.INFO_LOG = isCubature_; } ! private File openDir_ = new File(System ! .getProperty("user.dir")); ! private JFileChooser diOpen_ = null; ! public CubatureImplementation() {} + public void init() { super.init(); *************** *** 72,87 **** JMenu mn; BuToolBar tb; ! statusBar= getMainPanel().getStatusBar(); setTitle(null); //------------------------------------------------------------------------ ! //--- Menus et toolbar ------------------------------------------------- //------------------------------------------------------------------------ ! mb= getMainMenuBar(); ! tb= getMainToolBar(); // Menu édition ! mn= mb.getMenu("MENU_EDITION"); mb.remove(mn); // Menu calcul ! mn= buildCalculMenu(); mn.setIcon(null); mn.addActionListener(mb); --- 76,91 ---- JMenu mn; BuToolBar tb; ! statusBar = getMainPanel().getStatusBar(); setTitle(null); //------------------------------------------------------------------------ ! //--- Menus et toolbar ------------------------------------------------- //------------------------------------------------------------------------ ! mb = getMainMenuBar(); ! tb = getMainToolBar(); // Menu édition ! mn = mb.getMenu("MENU_EDITION"); mb.remove(mn); // Menu calcul ! mn = buildCalculMenu(); mn.setIcon(null); mn.addActionListener(mb); *************** *** 90,103 **** tb.removeAll(); tb.addToolButton("Ouvrir", "OUVRIR", BuResource.BU.getIcon("OUVRIR"), true); ! tb.addToolButton( ! "Calculer", ! "CALCULER", ! BuResource.BU.getIcon("CALCULER"), ! false); ! tb.addToolButton( ! "Connecter", ! "CONNECTER", ! FudaaLib.getIcon("connecter"), ! true); setEnabledForAction("OUVRIR", true); setEnabledForAction("QUITTER", true); --- 94,99 ---- tb.removeAll(); tb.addToolButton("Ouvrir", "OUVRIR", BuResource.BU.getIcon("OUVRIR"), true); ! tb.addToolButton("Calculer", "CALCULER", BuResource.BU.getIcon("CALCULER"), false); ! tb.addToolButton("Connecter", "CONNECTER", FudaaLib.getIcon("connecter"), true); setEnabledForAction("OUVRIR", true); setEnabledForAction("QUITTER", true); *************** *** 129,135 **** getMainPanel().getLeftColumn().setVisible(false); } ! public void start() { ! connecter(); ! } /** * Retourne les informations Cubature --- 125,129 ---- getMainPanel().getLeftColumn().setVisible(false); } ! /** * Retourne les informations Cubature *************** *** 138,141 **** --- 132,136 ---- return isCubature_; } + /** * Retourne les informations Cubature *************** *** 144,233 **** return isCubature_; } /** * Ajoute le titre de l'application au titre en argument * @param _title En principe, le nom du projet courant */ public void setTitle(String _title) { ! BuInformationsSoftware is= getInformationsSoftware(); ! String title= is.name + " " + is.version; ! if (_title != null) ! title += " - " + _title; super.setTitle(title); } //------------------------------------------------------------------------------ //--- ACTIONS ------------------------------------------------------------------ //------------------------------------------------------------------------------ public void actionPerformed(ActionEvent _evt) { ! String action= _evt.getActionCommand(); ! if (action.equals("OUVRIR")) ! cmdOuvrir(); ! else if (action.equals("CALCULER")) ! cmdExecuter(); ! else if (action.equals("CONNECTER")) ! connecter(); ! else ! super.actionPerformed(_evt); } /** * Ouverture des fichiers */ private void cmdOuvrir() { ! diOpen_= new JFileChooser(); diOpen_.setFileHidingEnabled(true); diOpen_.setCurrentDirectory(openDir_); diOpen_.setMultiSelectionEnabled(false); ! BuFileFilter[] filtres= ! { ! new BuFileFilter( ! new String[] { "cub_geo1", "cub_geo2", "cub_ref" }, ! "Géométries") ! }; diOpen_.setDialogTitle("Ouverture des fichiers géométriques"); diOpen_.resetChoosableFileFilters(); diOpen_.addChoosableFileFilter(filtres[0]); diOpen_.setFileFilter(filtres[0]); ! int r= diOpen_.showOpenDialog((BuApplication)getApp()); ! openDir_= diOpen_.getCurrentDirectory(); if (r == JFileChooser.APPROVE_OPTION) { new BuTaskOperation(this, "Ouverture des fichiers géométriques") { public void act() { oprOuvrir(); } ! } ! .start(); } } /* * Tâche d'ouverture des fichiers géométriques */ private void oprOuvrir() { ! File fichier= diOpen_.getSelectedFile(); ! String path= fichier.getPath(); int indext; ! if ((indext= path.lastIndexOf(".cub_geo1")) != -1 ! || (indext= path.lastIndexOf(".cub_geo2")) != -1 ! || (indext= path.lastIndexOf(".cub_ref")) != -1) ! path= path.substring(0, indext); try { ! statusBar.setMessage( ! "Ouverture des fichiers géométriques " + path + "..."); statusBar.setProgression(0); ! IParametresCubature par= ! IParametresCubatureHelper.narrow( ! SERVEUR_CUBATURE.parametres(CONNEXION_CUBATURE)); DParametresCubature.litSurFichiers(path, par); statusBar.setProgression(100); setTitle(path); setEnabledForAction("CALCULER", true); ! } catch (Exception _exc) { _exc.printStackTrace(); ! new BuDialogError(this, getInformationsSoftware(), _exc.getMessage()) ! .activate(); setEnabledForAction("CALCULER", false); ! } finally { statusBar.setMessage(""); statusBar.setProgression(0); } } /* * Exécution de cubature --- 139,222 ---- return isCubature_; } + /** * Ajoute le titre de l'application au titre en argument + * * @param _title En principe, le nom du projet courant */ public void setTitle(String _title) { ! BuInformationsSoftware is = getInformationsSoftware(); ! String title = is.name + " " + is.version; ! if (_title != null) title += " - " + _title; super.setTitle(title); } + //------------------------------------------------------------------------------ //--- ACTIONS ------------------------------------------------------------------ //------------------------------------------------------------------------------ public void actionPerformed(ActionEvent _evt) { ! String action = _evt.getActionCommand(); ! if (action.equals("OUVRIR")) cmdOuvrir(); ! else if (action.equals("CALCULER")) cmdExecuter(); ! else super.actionPerformed(_evt); } + /** * Ouverture des fichiers */ private void cmdOuvrir() { ! diOpen_ = new JFileChooser(); diOpen_.setFileHidingEnabled(true); diOpen_.setCurrentDirectory(openDir_); diOpen_.setMultiSelectionEnabled(false); ! BuFileFilter[] filtres = { new BuFileFilter(new String[] { "cub_geo1", "cub_geo2", "cub_ref"}, ! "Géométries")}; diOpen_.setDialogTitle("Ouverture des fichiers géométriques"); diOpen_.resetChoosableFileFilters(); diOpen_.addChoosableFileFilter(filtres[0]); diOpen_.setFileFilter(filtres[0]); ! int r = diOpen_.showOpenDialog((BuApplication) getApp()); ! openDir_ = diOpen_.getCurrentDirectory(); if (r == JFileChooser.APPROVE_OPTION) { new BuTaskOperation(this, "Ouverture des fichiers géométriques") { + public void act() { oprOuvrir(); } ! }.start(); } } + /* * Tâche d'ouverture des fichiers géométriques */ private void oprOuvrir() { ! File fichier = diOpen_.getSelectedFile(); ! String path = fichier.getPath(); int indext; ! if ((indext = path.lastIndexOf(".cub_geo1")) != -1 ! || (indext = path.lastIndexOf(".cub_geo2")) != -1 ! || (indext = path.lastIndexOf(".cub_ref")) != -1) path = path.substring(0, indext); try { ! statusBar.setMessage("Ouverture des fichiers géométriques " + path + "..."); statusBar.setProgression(0); ! IParametresCubature par = IParametresCubatureHelper.narrow(SERVEUR_CUBATURE ! .parametres(CONNEXION_CUBATURE)); DParametresCubature.litSurFichiers(path, par); statusBar.setProgression(100); setTitle(path); setEnabledForAction("CALCULER", true); ! } ! catch (Exception _exc) { _exc.printStackTrace(); ! new BuDialogError(this, getInformationsSoftware(), _exc.getMessage()).activate(); setEnabledForAction("CALCULER", false); ! } ! finally { statusBar.setMessage(""); statusBar.setProgression(0); } } + /* * Exécution de cubature *************** *** 235,254 **** private void cmdExecuter() { new BuTaskOperation(this, "Exécution de Cubature") { public void act() { oprExecuter(); } ! } ! .start(); } /** * Tâche d'exécution de cubature. */ private void oprExecuter() { ! if (!connecte()) { ! new BuDialogError( ! getApp(), ! informationsSoftware(), ! "vous n'êtes pas connecté à un serveur Cubature ! ") ! .activate(); return; } --- 224,241 ---- private void cmdExecuter() { new BuTaskOperation(this, "Exécution de Cubature") { + public void act() { oprExecuter(); } ! }.start(); } + /** * Tâche d'exécution de cubature. */ private void oprExecuter() { ! if (!isConnected()) { ! new BuDialogError(getApp(), informationsSoftware(), ! "vous n'êtes pas connecté à un serveur Cubature ! ").activate(); return; } *************** *** 260,281 **** // Récupération du résultat statusBar.setProgression(90); ! IResultatsCubature res= ! IResultatsCubatureHelper.narrow( ! SERVEUR_CUBATURE.resultats(CONNEXION_CUBATURE)); ! double volume= res.volume().volume; ! new BuDialogMessage( ! this, ! getInformationsSoftware(), ! "Volume trouvé : " + volume) ! .activate(); ! } catch (IllegalArgumentException _exc) { ! new BuDialogError(this, getInformationsSoftware(), _exc.getMessage()) ! .activate(); return; ! } finally { statusBar.setMessage(""); statusBar.setProgression(0); } } //------------------------------------------------------------------------------ //--- MENUS -------------------------------------------------------------------- --- 247,265 ---- // Récupération du résultat statusBar.setProgression(90); ! IResultatsCubature res = IResultatsCubatureHelper.narrow(SERVEUR_CUBATURE ! .resultats(CONNEXION_CUBATURE)); ! double volume = res.volume().volume; ! new BuDialogMessage(this, getInformationsSoftware(), "Volume trouvé : " + volume).activate(); ! } ! catch (IllegalArgumentException _exc) { ! new BuDialogError(this, getInformationsSoftware(), _exc.getMessage()).activate(); return; ! } ! finally { statusBar.setMessage(""); statusBar.setProgression(0); } } + //------------------------------------------------------------------------------ //--- MENUS -------------------------------------------------------------------- *************** *** 283,348 **** // Le menu "Calcul" private BuMenu buildCalculMenu() { ! BuMenu r= new BuMenu("Calcul", "mnCALCUL"); ! r.addMenuItem( ! "Exécuter Cubature", ! "CALCULER", ! BuResource.BU.getIcon("calculer"), ! false); return r; } ! public void exit() { ! closeConnection(); ! super.exit(); ! } ! public void finalize() { ! closeConnection(); ! } ! private boolean connecte() { ! boolean res= CONNEXION_CUBATURE == null || SERVEUR_CUBATURE == null; ! try { ! res= res || !CONNEXION_CUBATURE.connecte(); ! } catch (org.omg.CORBA.SystemException ce) {} ! if (res) ! closeConnection(); ! return !res; } ! private void closeConnection() { ! if (CONNEXION_CUBATURE != null) { ! try { ! SERVEUR_CUBATURE.deconnexion(CONNEXION_CUBATURE); ! } catch (org.omg.CORBA.SystemException ce) { ! System.err.println("Unable to close connexion"); ! } ! CONNEXION_CUBATURE= null; ! } } ! public boolean isCloseFrameMode() { ! return false; } ! private void setInfoConnexion(FudaaInfoConnexion r) { ! SERVEUR_CUBATURE= ICalculCubatureHelper.narrow(r.SERVEUR); ! CONNEXION_CUBATURE= r.CONNEXION; ! PERSONNE= r.PERSONNE; } ! protected void connecter() { ! if (connecte()) { ! new BuDialogMessage(getApp(), isCubature_, "Vous êtes déjà connecté") ! .activate(); ! return; ! } ! setEnabledForAction("CONNECTER", false); ! final FudaaInfoConnexion r= ! FudaaImplementation.popConnexion( ! isCubature_.name, ! "ICalculCubature", ! this, ! isCubature_); ! r.addChangeListener(new ChangeListener() { ! public void stateChanged(ChangeEvent e) { ! if (!r.errorOccurred()) ! setInfoConnexion(r); ! setEnabledForAction("CONNECTER", true); ! } ! }); } ! } --- 267,314 ---- // Le menu "Calcul" private BuMenu buildCalculMenu() { ! BuMenu r = new BuMenu("Calcul", "mnCALCUL"); ! r.addMenuItem("Exécuter Cubature", "CALCULER", BuResource.BU.getIcon("calculer"), false); return r; } ! ! /** ! * @see org.fudaa.fudaa.commun.FudaaCommonImplementation#getApplicationPreferences() ! */ ! public BuPreferences getApplicationPreferences() { ! return CubaturePreferences.CUBATURE; } ! ! /** ! * @see org.fudaa.fudaa.commun.FudaaImplementation#clearVariables() ! */ ! protected void clearVariables() { ! CONNEXION_CUBATURE = null; ! SERVEUR_CUBATURE = null; } ! ! /** ! * @see org.fudaa.fudaa.commun.FudaaImplementation#getTacheConnexionMap() ! */ ! protected FudaaDodicoTacheConnexion[] getTacheConnexionMap() { ! FudaaDodicoTacheConnexion c = new FudaaDodicoTacheConnexion(SERVEUR_CUBATURE, ! CONNEXION_CUBATURE); ! return new FudaaDodicoTacheConnexion[] { c}; } ! ! /** ! * @see org.fudaa.fudaa.commun.FudaaImplementation#getTacheDelegateClass() ! */ ! protected Class[] getTacheDelegateClass() { ! return new Class[] { DCalculCubature.class}; } ! ! /** ! * @see org.fudaa.fudaa.commun.FudaaImplementation#initConnexions(java.util.Map) ! */ ! protected void initConnexions(Map _r) { ! FudaaDodicoTacheConnexion c = (FudaaDodicoTacheConnexion) _r.get(DCalculCubature.class); ! CONNEXION_CUBATURE = c.getPersonne(); ! SERVEUR_CUBATURE = ICalculCubatureHelper.narrow(c.getTache()); } ! ! } \ No newline at end of file |