Dont remove or add PaintRefresher registrations for explode, gather views
authoramwaterhouse <Andrew Waterhouse>
Fri, 27 Oct 2006 16:16:49 +0000 (16:16 +0000)
committeramwaterhouse <Andrew Waterhouse>
Fri, 27 Oct 2006 16:16:49 +0000 (16:16 +0000)
src/jalview/gui/Desktop.java

index 9f74e3e..9b1bef3 100755 (executable)
@@ -699,7 +699,6 @@ public class Desktop extends jalview.jbgui.GDesktop
       int size = af.alignPanels.size();
       if(size<2)
         return;
-      af.closeMenuItem_actionPerformed(null);
 
       for(int i=0; i<size; i++)
       {
@@ -710,17 +709,14 @@ public class Desktop extends jalview.jbgui.GDesktop
 
         ap.av.gatherViewsHere = false;
 
-        PaintRefresher.Register(ap.seqPanel.seqCanvas, ap.av.getSequenceSetId());
-        PaintRefresher.Register(ap.idPanel.idCanvas, ap.av.getSequenceSetId());
-        PaintRefresher.Register(ap, ap.av.getSequenceSetId());
-
-
-        newaf.viewport = ap.av;
         addInternalFrame(newaf, af.getTitle(),
                          AlignFrame.DEFAULT_WIDTH,
                          AlignFrame.DEFAULT_HEIGHT);
       }
 
+      af.alignPanels.clear();
+      af.closeMenuItem_actionPerformed(null);
+
     }
 
     public void gatherViews(AlignFrame source)
@@ -742,14 +738,17 @@ public class Desktop extends jalview.jbgui.GDesktop
             if (viewId.equals(ap.av.getSequenceSetId()))
             {
               gatherThis = true;
-              ap.alignFrame = source;
               ap.av.gatherViewsHere = false;
               ap.av.explodedPosition = af.getBounds();
-              source.addAlignmentPanel(ap);
+              source.addAlignmentPanel(ap, false);
             }
           }
+
           if (gatherThis)
+          {
+            af.alignPanels.clear();
             af.closeMenuItem_actionPerformed(null);
+          }
         }
       }