grid/chart refresh refactor