Example usage for org.apache.poi.ss.util CellRangeUtil contains

List of usage examples for org.apache.poi.ss.util CellRangeUtil contains

Introduction

In this page you can find the example usage for org.apache.poi.ss.util CellRangeUtil contains.

Prototype

public static boolean contains(CellRangeAddress crA, CellRangeAddress crB) 

Source Link

Document

Check if cell range A contains cell range B (B <= A) TODO: move this into CellRangeAddressBase

Usage

From source file:com.vaadin.addon.spreadsheet.CellSelectionManager.java

License:Open Source License

/**
 * This is called when a merged region has been added, since the selection
 * may need to be updated./* w  w  w.  j  a  va  2s  . co  m*/
 * 
 * @param region
 *            Merged region that was added
 */
protected void mergedRegionAdded(CellRangeAddress region) {
    if (selectedCellReference == null) {
        return;
    }

    boolean fire = false;
    if (region.isInRange(selectedCellReference.getRow(), selectedCellReference.getCol())) {
        if (selectedCellReference.getCol() != region.getFirstColumn()
                || selectedCellReference.getRow() != region.getFirstRow()) {
            handleCellAddressChange(region.getFirstRow() + 1, region.getFirstColumn() + 1, false);
        }
        selectedCellReference = new CellReference(region.getFirstRow(), region.getFirstColumn());
        fire = true;
    }
    for (Iterator<CellRangeAddress> i = cellRangeAddresses.iterator(); i.hasNext();) {
        CellRangeAddress cra = i.next();
        if (CellRangeUtil.contains(region, cra)) {
            i.remove();
            fire = true;
        }
    }
    for (Iterator<CellReference> i = individualSelectedCells.iterator(); i.hasNext();) {
        CellReference cr = i.next();
        if (region.isInRange(cr.getRow(), cr.getCol())) {
            i.remove();
            fire = true;
        }
    }
    if (fire) {
        fireNewSelectionChangeEvent();
    }
}