You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2015/03/18 18:10:00 UTC
svn commit: r1667592 -
/myfaces/tobago/branches/tobago-3.0.x/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SheetRenderer.java
Author: lofwyr
Date: Wed Mar 18 17:09:59 2015
New Revision: 1667592
URL: http://svn.apache.org/r1667592
Log:
TOBAGO-1368: Create a new theme which uses Bootstrap
- simple header fix
Modified:
myfaces/tobago/branches/tobago-3.0.x/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SheetRenderer.java
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SheetRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SheetRenderer.java?rev=1667592&r1=1667591&r2=1667592&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SheetRenderer.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SheetRenderer.java Wed Mar 18 17:09:59 2015
@@ -237,7 +237,7 @@ public class SheetRenderer extends Layou
// BEGIN RENDER BODY CONTENT
if (showHeader) {
- renderColumnHeaders(facesContext, sheet, writer, renderedColumnList);
+// XXX currently using renderHeaderWorkaround() renderColumnHeaders(facesContext, sheet, writer, renderedColumnList);
}
writer.startElement(HtmlElements.DIV, null);
@@ -260,6 +260,10 @@ public class SheetRenderer extends Layou
writer.endElement(HtmlElements.COLGROUP);
}
+ if (showHeader) {
+ renderHeaderWorkaround(sheet, hasClickAction, writer, renderedColumnList);
+ }
+
// Print the Content
if (LOG.isDebugEnabled()) {
@@ -573,6 +577,58 @@ public class SheetRenderer extends Layou
}
}
+/** XXX Simple workaround for bootstrap -->
+ private void renderHeaderWorkaround(UISheet sheet, boolean hasClickAction, TobagoResponseWriter writer,
+ List<AbstractUIColumn> renderedColumnList) throws IOException {
+ writer.startElement(HtmlElements.TR, null);
+
+ int columnIndex = -1;
+ for (final UIColumn column : renderedColumnList) {
+ columnIndex++;
+
+ writer.startElement(HtmlElements.TH, column);
+
+ Markup markup = column instanceof SupportsMarkup ? ((SupportsMarkup) column).getMarkup() : Markup.NULL;
+ if (markup == null) {
+ markup = Markup.NULL;
+ }
+ if (columnIndex == 0) {
+ markup = markup.add(Markup.FIRST);
+ }
+ if (hasClickAction) {
+ markup = markup.add(Markup.CLICKABLE);
+ }
+ if (isPure(column)) {
+ markup = markup.add(Markup.PURE);
+ }
+ writer.writeClassAttribute(Classes.create(sheet, "cell", markup));
+ final TextAlign align = TextAlign.parse((String) column.getAttributes().get(Attributes.ALIGN));
+ if (align != null) {
+ final Style alignStyle = new Style();
+ alignStyle.setTextAlign(align);
+ writer.writeStyleAttribute(alignStyle);
+ }
+
+ if (column instanceof org.apache.myfaces.tobago.component.UIColumn) {
+ org.apache.myfaces.tobago.component.UIColumn c = (org.apache.myfaces.tobago.component.UIColumn) column;
+ writer.writeText(c.getLabel());
+ } else {
+ // todo
+ }
+
+ writer.endElement(HtmlElements.TH);
+ }
+
+ writer.startElement(HtmlElements.TH, null);
+ writer.writeClassAttribute(Classes.create(sheet, "cell", Markup.FILLER));
+// writer.write(" ");
+ writer.startElement(HtmlElements.DIV, null);
+ writer.endElement(HtmlElements.DIV);
+ writer.endElement(HtmlElements.TH);
+
+ writer.endElement(HtmlElements.TR);
+ }
+
/**
* Differ between simple content and complex content.
* Decide if the content of a cell needs usually the whole possible space or