public void Remove(Int32 row, Int32 column) { Count--; DecrementUsage(RowsUsed, row); DecrementUsage(ColumnsUsed, row); var sp = new XLSheetPoint(row, column); Deleted.Add(sp); _cellsDictionary.Remove(sp); //_cells[row, column] = null; }
public void Add(Int32 row, Int32 column, XLCell cell) { Count++; IncrementUsage(RowsUsed, row); IncrementUsage(ColumnsUsed, column); _cellsDictionary.Add(new XLSheetPoint(row, column), cell); if (row > MaxRowUsed) MaxRowUsed = row; if (column > MaxColumnUsed) MaxColumnUsed = column; var sp = new XLSheetPoint(row, column); if (Deleted.Contains(sp)) Deleted.Remove(sp); }
public void Remove(XLSheetPoint sheetPoint) { Remove(sheetPoint.Row, sheetPoint.Column); }
public XLCell GetCell(XLSheetPoint sheetPoint) { XLCell cell; return _cellsDictionary.TryGetValue(sheetPoint, out cell) ? cell : null; }
internal void SwapRanges(XLSheetRange sheetRange1, XLSheetRange sheetRange2, XLWorksheet worksheet) { Int32 rowCount = sheetRange1.LastPoint.Row - sheetRange1.FirstPoint.Row + 1; Int32 columnCount = sheetRange1.LastPoint.Column - sheetRange1.FirstPoint.Column + 1; for (int row = 0; row < rowCount; row++) { for (int column = 0; column < columnCount; column++) { var sp1 = new XLSheetPoint(sheetRange1.FirstPoint.Row + row, sheetRange1.FirstPoint.Column + column); var sp2 = new XLSheetPoint(sheetRange2.FirstPoint.Row + row, sheetRange2.FirstPoint.Column + column); var cell1 = GetCell(sp1); var cell2 = GetCell(sp2); if (cell1 == null) cell1 = worksheet.Cell(sp1.Row, sp1.Column); if (cell2 == null) cell2 = worksheet.Cell(sp2.Row, sp2.Column); //if (cell1 != null) //{ cell1.Address = new XLAddress(cell1.Worksheet, sp2.Row, sp2.Column, false, false); Remove(sp1); //if (cell2 != null) Add(sp1, cell2); //} //if (cell2 == null) continue; cell2.Address = new XLAddress(cell2.Worksheet, sp1.Row, sp1.Column, false, false); Remove(sp2); //if (cell1 != null) Add(sp2, cell1); } } }
public XLCell GetCell(Int32 row, Int32 column) { if (row > MaxRowUsed || column > MaxColumnUsed) return null; var sp = new XLSheetPoint(row, column); XLCell cell; return _cellsDictionary.TryGetValue(sp, out cell) ? cell : null; }
public IEnumerable<XLSheetPoint> GetSheetPoints(Int32 rowStart, Int32 columnStart, Int32 rowEnd, Int32 columnEnd) { int finalRow = rowEnd > MaxRowUsed ? MaxRowUsed : rowEnd; int finalColumn = columnEnd > MaxColumnUsed ? MaxColumnUsed : columnEnd; for (int ro = rowStart; ro <= finalRow; ro++) { for (int co = columnStart; co <= finalColumn; co++) { var sp = new XLSheetPoint(ro, co); if (_cellsDictionary.ContainsKey(sp)) yield return sp; } } }
public void Add(XLSheetPoint sheetPoint, XLCell cell) { Add(sheetPoint.Row, sheetPoint.Column, cell); }
public void RemoveAll(Int32 rowStart, Int32 columnStart, Int32 rowEnd, Int32 columnEnd) { int finalRow = rowEnd > MaxRowUsed ? MaxRowUsed : rowEnd; int finalColumn = columnEnd > MaxColumnUsed ? MaxColumnUsed : columnEnd; for (int ro = rowStart; ro <= finalRow; ro++) { for (int co = columnStart; co <= finalColumn; co++) { var sp = new XLSheetPoint(ro, co); if (_cellsDictionary.ContainsKey(sp)) Remove(sp); } } }
public XLCell GetCell(XLSheetPoint sp) { return GetCell(sp.Row, sp.Column); }