Added more firePropertyChange calls - mainly for sequence paste events.
authorjprocter <Jim Procter>
Tue, 24 May 2005 17:18:14 +0000 (17:18 +0000)
committerjprocter <Jim Procter>
Tue, 24 May 2005 17:18:14 +0000 (17:18 +0000)
src/jalview/gui/AlignFrame.java

index 3bf43f0..0c0e3d7 100755 (executable)
@@ -399,6 +399,7 @@ public class AlignFrame extends GAlignFrame
       }
       else
       {
+        viewport.firePropertyChange("alignment", null, viewport.getAlignment().getSequences());
         viewport.setEndSeq(viewport.alignment.getHeight());
         viewport.alignment.getWidth();
         viewport.updateConservation();
@@ -1070,7 +1071,8 @@ public class AlignFrame extends GAlignFrame
     //are the sequences aligned?
     if(!viewport.alignment.isAligned())
     {
-      JOptionPane.showMessageDialog(Desktop.desktop, "The sequences must be aligned before creating a tree.",
+      JOptionPane.showMessageDialog(Desktop.desktop, "The sequences must be aligned before creating a tree.\n"
+                                   +"Try using the Pad function in the edit menu.",
                                     "Sequences not aligned", JOptionPane.WARNING_MESSAGE);
       return;
     }
@@ -1193,6 +1195,8 @@ public class AlignFrame extends GAlignFrame
 
   protected void jpred_actionPerformed(ActionEvent e)
 {
+    SequenceI seq=null;
+    SequenceI[] msa=null;
 
     if (viewport.getSelectionGroup() != null && viewport.getSelectionGroup().getSize()>0)
     {
@@ -1200,20 +1204,17 @@ public class AlignFrame extends GAlignFrame
       SequenceGroup seqs = viewport.getSelectionGroup();
       if (seqs.getSize() == 1 || !viewport.alignment.isAligned())
       {
-        JPredClient ct = new JPredClient( (SequenceI)seqs.getSequenceAt(0));
+        seq = (SequenceI)seqs.getSequenceAt(0);
       }
       else
       {
         int sz;
-        SequenceI[] msa = new SequenceI[sz=seqs.getSize()];
+        msa = new SequenceI[sz=seqs.getSize()];
         for (int i = 0; i < sz; i++)
         {
           msa[i] = (SequenceI) seqs.getSequenceAt(i);
         }
-
-        JPredClient ct = new JPredClient(title, msa);
       }
-
     }
     else
     {
@@ -1221,20 +1222,24 @@ public class AlignFrame extends GAlignFrame
 
       if (seqs.size() == 1 || !viewport.alignment.isAligned())
       {
-        JPredClient ct = new JPredClient( (SequenceI)
-                                         seqs.elementAt(0));
+        seq = (SequenceI) seqs.elementAt(0);
       }
       else
       {
-        SequenceI[] msa = new SequenceI[seqs.size()];
+        msa = new SequenceI[seqs.size()];
         for (int i = 0; i < seqs.size(); i++)
         {
           msa[i] = (SequenceI) seqs.elementAt(i);
         }
-
-        JPredClient ct = new JPredClient(title, msa);
       }
-
+    }
+    if (msa!=null) {
+      JPredClient ct = new JPredClient(title, msa);
+    } else
+    if (seq!=null) {
+      JPredClient ct = new JPredClient(title, seq);
+    } else {
+      System.out.print("JALVIEW ERROR! - Unexpected JPred selection state!\n");
     }
   }
   protected void msaAlignMenuItem_actionPerformed(ActionEvent e)