git://source.jalview.org
/
jalview.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
b167c8e
)
parseDescriptionHTML
author
amwaterhouse
<Andrew Waterhouse>
Wed, 18 Oct 2006 13:00:26 +0000
(13:00 +0000)
committer
amwaterhouse
<Andrew Waterhouse>
Wed, 18 Oct 2006 13:00:26 +0000
(13:00 +0000)
src/jalview/io/FeaturesFile.java
patch
|
blob
|
history
diff --git
a/src/jalview/io/FeaturesFile.java
b/src/jalview/io/FeaturesFile.java
index
c32fbc9
..
d81141c
100755
(executable)
--- a/
src/jalview/io/FeaturesFile.java
+++ b/
src/jalview/io/FeaturesFile.java
@@
-265,32
+265,59
@@
public class FeaturesFile extends AlignFile
return true;
\r
}
\r
\r
return true;
\r
}
\r
\r
- void parseDescriptionHTML(SequenceFeature sf, boolean removeHTML)
\r
+ public void parseDescriptionHTML(SequenceFeature sf, boolean removeHTML)
\r
{
\r
{
\r
+ if(removeHTML && sf.getDescription().toUpperCase().indexOf("<HTML>")==-1)
\r
+ removeHTML = false;
\r
+
\r
StringBuffer sb = new StringBuffer();
\r
StringTokenizer st = new StringTokenizer(sf.getDescription(), "<");
\r
String token, link;
\r
StringBuffer sb = new StringBuffer();
\r
StringTokenizer st = new StringTokenizer(sf.getDescription(), "<");
\r
String token, link;
\r
+ int startTag;
\r
+ String tag=null;
\r
while(st.hasMoreElements())
\r
{
\r
while(st.hasMoreElements())
\r
{
\r
- token = st.nextToken("<>");
\r
+ token = st.nextToken("&>");
\r
if(token.equalsIgnoreCase("html") || token.startsWith("/"))
\r
if(token.equalsIgnoreCase("html") || token.startsWith("/"))
\r
+ {
\r
continue;
\r
continue;
\r
+ }
\r
+
\r
+ tag = null;
\r
+ startTag = token.indexOf("<");
\r
+
\r
+ if (startTag > -1)
\r
+ {
\r
+ tag = token.substring(startTag+1);
\r
+ token = token.substring(0, startTag);
\r
+ }
\r
\r
\r
- if(token.startsWith("a href="))
\r
+ if (tag != null && tag.toUpperCase().startsWith("A HREF="))
\r
{
\r
{
\r
- link = token.substring(token.indexOf("\"")+1, token.length()-1);
\r
+ if(token.length()>0)
\r
+ sb.append(token);
\r
+ link = tag.substring(tag.indexOf("\"") + 1, tag.length() - 1);
\r
String label = st.nextToken("<>");
\r
String label = st.nextToken("<>");
\r
- sf.addLink(label+"|"+link);
\r
- sb.append(label+"%LINK%");
\r
+ sf.addLink(label + "|" + link);
\r
+ sb.append(label + "%LINK%");
\r
}
\r
}
\r
- else if(token.equalsIgnoreCase("br"))
\r
+ else if (tag != null && tag.equalsIgnoreCase("br"))
\r
sb.append("\n");
\r
sb.append("\n");
\r
+ else if (token.startsWith("lt;"))
\r
+ sb.append("<" + token.substring(3));
\r
+ else if (token.startsWith("gt;"))
\r
+ sb.append(">" + token.substring(3));
\r
+ else if (token.startsWith("amp;"))
\r
+ sb.append("&" + token.substring(4));
\r
else
\r
else
\r
+ {
\r
sb.append(token);
\r
sb.append(token);
\r
+ }
\r
}
\r
\r
if(removeHTML)
\r
sf.description = sb.toString();
\r
}
\r
\r
if(removeHTML)
\r
sf.description = sb.toString();
\r
+
\r
}
\r
\r
/**
\r
}
\r
\r
/**
\r