Author: mallon Date: 2012-07-05 15:10:00 +0200 (Thu, 05 Jul 2012) New Revision: 3492 Url: http://chorem.org/repositories/revision/lima/3492 Log: Correction du mod?\195?\168le de l'interface de lettrage pour la s?\195?\169lection des entr?\195?\169es avec uniquement la souris, lorsque toutes les entr?\195?\169es sont s?\195?\169lectionn?\195?\169es. Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/lettering/LetteringModelUI.java Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/lettering/LetteringModelUI.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/lettering/LetteringModelUI.java 2012-07-05 12:49:53 UTC (rev 3491) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/lettering/LetteringModelUI.java 2012-07-05 13:10:00 UTC (rev 3492) @@ -133,8 +133,15 @@ setSelectedEntry(entryAt); if (entryAt.getLettering() != null){ + // no line selected or line selected different of the current - if (isSelectionEmpty() || !currentLettring.equals(entryAt.getLettering())){ + if (isSelectionEmpty() || currentEntry != null || !currentLettring.equals(entryAt.getLettering())){ + + //Test not null for currentEntry cause of selection before of entry without letter + if (currentEntry != null){ + super.clearSelection(); + } + currentLettring = entryAt.getLettering(); super.setSelectionInterval(row, column); //select entries with the same letter of the selected entry @@ -148,11 +155,18 @@ } } } + }else{ + //no line selected or line selected different of the current - if (isSelectionEmpty() || !currentEntry.equals(entryAt)){ + //Test null for currentEntry cause of selection before of entry with letter + if (isSelectionEmpty() || currentEntry == null || !currentEntry.equals(entryAt)){ + if (currentEntry == null){ + super.clearSelection(); + } currentEntry = entryAt; super.addSelectionInterval(row, column); + //remove entry and get precedent entry for currentEntry }else { super.removeSelectionInterval(row, column);