예제 #1
0
        private void UpdateAnyBlankReferencingFormulas(int bookIndex, int sheetIndex,
                                                       int rowIndex, int columnIndex)
        {
            BookSheetKey bsk = new BookSheetKey(bookIndex, sheetIndex);

            _formulaCellCache.ApplyOperation(new EntryOperation(bsk, rowIndex, columnIndex, _evaluationListener));
        }
예제 #2
0
 public EntryOperation(BookSheetKey bsk,
                       int rowIndex, int columnIndex, IEvaluationListener evaluationListener)
 {
     this.bsk = bsk;
     this.evaluationListener = evaluationListener;
     this.rowIndex           = rowIndex;
     this.columnIndex        = columnIndex;
 }
예제 #3
0
        public bool ContainsCell(BookSheetKey key, int rowIndex, int columnIndex)
        {
            BlankCellSheetGroup bcsg = (BlankCellSheetGroup)_sheetGroupsByBookSheet[key];

            if (bcsg == null)
            {
                return(false);
            }
            return(bcsg.ContainsCell(rowIndex, columnIndex));
        }
예제 #4
0
 public void NotifyUpdatedBlankCell(BookSheetKey bsk, int rowIndex, int columnIndex, IEvaluationListener evaluationListener)
 {
     if (_usedBlankCellGroup != null)
     {
         if (_usedBlankCellGroup.ContainsCell(bsk, rowIndex, columnIndex))
         {
             ClearFormulaEntry();
             RecurseClearCachedFormulaResults(evaluationListener);
         }
     }
 }
예제 #5
0
 public void NotifyUpdatedBlankCell(BookSheetKey bsk, int rowIndex, int columnIndex, IEvaluationListener evaluationListener)
 {
     if (_usedBlankCellGroup != null)
     {
         if (_usedBlankCellGroup.ContainsCell(bsk, rowIndex, columnIndex))
         {
             ClearFormulaEntry();
             RecurseClearCachedFormulaResults(evaluationListener);
         }
     }
 }
예제 #6
0
        private BlankCellSheetGroup GetSheetGroup(int bookIndex, int sheetIndex)
        {
            BookSheetKey key = new BookSheetKey(bookIndex, sheetIndex);

            BlankCellSheetGroup result = (BlankCellSheetGroup)_sheetGroupsByBookSheet[key];

            if (result == null)
            {
                result = new BlankCellSheetGroup();
                _sheetGroupsByBookSheet[key] = result;
            }
            return(result);
        }
예제 #7
0
 private void UpdateAnyBlankReferencingFormulas(int bookIndex, int sheetIndex,
         int rowIndex, int columnIndex)
 {
     BookSheetKey bsk = new BookSheetKey(bookIndex, sheetIndex);
     _formulaCellCache.ApplyOperation(new EntryOperation(bsk,rowIndex,columnIndex,_evaluationListener));
 }
예제 #8
0
 public EntryOperation(BookSheetKey bsk,
     int rowIndex, int columnIndex, IEvaluationListener evaluationListener)
 {
     this.bsk = bsk;
     this.evaluationListener = evaluationListener;
     this.rowIndex = rowIndex;
     this.columnIndex = columnIndex;
 }
예제 #9
0
        private BlankCellSheetGroup GetSheetGroup(int bookIndex, int sheetIndex)
        {
            BookSheetKey key = new BookSheetKey(bookIndex, sheetIndex);

            BlankCellSheetGroup result = (BlankCellSheetGroup)_sheetGroupsByBookSheet[key];
            if (result == null)
            {
                result = new BlankCellSheetGroup();
                _sheetGroupsByBookSheet[key]= result;
            }
            return result;
        }
예제 #10
0
 public bool ContainsCell(BookSheetKey key, int rowIndex, int columnIndex)
 {
     BlankCellSheetGroup bcsg = (BlankCellSheetGroup)_sheetGroupsByBookSheet[key];
     if (bcsg == null)
     {
         return false;
     }
     return bcsg.ContainsCell(rowIndex, columnIndex);
 }
예제 #11
0
        public override bool Equals(Object obj)
        {
            BookSheetKey other = (BookSheetKey)obj;

            return(_bookIndex == other._bookIndex && _sheetIndex == other._sheetIndex);
        }