code: def refresh_selected_frozen_cells(self, selection=None):
          
  
          if selection is None:
              selection = self.grid.selection
  
          # Add cursor to empty selection
  
          if not selection:
              selection.cells.append(self.grid.actions.cursor[:2])
  
          cell_attributes = self.grid.code_array.cell_attributes
  
          refreshed_keys = []
  
          for attr_selection, tab, attr_dict in cell_attributes:
              if tab == self.grid.actions.cursor[2] and \
                 "frozen" in attr_dict and attr_dict["frozen"]:
                  # Only single cells are allowed for freezing
                  skey = attr_selection.cells[0]
                  if skey in selection:
                      key = tuple(list(skey) + [tab])
                      if key not in refreshed_keys and \
                         cell_attributes[key]["frozen"]:
                          self.refresh_frozen_cell(key)
                          refreshed_keys.append(key)
  
          cell_attributes._attr_cache.clear()
          cell_attributes._table_cache.clear()
docs: Refreshes content of frozen cells that are currently selected
  
          If there is no selection, the cell at the cursor is updated.
  
          Parameters
          ----------
          selection: Selection, defaults to None
          \tIf not None then use this selection instead of the grid selection