From b7dbb978f01e93f5854068aa985cd7ebf885852d Mon Sep 17 00:00:00 2001 From: uncol Date: Fri, 8 Dec 2017 11:28:37 +0300 Subject: [PATCH] add unselect All and Reset buttons --- ui/web/core/ModelApplication.js | 38 +++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/ui/web/core/ModelApplication.js b/ui/web/core/ModelApplication.js index 5cfb354987..1f93ad1787 100644 --- a/ui/web/core/ModelApplication.js +++ b/ui/web/core/ModelApplication.js @@ -154,9 +154,20 @@ Ext.define("NOC.core.ModelApplication", { handler: me.onNewRecord }); + me.unselectAll = Ext.create("Ext.button.Button", { + itemId: "unselect_all", + text: __('Unselect All'), + disabled: true, + glyph: NOC.glyph.minus, + tooltip: __('Unselect all records'), + scope: me, + handler: me.onUnselectAll + }); + me.exportButton = Ext.create("Ext.button.Button", { itemId: "export", text: __("Export"), + disabled: true, glyph: NOC.glyph.arrow_down, tooltip: __("Save screen"), scope: me, @@ -165,7 +176,7 @@ Ext.define("NOC.core.ModelApplication", { } }); - gridToolbar.push(me.searchField, me.refreshButton, me.createButton, me.exportButton); + gridToolbar.push(me.searchField, me.refreshButton, me.createButton, me.unselectAll, me.exportButton); // admin actions if(me.actions || me.hasGroupEdit) { gridToolbar.push(me.createActionMenu()); @@ -244,7 +255,7 @@ Ext.define("NOC.core.ModelApplication", { if(me.actions) { selModel.on("selectionchange", me.onActionSelectionChange, me); } - + selModel.on("selectionchange", me.onSelectionChange, me); var rowItems = [ { glyph: NOC.glyph.star, @@ -1304,6 +1315,12 @@ Ext.define("NOC.core.ModelApplication", { onActionSelectionChange: function(o, selected, opts) { var me = this; me.actionMenu.setDisabled(!selected.length); + me.unselectAll.setDisabled(!selected.length); + }, + onSelectionChange: function(o, selected, opts) { + var me = this; + me.exportButton.setDisabled(!selected.length); + me.unselectAll.setDisabled(!selected.length); }, // // Override with @@ -1488,6 +1505,13 @@ Ext.define("NOC.core.ModelApplication", { // @todo: check access handler: me.onGroupSave }, + { + text: __("Reset"), + glyph: NOC.glyph.undo, + tooltip: __("Reset to default values"), + scope: me, + handler: me.onGroupReset + }, { text: __("Close"), glyph: NOC.glyph.arrow_left, @@ -1589,6 +1613,11 @@ Ext.define("NOC.core.ModelApplication", { }); }, // + onGroupReset: function() { + var me = this; + me.groupForm.reset(); + }, + // onMetrics: function(record) { var me = this; me.showItem(me.ITEM_METRIC_SETTINGS).preview(record); @@ -1642,5 +1671,10 @@ Ext.define("NOC.core.ModelApplication", { } }) } + }, + // + onUnselectAll: function() { + var me = this; + me.grid.getSelectionModel().deselectAll(); } }); -- GitLab