Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2004-2005 Revolution Systems Inc.
   * 
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   * 
   *      http://www.apache.org/licenses/LICENSE-2.0
   * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 package com.revolsys.ui.html.layout;
 
 import java.util.List;
 
 
 
 public class TableBodyLayout implements ElementContainerLayout {
   private static final Logger log = Logger.getLogger(TableLayout.class);
 
   private String cssClass;
 
   private int numColumns;
 
   private List<StringcssClasses = new ArrayList<String>();
 
   public TableBodyLayout(final int numColumns) {
     this(nullnumColumns);
   }
 
   public TableBodyLayout(final String cssClassfinal int numColumns,
     final String... cssClasses) {
     this. = cssClass;
     this. = numColumns;
     for (String colCss : cssClasses) {
       this..add(colCss);
     }
     for (int i = cssClasses.lengthi < numColumnsi++) {
       this..add("");
     }
   }
 
   public void serialize(final XmlWriter outfinal ElementContainer container)
     {
     if (!container.getElements().isEmpty()) {
       serializeTbody(outcontainer);
     }
   }
 
   private void serializeTbody(final XmlWriter out,
     final ElementContainer container) {
     out.startTag(.);
     if ( != null) {
       out.attribute(.);
     }
     List<ElementelementList = container.getElements();
     int i = 0;
     int rowNum = 0;
     int numElements = elementList.size();
     int lastRow = (numElements - 1) / ;
     for (Element element : elementList) {
       int col = i % ;
       String colCss = .get(col);
       boolean firstCol = col == 0;
       boolean lastCol = (i + 1) %  == 0 || i == numElements - 1;
       if (firstCol) {
         out.startTag(.);
         String rowCss = "";
         if (rowNum == 0) {
           rowCss += " firstRow";
         }
         if (rowNum == lastRow) {
           rowCss += " lastRow";
         }
         if (rowCss.length() > 0) {
           out.attribute(.rowCss);
         }
         colCss += " firstCol";
       }
       if (lastCol) {
         colCss += " lastCol";
       }
       out.startTag(.);
       if (colCss.length() > 0) {
         out.attribute(.colCss);
       }
       element.serialize(out);
       out.endTag(.);
       i++;
      if (lastCol) {
        out.endTag(.);
        rowNum++;
      }
    }
    out.endTag(.);
  }
New to GrepCode? Check out our FAQ X