|
From: <de...@us...> - 2013-01-05 00:02:15
|
Revision: 8184
http://fudaa.svn.sourceforge.net/fudaa/?rev=8184&view=rev
Author: deniger
Date: 2013-01-05 00:02:06 +0000 (Sat, 05 Jan 2013)
Log Message:
-----------
Modified Paths:
--------------
trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/MdlImplementation.java
trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/LayerGridController.java
trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/MdlCalqueMultiPointEditable.java
Added Paths:
-----------
trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/action/Show3DAction.java
Modified: trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/MdlImplementation.java
===================================================================
--- trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/MdlImplementation.java 2013-01-05 00:01:30 UTC (rev 8183)
+++ trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/MdlImplementation.java 2013-01-05 00:02:06 UTC (rev 8184)
@@ -80,27 +80,28 @@
import com.memoire.bu.BuTaskView;
import com.memoire.bu.BuUserPreferencesPanel;
import com.memoire.fu.FuLog;
+import org.fudaa.ebli.commun.BJava3DVersionTest;
/**
- * La classe principale de mise en place de l'application, de gestion des
- * actions, des \xE9tats de l'interface, etc.
- *
+ * La classe principale de mise en place de l'application, de gestion des actions, des \xE9tats de l'interface, etc.
+ *
* @author Bertrand Marchand
* @version $Id$
*/
public class MdlImplementation extends FudaaCommonImplementation implements FudaaProjectStateListener {
protected static BuInformationsSoftware isMdl_ = new BuInformationsSoftware();
+
static {
isMdl_.name = MdlResource.getS("Modeleur");
isMdl_.version = "1.2";
isMdl_.date = "2011-12-22";
- isMdl_.rights = MdlResource.getS("Tous droits r\xE9serv\xE9s")+". CETMEF (c)1999-2011";
+ isMdl_.rights = MdlResource.getS("Tous droits r\xE9serv\xE9s") + ". CETMEF (c)1999-2011";
isMdl_.license = "GPL2";
isMdl_.languages = "fr,en";
- isMdl_.authors=new String[]{"B.Marchand, E.Martin, F.Deniger"};
- isMdl_.contact="soi...@ed...";
- isMdl_.http="http://www.fudaa.fr/mdl/";
+ isMdl_.authors = new String[]{"B.Marchand, E.Martin, F.Deniger"};
+ isMdl_.contact = "soi...@ed...";
+ isMdl_.http = "http://www.fudaa.fr/mdl/";
isMdl_.logo = EbliResource.EBLI.getIcon("draw-palette");
isMdl_.banner = BuResource.BU.getIcon("aproposde_32");
@@ -114,12 +115,19 @@
return "mod.zip";
}
+ public static void addJava3DTest(final BuMenu _r) {
+ _r.addSeparator();
+ _r.addMenuItem(MdlResource.getS("Tester Java 3D"), "JAVA3D", EbliResource.EBLI.getIcon("3d"), true);
+ }
+
/**
* Un filtre autorisant des extensions avec plusieurs points (.mod.zip)
+ *
* @author Bertrand Marchand
* @version $Id$
*/
private static class MdlFileFilter extends FileFilter {
+
final String extension_ = '.' + getExtension();
public boolean accept(File _f) {
@@ -127,27 +135,34 @@
}
public String getDescription() {
- return MdlResource.getS("Fudaa Modeleur")+" (*.mod.zip)";
+ return MdlResource.getS("Fudaa Modeleur") + " (*.mod.zip)";
}
-
}
public static BuInformationsSoftware informationsSoftware() {
return isMdl_;
}
-
- /** Le filtre de fichier pour des extension fichiers projets. */
+ /**
+ * Le filtre de fichier pour des extension fichiers projets.
+ */
public final static FileFilter FILTER = new MdlFileFilter();
-
- /** Fenetre interne pour le modeleur 2D. */
+ /**
+ * Fenetre interne pour le modeleur 2D.
+ */
MdlFille2d mdl2dFrame_;
- /** Fenetre interne pour le modeleur 1D */
- MdlFille1d mdl1dFrame_=null;
- /** Projet modeleur. */
+ /**
+ * Fenetre interne pour le modeleur 1D
+ */
+ MdlFille1d mdl1dFrame_ = null;
+ /**
+ * Projet modeleur.
+ */
MdlProjet project_;
FSigManageExeTools toolMng_;
- /** Si true, l'utilisateur peut sortir de l'application par Quitter. */
- boolean exitCanceled_=false;
+ /**
+ * Si true, l'utilisateur peut sortir de l'application par Quitter.
+ */
+ boolean exitCanceled_ = false;
public MdlImplementation() {
super();
@@ -156,6 +171,7 @@
/**
* Retourne le fichier s\xE9lectionn\xE9 par boite de dialogue.
+ *
* @param _saveDialog true : Save dialog, test si fichier existant avant ecriture.
* @return LE fichier, ou null si op\xE9ration abort\xE9e.
*/
@@ -165,7 +181,7 @@
private File chooseFile(boolean _saveDialog) {
return FudaaGuiLib.ouvrirFileChooser(MdlResource.getS("Fichier modeleur"), FILTER, this.getFrame(),
- _saveDialog, _saveDialog ? new CtuluFileChooserTestWritable(this) : null);
+ _saveDialog, _saveDialog ? new CtuluFileChooserTestWritable(this) : null);
}
protected void setFileIfNeeded() {
@@ -177,15 +193,15 @@
public void projectStateChanged(FudaaProjetStateInterface _proj) {
updateActionsState();
}
-
+
/**
* Mise \xE0 jour de l'\xE9tat des boutons.
*/
void updateActionsState() {
- boolean bprjOpen=project_!=null;
- boolean bprjModPar=bprjOpen && project_.getProjectState().isParamsModified();
- boolean buiMod=bprjOpen && project_.getProjectState().isUIModified();
-
+ boolean bprjOpen = project_ != null;
+ boolean bprjModPar = bprjOpen && project_.getProjectState().isParamsModified();
+ boolean buiMod = bprjOpen && project_.getProjectState().isUIModified();
+
setEnabledForAction("ENREGISTRER", bprjModPar | buiMod);
setEnabledForAction("ENREGISTRERSOUS", bprjOpen);
setEnabledForAction("FERMER", bprjOpen);
@@ -202,45 +218,46 @@
getExeToolManager().setRootLayer(mdl2dFrame_.getDonneesCalque());
getExeToolManager().setCommandManager(mdl2dFrame_.getCmdMng());
}
-
+
/**
* Creation de la vue 1D. Ajout a la demande.
*/
void createNew1dFrame() {
- if (mdl1dFrame_==null) {
- mdl1dFrame_=new MdlFille1d(this);
+ if (mdl1dFrame_ == null) {
+ mdl1dFrame_ = new MdlFille1d(this);
}
}
-
+
/**
* @return La vue 1D, ou null si inexistante.
*/
public MdlFille1d get1dFrame() {
return mdl1dFrame_;
}
-
+
/**
* @return La vue 2D, ou null si inexistante.
*/
public MdlFille2d get2dFrame() {
return mdl2dFrame_;
}
-
+
/**
* Installe la vue 1d sur le desktop, et la rend active.
*/
public void install1dFrame() {
- boolean alreadyInstalled=false;
- for (JInternalFrame f: getAllInternalFrames()) {
+ boolean alreadyInstalled = false;
+ for (JInternalFrame f : getAllInternalFrames()) {
if (f.equals(mdl1dFrame_)) {
- alreadyInstalled=true;
+ alreadyInstalled = true;
break;
}
}
- if (!alreadyInstalled)
+ if (!alreadyInstalled) {
addInternalFrame(mdl1dFrame_);
- else
+ } else {
activateInternalFrame(mdl1dFrame_);
+ }
}
protected boolean buildExportDataToolIcon() {
@@ -258,17 +275,18 @@
}
/**
- * Ferme le projet, ferme les fenetres associ\xE9s, sans demande d'enregistrement en cas
- * de modif (ce controle a \xE9t\xE9 effectu\xE9 en amont).
+ * Ferme le projet, ferme les fenetres associ\xE9s, sans demande d'enregistrement en cas de modif (ce controle a \xE9t\xE9 effectu\xE9 en amont).
*/
protected void closeProject() {
- if (project_==null) return;
+ if (project_ == null) {
+ return;
+ }
project_.close();
try {
- if(mdl2dFrame_!=null){
+ if (mdl2dFrame_ != null) {
mdl2dFrame_.setClosed(true);
}
- if(mdl1dFrame_!=null){
+ if (mdl1dFrame_ != null) {
mdl1dFrame_.setClosed(true);
}
} catch (PropertyVetoException _evt) {
@@ -282,17 +300,20 @@
/**
* Cr\xE9e un nouveau projet, la fenetre 2D si necessaire.
+ *
* @param _add true : Recr\xE9e la fenetre.
*/
protected void createProject(final boolean _add) {
project_ = new MdlProjet();
project_.setOpening(true);
- if (_add) createNew2dFrame();
- else ((MdlVisuPanel)mdl2dFrame_.getVisuPanel()).initCalques(false);
+ if (_add) {
+ createNew2dFrame();
+ } else {
+ ((MdlVisuPanel) mdl2dFrame_.getVisuPanel()).initCalques(false);
+ }
createNew1dFrame();
project_.install(this);
BuLib.invokeLater(new Runnable() {
-
public void run() {
project_.setOpening(false);
// changeSaveActions(false);
@@ -323,6 +344,8 @@
importProject();
} else if ("AIDE_INDEX".equals(action)) {
displayHelp(getAideIndexUrl());
+ } else if ("JAVA3D".equals(action)) {
+ BJava3DVersionTest.showVersionDialog(this);
} else if (action.startsWith("TOGGLE")) {
final BuColumn c = getMainPanel().getRightColumn();
final JComponent comp = c.getToggleComponent(action);
@@ -331,17 +354,18 @@
c.revalidate();
}
} else if (action.startsWith("REOUVRIR")) {
- FuLog.trace(action.substring(9,action.length()-1));
- ouvrir(new File(action.substring(9,action.length()-1)));
- } else
+ FuLog.trace(action.substring(9, action.length() - 1));
+ ouvrir(new File(action.substring(9, action.length() - 1)));
+ } else {
super.actionPerformed(_evt);
+ }
}
/**
* Met a jour les fichiers recents chaque fois que necessaire.
*/
private void updateRecentFiles(File _fichier) {
- getMainMenuBar().addRecentFile(_fichier.getPath(),null);
+ getMainMenuBar().addRecentFile(_fichier.getPath(), null);
MdlPreferences.MDL.writeIniFile();
}
@@ -350,38 +374,41 @@
*/
@Override
public void exit() {
- if (!isExitCanceled())
+ if (!isExitCanceled()) {
confirmExit();
+ }
}
-
+
private boolean isExitCanceled() {
return exitCanceled_;
}
-
+
/**
* Definit si l'action Exit est autoris\xE9e (par exemple lors d'une sauvegarde)
+ *
* @param _b True : L'action est autoris\xE9e.
*/
private void setExitCanceled(boolean _b) {
- exitCanceled_=_b;
+ exitCanceled_ = _b;
}
-
+
/**
* L'action close est g\xE9r\xE9e au niveau applicatif (et non fenetre par fenetre).
+ *
* @return false
*/
@Override
public boolean isCloseFrameMode() {
return false;
}
-
+
/**
* Confirmation de la sortie avec ou sans sauvegarde.
*/
@Override
public boolean confirmExit() {
- if (!FudaaStartupExitPreferencesPanel.isExitConfirmed() ||
- question(MdlResource.getS("Quitter"), MdlResource.getS("Voulez-vous vraiment quitter ce logiciel ?"))) {
+ if (!FudaaStartupExitPreferencesPanel.isExitConfirmed()
+ || question(MdlResource.getS("Quitter"), MdlResource.getS("Voulez-vous vraiment quitter ce logiciel ?"))) {
return saveAndCloseProjet(new Runnable() {
// Lanc\xE9 apr\xE8s la sauvegarde, si op\xE9ration de sauvegarde concluante ou si pas de sauvegarde demand\xE9e.
public void run() {
@@ -402,7 +429,7 @@
}
});
}
-
+
/**
* Action "Fermer" le projet en cours.
*/
@@ -425,41 +452,40 @@
}
/**
- * Action "Ouvrir" un nouveau projet. Peut demander la sauvegarde du projet pr\xE9c\xE9demment ouvert si
- * existant.
+ * Action "Ouvrir" un nouveau projet. Peut demander la sauvegarde du projet pr\xE9c\xE9demment ouvert si existant.
+ *
* @param _f Le fichier projet \xE0 ouvrir. null, si le fichier doit etre choisi par l'utilisateur.
*/
public void ouvrir(final File _f) {
if (isProjectModified()) {
saveAndCloseProjet(new Runnable() {
-
public void run() {
ouvrir(_f);
}
});
return;
}
-
+
closeProject();
final File f = CtuluLibFile.exists(_f) ? _f : chooseFile(false);
- if (f==null) return; // Abandon utilisateur.
-
+ if (f == null) {
+ return; // Abandon utilisateur.
+ }
createProject(false);
setGlassPaneStop();
new CtuluRunnable(MdlResource.getS("Ouvrir"), MdlImplementation.this) {
-
public boolean run(ProgressionInterface _proj) {
project_.setOpening(true);
Runnable r = null;
try {
try {
- FudaaSaveZipLoader loader=new FudaaSaveZipLoader(f);
+ FudaaSaveZipLoader loader = new FudaaSaveZipLoader(f);
// Recup des infos pour utilisateur.
- BuInformationsSoftware is=FudaaSaveProject.getSoftwareInfos(loader);
- FuLog.trace("File version : "+(is.version==null ? "Undefined":is.version));
-
- r= FudaaSaveLib.restoreFille(MdlImplementation.this, mdl2dFrame_, _proj,loader);
+ BuInformationsSoftware is = FudaaSaveProject.getSoftwareInfos(loader);
+ FuLog.trace("File version : " + (is.version == null ? "Undefined" : is.version));
+
+ r = FudaaSaveLib.restoreFille(MdlImplementation.this, mdl2dFrame_, _proj, loader);
} catch (final IOException _evt) {
FuLog.error(_evt);
@@ -471,25 +497,28 @@
final Runnable swingRun = r;
BuLib.invokeLater(new Runnable() {
-
public void run() {
try {
addInternalFrame(mdl2dFrame_);
mdl2dFrame_.getCmdMng().clean();
-
- if (swingRun != null) swingRun.run();
-
+
+ if (swingRun != null) {
+ swingRun.run();
+ }
+
// Met a jour la fenetre 1d
- FudaaSaveZipLoader loader=null;
+ FudaaSaveZipLoader loader = null;
try {
- loader=new FudaaSaveZipLoader(f);
+ loader = new FudaaSaveZipLoader(f);
mdl1dFrame_.restoreFrom(loader, null);
mdl1dFrame_.getCmdMng().clean();
- }
- catch (IOException _exc) {}
- finally {
- if (loader!=null) {
- try { loader.close(); } catch (IOException _exc) {}
+ } catch (IOException _exc) {
+ } finally {
+ if (loader != null) {
+ try {
+ loader.close();
+ } catch (IOException _exc) {
+ }
}
}
@@ -498,9 +527,8 @@
project_.setSaved();
if (swingRun == null) {
MdlImplementation.this.warn(MdlResource.getS("Ouvrir"),
- MdlResource.getS("Le projet n'a pas \xE9t\xE9 ouvert!"));
- }
- else {
+ MdlResource.getS("Le projet n'a pas \xE9t\xE9 ouvert!"));
+ } else {
updateRecentFiles(project_.getParamsFile());
}
} finally {
@@ -508,7 +536,6 @@
}
}
-
});
}
@@ -522,8 +549,8 @@
*/
public void save() {
if (project_.getParamsFile() != null) {
-
- CtuluRunnable act=new CtuluRunnable(FudaaSaveLib.getActionSaveTitle(), this) {
+
+ CtuluRunnable act = new CtuluRunnable(FudaaSaveLib.getActionSaveTitle(), this) {
public boolean run(ProgressionInterface _proj) {
try {
setGlassPaneStop();
@@ -533,8 +560,7 @@
return true;
}
return false;
- }
- finally {
+ } finally {
unsetGlassPaneStop();
setExitCanceled(false);
}
@@ -542,16 +568,19 @@
};
act.setAfterRunnable(getSaveSwingRunnable(project_.getParamsFile()), true);
act.run();
- } else
+ } else {
saveAs();
+ }
}
-
+
/**
* Action "Enregistrer sous" le projet.
*/
public void saveAs() {
final File f = chooseNewFile(true);
- if (f == null) return;
+ if (f == null) {
+ return;
+ }
CtuluRunnable act = new CtuluRunnable(FudaaSaveLib.getActionSaveTitle(), this) {
public boolean run(ProgressionInterface _proj) {
@@ -563,8 +592,7 @@
return true;
}
return false;
- }
- finally {
+ } finally {
unsetGlassPaneStop();
setExitCanceled(false);
}
@@ -576,18 +604,18 @@
protected boolean isProjectModified() {
return project_ != null
- && (project_.getProjectState().isParamsModified() || project_.getProjectState().isUIModified());
+ && (project_.getProjectState().isParamsModified() || project_.getProjectState().isUIModified());
}
-
+
public void importProject() {
- MdlProjectImportPanel pn=new MdlProjectImportPanel();
+ MdlProjectImportPanel pn = new MdlProjectImportPanel();
if (CtuluDialogPanel.isOkResponse(pn.afficheModale(getFrame(), MdlResource.getS("Import d'un projet")))) {
- File f=pn.getFile();
+ File f = pn.getFile();
try {
FudaaSaveZipLoader loader = new FudaaSaveZipLoader(f);
- String[] ignoredLayers=pn.getIgnoredLayers();
+ String[] ignoredLayers = pn.getIgnoredLayers();
for (String s : ignoredLayers) {
- loader.setOption(CtuluArkLoader.OPTION_LAYER_IGNORE+s,CtuluLibString.toString(true));
+ loader.setOption(CtuluArkLoader.OPTION_LAYER_IGNORE + s, CtuluLibString.toString(true));
}
final CtuluTaskDelegate createTask = createTask(MdlResource.getS("Import d'un projet"));
@@ -595,7 +623,7 @@
// Probable pb de deadlock.
// createTask.start(new Runnable() {
// public void run() {
- FudaaSaveLib.restoreAndLaunch(MdlImplementation.this, mdl2dFrame_, createTask.getStateReceiver(), loader);
+ FudaaSaveLib.restoreAndLaunch(MdlImplementation.this, mdl2dFrame_, createTask.getStateReceiver(), loader);
// }
// });
@@ -610,15 +638,16 @@
/**
* Dans le thread swing....
- *
+ *
* @param _relaunch l'exe a lancer apr\xE8s: si l'utilisateur a accept\xE9 la fermeture du projet
*/
public boolean saveAndCloseProjet(final Runnable _relaunch) {
final Runnable r = new Runnable() {
-
public void run() {
closeProject();
- if (_relaunch != null) _relaunch.run();
+ if (_relaunch != null) {
+ _relaunch.run();
+ }
}
};
boolean save = false;
@@ -639,9 +668,11 @@
} else {
// on initilialise le fichier de dest si n\xE9cessaire
setFileIfNeeded();
- if (project_.getParamsFile()==null) return false;
-
- CtuluRunnable act=new CtuluRunnable(FudaaSaveLib.getActionSaveTitle(), this) {
+ if (project_.getParamsFile() == null) {
+ return false;
+ }
+
+ CtuluRunnable act = new CtuluRunnable(FudaaSaveLib.getActionSaveTitle(), this) {
public boolean run(ProgressionInterface _prog) {
// le fichier peut etre null si l'utilisateur a refuse de pr\xE9ciser un fichier
// dans ce cas, on ne sauvegarde pas.
@@ -650,16 +681,14 @@
setGlassPaneStop();
setExitCanceled(true);
FSigProjectPersistence.saveProject(MdlImplementation.this, project_,
- project_.getParamsFile(), _prog);
+ project_.getParamsFile(), _prog);
updateRecentFiles(project_.getParamsFile());
return true;
- }
- finally {
+ } finally {
unsetGlassPaneStop();
setExitCanceled(false);
}
- }
- else {
+ } else {
return false;
}
}
@@ -674,24 +703,26 @@
protected Runnable getSaveSwingRunnable(final File _paramFile/*, final JDialog _d*/) {
return new Runnable() {
-
public void run() {
- if (_paramFile != null) project_.setParamFile(_paramFile);
+ if (_paramFile != null) {
+ project_.setParamFile(_paramFile);
+ }
project_.setSaved();
// _d.dispose();
}
};
}
-
+
/**
* Construit le menu projet.
+ *
* @return Le menu projet.
*/
protected BuMenu buildProjectMenu() {
- BuMenu mn=new BuMenu(MdlResource.getS("Projet"),"mnPROJECT");
+ BuMenu mn = new BuMenu(MdlResource.getS("Projet"), "mnPROJECT");
mn.add(new MdlShow2DFrameAction(this));
mn.add(new MdlShow1DFrameAction(this));
-
+
mn.setVisible(false);
return mn;
}
@@ -708,23 +739,20 @@
_frAddTab.add(new FudaaLookPreferencesPanel(this));
_frAddTab.add(new BuBrowserPreferencesPanel(this));
_frAddTab.add(new EbliMiseEnPagePreferencesPanel());
- _frAddTab.add(new BuContainerPreferencesPanel(MdlResource.getS("Visuel"),MdlResource.getS("Cartographie"),
- new BuAbstractPreferencesComponent[] {
- new EbliGISPreferencesComponent(),
- new MdlLayerTreePreferencesComponent()
- }
- ));
+ _frAddTab.add(new BuContainerPreferencesPanel(MdlResource.getS("Visuel"), MdlResource.getS("Cartographie"),
+ new BuAbstractPreferencesComponent[]{
+ new EbliGISPreferencesComponent(),
+ new MdlLayerTreePreferencesComponent()
+ }));
_frAddTab.add(new BuContainerPreferencesPanel(MdlResource.getS("Export"),
- new BuAbstractPreferencesComponent[] {
- new CtuluTablePreferencesComponent(),
- new MascaretExportPreferencesComponent()
- }
- ));
+ new BuAbstractPreferencesComponent[]{
+ new CtuluTablePreferencesComponent(),
+ new MascaretExportPreferencesComponent()
+ }));
_frAddTab.add(new BuContainerPreferencesPanel(MdlResource.getS("Vue 1D"),
- new BuAbstractPreferencesComponent[] {
- new Mdl1dPreferencesComponent()
- }
- ));
+ new BuAbstractPreferencesComponent[]{
+ new Mdl1dPreferencesComponent()
+ }));
}
/**
@@ -744,16 +772,15 @@
sp.setPreferredSize(new Dimension(150, 80));
sp.setToolTipText(MdlResource.getS("Les t\xE2ches en cours"));
rc.addToggledComponent(MdlResource.getS("T\xE2ches"), "TOGGLE_TACHE", BuResource.BU.getToolIcon("tache"), sp,
- true, this).setToolTipText(MdlResource.getS("Cacher/Afficher les t\xE2ches"));
+ true, this).setToolTipText(MdlResource.getS("Cacher/Afficher les t\xE2ches"));
mp.setTaskView(taches);
}
-
+
/**
* Sauvegarde des pr\xE9f\xE9rences de l'appli \xE0 la sortie.
- *
- * Remarque importante : Certaines infos sauv\xE9es par cette m\xE9thode sont relues
- * par d'autres applications Fudaa, qui risquent alors de s'afficher de facon
- * inattendue.
+ *
+ * Remarque importante : Certaines infos sauv\xE9es par cette m\xE9thode sont relues par d'autres applications Fudaa, qui risquent alors de s'afficher de
+ * facon inattendue.
*/
protected void savePreferencesAndTerminate() {
final Point p = getFrame().getLocation();
@@ -762,16 +789,16 @@
BuPreferences.BU.putIntegerProperty("window.y", p.y);
BuPreferences.BU.putIntegerProperty("window.w", d.width);
BuPreferences.BU.putIntegerProperty("window.h", d.height);
- BuPreferences.BU.putIntegerProperty("leftcolumn.width",getMainPanel().getLeftColumn().getWidth());
- BuPreferences.BU.putIntegerProperty("rightcolumn.width",getMainPanel().getRightColumn().getWidth());
+ BuPreferences.BU.putIntegerProperty("leftcolumn.width", getMainPanel().getLeftColumn().getWidth());
+ BuPreferences.BU.putIntegerProperty("rightcolumn.width", getMainPanel().getRightColumn().getWidth());
BuPreferences.BU.writeIniFile();
-
+
BuRegistry.unregister(this.getFrame());
}
-
/**
* Maximisation syst\xE9matique de la fenetre.
+ *
* @param _f La fenetre ajout\xE9e.
*/
@Override
@@ -781,14 +808,13 @@
public void run() {
try {
_f.setMaximum(true);
- }
- catch (PropertyVetoException ex) {
+ } catch (PropertyVetoException ex) {
Logger.getLogger(MdlImplementation.class.getName()).log(Level.SEVERE, null, ex);
}
}
});
}
-
+
/**
* Mise en place de l'application ava,nt affichage.
*/
@@ -796,7 +822,7 @@
public void init() {
super.init();
- TransferHandler transHdl=new TransferHandler() {
+ TransferHandler transHdl = new TransferHandler() {
@Override
public boolean canImport(TransferSupport support) {
for (DataFlavor df : support.getDataFlavors()) {
@@ -818,11 +844,9 @@
}
ouvrir(files.get(0));
return true;
- }
- catch (UnsupportedFlavorException ufe) {
+ } catch (UnsupportedFlavorException ufe) {
ufe.printStackTrace();
- }
- catch (IOException ioe) {
+ } catch (IOException ioe) {
ioe.printStackTrace();
}
}
@@ -837,13 +861,9 @@
removeUnusedActions();
final BuMenuBar mb = getMainMenuBar();
// on enleve le menu des look and feel : moche car tout n'est pas mis a jour
-/* Issu de Fudaa-Prepro
- final BuMenu mAide = (BuMenu) b.getMenu("MENU_AIDE");
+ final BuMenu mAide = (BuMenu) mb.getMenu("MENU_AIDE");
+ addJava3DTest(mAide);
- mAide.add(TrLib.buildAideContextItem(this), 0);
- TrLib.addJavawsForJnlp(mAide);
- TrLib.addJava3DJMFTest(mAide);*/
-
// Les actions qu'on peut retrouver partout.
EbliActionMap.getInstance().addAction(new MdlBiefImportAction(this));
@@ -853,36 +873,36 @@
setEnabledForAction("OUVRIR", true);
setEnabledForAction("IMPORTER", true);
setEnabledForAction("EXPORTER", true);
-
- BuMenuRecentFiles mr= (BuMenuRecentFiles)mb.getMenu("REOUVRIR");
+
+ BuMenuRecentFiles mr = (BuMenuRecentFiles) mb.getMenu("REOUVRIR");
if (mr != null) {
mr.setPreferences(MdlPreferences.MDL);
mr.setResource(MdlResource.MDL);
mr.setEnabled(true);
}
-
-/* setEnabledForAction("MAJ", true);
- setEnabledForAction("SEND_COMMENT", true);
- setEnabledForAction("LAUNCH_JAVAWS", true);
- final BuMenu mFichier = (BuMenu) b.getMenu("MENU_FICHIER");
- mFichier.addMenuItem(MdlResource.getS("Fermer toutes les applications"), "CLOSE_ALL", BuResource.BU
- .getIcon("fermer"), true, 0);
- final BuToolBar tb = getMainToolBar();
- if (!isSupervisor()) {
- tb.addToolButton(TrResource.getSupervisorName(), TrResource.getS("ouvrir le superviseur"), "SUPERVISEUR",
- TrResource.getSupervisorIcon(), true).setVisible(true);
+ /* setEnabledForAction("MAJ", true);
+ setEnabledForAction("SEND_COMMENT", true);
+ setEnabledForAction("LAUNCH_JAVAWS", true);
+ final BuMenu mFichier = (BuMenu) b.getMenu("MENU_FICHIER");
+ mFichier.addMenuItem(MdlResource.getS("Fermer toutes les applications"), "CLOSE_ALL", BuResource.BU
+ .getIcon("fermer"), true, 0);
+ final BuToolBar tb = getMainToolBar();
+ if (!isSupervisor()) {
- }*/
+ tb.addToolButton(TrResource.getSupervisorName(), TrResource.getS("ouvrir le superviseur"), "SUPERVISEUR",
+ TrResource.getSupervisorIcon(), true).setVisible(true);
+
+ }*/
// les menus exporter et importer sont construit dynamiquement
// b.getMenu(getExporterCmd()).addItemListener(this);
BuMenu mmImport = (BuMenu) mb.getMenu("IMPORTER");
BuMenu mnExport = (BuMenu) mb.getMenu("EXPORTER");
-
+
// menu.addMenuItem(FSigImageImportAction.getCommonTitle(), "IMPORT_IMAGE", FSigImageImportAction.getCommonImage(),
// this).setEnabled(false);
mmImport.addMenuItem(MdlResource.getS("Importer un projet"), "IMPORT_PROJECT", BuResource.BU.getMenuIcon("importer"), this)
- .setEnabled(false);
+ .setEnabled(false);
// menu.addItemListener(this);
setEnabledForAction("IMPORT_PROJECT", true);
mmImport.setEnabled(true);
@@ -890,69 +910,69 @@
BuMenuItem itExportData = new BuMenuItem();
super.initExportDataButton(itExportData);
mnExport.add(itExportData);
-
- BuMenu mnProject=buildProjectMenu();
+
+ BuMenu mnProject = buildProjectMenu();
mb.addMenu(mnProject);
-
+
// Ajout du menu des exe tools
- BuMenu mnEdition=(BuMenu)mb.getMenu("MENU_EDITION");
+ BuMenu mnEdition = (BuMenu) mb.getMenu("MENU_EDITION");
mnEdition.addSeparator();
addExeToolsMenu(mnEdition);
-
-/* setEnabledForAction("RANGERICONES", true);
- if (!isSupervisor()) {
- final JComponent cp = getMainPanel().getMiddleComponent();
- if (cp instanceof JScrollPane) {
- ScrollPaneSelector.installScrollPaneSelector((JScrollPane) cp);
- }
- }*/
+
+ /* setEnabledForAction("RANGERICONES", true);
+ if (!isSupervisor()) {
+ final JComponent cp = getMainPanel().getMiddleComponent();
+ if (cp instanceof JScrollPane) {
+ ScrollPaneSelector.installScrollPaneSelector((JScrollPane) cp);
+ }
+ }*/
buildTaskView();
}
@Override
protected FSigManageExeTools getExeToolManager() {
- if (toolMng_==null)
- toolMng_=new FSigManageExeTools(this);
+ if (toolMng_ == null) {
+ toolMng_ = new FSigManageExeTools(this);
+ }
return toolMng_;
}
-
/**
* Suppression des commandes par d\xE9faut dans Fudaa.
*/
protected void removeUnusedActions() {
-/* Issu de Fudaa-Prepro
- final BuMenu r = (BuMenu) getMainMenuBar().getMenu("MENU_EDITION");
- if (r != null) {
- r.removeAll();
- r.addMenuItem(MdlResource.getS("D\xE9faire"), "DEFAIRE", false, KeyEvent.VK_Z);
- r.addMenuItem(MdlResource.getS("Refaire"), "REFAIRE", false).setAccelerator(
- KeyStroke.getKeyStroke(KeyEvent.VK_Z, InputEvent.CTRL_MASK | InputEvent.SHIFT_MASK));
- // normalement Ctrl-Y
- // r.addSeparator();
- //
- r.addMenuItem(MdlResource.getS("Copier"), "COPIER", false, KeyEvent.VK_C);
- r.addMenuItem(MdlResource.getS("Couper"), "COUPER", false, KeyEvent.VK_X);
- r.addMenuItem(MdlResource.getS("Coller"), "COLLER", false, KeyEvent.VK_V);
- // r.addMenuItem(MdlResource.getS("Dupliquer" ),"DUPLIQUER" ,false)
- // .setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,KeyEvent.CTRL_MASK|KeyEvent.SHIFT_MASK));
- r.addSeparator();
- FSigLib.addSelectionAction(r, null);
- // r.addMenuItem(MdlResource.getS("Remplacer..." ),"REMPLACER"
- // ,false,KeyEvent.VK_R);
- r.addSeparator();
- r.addMenuItem(MdlResource.getS("Pr\xE9f\xE9rences"), "PREFERENCE", false, KeyEvent.VK_F2);
- addConsoleMenu(r);
- final BuToolBar tb = getMainToolBar();
- BuActionRemover.removeAction(tb, "COUPER");
- BuActionRemover.removeAction(tb, "COLLER");
- BuActionRemover.removeAction(tb, "COPIER");
- BuActionRemover.removeAction(tb, "DUPLIQUER");
- BuActionRemover.removeAction(tb, "RANGERICONES");
- // BuActionRemover.removeAction(tb, "TOUTSELECTIONNER");
- BuActionRemover.removeAction(tb, "REMPLACER");
+ /* Issu de Fudaa-Prepro
+ final BuMenu r = (BuMenu) getMainMenuBar().getMenu("MENU_EDITION");
+ if (r != null) {
+ r.removeAll();
+ r.addMenuItem(MdlResource.getS("D\xE9faire"), "DEFAIRE", false, KeyEvent.VK_Z);
+ r.addMenuItem(MdlResource.getS("Refaire"), "REFAIRE", false).setAccelerator(
+ KeyStroke.getKeyStroke(KeyEvent.VK_Z, InputEvent.CTRL_MASK | InputEvent.SHIFT_MASK));
+ // normalement Ctrl-Y
+ // r.addSeparator();
+ //
+ r.addMenuItem(MdlResource.getS("Copier"), "COPIER", false, KeyEvent.VK_C);
+ r.addMenuItem(MdlResource.getS("Couper"), "COUPER", false, KeyEvent.VK_X);
+ r.addMenuItem(MdlResource.getS("Coller"), "COLLER", false, KeyEvent.VK_V);
+ // r.addMenuItem(MdlResource.getS("Dupliquer" ),"DUPLIQUER" ,false)
+ // .setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,KeyEvent.CTRL_MASK|KeyEvent.SHIFT_MASK));
+ r.addSeparator();
+ FSigLib.addSelectionAction(r, null);
+ // r.addMenuItem(MdlResource.getS("Remplacer..." ),"REMPLACER"
+ // ,false,KeyEvent.VK_R);
+ r.addSeparator();
+ r.addMenuItem(MdlResource.getS("Pr\xE9f\xE9rences"), "PREFERENCE", false, KeyEvent.VK_F2);
+ addConsoleMenu(r);
+ final BuToolBar tb = getMainToolBar();
+ BuActionRemover.removeAction(tb, "COUPER");
+ BuActionRemover.removeAction(tb, "COLLER");
+ BuActionRemover.removeAction(tb, "COPIER");
+ BuActionRemover.removeAction(tb, "DUPLIQUER");
+ BuActionRemover.removeAction(tb, "RANGERICONES");
+ // BuActionRemover.removeAction(tb, "TOUTSELECTIONNER");
+ BuActionRemover.removeAction(tb, "REMPLACER");
- }*/
+ }*/
/*
* removeAction("COUPER"); removeAction("COLLER"); removeAction("COPIER"); removeAction("DUPLIQUER");
* removeAction("TOUTSELECTIONNER"); removeAction("REMPLACER");
@@ -973,5 +993,4 @@
super.addFrameListLeft();
createProject(true);
}
-
}
Modified: trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/LayerGridController.java
===================================================================
--- trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/LayerGridController.java 2013-01-05 00:01:30 UTC (rev 8183)
+++ trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/LayerGridController.java 2013-01-05 00:02:06 UTC (rev 8184)
@@ -21,6 +21,7 @@
import org.fudaa.fudaa.modeleur.LibUtils;
import org.fudaa.fudaa.modeleur.grid.action.GridSetMeshPaintedAction;
import org.fudaa.fudaa.modeleur.grid.action.GridUnsetMeshPaintedAction;
+import org.fudaa.fudaa.modeleur.grid.action.Show3DAction;
import org.fudaa.fudaa.modeleur.resource.MdlResource;
import org.fudaa.fudaa.sig.layer.FSigEditor;
@@ -153,7 +154,9 @@
new GridUnsetMeshPaintedAction(this),
new GridSetMeshPaintedAction(this),
null,
- new ExportGridAction(this)});
+ new ExportGridAction(this),
+ new Show3DAction(this)
+ });
eltLayer.setModele(grid);
eltLayer.repaint();
}
Modified: trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/MdlCalqueMultiPointEditable.java
===================================================================
--- trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/MdlCalqueMultiPointEditable.java 2013-01-05 00:01:30 UTC (rev 8183)
+++ trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/MdlCalqueMultiPointEditable.java 2013-01-05 00:02:06 UTC (rev 8184)
@@ -30,6 +30,8 @@
import org.fudaa.fudaa.modeleur.action.CalqueGridTriangleConfigurationAction;
import org.fudaa.fudaa.modeleur.grid.action.CreateIsoLinesAction;
import org.fudaa.fudaa.modeleur.grid.action.DeleteGridAction;
+import org.fudaa.fudaa.modeleur.grid.action.ExportGridAction;
+import org.fudaa.fudaa.modeleur.grid.action.Show3DAction;
import org.fudaa.fudaa.sig.layer.FSigEditor;
/**
@@ -74,7 +76,9 @@
vacts.add(createGridAction.getStopAction());
vacts.add(new DeleteGridAction(layerGridDelegate));
vacts.add(null);
+ vacts.add(new Show3DAction(layerGridDelegate));
vacts.add(new CreateIsoLinesAction(layerGridDelegate));
+ vacts.add(new ExportGridAction(layerGridDelegate));
vacts.add(null);
vacts.add(new CalqueGridTriangleConfigurationAction());
vacts.add(null);
Added: trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/action/Show3DAction.java
===================================================================
--- trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/action/Show3DAction.java (rev 0)
+++ trunk/soft/fudaa-modeleur/src/main/java/org/fudaa/fudaa/modeleur/grid/action/Show3DAction.java 2013-01-05 00:02:06 UTC (rev 8184)
@@ -0,0 +1,75 @@
+/*
+ GPL 2
+ */
+package org.fudaa.fudaa.modeleur.grid.action;
+
+import com.memoire.bu.BuIcon;
+import java.awt.Frame;
+import java.awt.event.ActionEvent;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import javax.swing.JFrame;
+import org.fudaa.ebli.commun.BJava3DVersionTest;
+import org.fudaa.ebli.commun.EbliActionSimple;
+import org.fudaa.ebli.commun.EbliLib;
+import org.fudaa.ebli.ressource.EbliResource;
+import org.fudaa.ebli.volume.ZVue3DPanel;
+import org.fudaa.fudaa.meshviewer.threedim.Mv3DFactory;
+import org.fudaa.fudaa.modeleur.grid.LayerGridController;
+import org.fudaa.fudaa.modeleur.resource.MdlResource;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class Show3DAction extends EbliActionSimple {
+
+ private final LayerGridController delegate;
+ JFrame f_;
+
+ public Show3DAction(final LayerGridController delegate) {
+ super(EbliLib.getS("Afficher la vue 3D"), EbliResource.EBLI.getToolIcon("3d"), "SHOW_3D");
+ this.delegate = delegate;
+ setEnabled(true);
+ super.setDefaultToolTip(EbliLib.getS("Afficher la vue 3D"));
+ super.setUnableToolTip(MdlResource.getS("Le semis doit \xEAtre maill\xE9 et Java3D install\xE9"));
+ }
+
+ public ZVue3DPanel getVue3D() {
+ return (ZVue3DPanel) f_.getContentPane();
+ }
+
+ @Override
+ public void updateStateBeforeShow() {
+ setEnabled(delegate.getGridLayer() != null);
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent _e) {
+ if (!BJava3DVersionTest.isJava3DFound()) {
+ delegate.getUI().error(getTitle(), BJava3DVersionTest.getHtmlInstallMessage(true), false);
+ return;
+ }
+ if (delegate.getGridLayer() == null) {
+ delegate.getUI().error(getTitle(), MdlResource.getS("Le semis doit \xEAtre maill\xE9"), false);
+ return;
+ }
+ if (f_ == null) {
+ f_ = new JFrame(super.getTitle() + " : " + delegate.getParentLayer().getTitle());
+ f_.setIconImage(((BuIcon) getIcon()).getImage());
+ f_.addWindowListener(new WindowAdapter() {
+ @Override
+ public void windowClosed(final WindowEvent _evt) {
+ f_ = null;
+ }
+ });
+ new Mv3DFactory().afficheFrame(f_, delegate.getExportGridData(), null, delegate.getUI());
+ } else {
+ f_.setTitle(super.getTitle() + " : " + delegate.getParentLayer().getTitle());
+ if (f_.getExtendedState() == Frame.ICONIFIED) {
+ f_.setExtendedState(Frame.NORMAL);
+ }
+ f_.toFront();
+ }
+ }
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|