From: erickson Date: Sun, 1 Mar 2009 18:47:11 +0000 (+0000) Subject: separated pane and dialog build out into 2 separate functions X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=5f648f7eda1243470e90dde571be84998c2f688e;p=Evergreen.git separated pane and dialog build out into 2 separate functions git-svn-id: svn://svn.open-ils.org/ILS/trunk@12333 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- diff --git a/Open-ILS/web/js/dojo/openils/widget/AutoGrid.js b/Open-ILS/web/js/dojo/openils/widget/AutoGrid.js index d4c858cf9b..0ba69ede50 100644 --- a/Open-ILS/web/js/dojo/openils/widget/AutoGrid.js +++ b/Open-ILS/web/js/dojo/openils/widget/AutoGrid.js @@ -3,6 +3,7 @@ if(!dojo._hasResource['openils.widget.AutoGrid']) { dojo.require('dojox.grid.DataGrid'); dojo.require('openils.widget.AutoWidget'); dojo.require('openils.widget.AutoFieldWidget'); + dojo.require('openils.widget.EditPane'); dojo.require('openils.widget.EditDialog'); dojo.require('openils.Util'); @@ -106,11 +107,12 @@ if(!dojo._hasResource['openils.widget.AutoGrid']) { ); }, - _drawEditDialog : function(storeItem, rowIndex) { + _makeEditPane : function(storeItem, rowIndex) { var grid = this; var fmObject = new fieldmapper[this.fmClass]().fromStoreItem(storeItem); var idents = grid.store.getIdentityAttributes(); - var dialog = new openils.widget.EditDialog({ + + var pane = new openils.widget.EditPane({ fmObject:fmObject, overrideWidgets : this.overrideEditWidgets, onPostSubmit : function() { @@ -120,7 +122,7 @@ if(!dojo._hasResource['openils.widget.AutoGrid']) { continue; // don't try to edit an identifier field grid.store.setValue(storeItem, field, fmObject[field]()); } - dialog.destroy(); + pane.destroy(); if(self.onPostUpdate) self.onPostUpdate(storeItem, rowIndex); @@ -138,15 +140,15 @@ if(!dojo._hasResource['openils.widget.AutoGrid']) { grid.views.views[0].getCellNode(rowIndex, 0).focus();},200); } }); - dialog.editPane.fieldOrder = this.fieldOrder; - dialog.editPane.mode = 'update'; - dialog.startup(); - dialog.show(); + + pane.fieldOrder = this.fieldOrder; + pane.mode = 'update'; + return pane; }, - showCreateDialog : function() { + _makeCreatePane : function() { var grid = this; - var dialog = new openils.widget.EditDialog({ + var pane = new openils.widget.EditPane({ fmClass : this.fmClass, overrideWidgets : this.overrideEditWidgets, onPostSubmit : function(r) { @@ -164,8 +166,22 @@ if(!dojo._hasResource['openils.widget.AutoGrid']) { },200); }, }); - dialog.editPane.fieldOrder = this.fieldOrder; - dialog.editPane.mode = 'create'; + pane.fieldOrder = this.fieldOrder; + pane.mode = 'create'; + return pane; + }, + + + _drawEditDialog : function(storeItem, rowIndex) { + var pane = this._makeEditPane(storeItem, rowIndex); + var dialog = new openils.widget.EditDialog({editPane:pane}); + dialog.startup(); + dialog.show(); + }, + + showCreateDialog : function() { + var pane = this._makeCreatePane(); + var dialog = new openils.widget.EditDialog({editPane:pane}); dialog.startup(); dialog.show(); },