onEvent takes current dataframe also