diff --git a/stand/aggridx.py b/stand/aggridx.py index 4433f30..a7e08ee 100644 --- a/stand/aggridx.py +++ b/stand/aggridx.py @@ -13,6 +13,15 @@ class aggridx(ui.aggrid): # self.on("cellValueChanged", self.set_cell_server) + def set_cell(self, row_id, col_id, new_val): + row_index = self.row_id_to_index(row_id) + self.set_cell_server(row_index, col_id, new_val) + self.set_cell_client(row_id, col_id, new_val) + + def row_id_to_index(self, row_id): + data = self.options["rowData"] + return next(i for i, d in enumerate(data) if d["run"] == row_id) + def set_cell_server(self, row_index, col_id, new_val): with self.props.suspend_updates(): self.options["rowData"][row_index][col_id] = new_val