import jalview.datamodel.SequenceI;
import jalview.gui.ColourMenuHelper.ColourChangeListener;
import jalview.gui.ViewSelectionMenu.ViewSetProvider;
-import jalview.hmmer.HMMERCommands;
+import jalview.hmmer.HMMAlignThread;
+import jalview.hmmer.HMMBuildThread;
import jalview.io.AlignmentProperties;
import jalview.io.AnnotationFile;
import jalview.io.BioJsHTMLOutput;
import jalview.util.MessageManager;
import jalview.viewmodel.AlignmentViewport;
import jalview.viewmodel.ViewportRanges;
-import jalview.workers.InformationThread;
import jalview.ws.DBRefFetcher;
import jalview.ws.DBRefFetcher.FetchFinishedListenerI;
import jalview.ws.jws1.Discoverer;
import javax.swing.JLayeredPane;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.SwingUtilities;
init();
}
+ public void setIsRecurring(boolean status)
+ {
+ recurring = status;
+ }
+
/**
* initalise the alignframe from the underlying viewport data and the
* configurations
{
hmmerMenu.removeAll();
+ hmmerMenu.add(changeHMMERLocation);
+ hmmerMenu.addSeparator();
+
hmmerMenu.add(autoAlignSeqs);
hmmerMenu.addSeparator();
public void hmmBuild_actionPerformed(ActionEvent e)
throws IOException, InterruptedException
{
-
- HMMERCommands.hmmBuild(this);
+ new Thread(new HMMBuildThread(this)).start();
alignPanel.repaint();
}
public void hmmAlign_actionPerformed(ActionEvent e)
throws IOException, InterruptedException
{
- SequenceI seq = getViewport().getAlignment()
- .getHMMConsensusSequences(false).get(0);
- HMMERCommands.hmmAlign(this, true, seq.getHMM());
+ new Thread(new HMMAlignThread(this, true)).start();
alignPanel.repaint();
}
@Override
+ public void changeHMMERLocation_actionPerformed(ActionEvent e)
+ {
+ String location = JOptionPane.showInputDialog(
+ MessageManager.getString("label.enter_location"));
+ Cache.setProperty(Preferences.HMMER_PATH, location);
+ }
+
+ @Override
public void autoAlignSeqs_actionPerformed(boolean autoAlignSeqs)
{
autoAlignNewSequences = autoAlignSeqs;
}
else if (FileFormat.HMMER3.equals(format))
{
- HMMFile hmmFile = new HMMFile(new FileParse(file, sourceType)); // TODO
- // need
- // to
- // follow
- // standard
- // pipeline
- hmmFile.parse();
+ HMMFile hmmFile = new HMMFile(new FileParse(file, sourceType));
HiddenMarkovModel hmm = hmmFile.getHMM();
SequenceI hmmSeq = hmm.initHMMSequence(this, 0);
getViewport().initInformation(hmmSeq);
- new Thread(new InformationThread(getViewport(),
- getViewport().getAlignPanel())
- {
- }).start();
+ getViewport().updateInformation(alignPanel);
isAnnotation = true;
else
{
new FileLoader().LoadFile(viewport, file, sourceType, format);
+ if (autoAlignNewSequences && !recurring)
+ {
+ new Thread(new HMMAlignThread(this, false)).start();
+ }
}
}
}
+ (format != null ? "(parsing as '" + format
+ "' file)" : ""), oom, Desktop.desktop);
}
- if (autoAlignNewSequences && !recurring)
- {
- recurring = true;
- HiddenMarkovModel hmm = getViewport().getAlignment()
- .getHMMConsensusSequences(false).get(0).getHMM();
- HMMERCommands.hmmAlign(this, false, hmm);
- }
- recurring = false;
}
/**
}
}
}
+
+
}