Esempio n. 1
0
        private static void BuildNumRef <T>(CT_NumRef ctNumRef, IChartDataSource <T> dataSource)
        {
            ctNumRef.f = (dataSource.FormulaString);
            CT_NumData cache = ctNumRef.AddNewNumCache();

            FillNumCache(cache, dataSource);
        }
Esempio n. 2
0
        /**
         * Builds new numeric cache Container.
         * @param marker data marker to use for cache Evaluation
         * @param ctNumRef parent number reference
         * @return numeric cache instance
         */
        internal static XSSFNumberCache BuildCache(DataMarker marker, CT_NumRef ctNumRef)
        {
            CellRangeAddress range = marker.Range;
            int numOfPoints        = range.NumberOfCells;

            if (numOfPoints == 0)
            {
                // Nothing to do.
                return(null);
            }

            XSSFNumberCache cache = new XSSFNumberCache(ctNumRef.AddNewNumCache());

            cache.SetPointCount(numOfPoints);

            IWorkbook         wb        = marker.Sheet.Workbook;
            IFormulaEvaluator Evaluator = wb.GetCreationHelper().CreateFormulaEvaluator();

            CellWalk            cellWalk        = new CellWalk(marker);
            NumCacheCellHandler numCacheHandler = new NumCacheCellHandler(Evaluator, cache.ctNumData);

            cellWalk.Traverse(numCacheHandler);
            return(cache);
        }
Esempio n. 3
0
 private static void BuildNumRef <T>(CT_NumRef ctNumRef, IChartDataSource <T> dataSource)
 {
     ctNumRef.f = dataSource.FormulaString;
     XSSFChartUtil.FillNumCache <T>(ctNumRef.AddNewNumCache(), dataSource);
 }