All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.vaadin.v7.client.widget.grid.RendererCellReference Maven / Gradle / Ivy

There is a newer version: 8.27.3
Show newest version
/*
 * Copyright (C) 2000-2023 Vaadin Ltd
 *
 * This program is available under Vaadin Commercial License and Service Terms.
 *
 * See  for the full
 * 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}.
 * 

* Since this class follows the Flyweight-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 { /** * Creates a new renderer cell reference bound to a row reference. * * @param rowReference * the row reference to bind to */ public RendererCellReference(RowReference 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) column); } /** * Returns the element of the cell. Can be either a TD element * or a TH 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(); } }