From b21920d2355ae42bdada6dfc0c42614aa0539137 Mon Sep 17 00:00:00 2001 From: amwaterhouse Date: Thu, 23 Nov 2006 15:18:17 +0000 Subject: [PATCH] If alignment is closed, then undo performed in visible window --- src/jalview/appletgui/AlignFrame.java | 11 ++++++++++- src/jalview/gui/AlignFrame.java | 30 +++++++++++++++++++++++------- 2 files changed, 33 insertions(+), 8 deletions(-) diff --git a/src/jalview/appletgui/AlignFrame.java b/src/jalview/appletgui/AlignFrame.java index afc103e..3a1ab05 100755 --- a/src/jalview/appletgui/AlignFrame.java +++ b/src/jalview/appletgui/AlignFrame.java @@ -821,7 +821,7 @@ public void itemStateChanged(ItemEvent evt) AlignViewport getOriginatingSource(CommandI command) { - AlignViewport originalSource = viewport; + AlignViewport originalSource = null; //For sequence removal and addition, we need to fire //the property change event FROM the viewport where the //original alignment was altered @@ -842,7 +842,16 @@ public void itemStateChanged(ItemEvent evt) } } } + if (originalSource == null) + { + //The original view is closed, we must validate + //the current view against the closed view first + PaintRefresher.validateSequences(al, viewport.alignment); + originalSource = viewport; + } + } + return originalSource; } diff --git a/src/jalview/gui/AlignFrame.java b/src/jalview/gui/AlignFrame.java index 3291dca..4afaf92 100755 --- a/src/jalview/gui/AlignFrame.java +++ b/src/jalview/gui/AlignFrame.java @@ -974,10 +974,13 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener command.undoCommand(); AlignViewport originalSource = getOriginatingSource(command); - - originalSource.hasHiddenColumns = viewport.colSel.getHiddenColumns() != null; updateEditMenuBar(); - originalSource.firePropertyChange("alignment", null,viewport.getAlignment().getSequences()); + + if(originalSource!=null) + { + originalSource.hasHiddenColumns = viewport.colSel.getHiddenColumns() != null; + originalSource.firePropertyChange("alignment", null,null); + } } /** @@ -992,15 +995,18 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener command.doCommand(); AlignViewport originalSource = getOriginatingSource(command); - originalSource.hasHiddenColumns = viewport.colSel.getHiddenColumns()!=null; - updateEditMenuBar(); - originalSource.firePropertyChange("alignment", null, viewport.getAlignment().getSequences()); + + if(originalSource!=null) + { + originalSource.hasHiddenColumns = viewport.colSel.getHiddenColumns() != null; + originalSource.firePropertyChange("alignment", null,null); + } } AlignViewport getOriginatingSource(CommandI command) { - AlignViewport originalSource = viewport; + AlignViewport originalSource = null; //For sequence removal and addition, we need to fire //the property change event FROM the viewport where the //original alignment was altered @@ -1021,7 +1027,17 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener } } } + if (originalSource == null) + { + //The original view is closed, we must validate + //the current view against the closed view first + PaintRefresher.validateSequences(al, viewport.alignment); + originalSource = viewport; + } + } + + return originalSource; } -- 1.7.10.2