From: <bma...@us...> - 2009-03-10 15:59:08
|
Revision: 4518 http://fudaa.svn.sourceforge.net/fudaa/?rev=4518&view=rev Author: bmarchan Date: 2009-03-10 15:58:58 +0000 (Tue, 10 Mar 2009) Log Message: ----------- Correctif sur le collage des sommets. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/CutCopyPasteManager.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/CutCopyPasteManager.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/CutCopyPasteManager.java 2009-03-08 15:16:35 UTC (rev 4517) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/CutCopyPasteManager.java 2009-03-10 15:58:58 UTC (rev 4518) @@ -74,21 +74,21 @@ * manipulation de la fen\xEAtre. */ protected class EventFrameManager extends InternalFrameAdapter { - public boolean blockPaste_=false; - public boolean blockCopy_=false; - public boolean blockCut_=false; + public boolean disablePaste_=false; + public boolean disableCopy_=false; + public boolean disableCut_=false; public void internalFrameActivated(InternalFrameEvent e) { - blockPaste_=false; - blockCopy_=false; - blockCut_=false; + disablePaste_=false; + disableCopy_=false; + disableCut_=false; updateButtons(); } public void internalFrameDeactivated(InternalFrameEvent e) { - blockPaste_=true; - blockCopy_=true; - blockCut_=true; + disablePaste_=true; + disableCopy_=true; + disableCut_=true; updateButtons(); } } @@ -98,13 +98,13 @@ * calques. */ protected class EventSelectedGeometriesManager implements ZSelectionListener { - public boolean blockPaste_=false; - public boolean blockCopy_=false; - public boolean blockCut_=false; + public boolean disablePaste_=false; + public boolean disableCopy_=false; + public boolean disableCut_=false; public void selectionChanged(ZSelectionEvent _evt) { - blockCopy_=zScene_.isSelectionEmpty(); - blockCut_=zScene_.isSelectionEmpty()||zScene_.isAtomicMode(); + disableCopy_=zScene_.isSelectionEmpty(); + disableCut_=zScene_.isSelectionEmpty()||zScene_.isAtomicMode(); updateButtons(); } } @@ -114,14 +114,13 @@ * l'arbre des calques. */ protected class EventSelectedCalquesManager implements TreeSelectionListener { - public boolean blockPaste_=false; - public boolean blockCopy_=false; - public boolean blockCut_=false; + public boolean disablePaste_=false; + public boolean disableCopy_=false; + public boolean disableCut_=false; public void valueChanged(TreeSelectionEvent e) { - blockCut_=!(mdlFille2d_.getArbreCalqueModel().getSelectedCalque() instanceof ZCalqueEditable); - blockCopy_=blockCut_; - blockPaste_=blockCut_; + disableCut_=!(mdlFille2d_.getArbreCalqueModel().getSelectedCalque() instanceof ZCalqueEditable); + disablePaste_=!(mdlFille2d_.getArbreCalqueModel().getSelectedCalque() instanceof ZCalqueEditable); updateButtons(); } } @@ -153,9 +152,9 @@ * Active les boutons qui doivent l'\xEAtre. */ protected void updateButtons() { - copyAction_.setEnabled(!eventManager1_.blockCopy_&&!eventManager2_.blockCopy_&&!eventManager3_.blockCopy_); - pasteAction_.setEnabled((models_.size()>0||coordinates_.size()>0)&&!eventManager1_.blockPaste_&&!eventManager2_.blockPaste_&&!eventManager3_.blockPaste_); - cutAction_.setEnabled(!eventManager1_.blockCut_&&!eventManager2_.blockCut_&&!eventManager3_.blockCut_); + copyAction_.setEnabled(!eventManager1_.disableCopy_&&!eventManager2_.disableCopy_&&!eventManager3_.disableCopy_); + pasteAction_.setEnabled((models_.size()>0||coordinates_.size()>0)&&!eventManager1_.disablePaste_&&!eventManager2_.disablePaste_&&!eventManager3_.disablePaste_); + cutAction_.setEnabled(!eventManager1_.disableCut_&&!eventManager2_.disableCut_&&!eventManager3_.disableCut_); } public void copy() { @@ -166,6 +165,7 @@ int[] idxScene=zScene_.getLayerSelectionMulti().getIdxSelected(); if (idxScene!=null) { for(int i=0;i<idxScene.length;i++) { + int idx=zScene_.sceneId2LayerId(idxScene[i]); // Extraction des informations sur la zone GISZoneCollection zone=((ZModeleEditable) zScene_.getLayerForId(idxScene[i]).modeleDonnees()).getGeomData(); GISAttributeInterface attrZ=zone.getAttributeIsZ(); @@ -173,16 +173,16 @@ if(attrZ!=null) idxAttrZ=zone.getIndiceOf(zone.getAttributeIsZ()); // La g\xE9om\xE9trie \xE0 traiter - CoordinateSequence seqGeom=zone.getCoordinateSequence(zScene_.sceneId2LayerId(idxScene[i])); + CoordinateSequence seqGeom=zone.getCoordinateSequence(idx); int[] selectedIdx=zScene_.getLayerSelectionMulti().getSelection(idxScene[i]).getSelectedIndex(); // Extraction des coordonn\xE9es for(int j=0;j<selectedIdx.length;j++) { Coordinate coord=seqGeom.getCoordinate(selectedIdx[j]); if(attrZ!=null) { if(attrZ.isAtomicValue()) - coord.z=(Double) ((GISAttributeModel) zone.getValue(idxAttrZ, zScene_.sceneId2LayerId(idxScene[i]))).getObjectValueAt(selectedIdx[j]); + coord.z=(Double) ((GISAttributeModel) zone.getValue(idxAttrZ, idx)).getObjectValueAt(selectedIdx[j]); else - coord.z=(Double) zone.getValue(selectedIdx[j], idxAttrZ); + coord.z=(Double) zone.getValue(idxAttrZ,idx); } coordinates_.add(coord); } @@ -249,7 +249,7 @@ } // Collage de points else { - cmd=new CtuluCommandComposite(FudaaLib.getS("Coller des points")); + cmd=new CtuluCommandComposite(FudaaLib.getS("Coller des sommets")); ZCalqueEditable calque=((ZCalqueEditable)zScene_.getCalqueActif()); ZModeleEditable modele=(ZModeleEditable)calque.modeleDonnees(); GISZoneCollection zone=modele.getGeomData(); @@ -279,9 +279,9 @@ Object[] data=new Object[zone.getNbAttributes()]; if (attrZ!=null) if (attrZ.isAtomicValue()) { - data[idxAttrZ]=new double[coordSeq.size()]; + data[idxAttrZ]=new Double[coordSeq.size()]; for (int i=0; i<coordSeq.size(); i++) - ((double[])data[idxAttrZ])[i]=coordSeq.getOrdinate(i, 2); + ((Double[])data[idxAttrZ])[i]=new Double(coordSeq.getOrdinate(i, 2)); } else { boolean allSame=true; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |