private static void BuildNumRef <T>(CT_NumRef ctNumRef, IChartDataSource <T> dataSource) { ctNumRef.f = (dataSource.FormulaString); CT_NumData cache = ctNumRef.AddNewNumCache(); FillNumCache(cache, dataSource); }
/** * 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); }
private static void BuildNumRef <T>(CT_NumRef ctNumRef, IChartDataSource <T> dataSource) { ctNumRef.f = dataSource.FormulaString; XSSFChartUtil.FillNumCache <T>(ctNumRef.AddNewNumCache(), dataSource); }