[richfaces-svn-commits] JBoss Rich Faces SVN: r13603 - in trunk/ui/editor/src: main/java/org/richfaces/convert/seamtext/tags and 1 other directories.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Thu Apr 16 07:16:25 EDT 2009
Author: Alex.Kolonitsky
Date: 2009-04-16 07:16:25 -0400 (Thu, 16 Apr 2009)
New Revision: 13603
Modified:
trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/HtmlToSeamTransformer.java
trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/HtmlTag.java
trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/OrderedListTag.java
trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/TagFactory.java
trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/UnorderedListTag.java
trunk/ui/editor/src/test/java/org/richfaces/seamparser/HtmlSeamParserTest.java
Log:
Editor: exception in seamText mode if empty element presents in ordered or unsorted list.
https://jira.jboss.org/jira/browse/RF-6770
Modified: trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/HtmlToSeamTransformer.java
===================================================================
--- trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/HtmlToSeamTransformer.java 2009-04-15 17:24:29 UTC (rev 13602)
+++ trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/HtmlToSeamTransformer.java 2009-04-16 11:16:25 UTC (rev 13603)
@@ -54,7 +54,9 @@
private void appendBody(String ... strings) {
for (String str : strings) {
- currentTag.appendBody(str);
+ if (str != null && !"".equals(str)) {
+ currentTag.appendBody(str);
+ }
}
}
Modified: trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/HtmlTag.java
===================================================================
--- trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/HtmlTag.java 2009-04-15 17:24:29 UTC (rev 13602)
+++ trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/HtmlTag.java 2009-04-16 11:16:25 UTC (rev 13603)
@@ -122,6 +122,16 @@
body = new ArrayList<Object>();
}
+ public boolean isBodyEmpty() {
+ for (Object child : body) {
+ if (child != null && !"".equals(child.toString())) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
public String printPlainEnd(){
if (isEmpty) {
// return "/>";
Modified: trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/OrderedListTag.java
===================================================================
--- trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/OrderedListTag.java 2009-04-15 17:24:29 UTC (rev 13602)
+++ trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/OrderedListTag.java 2009-04-16 11:16:25 UTC (rev 13603)
@@ -1,6 +1,6 @@
package org.richfaces.convert.seamtext.tags;
-class OrderedListTag extends HtmlTag {
+class OrderedListTag extends UnorderedListTag {
private static final long serialVersionUID = 1L;
public OrderedListTag() {
@@ -8,16 +8,6 @@
}
@Override
- public String printStart() {
- return "";
- }
-
- @Override
- public String printEnd() {
- return "\n";
- }
-
- @Override
protected void appendChildTag(StringBuilder res, HtmlTag child) {
if (LI.equals(child.getName())) {
res.append(TagFactory.SEAM_HASH).append(child.print());
Modified: trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/TagFactory.java
===================================================================
--- trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/TagFactory.java 2009-04-15 17:24:29 UTC (rev 13602)
+++ trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/TagFactory.java 2009-04-16 11:16:25 UTC (rev 13603)
@@ -33,7 +33,17 @@
new LineTag(H2, "++ "),
new LineTag(H3, "+++ "),
new LineTag(H4, "++++ "),
- new LineTag(LI, ""),
+ new LineTag(LI, "") {
+
+ @Override
+ public String printBody() {
+ if (isBodyEmpty()) {
+ return " ";
+ }
+
+ return super.printBody();
+ }
+ },
getNewTagDefinition(P, "", "\n\n"),
new FormattingTag(I, SEAM_STAR),
Modified: trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/UnorderedListTag.java
===================================================================
--- trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/UnorderedListTag.java 2009-04-15 17:24:29 UTC (rev 13602)
+++ trunk/ui/editor/src/main/java/org/richfaces/convert/seamtext/tags/UnorderedListTag.java 2009-04-16 11:16:25 UTC (rev 13603)
@@ -1,12 +1,20 @@
package org.richfaces.convert.seamtext.tags;
-class UnorderedListTag extends HtmlTag{
+import sun.security.action.GetBooleanAction;
+
+import com.sun.java_cup.internal.production;
+
+class UnorderedListTag extends HtmlTag {
private static final long serialVersionUID = 1L;
public UnorderedListTag() {
super(UL);
}
+ protected UnorderedListTag(String name) {
+ super(name);
+ }
+
@Override
public String printStart() {
return "";
Modified: trunk/ui/editor/src/test/java/org/richfaces/seamparser/HtmlSeamParserTest.java
===================================================================
--- trunk/ui/editor/src/test/java/org/richfaces/seamparser/HtmlSeamParserTest.java 2009-04-15 17:24:29 UTC (rev 13602)
+++ trunk/ui/editor/src/test/java/org/richfaces/seamparser/HtmlSeamParserTest.java 2009-04-16 11:16:25 UTC (rev 13603)
@@ -101,7 +101,7 @@
+ "~deleted text~, super^scripts^ or_underlines_";
private final static String SEAM_TEXT_EXPRESSION_29 = "A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9";
-
+
public HtmlSeamParserTest(String name) {
super(name);
}
@@ -243,6 +243,10 @@
assertHtml2SeamConverting("<!-- Hello Cfif -->");
}
+ public void testSkipComment_() throws Exception {
+ assertHtml2SeamConverting("<ul><li/></ul><ol><li/></ol><ul />");
+ }
+
public void testUglyTextFromWord() throws Exception {
final String str = "<p><meta content=\"text/html; charset=utf-8\" http-equiv=\"Content-Type\"/><meta content=\"Word.Document\" name=\"ProgId\"/><meta content=\"Microsoft Word 12\" name=\"Generator\"/><meta content=\"Microsoft Word 12\" name=\"Originator\"/><link href=\"file:///E:\\TEMP~1\\msohtmlclip1\\01\\clip_filelist.xml\" rel=\"File-List\"/><link href=\"file:///E:\\TEMP~1\\msohtmlclip1\\01\\clip_themedata.thmx\" rel=\"themeData\"/><link href=\"file:///E:\\TEMP~1\\msohtmlclip1\\01\\clip_colorschememapping.xml\" rel=\"colorSchemeMapping\"/>" +
"<!--[if gte mso 9]><xml>\n" +
@@ -729,7 +733,7 @@
throws Exception {
final String seamText = convertHtmlToSeamText(htmlText);
- System.out.println("seamText = \n" + seamText);
+ System.out.println("seamText = \n'" + seamText + "'");
final SeamTextParser seamParser = new SeamTextParser(
new SeamTextLexer(new StringReader(seamText)));
More information about the richfaces-svn-commits
mailing list