The attached example code renders an alignment when used with a TranslatedSequencePanel but not with a SequencePanel - the SequencePanel remains blank.
A diff of TranslatedSequencePanel and SequencePanel shows they are quite different. I am not sure what is going on. Can anyone give me some pointers as to how to get this to work in a SequencePanel? I would prefer this since SequencePanel can be scrolled in a JScrollPane and TranslatedSequencePanel cannot. Cheers, Mark. import java.awt.*; import java.io.*; import javax.swing.*; import java.util.*; import org.biojava.bio.*; import org.biojava.bio.seq.*; import org.biojava.bio.seq.impl.*; import org.biojava.bio.seq.io.*; import org.biojava.bio.symbol.*; public class Test{ /** Creates a new instance of Test */ private Test() { } public static void main(String[] args) throws Exception{ JFrame f = new JFrame(); f.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); // doesn't work with a SequencePanel SequencePanel v = new SequencePanel(); v.setFont( new Font("Courier",Font.PLAIN, 12)); f.getContentPane().add(v, java.awt.BorderLayout.CENTER); BufferedReader br = new BufferedReader( new FileReader( new File( args[0] ) ) ); Alignment a = (Alignment)SeqIOTools.fileToBiojava( AlignIOConstants.MSF_AA, br); v.setSequence(a); MultiLineRenderer mlr = new MultiLineRenderer(); SymbolSequenceRenderer ssr = new SymbolSequenceRenderer(); for(Iterator it = a.getLabels().iterator(); it.hasNext(); ){ Object o = it.next(); AlignmentRenderer ar = new AlignmentRenderer(); ar.setLabel(o); ar.setRenderer(ssr); mlr.addRenderer(ar); } v.setRenderer(mlr); f.pack(); f.setVisible(true); } } _______________________________________________ Biojava-l mailing list - Biojava-l@biojava.org http://biojava.org/mailman/listinfo/biojava-l