From: <bma...@us...> - 2008-10-20 13:23:36
|
Revision: 4083 http://fudaa.svn.sourceforge.net/fudaa/?rev=4083&view=rev Author: bmarchan Date: 2008-10-20 13:23:25 +0000 (Mon, 20 Oct 2008) Log Message: ----------- Edition possible sur tout objet selectionn?\195?\169, m?\195?\170me quand l'objet selectionn?\195?\169 n'est pas dans le calque selectionn?\195?\169. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZCalqueSelectionInteractionAbstract.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZCalqueSelectionInteractionSimple.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZEbliCalquesPanel.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZScene.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalqueLigneBriseeEditable.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalqueMultiPointEditable.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalquePointEditable.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorDefault.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorInterface.java branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/sig/layer/FSigEditor.java branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/sig/layer/FSigVisuPanel.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZCalqueSelectionInteractionAbstract.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZCalqueSelectionInteractionAbstract.java 2008-10-20 09:47:19 UTC (rev 4082) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZCalqueSelectionInteractionAbstract.java 2008-10-20 13:23:25 UTC (rev 4083) @@ -31,6 +31,7 @@ import org.fudaa.ctulu.CtuluLib; +import org.fudaa.ebli.calque.edition.ZEditorDefault; import org.fudaa.ebli.commun.EbliActionMap; import org.fudaa.ebli.commun.EbliEnum; import org.fudaa.ebli.commun.EbliLib; @@ -126,6 +127,9 @@ /** La scene */ private ZScene scene_=null; + + /** L'editeur par defaut (pour la commande Edit notamment) */ + protected ZEditorDefault editor_=null; public final ZSelectionTrace getTrace() { return trace_; @@ -342,6 +346,10 @@ protected boolean editionAsked() { return false; } + + public void setEditor(ZEditorDefault _editor) { + editor_=_editor; + } /** * Methode invoquee quand on lache un bouton de la souris. <br> Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZCalqueSelectionInteractionSimple.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZCalqueSelectionInteractionSimple.java 2008-10-20 09:47:19 UTC (rev 4082) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZCalqueSelectionInteractionSimple.java 2008-10-20 13:23:25 UTC (rev 4083) @@ -16,6 +16,7 @@ import org.fudaa.ctulu.gis.GISGeometryFactory; +import org.fudaa.ebli.calque.edition.ZEditorDefault; import org.fudaa.ebli.commun.EbliSelectionMode; import org.fudaa.ebli.commun.EbliSelectionState; import org.fudaa.ebli.geometrie.GrBoite; @@ -30,7 +31,7 @@ public class ZCalqueSelectionInteractionSimple extends ZCalqueSelectionInteractionAbstract { // private ZCalqueAffichageDonneesInterface zcalquesActif_; - + /** * Cr\xE9ation d'un calque de s\xE9lection sans objets s\xE9lectionnables. */ @@ -40,7 +41,7 @@ protected boolean editionAsked() { // if (getScene() != null) { - return internalGetScene().editSelected(); + return editor_.edit()!=null; // return true; // } // return false; Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZEbliCalquesPanel.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZEbliCalquesPanel.java 2008-10-20 09:47:19 UTC (rev 4082) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZEbliCalquesPanel.java 2008-10-20 13:23:25 UTC (rev 4083) @@ -390,11 +390,14 @@ } controller_ = _controller; controller_.setView(this); - + scene_=new ZScene(gcDonnees_,controller_.getCqSelectionI()); scene_.setRestrictedToCalqueActif(true); scene_.addSelectionListener(this); modelArbre_.addTreeModelListener(scene_); + + gisEditor_=createGisEditor(); + controller_.getCqSelectionI().setEditor(gisEditor_); } protected ZEditorDefault createGisEditor() { Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZScene.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZScene.java 2008-10-20 09:47:19 UTC (rev 4082) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZScene.java 2008-10-20 13:23:25 UTC (rev 4083) @@ -642,15 +642,6 @@ } } - public boolean editSelected() { - FuLog.warning("ZScene.editSelected() bad implementation"); - if (cqActif_ != null && cqActif_ instanceof ZCalqueAffichageDonneesInterface) { - ((ZCalqueAffichageDonneesInterface)cqActif_).editSelected(); - return true; - } - return false; - } - /** * Peut \xEAtre de taille = 0. Pas null. * @return Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalqueLigneBriseeEditable.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalqueLigneBriseeEditable.java 2008-10-20 09:47:19 UTC (rev 4082) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalqueLigneBriseeEditable.java 2008-10-20 13:23:25 UTC (rev 4083) @@ -48,7 +48,7 @@ } public String editSelected() { - return editor_ == null ? EbliLib.getS("Edition impossible") : editor_.edit(this); + return editor_ == null ? EbliLib.getS("Edition impossible") : editor_.edit(); } private void addPoint(final int _ligneIdx, final int _idxBefore, final double _x, final double _y, final CtuluCommandContainer _cmd) { Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalqueMultiPointEditable.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalqueMultiPointEditable.java 2008-10-20 09:47:19 UTC (rev 4082) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalqueMultiPointEditable.java 2008-10-20 13:23:25 UTC (rev 4083) @@ -50,7 +50,7 @@ } public String editSelected() { - return editor_ == null ? EbliLib.getS("Edition impossible") : editor_.edit(this); + return editor_ == null ? EbliLib.getS("Edition impossible") : editor_.edit(); } // /** Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalquePointEditable.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalquePointEditable.java 2008-10-20 09:47:19 UTC (rev 4082) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZCalquePointEditable.java 2008-10-20 13:23:25 UTC (rev 4083) @@ -127,7 +127,7 @@ } public String editSelected() { - return editor_ == null ? EbliLib.getS("Edition impossible") : editor_.edit(this); + return editor_ == null ? EbliLib.getS("Edition impossible") : editor_.edit(); } Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorDefault.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorDefault.java 2008-10-20 09:47:19 UTC (rev 4082) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorDefault.java 2008-10-20 13:23:25 UTC (rev 4083) @@ -720,18 +720,7 @@ sceneEditor_.setMng(_mng); } - public void editSelectedLayer() { - if (isEditable(getSupport().getCalqueActif())) { - edit(getSupport().getCalqueActif()); - } - } - - /** - * Contrairement \xE0 ce que laisse penser le prototype, cette fonction lance - * l'\xE9dition des g\xE9om\xE9tries quelque soit le calque dans lequel les g\xE9om\xE9tries - * sont selectionn\xE9. Le param\xE8tre _target, n'est pas utilis\xE9. - */ - public String edit(final Object _target) { + public String edit() { // R\xE9cup\xE9ration des calques contenant des g\xE9om\xE9tries selectionn\xE9es \\ ZCalqueAffichageDonneesInterface[] calques=panel_.getScene().getAllLayers(); ArrayList<ZCalqueAffichageDonneesInterface> claquesWithSelectedObjects=new ArrayList<ZCalqueAffichageDonneesInterface>(); @@ -743,20 +732,16 @@ return EbliLib.getS("La s\xE9lection courante est vide"); else if (claquesWithSelectedObjects.size()>1){ ui_.warn("Information", "La selection dans plusieurs calques n'est pas g\xE9r\xE9e par la fen\xEAtre d'\xE9dition.", false); - /*BuInternalFrame i = new BuInternalFrame("Information", false, true, false, false); - i.add(new BuLabel("La selection dans plusieurs calques n'est pas g\xE9r\xE9e par la fen\xEAtre d'\xE9dition.")); - i.setVisible(true); - i.*/ return EbliLib.getS("La selection dans plusieurs calques n'est pas g\xE9r\xE9e par la fen\xEAtre d'\xE9dition."); } ZCalqueEditable calque=(ZCalqueEditable)claquesWithSelectedObjects.get(0); // G\xE9n\xE9ration d'une boite d'\xE9dition selon le type de selection et d'\xE9dition \\ if (((ZCalqueEditable)calque).isAtomicMode()) - editVertexObject((ZCalqueEditable)calque); + editVertexObject(calque); else if (calque.isOnlyOneObjectSelected()) // Une seule g\xE9om\xE9trie est \xE0 \xE9diter - editSingleObject((ZCalqueEditable)claquesWithSelectedObjects.get(0)); + editSingleObject(calque); else { // Plusieurs g\xE9om\xE9tries sont \xE0 \xE9diter CtuluDialogPanel pn=null; Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorInterface.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorInterface.java 2008-10-20 09:47:19 UTC (rev 4082) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorInterface.java 2008-10-20 13:23:25 UTC (rev 4083) @@ -27,11 +27,10 @@ boolean isEditable(final Object _target); /** - * Edition pour la cible donn\xE9e. L'edition peutr concerner la cible elle m\xEAme ou ce qu'elle contient. - * @param _target La cible editable. + * Edition pour la selection quelque soit le calque selectionn\xE9. * @return Une information sur le deroulement de l'op\xE9ration d'edition. Si null, tout s'est bien pass\xE9. */ - String edit(final Object _target); + String edit(); /** * @param _o la cible * @param _palette la palette associ\xE9e Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/sig/layer/FSigEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/sig/layer/FSigEditor.java 2008-10-20 09:47:19 UTC (rev 4082) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/sig/layer/FSigEditor.java 2008-10-20 13:23:25 UTC (rev 4083) @@ -324,7 +324,7 @@ } public void actionPerformed(final ActionEvent _e) { - editSelectedLayer(); + edit(); } public void updateStateBeforeShow() { Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/sig/layer/FSigVisuPanel.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/sig/layer/FSigVisuPanel.java 2008-10-20 09:47:19 UTC (rev 4082) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/sig/layer/FSigVisuPanel.java 2008-10-20 13:23:25 UTC (rev 4083) @@ -70,7 +70,6 @@ mng_ = new CtuluCommandManager(); setModeVisible(true); setEbliFormatter(new EbliFormatter()); - gisEditor_ = createGisEditor(); gisEditor_.setUi(getImpl()); // Le calque des infos. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |