Changed asp and dotnet examples to use css sprites instead of images. Changed dotnet...
[infodrom/rico3] / minsrc / ricoLiveGridForms.js
index dfbf887..1f4c4c1 100644 (file)
@@ -72,7 +72,7 @@ Rico.TableEdit.prototype = {
     // create popup form
 
     this.requestCount=1;
-    this.formPopup=new Rico.Window('', {overflow: this.options.panels ? 'hidden' : 'auto'});
+    this.formPopup=this.createWindow();
     Rico.addClass(this.formPopup.content,'ricoLG_editDiv');
     if (this.options.canEdit || this.options.canAdd) {
       this.startForm();
@@ -101,6 +101,11 @@ Rico.TableEdit.prototype = {
       Rico.runLater(50,this,'initPanelGroup');
     }
   },
+  
+  createWindow: function() {
+    var self=this;
+    return new Rico.Window('', {closeFunc: function() { self.makeFormInvisible(); }, overflow: this.options.panels ? 'hidden' : 'auto'});
+  },
 
   initPanelGroup: function() {
     this.requestCount--;
@@ -369,9 +374,8 @@ Rico.TableEdit.prototype = {
         this.initField(field,fmt);
         break;
     }
-    if (field) {
-      if (fmt.SelectCtl)
-        Rico.EditControls.applyTo(column,field);
+    if (field && fmt.SelectCtl) {
+      Rico.EditControls.applyTo(column,field);
     }
     var hdrSuffix='';
     hdr.className='ricoEditLabel';
@@ -537,10 +541,6 @@ Rico.TableEdit.prototype = {
 
   cancelEdit: function(e) {
     Rico.eventStop(e);
-    for (var i=0; i<this.grid.columns.length; i++) {
-      if (this.grid.columns[i].format && this.grid.columns[i].format.SelectCtl)
-        Rico.EditControls.close(this.grid.columns[i].format.SelectCtl);
-    }
     this.makeFormInvisible();
     this.grid.highlightEnabled=true;
     this.menu.cancelmenu();
@@ -820,6 +820,10 @@ Rico.TableEdit.prototype = {
   },
 
   makeFormInvisible: function() {
+    for (var i=0; i<this.grid.columns.length; i++) {
+      if (this.grid.columns[i].format && this.grid.columns[i].format.SelectCtl)
+        Rico.EditControls.close(this.grid.columns[i].format.SelectCtl);
+    }
     this.formPopup.container.style.visibility='hidden';
     this.formPopup.closePopup();
     this.processCallback(this.options.formClose);