diff options
author | Alex Rudyy <orudyy@apache.org> | 2014-09-17 16:47:06 +0000 |
---|---|---|
committer | Alex Rudyy <orudyy@apache.org> | 2014-09-17 16:47:06 +0000 |
commit | 10edcd98a9108ac4a432ae91a9d02685238a72c9 (patch) | |
tree | a36df32c945f6070e138884ebc663e824e632e43 | |
parent | a4c7e9a99af82e0f0493e85b80ae5b75b2e3197d (diff) | |
download | qpid-python-10edcd98a9108ac4a432ae91a9d02685238a72c9.tar.gz |
QPID-6093: Address code review comments:
1) Display promptMessages in edit broker dialog
2) Fix issue with button disaperaing on dialog resize on editing VH/VHN and broker
3) Fix context name/value pair editing in Safari
4) Stop posting form data on pressing Cancel button in dialogs for editing VH/VHN and broker
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1625650 13f79535-47bb-0310-9956-ffa450edef68
10 files changed, 82 insertions, 19 deletions
diff --git a/java/broker-plugins/management-http/src/main/java/resources/addVirtualHostNodeAndVirtualHost.html b/java/broker-plugins/management-http/src/main/java/resources/addVirtualHostNodeAndVirtualHost.html index 685b3bced4..3e3e931829 100644 --- a/java/broker-plugins/management-http/src/main/java/resources/addVirtualHostNodeAndVirtualHost.html +++ b/java/broker-plugins/management-http/src/main/java/resources/addVirtualHostNodeAndVirtualHost.html @@ -20,7 +20,7 @@ --> <div class="dijitHidden"> <div data-dojo-type="dijit.Dialog" style="width:600px;" data-dojo-props="title:'Add'" id="addVirtualHostNodeAndVirtualHost"> - + <div id="addVirtualHostNodeAndVirtualHost.contentPane"> <!-- VHN Form --> <form id="addVirtualHostNode.form" method="post" data-dojo-type="dijit/form/Form"> @@ -99,10 +99,10 @@ </fieldset> </div> </form> - - <div class="dijitDialogPaneActionBar"> + </div> + <div class="dijitDialogPaneActionBar"> <button data-dojo-type="dijit/form/Button" id="addVirtualHostNodeAndVirtualHost.addButton" data-dojo-props="label: 'Add'" type="submit"></button> <button data-dojo-type="dijit/form/Button" id="addVirtualHostNodeAndVirtualHost.cancelButton" data-dojo-props="label: 'Cancel'" ></button> - </div> + </div> </div> </div> diff --git a/java/broker-plugins/management-http/src/main/java/resources/editBroker.html b/java/broker-plugins/management-http/src/main/java/resources/editBroker.html index 2516396d4d..85ca617c10 100644 --- a/java/broker-plugins/management-http/src/main/java/resources/editBroker.html +++ b/java/broker-plugins/management-http/src/main/java/resources/editBroker.html @@ -20,6 +20,7 @@ <div data-dojo-type="dijit/Dialog" data-dojo-props="title:'Edit Broker'" id="editBrokerDialog"> <form id="editBrokerForm" method="post" data-dojo-type="dijit/form/Form"> <div id="editBroker.allFields"> + <div id="editBroker.contentPane"> <div class="clear"> <div class="formLabel-labelCell tableContainer-labelCell">Name*:</div> <div class="formLabel-controlCell tableContainer-valueCell"> @@ -107,11 +108,11 @@ </div> <div class="clear"></div> - - <div class="dijitDialogPaneActionBar"> + </div> + <div class="dijitDialogPaneActionBar"> <button data-dojo-type="dijit/form/Button" id="editBroker.saveButton" data-dojo-props="label: 'Save'">Save</button> <button data-dojo-type="dijit/form/Button" id="editBroker.cancelButton" data-dojo-props="label: 'Cancel'" ></button> - </div> + </div> </div> </form> </div> diff --git a/java/broker-plugins/management-http/src/main/java/resources/editVirtualHost.html b/java/broker-plugins/management-http/src/main/java/resources/editVirtualHost.html index 29229137bb..f4826016ec 100644 --- a/java/broker-plugins/management-http/src/main/java/resources/editVirtualHost.html +++ b/java/broker-plugins/management-http/src/main/java/resources/editVirtualHost.html @@ -20,6 +20,7 @@ <div data-dojo-type="dijit/Dialog" data-dojo-props="title:'Edit Virtual Host'" id="editVirtualHostDialog"> <form id="editVirtualHostForm" method="post" data-dojo-type="dijit/form/Form"> <div id="editVirtualHost.allFields"> + <div id="editVirtualHost.contentPane"> <div class="editNoteBanner">NOTE: All changes will only take effect after Virtual Host restart.</div> <div class="clear"> <div class="formLabel-labelCell tableContainer-labelCell">Name*:</div> @@ -125,11 +126,11 @@ <div data-dojo-type="dijit/TitlePane" data-dojo-props="title: 'Context variables', open: false"> <div id="editVirtualHost.context" ></div> </div> - - <div class="dijitDialogPaneActionBar"> + </div> + <div class="dijitDialogPaneActionBar"> <button data-dojo-type="dijit/form/Button" id="editVirtualHost.saveButton" data-dojo-props="label: 'Save'">Save</button> <button data-dojo-type="dijit/form/Button" id="editVirtualHost.cancelButton" data-dojo-props="label: 'Cancel'" ></button> - </div> + </div> </div> </form> </div> diff --git a/java/broker-plugins/management-http/src/main/java/resources/editVirtualHostNode.html b/java/broker-plugins/management-http/src/main/java/resources/editVirtualHostNode.html index 8c2c82fdbd..46e76c31f0 100644 --- a/java/broker-plugins/management-http/src/main/java/resources/editVirtualHostNode.html +++ b/java/broker-plugins/management-http/src/main/java/resources/editVirtualHostNode.html @@ -19,6 +19,7 @@ <div class="dijitHidden"> <div data-dojo-type="dijit/Dialog" data-dojo-props="title:'Edit Virtual Host'" id="editVirtualHostNodeDialog"> <form id="editVirtualHostNodeForm" method="post" data-dojo-type="dijit/form/Form"> + <div id="editVirtualHostNode.contentPane"> <div class="editNoteBanner">NOTE: All changes will only take effect after Virtual Host Node restart.</div> <div class="clear"> <div class="formLabel-labelCell tableContainer-labelCell">Name*:</div> @@ -42,11 +43,11 @@ <div data-dojo-type="dijit/TitlePane" data-dojo-props="title: 'Context variables', open: false"> <div id="editVirtualHostNode.context" ></div> </div> - - <div class="dijitDialogPaneActionBar"> + </div> + <div class="dijitDialogPaneActionBar"> <button data-dojo-type="dijit/form/Button" id="editVirtualHostNode.saveButton" data-dojo-props="label: 'Save'">Save</button> <button data-dojo-type="dijit/form/Button" id="editVirtualHostNode.cancelButton" data-dojo-props="label: 'Cancel'" ></button> - </div> + </div> </form> </div> </div> diff --git a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/ContextVariablesEditor.js b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/ContextVariablesEditor.js index 4f384315ac..e5d341de91 100644 --- a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/ContextVariablesEditor.js +++ b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/ContextVariablesEditor.js @@ -77,8 +77,8 @@ function (util, xhr, declare, array, connect, lang, domConstruct, parser, query, var addButton = registry.byNode(addButtonNode); var deleteButton = registry.byNode(deleteButtonNode); var layout = [[ - { name: "Name", field: "name", width: "40%", editable: true }, - { name: 'Actual Value', field: 'actualValue', width: '30%', editable: true}, + { name: "Name", field: "name", width: "40%", editable: true, selectOnClick: false, type: dojox.grid.cells._Widget, widgetClass: dijit.form.TextBox }, + { name: 'Actual Value', field: 'actualValue', width: '30%', editable: true, selectOnClick: false, type: dojox.grid.cells._Widget, widgetClass: dijit.form.TextBox}, { name: 'Effective Value', field: 'effectiveValue', width: '30%', editable: false} ]]; var data = []; diff --git a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js index ea011ad9dc..a439e0512a 100644 --- a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js +++ b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js @@ -30,6 +30,8 @@ define(["dojo/_base/xhr", "dojo/query", "dojo/parser", "dojo/store/Memory", + "dojo/window", + "dojo/on", "dojox/html/entities", "qpid/common/metadata", "qpid/common/widgetconfigurer", @@ -48,7 +50,7 @@ define(["dojo/_base/xhr", "dojox/validate/web", "dojo/domReady!" ], - function (xhr, array, event, lang, json, dom, geometry, domStyle, win, query, parser, Memory, entities, metadata, widgetconfigurer, registry) { + function (xhr, array, event, lang, json, dom, geometry, domStyle, win, query, parser, Memory, w, on, entities, metadata, widgetconfigurer, registry) { var util = {}; if (Array.isArray) { util.isArray = function (object) { @@ -735,5 +737,39 @@ define(["dojo/_base/xhr", return "^(([0-9a-zA-Z.-_]|::)+:[0-9]{1,5})|" + singleContextVarRegexp + "$"; } + util.resizeContentAreaAndRepositionDialog = function(contentNode, dialog) + { + var viewport = w.getBox(); + var contentDimension =dojo.position(contentNode); + var dialogDimension = dojo.position(dialog.domNode); + var dialogTitleAndFooterHeight = dialogDimension.h - contentDimension.h; + var dialogLeftRightSpaces = dialogDimension.w - contentDimension.w; + + var resize = function() + { + var viewport = w.getBox(); + var width = viewport.w * dialog.maxRatio; + var height = viewport.h * dialog.maxRatio; + var dialogDimension = dojo.position(dialog.domNode); + + var maxContentHeight = height - dialogTitleAndFooterHeight; + + // if width style is set on a dialog node, use dialog width + if (dialog.domNode.style && dialog.domNode.style.width) + { + width = dialogDimension.w; + } + var maxContentWidth = width - dialogLeftRightSpaces; + domStyle.set(contentNode, {"overflow": "auto", maxHeight: maxContentHeight + "px", maxWidth: maxContentWidth + "px"}); + + var dialogX = viewport.w/2 - dialogDimension.w/2; + var dialogY = viewport.h/2 - dialogDimension.h/2; + domStyle.set(dialog.domNode, {top: dialogY + "px", left: dialogX + "px"}); + dialog.resize(); + }; + resize(); + on(window, "resize", resize); + } + return util; }); diff --git a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addVirtualHostNodeAndVirtualHost.js b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addVirtualHostNodeAndVirtualHost.js index 96da8dc5fa..226674bf5a 100644 --- a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addVirtualHostNodeAndVirtualHost.js +++ b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addVirtualHostNodeAndVirtualHost.js @@ -27,6 +27,8 @@ define(["dojo/_base/xhr", "dojo/json", "dojo/parser", "dojo/store/Memory", + "dojo/window", + "dojo/on", "dojox/lang/functional/object", "dijit/registry", "dijit/Dialog", @@ -45,7 +47,7 @@ define(["dojo/_base/xhr", "dojox/validate/us", "dojox/validate/web", "dojo/domReady!"], - function (xhr, event, lang, array, dom, domConstruct, json, parser, Memory, fobject, registry, Dialog, Button, FilteringSelect, properties, util, metadata, template) + function (xhr, event, lang, array, dom, domConstruct, json, parser, Memory, win, on, fobject, registry, Dialog, Button, FilteringSelect, properties, util, metadata, template) { var addVirtualHostNodeAndVirtualHost = @@ -94,7 +96,6 @@ define(["dojo/_base/xhr", this.virtualHostType.set("store", this.virtualHostTypeStore); this.virtualHostType.set("disabled", false); this.virtualHostType.on("change", function(type){that._vhTypeChanged(type, that.virtualHostTypeFieldsContainer, "qpid/management/virtualhost/");}); - }, show: function() { @@ -163,6 +164,11 @@ define(["dojo/_base/xhr", this.virtualHostNodeContext.setData({},effectiveValues,inheritedActualValues); this.virtualHostContext.setData({},effectiveValues,inheritedActualValues); this.dialog.show(); + if (!this.resizeEventRegistered) + { + this.resizeEventRegistered = true; + util.resizeContentAreaAndRepositionDialog(dom.byId("addVirtualHostNodeAndVirtualHost.contentPane"), this.dialog); + } }, destroy: function() { diff --git a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editBroker.js b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editBroker.js index d83db74b65..07938fe8e7 100644 --- a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editBroker.js +++ b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editBroker.js @@ -68,8 +68,9 @@ define(["dojo/_base/xhr", this[fieldName] = registry.byId("editBroker." + fieldName); } this.form = registry.byId("editBrokerForm"); + this.form.on("submit", function(){return false;}); this.context = registry.byId("editBroker.context"); - util.applyMetadataToWidgets(this.containerNode, "Broker", "broker"); + util.applyMetadataToWidgets(dom.byId("editBroker.allFields"), "Broker", "broker"); for(var i = 0; i < numericFieldNames.length; i++) { @@ -186,6 +187,11 @@ define(["dojo/_base/xhr", this.context.load(this.query, {actualValues: actualData.context, effectiveValues: effectiveData.context}); this.dialog.startup(); this.dialog.show(); + if (!this.resizeEventRegistered) + { + this.resizeEventRegistered = true; + util.resizeContentAreaAndRepositionDialog(dom.byId("editBroker.contentPane"), this.dialog); + } } }; diff --git a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHost.js b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHost.js index 7ba86e5d03..5fca2d5523 100644 --- a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHost.js +++ b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHost.js @@ -70,6 +70,7 @@ define(["dojo/_base/xhr", this[fieldName] = registry.byId("editVirtualHost." + fieldName); } this.form = registry.byId("editVirtualHostForm"); + this.form.on("submit", function(){return false;}); }, show: function(hostData) { @@ -204,6 +205,11 @@ define(["dojo/_base/xhr", this.dialog.startup(); this.dialog.show(); + if (!this.resizeEventRegistered) + { + this.resizeEventRegistered = true; + util.resizeContentAreaAndRepositionDialog(dom.byId("editVirtualHost.contentPane"), this.dialog); + } } }; diff --git a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHostNode.js b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHostNode.js index 1c7cbbe439..4f815f1f1d 100644 --- a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHostNode.js +++ b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHostNode.js @@ -61,6 +61,7 @@ define(["dojo/_base/xhr", this.saveButton.on("click", function(e){that._save(e);}); this.name = registry.byId("editVirtualHostNode.name"); this.form = registry.byId("editVirtualHostNodeForm"); + this.form.on("submit", function(){return false;}); }, show: function(effectiveData) { @@ -173,6 +174,11 @@ define(["dojo/_base/xhr", this.dialog.startup(); this.dialog.show(); + if (!this.resizeEventRegistered) + { + this.resizeEventRegistered = true; + util.resizeContentAreaAndRepositionDialog(dom.byId("editVirtualHostNode.contentPane"), this.dialog); + } } }; |