|
From: <bma...@us...> - 2015-04-20 09:44:43
|
Revision: 9114
http://sourceforge.net/p/fudaa/svn/9114
Author: bmarchan
Date: 2015-04-20 09:44:41 +0000 (Mon, 20 Apr 2015)
Log Message:
-----------
Nouveaux outils Deplacement et rotation.
Modified Paths:
--------------
trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivFille2d.java
trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivImplementation.java
trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivVisuPanel.java
trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivShow3DTransectAction.java
trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/layer/PivTransectLayer.java
Modified: trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivFille2d.java
===================================================================
--- trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivFille2d.java 2015-04-20 09:14:18 UTC (rev 9113)
+++ trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivFille2d.java 2015-04-20 09:44:41 UTC (rev 9114)
@@ -40,7 +40,7 @@
JComponent[] cmps=getVisuPanel().getSpecificTools();
JComponent[] tools=new JComponent[cmps.length+superCmps.length];
System.arraycopy(superCmps, 0, tools, 0, superCmps.length);
- System.arraycopy(cmps, 0, tools, superCmps.length-1, cmps.length);
+ System.arraycopy(cmps, 0, tools, superCmps.length, cmps.length);
return tools;
}
Modified: trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivImplementation.java
===================================================================
--- trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivImplementation.java 2015-04-20 09:14:18 UTC (rev 9113)
+++ trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivImplementation.java 2015-04-20 09:44:41 UTC (rev 9114)
@@ -25,8 +25,10 @@
import javax.imageio.ImageReader;
import javax.swing.AbstractButton;
import javax.swing.ButtonGroup;
+import javax.swing.JCheckBox;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
+import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.SwingUtilities;
import javax.swing.TransferHandler;
@@ -696,11 +698,22 @@
mr.setResource(PivResource.PIV);
}
+ // Le menu Editer
+ BuMenu mn= (BuMenu)mb.getMenu("MENU_EDITION");
+ int idx=mn.indexOf("COPIER");
+ // Au cas ou...
+ if (idx==-1)
+ idx=mn.getComponentCount();
+ mn.add(get2dFrame().getVisuPanel().getEditAction().buildMenuItem(EbliComponentFactory.INSTANCE),idx++);
+ mn.add(get2dFrame().getVisuPanel().getDeplacementAction().buildMenuItem(EbliComponentFactory.INSTANCE),idx++);
+ mn.add(get2dFrame().getVisuPanel().getRotationAction().buildMenuItem(EbliComponentFactory.INSTANCE),idx++);
+ mn.insertSeparator(idx++);
+
// les menus exporter et importer sont construit dynamiquement
// buildImportMenu();
setEnabledForAction("IMPORTER", false);
buildExportMenu();
- BuMenu mn=buildPivMenu();
+ mn=buildPivMenu();
mb.addMenu(mn);
}
@@ -808,7 +821,7 @@
mn.add(sm);
mn.add(get2dFrame().getVisuPanel().getRealView().getParamsTransectAction().buildMenuItem(EbliComponentFactory.INSTANCE));
mn.add(new PivComputeFlowAction(this));
- mn.add(get2dFrame().getVisuPanel().getShowFlowAction().buildMenuItem(EbliComponentFactory.INSTANCE));
+// mn.add(get2dFrame().getVisuPanel().getShowFlowAction().buildMenuItem(EbliComponentFactory.INSTANCE));
mn.add(new PivShow3DTransectAction(this));
mn.addSeparator(PivResource.getS("Vue"));
@@ -822,8 +835,6 @@
mn.add(itOriginalView);
mn.add(itRealView);
mn.add(itTransfView);
- mn.addSeparator();
- mn.add(get2dFrame().getVisuPanel().getEditAction());
mn.setVisible(true);
return mn;
Modified: trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivVisuPanel.java
===================================================================
--- trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivVisuPanel.java 2015-04-20 09:14:18 UTC (rev 9113)
+++ trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivVisuPanel.java 2015-04-20 09:44:41 UTC (rev 9114)
@@ -8,6 +8,7 @@
package org.fudaa.fudaa.piv;
import java.awt.Color;
+import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
@@ -15,18 +16,22 @@
import javax.swing.Action;
import javax.swing.JComponent;
import javax.swing.JMenu;
+import javax.swing.SwingUtilities;
import org.fudaa.ctulu.gis.GISAttributeDouble;
import org.fudaa.ctulu.gis.GISAttributeString;
import org.fudaa.ebli.animation.EbliAnimationSourceInterface;
import org.fudaa.ebli.calque.BCalqueAffichage;
import org.fudaa.ebli.calque.ZEbliCalquesPanel;
+import org.fudaa.ebli.calque.action.SceneDeplacementAction;
+import org.fudaa.ebli.calque.action.SceneRotationAction;
import org.fudaa.ebli.calque.edition.ZCalqueEditable;
import org.fudaa.ebli.calque.edition.ZCalqueEditionInteraction;
import org.fudaa.ebli.calque.edition.ZEditorDefault;
import org.fudaa.ebli.commun.EbliActionAbstract;
import org.fudaa.ebli.commun.EbliActionInterface;
import org.fudaa.ebli.commun.EbliActionPaletteAbstract;
+import org.fudaa.ebli.commun.EbliComponentFactory;
import org.fudaa.ebli.commun.EbliUIProperties;
import org.fudaa.ebli.trace.TraceIcon;
import org.fudaa.ebli.trace.TraceIconModel;
@@ -121,6 +126,8 @@
private PivShowVelocityAction actShowVelocities_;
private PivShowFlowAction actShowFlow_;
private PivEditAction actEdit_;
+ private SceneRotationAction actRotation_;
+ private SceneDeplacementAction actDeplacement_;
/**
* Construction des calques. Une partie est d\xE9j\xE0 construite par d\xE9faut dans
@@ -272,9 +279,8 @@
actShowFlow_=new PivShowFlowAction((PivImplementation)getCtuluUI());
actEdit_=new PivEditAction(this);
getScene().addSelectionListener(actEdit_);
-
// Les actions affich\xE9es dans le menu contextuel.
- getEditor().getSceneEditor().setActions(new EbliActionInterface[]{actEdit_,null});
+ getEditor().getSceneEditor().setActions(new EbliActionInterface[]{actEdit_});
}
/**
@@ -349,6 +355,50 @@
return actEdit_;
}
+ public SceneRotationAction getRotationAction() {
+ if (actRotation_==null) {
+ actRotation_=new SceneRotationAction(getArbreCalqueModel().getTreeSelectionModel(), gisEditor_, gisEditor_.getSceneEditor(),getEbliFormatter()) {
+
+ /**
+ * Surchag\xE9 pour d\xE9finir le desktop au moment de l'affichage.
+ */
+ @Override
+ public void showWindow() {
+ // Necessaire, sinon la palette est visualis\xE9e en externe. Ne peut \xEAtre fait avant, car le desktop n'est pas
+ // encore existant.
+ BuDesktop desk=(BuDesktop)SwingUtilities.getAncestorOfClass(BuDesktop.class,PivVisuPanel.this);
+ if (desk!=null)
+ setDesktop(desk);
+ super.showWindow();
+ }
+ };
+ }
+
+ return actRotation_;
+ }
+
+ public SceneDeplacementAction getDeplacementAction() {
+ if (actDeplacement_==null) {
+ actDeplacement_=new SceneDeplacementAction(getArbreCalqueModel().getTreeSelectionModel(), gisEditor_, getEbliFormatter(), null) {
+
+ /**
+ * Surchag\xE9 pour d\xE9finir le desktop au moment de l'affichage.
+ */
+ @Override
+ public void showWindow() {
+ // Necessaire, sinon la palette est visualis\xE9e en externe. Ne peut \xEAtre fait avant, car le desktop n'est pas
+ // encore existant.
+ BuDesktop desk=(BuDesktop)SwingUtilities.getAncestorOfClass(BuDesktop.class,PivVisuPanel.this);
+ if (desk!=null)
+ setDesktop(desk);
+ super.showWindow();
+ }
+ };
+ }
+
+ return actDeplacement_;
+ }
+
/**
* @return Le calque d'edition de formes.
*/
@@ -483,10 +533,27 @@
return new EbliActionInterface[0];
}
+ AbstractButton btRotation_;
+ AbstractButton btDeplacement_;
+
+ /**
+ * @return Les actions sp\xE9cifiques de la vue affich\xE9es dans la barre d'actions.
+ */
public JComponent[] getSpecificTools() {
BuDesktop desk=((PivImplementation)getCtuluUI()).getMainPanel().getDesktop();
- JComponent[] cps=getCurrentView().getSpecificTools();
+ JComponent[] cpsView=getCurrentView().getSpecificTools();
+ JComponent[] cps=new JComponent[cpsView.length+2];
+ System.arraycopy(cpsView, 0, cps, 2, cpsView.length);
+
+ if (btRotation_==null)
+ btRotation_=getRotationAction().buildToolButton(EbliComponentFactory.INSTANCE);
+ if (btDeplacement_==null)
+ btDeplacement_=getDeplacementAction().buildToolButton(EbliComponentFactory.INSTANCE);
+
+ cps[0]=btRotation_;
+ cps[1]=btDeplacement_;
+
for (JComponent cp : cps) {
if (cp instanceof AbstractButton) {
AbstractButton bt=(AbstractButton)cp;
Modified: trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivShow3DTransectAction.java
===================================================================
--- trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivShow3DTransectAction.java 2015-04-20 09:14:18 UTC (rev 9113)
+++ trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivShow3DTransectAction.java 2015-04-20 09:44:41 UTC (rev 9114)
@@ -30,7 +30,7 @@
PivShow3DTransectPanel pn;
public PivShow3DTransectAction(PivImplementation _impl) {
- super(PivResource.getS("Graphe 3D du(des) transect(s)..."), null, "SHOW_3D_GRAPH_TRANS");
+ super(PivResource.getS("Vue 3D du(des) transect(s)..."), null, "SHOW_3D_GRAPH_TRANS");
impl=_impl;
_impl.get2dFrame().getVisuPanel().getScene().addSelectionListener(this);
Modified: trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/layer/PivTransectLayer.java
===================================================================
--- trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/layer/PivTransectLayer.java 2015-04-20 09:14:18 UTC (rev 9113)
+++ trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/layer/PivTransectLayer.java 2015-04-20 09:44:41 UTC (rev 9114)
@@ -3,7 +3,6 @@
import java.awt.Graphics2D;
import org.fudaa.ebli.calque.edition.ZCalqueLigneBriseeEditable;
-import org.fudaa.ebli.calque.edition.ZModeleLigneBriseeEditable;
import org.fudaa.ebli.geometrie.GrBoite;
import org.fudaa.ebli.geometrie.GrMorphisme;
import org.fudaa.ebli.geometrie.GrPoint;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|