/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6)
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
+ * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
*
* This file is part of Jalview.
*
package jalview.gui;
import java.util.*;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
import java.awt.*;
import javax.swing.*;
import fr.orsay.lri.varna.models.VARNAConfig;
import fr.orsay.lri.varna.models.annotations.HighlightRegionAnnotation;
import fr.orsay.lri.varna.models.rna.ModeleBaseNucleotide;
-import fr.orsay.lri.varna.models.rna.ModeleStyleBP;
import fr.orsay.lri.varna.models.rna.RNA;
initVarna();
}*/
+
+
public AppVarna(String seq,String struc,String name,AlignmentPanel ap){
ArrayList<RNA> rnaList = new ArrayList<RNA>();
RNA rna1 = new RNA(name);
try {
- rna1.setRNA(seq,struc);
+ rna1.setRNA(seq,replaceOddGaps(struc));
} catch (ExceptionUnmatchedClosingParentheses e2) {
e2.printStackTrace();
} catch (ExceptionFileFormatOrSyntax e3) {
JSplitPane split = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,true,vab.getListPanel(),varnaPanel);
getContentPane().setLayout(new BorderLayout());
getContentPane().add(split, BorderLayout.CENTER);
- getContentPane().add(vab.getTools(), BorderLayout.NORTH);
+ //getContentPane().add(vab.getTools(), BorderLayout.NORTH);
varnaPanel.addVARNAListener(this);
jalview.gui.Desktop.addInternalFrame(this,"VARNA -"+name,getBounds().width, getBounds().height);
this.pack();
showPanel(true);
}
+ public String replaceOddGaps(String oldStr){
+ String patternStr = "[^([{<>}])]";
+ String replacementStr = ".";
+ Pattern pattern = Pattern.compile(patternStr);
+ Matcher matcher = pattern.matcher(oldStr);
+ String newStr=matcher.replaceAll(replacementStr);
+ return newStr;
+ }
+
public RNA trimRNA(RNA rna){
RNA rnaTrim = new RNA("trim_"+rna.getName());
try {
- rnaTrim.setRNA(rna.getSeq(),rna.getStructDBN());
+ rnaTrim.setRNA(rna.getSeq(),replaceOddGaps(rna.getStructDBN()));
} catch (ExceptionUnmatchedClosingParentheses e2) {
e2.printStackTrace();
} catch (ExceptionFileFormatOrSyntax e3) {
}
@Override
-public void onLayoutChanged() {
- // TODO Auto-generated method stub
-
-}
-
-@Override
public void onUINewStructure(VARNAConfig v, RNA r) {
// TODO Auto-generated method stub
}
+@Override
+public void onStructureRedrawn()
+{
+ // TODO Auto-generated method stub
+
+}
+
+
}