diff --git a/packages/web/src/datagrid/DataGridToolbar.js b/packages/web/src/datagrid/DataGridToolbar.js
index 6fef8c3ae..0ef2d037a 100644
--- a/packages/web/src/datagrid/DataGridToolbar.js
+++ b/packages/web/src/datagrid/DataGridToolbar.js
@@ -13,7 +13,7 @@ export default function DataGridToolbar({ reload, grider, save }) {
grider.redo()} icon="fas fa-redo">
Redo
-
+
Save
grider.revertAllChanges()} icon="fas fa-times">
diff --git a/packages/web/src/datagrid/Grider.ts b/packages/web/src/datagrid/Grider.ts
index 43fc83caf..637d6f74b 100644
--- a/packages/web/src/datagrid/Grider.ts
+++ b/packages/web/src/datagrid/Grider.ts
@@ -28,6 +28,9 @@ export default abstract class Grider {
get canInsert() {
return false;
}
+ get allowSave() {
+ return this.containsChanges;
+ }
get rowCountInUpdate() {
return this.rowCount;
}
diff --git a/packages/web/src/freetable/FreeTableGrider.ts b/packages/web/src/freetable/FreeTableGrider.ts
index 0b640a69d..5a2b3592e 100644
--- a/packages/web/src/freetable/FreeTableGrider.ts
+++ b/packages/web/src/freetable/FreeTableGrider.ts
@@ -33,6 +33,9 @@ export default class FreeTableGrider extends Grider {
get canInsert() {
return true;
}
+ get allowSave() {
+ return true;
+ }
insertRow(): number {
const model = this.currentModel;
this.currentModel = {