123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- /*
- * Copyright 2000-2016 Vaadin Ltd.
- *
- * 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.vaadin.v7.client.widget.grid;
-
- import com.google.gwt.dom.client.TableCellElement;
- import com.vaadin.v7.client.widget.escalator.FlyweightCell;
- import com.vaadin.v7.client.widgets.Grid;
-
- /**
- * A data class which contains information which identifies a cell being
- * rendered in a {@link Grid}.
- * <p>
- * Since this class follows the <code>Flyweight</code>-pattern any instance of
- * this object is subject to change without the user knowing it and so should
- * not be stored anywhere outside of the method providing these instances.
- *
- * @since 7.4
- * @author Vaadin Ltd
- */
- public class RendererCellReference extends CellReference<Object> {
-
- /**
- * Creates a new renderer cell reference bound to a row reference.
- *
- * @param rowReference
- * the row reference to bind to
- */
- public RendererCellReference(RowReference<Object> rowReference) {
- super(rowReference);
- }
-
- private FlyweightCell cell;
-
- /**
- * Sets the identifying information for this cell.
- *
- * @param cell
- * the flyweight cell to reference
- * @param columnIndex
- * the index of the column in the grid, including hidden cells
- * @param column
- * the column to reference
- */
- public void set(FlyweightCell cell, int columnIndex,
- Grid.Column<?, ?> column) {
- this.cell = cell;
- super.set(cell.getColumn(), columnIndex,
- (Grid.Column<?, Object>) column);
- }
-
- /**
- * Returns the element of the cell. Can be either a <code>TD</code> element
- * or a <code>TH</code> element.
- *
- * @return the element of the cell
- */
- @Override
- public TableCellElement getElement() {
- return cell.getElement();
- }
-
- /**
- * Sets the colspan attribute of the element of this cell.
- *
- * @param numberOfCells
- * the number of columns that the cell should span
- */
- public void setColSpan(int numberOfCells) {
- cell.setColSpan(numberOfCells);
- }
-
- /**
- * Gets the colspan attribute of the element of this cell.
- *
- * @return the number of columns that the cell should span
- */
- public int getColSpan() {
- return cell.getColSpan();
- }
- }
|