From: <bma...@us...> - 2008-11-05 10:51:04
|
Revision: 4168 http://fudaa.svn.sourceforge.net/fudaa/?rev=4168&view=rev Author: bmarchan Date: 2008-11-05 10:50:53 +0000 (Wed, 05 Nov 2008) Log Message: ----------- Factorisation des ?\195?\169venements envoy?\195?\169s en cas de selection pour en limiter le nombre. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZCalqueSelectionInteractionSimple.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZScene.java 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-11-05 10:36:07 UTC (rev 4167) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZCalqueSelectionInteractionSimple.java 2008-11-05 10:50:53 UTC (rev 4168) @@ -53,9 +53,6 @@ if (internalGetScene().isRestrictedToCalqueActif() && internalGetScene().getCalqueActif() == null) { return; } - if (modificateur_.getModificateur() == EbliSelectionState.ACTION_REPLACE) { - internalGetScene().clearSelection(); - } if (mode_ == PONCTUEL || (mode_ == RECTANGLE && listePoints_.renvoie(0).distanceXY(listePoints_.renvoie(2))<4)) { final GrPoint pt = listePoints_.renvoie(0); 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-11-05 10:36:07 UTC (rev 4167) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/ZScene.java 2008-11-05 10:50:53 UTC (rev 4168) @@ -23,6 +23,7 @@ import org.fudaa.ebli.calque.edition.ZCalqueEditable; import org.fudaa.ebli.commun.EbliActionInterface; import org.fudaa.ebli.commun.EbliListeSelectionMultiInterface; +import org.fudaa.ebli.commun.EbliSelectionState; import org.fudaa.ebli.geometrie.GrBoite; import org.fudaa.ebli.geometrie.GrMorphisme; import org.fudaa.ebli.geometrie.GrPoint; @@ -366,14 +367,21 @@ } /** - * Efface la selection du calque. + * Efface la selection de la scene. */ public void clearSelection() { - for (ZCalqueAffichageDonneesInterface cq : getTargetLayers()) cq.clearSelection(); + internalClearSelection(); fireSelectionEvent(); } /** + * Efface la selection sans envoyer d'evenement. + */ + private void internalClearSelection() { + for (ZCalqueAffichageDonneesInterface cq : getTargetLayers()) cq.clearSelection(); + } + + /** * Tout selectionner. */ public void selectAll() { @@ -424,7 +432,7 @@ } /** - * Permet de modifier la selection du calque \xE0 partir d'un selection ponctuelle. Le premier objet trouv\xE9 + * Permet de modifier la selection de la scene \xE0 partir d'un selection ponctuelle. Le premier objet trouv\xE9 * interrompt la s\xE9lection. * * @param _pointReel le point de selection en coordonnees reelles @@ -434,6 +442,10 @@ * @see ZCalqueSelectionInteractionAbstract */ public boolean changeSelection(GrPoint _pointReel, int _tolerancePixel, int _action) { + if (_action == EbliSelectionState.ACTION_REPLACE) { + internalClearSelection(); + } + boolean ret=false; for (ZCalqueAffichageDonneesInterface cq : getTargetLayers()) { if (cq.changeSelection(_pointReel, _tolerancePixel, _action)) { @@ -446,7 +458,7 @@ } /** - * Permet de modifier la selection du calque \xE0 partir d'un poly de selection. + * Permet de modifier la selection de la scene \xE0 partir d'un poly de selection. * * @param _p le polygone englobant en COORDONNEES REELS * @param _action l'action sur la selection (voir les action de ZCalqueSelectionInteraction) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |