/// <summary> /// Form a SLMergeCell given a corner cell of the to-be-merged rectangle of cells, and the opposite corner cell. For /// example, the top-left corner cell and the bottom-right corner cell. Or the bottom-left corner cell and the /// top-right corner cell. /// </summary> /// <param name="StartRowIndex">The row index of the corner cell.</param> /// <param name="StartColumnIndex">The column index of the corner cell.</param> /// <param name="EndRowIndex">The row index of the opposite corner cell.</param> /// <param name="EndColumnIndex">The column index of the opposite corner cell.</param> public void FromIndices(int StartRowIndex, int StartColumnIndex, int EndRowIndex, int EndColumnIndex) { if (StartRowIndex < EndRowIndex) { iStartRowIndex = StartRowIndex; iEndRowIndex = EndRowIndex; } else { iStartRowIndex = EndRowIndex; iEndRowIndex = StartRowIndex; } if (StartColumnIndex < EndColumnIndex) { iStartColumnIndex = StartColumnIndex; iEndColumnIndex = EndColumnIndex; } else { iStartColumnIndex = EndColumnIndex; iEndColumnIndex = StartColumnIndex; } if ((iStartRowIndex == iEndRowIndex) && (iStartColumnIndex == iEndColumnIndex)) { IsValid = false; } else { IsValid = SLTool.CheckRowColumnIndexLimit(iStartRowIndex, iStartColumnIndex) && SLTool.CheckRowColumnIndexLimit(iEndRowIndex, iEndColumnIndex); } }
/// <summary> /// Insert comment given the row index and column index of the cell it's based on. This will overwrite any existing /// comment. /// </summary> /// <param name="RowIndex">The row index.</param> /// <param name="ColumnIndex">The column index.</param> /// <param name="Comment">The cell comment.</param> /// <returns>False if either the row index or column index (or both) are invalid. True otherwise.</returns> public bool InsertComment(int RowIndex, int ColumnIndex, SLComment Comment) { if (!SLTool.CheckRowColumnIndexLimit(RowIndex, ColumnIndex)) { return(false); } if (!slws.Authors.Contains(Comment.Author)) { slws.Authors.Add(Comment.Author); } var pt = new SLCellPoint(RowIndex, ColumnIndex); var comm = Comment.Clone(); slws.Comments[pt] = comm; return(true); }