remove selectNode (not needed - learn about Roo.select())
authorAlan Knowles <alan@akbkhome.com>
Mon, 28 Feb 2011 10:19:55 +0000 (18:19 +0800)
committerAlan Knowles <alan@akbkhome.com>
Mon, 28 Feb 2011 10:19:55 +0000 (18:19 +0800)
change form behaviour to default to use MessageBox.wait dialog
add default error handler to form submit, if user doesnt define a actionfailed handler.
new rowclass listener added to Roo.grid.Grid - alterative to using getRowClass
updated docs

202 files changed:
Roo.js
Roo/BasicDialog.js
Roo/Element.js
Roo/form/Action.js
Roo/form/BasicForm.js
Roo/grid/Grid.js
Roo/grid/GridView.js
docs/files.html
docs/index.html
docs/json/roodata.json
docs/symbols/Array.html
docs/symbols/Date.html
docs/symbols/Function.html
docs/symbols/Number.html
docs/symbols/Roo.Ajax.html
docs/symbols/Roo.BasicDialog.html
docs/symbols/Roo.BasicLayoutRegion.html
docs/symbols/Roo.BorderLayout.html
docs/symbols/Roo.BoxComponent.html
docs/symbols/Roo.Button.html
docs/symbols/Roo.ColorPalette.html
docs/symbols/Roo.Component.html
docs/symbols/Roo.ComponentMgr.html
docs/symbols/Roo.CompositeElement.html
docs/symbols/Roo.CompositeElementLite.html
docs/symbols/Roo.ContentPanel.html
docs/symbols/Roo.DDView.html
docs/symbols/Roo.DatePicker.html
docs/symbols/Roo.DialogManager.html
docs/symbols/Roo.DomHelper.html
docs/symbols/Roo.DomQuery.html
docs/symbols/Roo.Editor.html
docs/symbols/Roo.Element.html
docs/symbols/Roo.EventManager.html
docs/symbols/Roo.EventObject.html
docs/symbols/Roo.Fx.html
docs/symbols/Roo.GridPanel.html
docs/symbols/Roo.JsonView.html
docs/symbols/Roo.KeyMap.html
docs/symbols/Roo.KeyNav.html
docs/symbols/Roo.Layer.html
docs/symbols/Roo.LayoutDialog.html
docs/symbols/Roo.LayoutManager.html
docs/symbols/Roo.LayoutRegion.html
docs/symbols/Roo.LoadMask.html
docs/symbols/Roo.Login.html
docs/symbols/Roo.MasterTemplate.html
docs/symbols/Roo.MessageBox.html
docs/symbols/Roo.NestedLayoutPanel.html
docs/symbols/Roo.PagingToolbar.html
docs/symbols/Roo.QuickTips.html
docs/symbols/Roo.ReaderLayout.html
docs/symbols/Roo.Resizable.html
docs/symbols/Roo.Shadow.html
docs/symbols/Roo.SplitBar.AbsoluteLayoutAdapter.html
docs/symbols/Roo.SplitBar.BasicLayoutAdapter.html
docs/symbols/Roo.SplitBar.html
docs/symbols/Roo.SplitButton.html
docs/symbols/Roo.SplitLayoutRegion.html
docs/symbols/Roo.TabPanel.html
docs/symbols/Roo.TabPanelItem.html
docs/symbols/Roo.Template.html
docs/symbols/Roo.Toolbar.Button.html
docs/symbols/Roo.Toolbar.Fill.html
docs/symbols/Roo.Toolbar.Item.html
docs/symbols/Roo.Toolbar.Separator.html
docs/symbols/Roo.Toolbar.Spacer.html
docs/symbols/Roo.Toolbar.SplitButton.html
docs/symbols/Roo.Toolbar.TextItem.html
docs/symbols/Roo.Toolbar.html
docs/symbols/Roo.TreePanel.html
docs/symbols/Roo.UpdateManager.BasicRenderer.html
docs/symbols/Roo.UpdateManager.defaults.html
docs/symbols/Roo.UpdateManager.html
docs/symbols/Roo.View.html
docs/symbols/Roo.XComponent.html
docs/symbols/Roo.data.ArrayReader.html
docs/symbols/Roo.data.Connection.html
docs/symbols/Roo.data.DataProxy.html
docs/symbols/Roo.data.DataReader.html
docs/symbols/Roo.data.HttpProxy.html
docs/symbols/Roo.data.JsonReader.html
docs/symbols/Roo.data.JsonStore.html
docs/symbols/Roo.data.MemoryProxy.html
docs/symbols/Roo.data.Node.html
docs/symbols/Roo.data.Record.html
docs/symbols/Roo.data.ScriptTagProxy.html
docs/symbols/Roo.data.SimpleStore.html
docs/symbols/Roo.data.SortTypes.html
docs/symbols/Roo.data.Store.html
docs/symbols/Roo.data.Tree.html
docs/symbols/Roo.data.XmlReader.html
docs/symbols/Roo.data.html
docs/symbols/Roo.dd.DD.html
docs/symbols/Roo.dd.DDProxy.html
docs/symbols/Roo.dd.DDTarget.html
docs/symbols/Roo.dd.DragDrop.html
docs/symbols/Roo.dd.DragDropMgr.html
docs/symbols/Roo.dd.DragSource.html
docs/symbols/Roo.dd.DragZone.html
docs/symbols/Roo.dd.DropTarget.html
docs/symbols/Roo.dd.DropZone.html
docs/symbols/Roo.dd.Registry.html
docs/symbols/Roo.dd.ScrollManager.html
docs/symbols/Roo.dd.StatusProxy.html
docs/symbols/Roo.dd.html
docs/symbols/Roo.form.Action.html
docs/symbols/Roo.form.BasicForm.html
docs/symbols/Roo.form.Checkbox.html
docs/symbols/Roo.form.Column.html
docs/symbols/Roo.form.ComboBox.html
docs/symbols/Roo.form.DateField.html
docs/symbols/Roo.form.DisplayField.html
docs/symbols/Roo.form.FCKeditor.html
docs/symbols/Roo.form.Field.html
docs/symbols/Roo.form.FieldSet.html
docs/symbols/Roo.form.Form.html
docs/symbols/Roo.form.GridField.html
docs/symbols/Roo.form.Hidden.html
docs/symbols/Roo.form.HtmlEditor.ToolbarContext.html
docs/symbols/Roo.form.HtmlEditor.ToolbarStandard.html
docs/symbols/Roo.form.HtmlEditor.html
docs/symbols/Roo.form.Layout.html
docs/symbols/Roo.form.NumberField.html
docs/symbols/Roo.form.Radio.html
docs/symbols/Roo.form.Row.html
docs/symbols/Roo.form.TextArea.html
docs/symbols/Roo.form.TextField.html
docs/symbols/Roo.form.TriggerField.html
docs/symbols/Roo.form.VTypes.html
docs/symbols/Roo.form.html
docs/symbols/Roo.grid.AbstractGridView.html
docs/symbols/Roo.grid.AbstractSelectionModel.html
docs/symbols/Roo.grid.CellSelectionModel.html
docs/symbols/Roo.grid.ColumnModel.html
docs/symbols/Roo.grid.EditorGrid.html
docs/symbols/Roo.grid.Grid.html
docs/symbols/Roo.grid.GridEditor.html
docs/symbols/Roo.grid.GridView.html
docs/symbols/Roo.grid.PropertyGrid.html
docs/symbols/Roo.grid.RowSelectionModel.html
docs/symbols/Roo.grid.html
docs/symbols/Roo.menu.Adapter.html
docs/symbols/Roo.menu.BaseItem.html
docs/symbols/Roo.menu.CheckItem.html
docs/symbols/Roo.menu.ColorItem.html
docs/symbols/Roo.menu.ColorMenu.html
docs/symbols/Roo.menu.DateItem.html
docs/symbols/Roo.menu.DateMenu.html
docs/symbols/Roo.menu.Item.html
docs/symbols/Roo.menu.Menu.html
docs/symbols/Roo.menu.MenuMgr.html
docs/symbols/Roo.menu.Separator.html
docs/symbols/Roo.menu.TextItem.html
docs/symbols/Roo.menu.html
docs/symbols/Roo.state.CookieProvider.html
docs/symbols/Roo.state.Manager.html
docs/symbols/Roo.state.Provider.html
docs/symbols/Roo.state.html
docs/symbols/Roo.tree.AsyncTreeNode.html
docs/symbols/Roo.tree.ColumnTree.html
docs/symbols/Roo.tree.DefaultSelectionModel.html
docs/symbols/Roo.tree.MultiSelectionModel.html
docs/symbols/Roo.tree.TreeEditor.html
docs/symbols/Roo.tree.TreeFilter.html
docs/symbols/Roo.tree.TreeLoader.html
docs/symbols/Roo.tree.TreeNode.html
docs/symbols/Roo.tree.TreeNodeUI.html
docs/symbols/Roo.tree.TreePanel.html
docs/symbols/Roo.tree.TreeSorter.html
docs/symbols/Roo.tree.html
docs/symbols/Roo.util.CSS.html
docs/symbols/Roo.util.ClickRepeater.html
docs/symbols/Roo.util.DelayedTask.html
docs/symbols/Roo.util.Format.html
docs/symbols/Roo.util.JSON.html
docs/symbols/Roo.util.Math.html
docs/symbols/Roo.util.MixedCollection.html
docs/symbols/Roo.util.Observable.html
docs/symbols/Roo.util.TextMetrics.Instance.html
docs/symbols/Roo.util.TextMetrics.html
docs/symbols/Roo.util.html
docs/symbols/String.html
docs/symbols/_global_.html
docs/symbols/src/Roo.js.html
docs/symbols/src/Roo_Editor.js.html
docs/symbols/src/Roo_Element.js.html
docs/symbols/src/Roo_dd_DDTarget.js.html
docs/symbols/src/Roo_dd_DragDrop.js.html
docs/symbols/src/Roo_dd_DropTarget.js.html
docs/symbols/src/Roo_form_Action.js.html
docs/symbols/src/Roo_form_BasicForm.js.html
docs/symbols/src/Roo_grid_Grid.js.html
docs/symbols/src/Roo_grid_GridView.js.html
docs/symbols/this.html
roojs-all.js
roojs-core-debug.js
roojs-core.js
roojs-debug.js
roojs-ui-debug.js
roojs-ui.js
ux/Lightbox.js

diff --git a/Roo.js b/Roo.js
index d9c659f..7df38d2 100644 (file)
--- a/Roo.js
+++ b/Roo.js
@@ -567,7 +567,23 @@ Roo.factory(conf, Roo.data);
          * you may want to set this to true.
          * @type Boolean
          */
-        useShims : ((isIE && !isIE7) || (isGecko && isMac))
+        useShims : ((isIE && !isIE7) || (isGecko && isMac)),
+        
+        
+                
+        /**
+         * Selects a single element as a Roo Element
+         * This is about as close as you can get to jQuery's $('do crazy stuff')
+         * @param {String} selector The selector/xpath query
+         * @param {Node} root (optional) The start of the query (defaults to document).
+         * @return {Roo.Element}
+         */
+        selectNode : function(selector, root) 
+        {
+            var node = Roo.DomQuery.selectNode(selector,root);
+            return node ? Roo.get(node) : new Roo.Element(false);
+        }
+        
     });
 
 
index 9c26ab7..e4df15e 100644 (file)
@@ -1177,7 +1177,8 @@ Roo.LayoutDialog = function(el, cfg){
         config = Roo.apply({}, el);
         // not sure why we use documentElement here.. - it should always be body.
         // IE7 borks horribly if we use documentElement.
-        el = Roo.get( Roo.isIE ? (document.body || document.documentElement) : (document.documentElement || document.body) ).createChild();
+        // webkit also does not like documentElement - it creates a body element...
+        el = Roo.get( document.body || document.documentElement ).createChild();
         //config.autoCreate = true;
     }
     
index e3ae5c5..d9f65c6 100644 (file)
@@ -1135,7 +1135,9 @@ if(opt.anim.isAnimated()){
          * @param {Object}   options   (optional)An object with standard {@link Roo.EventManager#addListener} options
          */
         addListener : function(eventName, fn, scope, options){
-            Roo.EventManager.on(this.dom,  eventName, fn, scope || this, options);
+            if (this.dom) {
+                Roo.EventManager.on(this.dom,  eventName, fn, scope || this, options);
+            }
         },
 
         /**
index 2ce1b51..59c5dad 100644 (file)
@@ -67,6 +67,7 @@ Roo.form.Action.prototype = {
 
     // default connection failure
     failure : function(response){
+        
         this.response = response;
         this.failureType = Roo.form.Action.CONNECT_FAILURE;
         this.form.afterAction(this, false);
@@ -215,6 +216,7 @@ Roo.extend(Roo.form.Action.Submit, Roo.form.Action, {
                     
             } 
             
+            
             Roo.Ajax.request(Roo.apply(this.createCallback(), {
                 form:this.form.el.dom,
                 url:this.getUrl(!isPost),
@@ -238,6 +240,7 @@ Roo.extend(Roo.form.Action.Submit, Roo.form.Action, {
             Roo.MessageBox.hide();
         }
         
+        
         var result = this.processResponse(response);
         if(result === true || result.success){
             this.form.afterAction(this, true);
@@ -256,6 +259,7 @@ Roo.extend(Roo.form.Action.Submit, Roo.form.Action, {
             Roo.MessageBox.hide();
         }
         
+        
         this.response = response;
         this.failureType = Roo.form.Action.CONNECT_FAILURE;
         this.form.afterAction(this, false);
@@ -304,6 +308,7 @@ Roo.extend(Roo.form.Action.Load, Roo.form.Action, {
     type : 'load',
 
     run : function(){
+        
         Roo.Ajax.request(Roo.apply(
                 this.createCallback(), {
                     method:this.getMethod(),
@@ -313,6 +318,7 @@ Roo.extend(Roo.form.Action.Load, Roo.form.Action, {
     },
 
     success : function(response){
+        
         var result = this.processResponse(response);
         if(result === true || !result.success || !result.data){
             this.failureType = Roo.form.Action.LOAD_FAILURE;
index bf13438..0def7ee 100644 (file)
@@ -82,10 +82,13 @@ Roo.extend(Roo.form.BasicForm, Roo.util.Observable, {
      * @cfg {Boolean} fileUpload
      * Set to true if this form is a file upload.
      */
+     
     /**
      * @cfg {Object} baseParams
      * Parameters to pass with all requests. e.g. baseParams: {id: '123', foo: 'bar'}.
      */
+     /**
+     
     /**
      * @cfg {Number} timeout Timeout for form actions in seconds (default is 30 seconds).
      */
@@ -118,7 +121,7 @@ Roo.extend(Roo.form.BasicForm, Roo.util.Observable, {
      * element by passing it or its id or mask the form itself by passing in true.
      * @type Mixed
      */
-    waitMsgTarget : undefined,
+    waitMsgTarget : false,
 
     // private
     initEl : function(el){
@@ -241,42 +244,50 @@ clientValidation  Boolean          Applies to submit only.  Pass true to call fo
     // private
     beforeAction : function(action){
         var o = action.options;
-        if(o.waitMsg){
-            if(this.waitMsgTarget === true){
-                this.el.mask(o.waitMsg, 'x-mask-loading');
-            }else if(this.waitMsgTarget){
-                this.waitMsgTarget = Roo.get(this.waitMsgTarget);
-                this.waitMsgTarget.mask(o.waitMsg, 'x-mask-loading');
-            }else{
-                Roo.MessageBox.wait(o.waitMsg, o.waitTitle || this.waitTitle || 'Please Wait...');
-            }
+        
+       
+        if(this.waitMsgTarget === true){
+            this.el.mask(o.waitMsg || "Sending", 'x-mask-loading');
+        }else if(this.waitMsgTarget){
+            this.waitMsgTarget = Roo.get(this.waitMsgTarget);
+            this.waitMsgTarget.mask(o.waitMsg || "Sending", 'x-mask-loading');
+        }else {
+            Roo.MessageBox.wait(o.waitMsg || "Sending", o.waitTitle || this.waitTitle || 'Please Wait...');
         }
+         
     },
 
     // private
     afterAction : function(action, success){
         this.activeAction = null;
         var o = action.options;
-        if(o.waitMsg){
-            if(this.waitMsgTarget === true){
-                this.el.unmask();
-            }else if(this.waitMsgTarget){
-                this.waitMsgTarget.unmask();
-            }else{
-                Roo.MessageBox.updateProgress(1);
-                Roo.MessageBox.hide();
-            }
+        
+        if(this.waitMsgTarget === true){
+            this.el.unmask();
+        }else if(this.waitMsgTarget){
+            this.waitMsgTarget.unmask();
+        }else{
+            Roo.MessageBox.updateProgress(1);
+            Roo.MessageBox.hide();
         }
+         
         if(success){
             if(o.reset){
                 this.reset();
             }
             Roo.callback(o.success, o.scope, [this, action]);
             this.fireEvent('actioncomplete', this, action);
+            
         }else{
             Roo.callback(o.failure, o.scope, [this, action]);
+            // show an error message if no failed handler is set..
+            if (!this.hasListener('actionfailed')) {
+                Roo.MessageBox.alert("Error", "Saving Failed, please check your entries");
+            }
+            
             this.fireEvent('actionfailed', this, action);
         }
+        
     },
 
     /**
index ca052c3..d1cac21 100644 (file)
@@ -91,123 +91,123 @@ Roo.grid.Grid = function(container, config){
     }
     /** @private */
        this.addEvents({
-           // raw events
-           /**
-            * @event click
-            * The raw click event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "click" : true,
-           /**
-            * @event dblclick
-            * The raw dblclick event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "dblclick" : true,
-           /**
-            * @event contextmenu
-            * The raw contextmenu event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "contextmenu" : true,
-           /**
-            * @event mousedown
-            * The raw mousedown event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mousedown" : true,
-           /**
-            * @event mouseup
-            * The raw mouseup event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mouseup" : true,
-           /**
-            * @event mouseover
-            * The raw mouseover event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mouseover" : true,
-           /**
-            * @event mouseout
-            * The raw mouseout event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mouseout" : true,
-           /**
-            * @event keypress
-            * The raw keypress event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "keypress" : true,
-           /**
-            * @event keydown
-            * The raw keydown event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "keydown" : true,
-
-           // custom events
-
-           /**
-            * @event cellclick
-            * Fires when a cell is clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "cellclick" : true,
-           /**
-            * @event celldblclick
-            * Fires when a cell is double clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "celldblclick" : true,
-           /**
-            * @event rowclick
-            * Fires when a row is clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           "rowclick" : true,
-           /**
-            * @event rowdblclick
-            * Fires when a row is double clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           "rowdblclick" : true,
-           /**
-            * @event headerclick
-            * Fires when a header is clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "headerclick" : true,
-           /**
-            * @event headerdblclick
-            * Fires when a header cell is double clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "headerdblclick" : true,
-           /**
-            * @event rowcontextmenu
-            * Fires when a row is right clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           "rowcontextmenu" : true,
-           /**
+        // raw events
+        /**
+         * @event click
+         * The raw click event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "click" : true,
+        /**
+         * @event dblclick
+         * The raw dblclick event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "dblclick" : true,
+        /**
+         * @event contextmenu
+         * The raw contextmenu event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "contextmenu" : true,
+        /**
+         * @event mousedown
+         * The raw mousedown event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mousedown" : true,
+        /**
+         * @event mouseup
+         * The raw mouseup event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mouseup" : true,
+        /**
+         * @event mouseover
+         * The raw mouseover event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mouseover" : true,
+        /**
+         * @event mouseout
+         * The raw mouseout event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mouseout" : true,
+        /**
+         * @event keypress
+         * The raw keypress event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "keypress" : true,
+        /**
+         * @event keydown
+         * The raw keydown event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "keydown" : true,
+
+        // custom events
+
+        /**
+         * @event cellclick
+         * Fires when a cell is clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "cellclick" : true,
+        /**
+         * @event celldblclick
+         * Fires when a cell is double clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "celldblclick" : true,
+        /**
+         * @event rowclick
+         * Fires when a row is clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        "rowclick" : true,
+        /**
+         * @event rowdblclick
+         * Fires when a row is double clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        "rowdblclick" : true,
+        /**
+         * @event headerclick
+         * Fires when a header is clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "headerclick" : true,
+        /**
+         * @event headerdblclick
+         * Fires when a header cell is double clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "headerdblclick" : true,
+        /**
+         * @event rowcontextmenu
+         * Fires when a row is right clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        "rowcontextmenu" : true,
+        /**
          * @event cellcontextmenu
          * Fires when a cell is right clicked
          * @param {Grid} this
@@ -216,93 +216,101 @@ Roo.grid.Grid = function(container, config){
          * @param {Roo.EventObject} e
          */
          "cellcontextmenu" : true,
-           /**
-            * @event headercontextmenu
-            * Fires when a header is right clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "headercontextmenu" : true,
-           /**
-            * @event bodyscroll
-            * Fires when the body element is scrolled
-            * @param {Number} scrollLeft
-            * @param {Number} scrollTop
-            */
-           "bodyscroll" : true,
-           /**
-            * @event columnresize
-            * Fires when the user resizes a column
-            * @param {Number} columnIndex
-            * @param {Number} newSize
-            */
-           "columnresize" : true,
-           /**
-            * @event columnmove
-            * Fires when the user moves a column
-            * @param {Number} oldIndex
-            * @param {Number} newIndex
-            */
-           "columnmove" : true,
-           /**
-            * @event startdrag
-            * Fires when row(s) start being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {event} e The raw browser event
-            */
-           "startdrag" : true,
-           /**
-            * @event enddrag
-            * Fires when a drag operation is complete
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {event} e The raw browser event
-            */
-           "enddrag" : true,
-           /**
-            * @event dragdrop
-            * Fires when dragged row(s) are dropped on a valid DD target
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragdrop" : true,
-           /**
-            * @event dragover
-            * Fires while row(s) are being dragged. "targetId" is the id of the Yahoo.util.DD object the selected rows are being dragged over.
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragover" : true,
-           /**
-            * @event dragenter
-            *  Fires when the dragged row(s) first cross another DD target while being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragenter" : true,
-           /**
-            * @event dragout
-            * Fires when the dragged row(s) leave another DD target while being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragout" : true,
+        /**
+         * @event headercontextmenu
+         * Fires when a header is right clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "headercontextmenu" : true,
+        /**
+         * @event bodyscroll
+         * Fires when the body element is scrolled
+         * @param {Number} scrollLeft
+         * @param {Number} scrollTop
+         */
+        "bodyscroll" : true,
+        /**
+         * @event columnresize
+         * Fires when the user resizes a column
+         * @param {Number} columnIndex
+         * @param {Number} newSize
+         */
+        "columnresize" : true,
+        /**
+         * @event columnmove
+         * Fires when the user moves a column
+         * @param {Number} oldIndex
+         * @param {Number} newIndex
+         */
+        "columnmove" : true,
+        /**
+         * @event startdrag
+         * Fires when row(s) start being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {event} e The raw browser event
+         */
+        "startdrag" : true,
+        /**
+         * @event enddrag
+         * Fires when a drag operation is complete
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {event} e The raw browser event
+         */
+        "enddrag" : true,
+        /**
+         * @event dragdrop
+         * Fires when dragged row(s) are dropped on a valid DD target
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragdrop" : true,
+        /**
+         * @event dragover
+         * Fires while row(s) are being dragged. "targetId" is the id of the Yahoo.util.DD object the selected rows are being dragged over.
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragover" : true,
+        /**
+         * @event dragenter
+         *  Fires when the dragged row(s) first cross another DD target while being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragenter" : true,
+        /**
+         * @event dragout
+         * Fires when the dragged row(s) leave another DD target while being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragout" : true,
+        /**
+         * @event rowclass
+         * Fires when a row is rendered, so you can change add a style to it.
+         * @param {GridView} gridview The grid view
+         * @param {Object} rowcfg contains record, rowIndex and rowClass - set rowClass to add a style.
+         */
+        'rowclass' : true,
+
         /**
          * @event render
          * Fires when the grid is rendered
          * @param {Grid} grid
          */
-        render : true
+        'render' : true
     });
 
     Roo.grid.Grid.superclass.constructor.call(this);
index d921357..dcf1f7b 100644 (file)
@@ -842,6 +842,9 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                 var ts = this.templates, ct = ts.cell, rt = ts.row;
                 // buffers
                 var buf = "", lbuf = "", cb, lcb, c, p = {}, rp = {}, r, rowIndex;
+                
+                var hasListener = this.grid.hasListener('rowclass');
+                var rowcfg = {};
                 for(var j = 0, len = rs.length; j < len; j++){
                     r = rs[j]; cb = ""; lcb = ""; rowIndex = (j+startRow);
                     for(var i = 0; i < colCount; i++){
@@ -863,14 +866,24 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                     }
                     var alt = [];
                     if(stripe && ((rowIndex+1) % 2 == 0)){
-                        alt[0] = "x-grid-row-alt";
+                        alt.push("x-grid-row-alt")
                     }
                     if(r.dirty){
-                        alt[1] = " x-grid-dirty-row";
+                        alt.push(  " x-grid-dirty-row");
                     }
                     rp.cells = lcb;
                     if(this.getRowClass){
-                        alt[2] = this.getRowClass(r, rowIndex);
+                        alt.push(this.getRowClass(r, rowIndex));
+                    }
+                    if (hasListener) {
+                        rowcfg = {
+                             
+                            record: r,
+                            rowIndex : rowIndex,
+                            rowClass : ''
+                        }
+                        this.grid.fireEvent('rowclass', this, rowcfg);
+                        alt.push(rowcfg.rowClass);
                     }
                     rp.alt = alt.join(" ");
                     lbuf+= rt.apply(rp);
@@ -883,6 +896,8 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                 var ts = this.templates, ct = ts.cell, rt = ts.row;
                 // buffers
                 var buf = [], lbuf = [], cb, lcb, c, p = {}, rp = {}, r, rowIndex;
+                var hasListener = this.grid.hasListener('rowclass');
+                var rowcfg = {};
                 for(var j = 0, len = rs.length; j < len; j++){
                     r = rs[j]; cb = []; lcb = []; rowIndex = (j+startRow);
                     for(var i = 0; i < colCount; i++){
@@ -904,14 +919,24 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                     }
                     var alt = [];
                     if(stripe && ((rowIndex+1) % 2 == 0)){
-                        alt[0] = "x-grid-row-alt";
+                        alt.push( "x-grid-row-alt");
                     }
                     if(r.dirty){
-                        alt[1] = " x-grid-dirty-row";
+                        alt.push(" x-grid-dirty-row");
                     }
                     rp.cells = lcb;
                     if(this.getRowClass){
-                        alt[2] = this.getRowClass(r, rowIndex);
+                        alt.push( this.getRowClass(r, rowIndex));
+                    }
+                    if (hasListener) {
+                        rowcfg = {
+                             
+                            record: r,
+                            rowIndex : rowIndex,
+                            rowClass : ''
+                        }
+                        this.grid.fireEvent('rowclass', this, rowcfg);
+                        alt.push(rowcfg.rowClass);
                     }
                     rp.alt = alt.join(" ");
                     rp.cells = lcb.join("");
index fe68c08..f390282 100644 (file)
                </div>
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspeciton Doc Generator</a> undefined on Fri Jan 14 2011 17:01:53 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspeciton Doc Generator</a> undefined on Thu Feb 10 2011 17:59:31 GMT+0800 (HKT)
                        Based on 
-                       <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> on Fri Jan 14 2011 17:01:53 GMT+0800 (HKT)
+                       <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> on Thu Feb 10 2011 17:59:31 GMT+0800 (HKT)
                </div>
        </body>
 </html>
\ No newline at end of file
index 184bfe7..82d97d0 100644 (file)
@@ -64,12 +64,6 @@ Roo.BLANK_IMAGE_URL =  "../images/gray/s.gif";
        
        </li>
        
-       <li><div 
-               roo:isc="yes"
-               roo:isns="no">Roo</div>
-       
-       </li>
-       
        <li><div 
                roo:isc="yes"
                roo:isns="no">Roo.Ajax</div>
@@ -1084,6 +1078,12 @@ Roo.BLANK_IMAGE_URL =  "../images/gray/s.gif";
        
        </li>
        
+       <li><div 
+               roo:isc="no"
+               roo:isns="no">_global_</div>
+       
+       </li>
+       
        <li><div 
                roo:isc="yes"
                roo:isns="yes">this</div>
index ecf36d3..c8490e5 100644 (file)
    "props": [],
    "events": []
   },
-  "Roo": {
-   "props": [],
-   "events": []
-  },
   "Roo.Ajax": {
    "props": [],
    "events": [
    "events": []
   },
   "Roo.dd.DD": {
-   "props": [],
+   "props": [
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
+    }
+   ],
    "events": []
   },
   "Roo.dd.DDProxy": {
-   "props": [],
+   "props": [
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
+    }
+   ],
    "events": []
   },
   "Roo.dd.DDTarget": {
-   "props": [],
+   "props": [
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
+    }
+   ],
    "events": []
   },
   "Roo.dd.DragDrop": {
-   "props": [],
+   "props": [
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
+    }
+   ],
    "events": []
   },
   "Roo.dd.DragDropMgr": {
      "type": "String",
      "desc": "The CSS class returned to the drag source when drop is not allowed (defaults to \"x-dd-drop-nodrop\").",
      "memberOf": ""
+    },
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
     }
    ],
    "events": []
      "type": "String",
      "desc": "The CSS class returned to the drag source when drop is not allowed (defaults to \"x-dd-drop-nodrop\").",
      "memberOf": "Roo.dd.DragSource"
+    },
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
     }
    ],
    "events": []
     },
     {
      "name": "valid",
-     "type": "boolean",
-     "desc": "if the drop point is valid for over/enter..",
+     "type": "boolean|String",
+     "desc": "true/false or string (ok-add/ok-sub/ok/nodrop)\nif the drop point is valid for over/enter..",
      "memberOf": ""
+    },
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
     }
    ],
    "events": [
     },
     {
      "name": "valid",
-     "type": "boolean",
-     "desc": "if the drop point is valid for over/enter..",
+     "type": "boolean|String",
+     "desc": "true/false or string (ok-add/ok-sub/ok/nodrop)\nif the drop point is valid for over/enter..",
      "memberOf": "Roo.dd.DropTarget"
+    },
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
     }
    ],
    "events": [
      "type": "function",
      "desc": "Fires when the grid is rendered"
     },
+    {
+     "name": "rowclass",
+     "sig": "function (gridview, rowcfg,)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is rendered, so you can change add a style to it."
+    },
     {
      "name": "rowclick",
      "sig": "function (_self, rowIndex, e)\n{\n\n}",
      "type": "function",
      "desc": "Fires when the grid is rendered"
     },
+    {
+     "name": "rowclass",
+     "sig": "function (gridview, rowcfg,)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is rendered, so you can change add a style to it."
+    },
     {
      "name": "rowclick",
      "sig": "function (_self, rowIndex, e)\n{\n\n}",
      "type": "function",
      "desc": "Fires when the grid is rendered"
     },
+    {
+     "name": "rowclass",
+     "sig": "function (gridview, rowcfg,)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is rendered, so you can change add a style to it."
+    },
     {
      "name": "rowclick",
      "sig": "function (_self, rowIndex, e)\n{\n\n}",
    "props": [],
    "events": []
   },
+  "_global_": {
+   "props": [],
+   "events": []
+  },
   "this": {
    "props": [],
    "events": []
index 8d481b3..158079a 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:16 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 573ef24..a86a7c0 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:16 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index e6a3723..cdaa507 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:17 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 3aac289..8eda4a9 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:17 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 56f7223..d0c06c4 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:17 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 02d6571..e14b488 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:17 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index b0fee5d..e0b868f 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:17 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 10fa218..605594b 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:17 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 774e779..b676eab 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:17 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 829f036..12e7732 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:17 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index d2a9cb8..0524769 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:17 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 0c15d3a..6fcbd2c 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:17 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 41e33c3..8cdd92a 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:17 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 93a37bc..b3fa280 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:47 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 649f2d8..9e9b405 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 5d1e325..3069aa9 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 9765392..6f5fecf 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index f5e40c7..90886c7 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 7453910..2d2a425 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 8d46bef..222857e 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index c411767..f622b4f 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 04935e2..3251acc 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 3136ff8..3ba7552 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 8e636a2..b218342 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 1332e2d..af10033 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 0b37418..a90f033 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 5550a6b..1b82a23 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:18 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 18fc7e7..7919f28 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:19 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 49841a2..1aa2bc1 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:19 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index ce36b99..20c4aaa 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:19 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 9921d32..6262e78 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:19 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index c6c70ae..7cd015a 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:19 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 25022b2..9c615f4 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:19 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 6fdfd57..40b0c79 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:19 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 86f3caa..a0bc1d7 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:19 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 33dddd8..c5a7ae1 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:19 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 7effdd2..9af5d94 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:19 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 1f27dc2..54ec4a1 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:19 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 011733c..1001df3 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 4314c79..35e4b63 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 825e4c4..0d77091 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 7c67d4e..f3b640e 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 9fa4abd..784e680 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:48 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 74b74bd..aef5488 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index a81e2d0..5b6d643 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 40a2012..cc8b01d 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 136b13a..da8c659 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 6064744..70bd5ec 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 9857cb6..f82d680 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 7dbd14b..68f6edf 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index b7b1658..fa83cf4 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 340300e..848e516 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:20 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 5541f38..fc1e87c 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 9fdd2b4..b6b3c10 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 83cfd1b..fc4557f 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 98107e4..e04ef5b 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index d1cf983..9c67bcf 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 8a6d2c5..b7aafaa 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index bfdfabf..c69a7c7 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 9736853..7a7825f 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 913947e..88511e1 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 6c3d57a..a2d2bac 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index a81f1c7..dda546b 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 8f6f3fe..de65030 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 40af137..0242e15 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 70b4fbb..9f2398e 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 31df901..108a00a 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 546ff7b..e385a87 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index fe9e713..2632e6a 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 48bf04b..3c960a3 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 36b437f..c7089b8 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 6ade1ee..9cea1b3 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index fdf6794..e4ca3ad 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index a4cd06c..56ba083 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 55808b2..da12e4f 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index cfd337d..d4d7f65 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index e704f9e..357b278 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 31e4bd1..e4b4044 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index e0c7b18..9ec2240 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 46b544b..175a6d7 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index a149a1d..3e48838 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:22 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 051390b..44a1822 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:23 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 5f1d052..69c2e41 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:49 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:21 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 0cbcff0..afadad3 100644 (file)
@@ -43,8 +43,9 @@
 <!-- ============================== inheritance Block. ================================= -->   
        
                <div class="inheritance res-block">
-                  <pre class="res-block-inner"><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
-<img src="../../images/default/s.gif" height="1"  width="20"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DD 
+                  <pre class="res-block-inner"><a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+<img src="../../images/default/s.gif" height="1"  width="40"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DD 
 
                   </pre>
                </div>
     <a id="Roo.dd.DD-configs"></a>
                
     
+     
     
-     <table cellspacing="0" class="member-table">
-      <caption class="Empty">Config Options - Has None</caption>
-     </table>
-    
+       
+      <table cellspacing="0" class="member-table">   
+      <caption>Config Options (Usually are also Properties)</caption>
     
-     
-               
+       
+        <tr>
+            <th class="sig-header" colspan="2">Options</th>
+           
+            <th class="msource-header">Defined By</th>
+        </tr>
+       
+       
+       
+       
+       
+               <tr class="config-row expandable config-row-alt0">
+                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+                   <td class="sig">
+
+                       <a id="Roo.util.Observable-cfg-listeners" name=".listeners"></a>
+                       <div class="fixedFont">
+                               <b  class="itemname">listeners</b> : <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a>
+                               
+                               
+                       </div>
+                 
+                       <div class="mdesc">
+                           <div class="short">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           .</div> 
+                       </div>
+                       
+                       <div class="mdesc">
+                           <div class="long">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           ..... <br/>        } ,<br/>        .... <br/>    } <br/>  </code></pre></div> 
+                       </div>
+                       
+                       
+
+                   </td>
+                   <td class="msource">
+                       
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+                               
+                   </td>
+               </tr>
+        
+        
+    </table>
+               
   
   
   
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addEvents"   name=".addEvents"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addEvents</b>
+                               
+                                (<a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>object</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Used to define events on this Observable</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Used to define events on this Observable
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>object</b>
+                                               
+                                       </dt>
+                                       <dd>The object with the events defined</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-addInvalidHandleClass"   name=".addInvalidHandleClass"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addListener"   name=".addListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Appends an event handler to this component</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Appends an event handler to this component
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) An object containing handler configuration<br/>properties. This may contain any of the following properties:<ul><br/><li>scope {Object} The scope in which to execute the handler function. The handler function's "this" context.</li><br/><li>delay {Number} The number of milliseconds to delay the invocation of the handler after te event fires.</li><br/><li>single {Boolean} True to add a handler to handle just the next firing of the event, and then remove itself.</li><br/><li>buffer {Number} Causes the handler to be scheduled to run in an {<b>link</b> Roo.util.DelayedTask} delayed<br/>by the specified number of milliseconds. If the event fires again within that time, the original<br/>handler is <em>not</em> invoked, but the new handler is scheduled in its place.</li><br/></ul><br><br/><p><br/><b>Combining Options</b><br><br/>Using the options argument, it is possible to combine different types of listeners:<br><br/><br><br/>A normalized, delayed, one-time listener that auto stops the event and passes a custom argument (forumId)<br/>             <pre><code><br/>                el.on('click', this.onClick, this, {<br/>                       single: true,<br/>              delay: 100,<br/>                forumId: 4<br/>         });<br/>                </code></pre><br/><p><br/><b>Attaching multiple handlers in 1 call</b><br><br/>The method also allows for a single argument to be passed which is a config object containing properties<br/>which specify multiple handlers.<br/><pre><code><br/>               el.on({<br/>                    'click': {<br/>                 fn: this.onClick,<br/>                  scope: this,<br/>                       delay: 100<br/>                 }, <br/>                'mouseover': {<br/>                     fn: this.onMouseOver,<br/>                      scope: this<br/>                },<br/>                 'mouseout': {<br/>                      fn: this.onMouseOut,<br/>                       scope: this<br/>                }<br/>          });<br/>                </code></pre><br/><p><br/>Or a shorthand syntax which passes the same scope object to all handlers:<br/>        <pre><code><br/>                el.on({<br/>                    'click': this.onClick,<br/>             'mouseover': this.onMouseOver,<br/>             'mouseout': this.onMouseOut,<br/>               scope: this<br/>                });<br/>                </code></pre></dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-fireEvent"   name=".fireEvent"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">fireEvent</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a> <B><i>args</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Fires the specified event with the passed parameters (minus the event name).</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Fires the specified event with the passed parameters (minus the event name).
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd></dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a></span>  <b>args</b>
+                                               
+                                       </dt>
+                                       <dd>Variable number of parameters are passed to handlers</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  returns false if any of the handlers return false otherwise it returns true</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-function toString() {
     [native code]
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-hasListener"   name=".hasListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">hasListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Checks to see if this object has any listeners for a specified event</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Checks to see if this object has any listeners for a specified event
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The name of the event to check for</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  True if the event is being listened for, else false</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
                        
                        
                        
-                               <dl class="detailList">
-                               <dt class="heading">Parameters:</dt>
-                               
-                                       <dt>
-                                               <span class="fixedFont"><a href="http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-58190037">HTMLElement</a></span>  <b>node</b>
-                                               
-                                       </dt>
-                                       <dd>the HTMLElement to evaluate</dd>
-                               
-                               </dl>
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-58190037">HTMLElement</a></span>  <b>node</b>
+                                               
+                                       </dt>
+                                       <dd>the HTMLElement to evaluate</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">lock</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Lock this instance</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Lock this instance
+                   
+                               
+                       
+                       
                        
                        
                        
                        
                        
-                               <dl class="detailList">
-                               <dt class="heading">Returns:</dt>
-                               
-                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
-                               
-                               </dl>
                        
                        
                        
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
             <td class="sig">
-                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+                <a id="Roo.util.Observable-method-on"   name=".on"></a>
                <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">lock</b>
+                       <span class="attributes"></span><b class="itemname">on</b>
                                
-                                () 
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>
                        
                                
                        
                </div>
                 <div class="mdesc">
                
-                   <div class="short">Lock this instance</div> 
+                   <div class="short">Appends an event handler to this element (shorthand for addListener)</div> 
                 
                 
                 
                     <div class="long">
                        
-                               Lock this instance
+                               Appends an event handler to this element (shorthand for addListener)
                    
                                
                        
                        
                        
                        
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional)</dd>
+                               
+                               </dl>
+                       
                        
                        
                        
             </td>
             <td class="msource">
                
-                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
                &nbsp;
             </td>
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-purgeListeners"   name=".purgeListeners"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">purgeListeners</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes all listeners for this object</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes all listeners for this object
+                   
+                               
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-removeListener"   name=".removeListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">removeListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-resetConstraints"   name=".resetConstraints"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-un"   name=".un"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">un</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener (shorthand for removeListener)</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener (shorthand for removeListener)
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:23 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 873c4d6..012ed8f 100644 (file)
 <!-- ============================== inheritance Block. ================================= -->   
        
                <div class="inheritance res-block">
-                  <pre class="res-block-inner"><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
-<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DD.html#constructor" roo:cls="Roo.dd.DD.html#constructor">Roo.dd.DD</a>
-<img src="../../images/default/s.gif" height="1"  width="40"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DDProxy 
+                  <pre class="res-block-inner"><a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+<img src="../../images/default/s.gif" height="1" width="40"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DD.html#constructor" roo:cls="Roo.dd.DD.html#constructor">Roo.dd.DD</a>
+<img src="../../images/default/s.gif" height="1"  width="60"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DDProxy 
 
                   </pre>
                </div>
     <a id="Roo.dd.DDProxy-configs"></a>
                
     
+     
     
-     <table cellspacing="0" class="member-table">
-      <caption class="Empty">Config Options - Has None</caption>
-     </table>
-    
+       
+      <table cellspacing="0" class="member-table">   
+      <caption>Config Options (Usually are also Properties)</caption>
     
-     
-               
+       
+        <tr>
+            <th class="sig-header" colspan="2">Options</th>
+           
+            <th class="msource-header">Defined By</th>
+        </tr>
+       
+       
+       
+       
+       
+               <tr class="config-row expandable config-row-alt0">
+                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+                   <td class="sig">
+
+                       <a id="Roo.util.Observable-cfg-listeners" name=".listeners"></a>
+                       <div class="fixedFont">
+                               <b  class="itemname">listeners</b> : <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a>
+                               
+                               
+                       </div>
+                 
+                       <div class="mdesc">
+                           <div class="short">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           .</div> 
+                       </div>
+                       
+                       <div class="mdesc">
+                           <div class="long">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           ..... <br/>        } ,<br/>        .... <br/>    } <br/>  </code></pre></div> 
+                       </div>
+                       
+                       
+
+                   </td>
+                   <td class="msource">
+                       
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+                               
+                   </td>
+               </tr>
+        
+        
+    </table>
+               
   
   
   
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addEvents"   name=".addEvents"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addEvents</b>
+                               
+                                (<a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>object</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Used to define events on this Observable</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Used to define events on this Observable
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>object</b>
+                                               
+                                       </dt>
+                                       <dd>The object with the events defined</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-addInvalidHandleClass"   name=".addInvalidHandleClass"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addListener"   name=".addListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Appends an event handler to this component</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Appends an event handler to this component
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) An object containing handler configuration<br/>properties. This may contain any of the following properties:<ul><br/><li>scope {Object} The scope in which to execute the handler function. The handler function's "this" context.</li><br/><li>delay {Number} The number of milliseconds to delay the invocation of the handler after te event fires.</li><br/><li>single {Boolean} True to add a handler to handle just the next firing of the event, and then remove itself.</li><br/><li>buffer {Number} Causes the handler to be scheduled to run in an {<b>link</b> Roo.util.DelayedTask} delayed<br/>by the specified number of milliseconds. If the event fires again within that time, the original<br/>handler is <em>not</em> invoked, but the new handler is scheduled in its place.</li><br/></ul><br><br/><p><br/><b>Combining Options</b><br><br/>Using the options argument, it is possible to combine different types of listeners:<br><br/><br><br/>A normalized, delayed, one-time listener that auto stops the event and passes a custom argument (forumId)<br/>             <pre><code><br/>                el.on('click', this.onClick, this, {<br/>                       single: true,<br/>              delay: 100,<br/>                forumId: 4<br/>         });<br/>                </code></pre><br/><p><br/><b>Attaching multiple handlers in 1 call</b><br><br/>The method also allows for a single argument to be passed which is a config object containing properties<br/>which specify multiple handlers.<br/><pre><code><br/>               el.on({<br/>                    'click': {<br/>                 fn: this.onClick,<br/>                  scope: this,<br/>                       delay: 100<br/>                 }, <br/>                'mouseover': {<br/>                     fn: this.onMouseOver,<br/>                      scope: this<br/>                },<br/>                 'mouseout': {<br/>                      fn: this.onMouseOut,<br/>                       scope: this<br/>                }<br/>          });<br/>                </code></pre><br/><p><br/>Or a shorthand syntax which passes the same scope object to all handlers:<br/>        <pre><code><br/>                el.on({<br/>                    'click': this.onClick,<br/>             'mouseover': this.onMouseOver,<br/>             'mouseout': this.onMouseOut,<br/>               scope: this<br/>                });<br/>                </code></pre></dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-fireEvent"   name=".fireEvent"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">fireEvent</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a> <B><i>args</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Fires the specified event with the passed parameters (minus the event name).</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Fires the specified event with the passed parameters (minus the event name).
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd></dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a></span>  <b>args</b>
+                                               
+                                       </dt>
+                                       <dd>Variable number of parameters are passed to handlers</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  returns false if any of the handlers return false otherwise it returns true</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-function toString() {
     [native code]
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-hasListener"   name=".hasListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">hasListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Checks to see if this object has any listeners for a specified event</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Checks to see if this object has any listeners for a specified event
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The name of the event to check for</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  True if the event is being listened for, else false</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
                        
                        
                        
-                               <dl class="detailList">
-                               <dt class="heading">Parameters:</dt>
-                               
-                                       <dt>
-                                               <span class="fixedFont"><a href="http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-58190037">HTMLElement</a></span>  <b>node</b>
-                                               
-                                       </dt>
-                                       <dd>the HTMLElement to evaluate</dd>
-                               
-                               </dl>
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-58190037">HTMLElement</a></span>  <b>node</b>
+                                               
+                                       </dt>
+                                       <dd>the HTMLElement to evaluate</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">lock</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Lock this instance</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Lock this instance
+                   
+                               
+                       
+                       
                        
                        
                        
                        
                        
-                               <dl class="detailList">
-                               <dt class="heading">Returns:</dt>
-                               
-                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
-                               
-                               </dl>
                        
                        
                        
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
             <td class="sig">
-                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+                <a id="Roo.util.Observable-method-on"   name=".on"></a>
                <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">lock</b>
+                       <span class="attributes"></span><b class="itemname">on</b>
                                
-                                () 
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>
                        
                                
                        
                </div>
                 <div class="mdesc">
                
-                   <div class="short">Lock this instance</div> 
+                   <div class="short">Appends an event handler to this element (shorthand for addListener)</div> 
                 
                 
                 
                     <div class="long">
                        
-                               Lock this instance
+                               Appends an event handler to this element (shorthand for addListener)
                    
                                
                        
                        
                        
                        
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional)</dd>
+                               
+                               </dl>
+                       
                        
                        
                        
             </td>
             <td class="msource">
                
-                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
                &nbsp;
             </td>
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-purgeListeners"   name=".purgeListeners"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">purgeListeners</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes all listeners for this object</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes all listeners for this object
+                   
+                               
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-removeListener"   name=".removeListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">removeListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-resetConstraints"   name=".resetConstraints"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-un"   name=".un"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">un</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener (shorthand for removeListener)</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener (shorthand for removeListener)
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:23 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 347e197..f049b07 100644 (file)
@@ -43,8 +43,9 @@
 <!-- ============================== inheritance Block. ================================= -->   
        
                <div class="inheritance res-block">
-                  <pre class="res-block-inner"><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
-<img src="../../images/default/s.gif" height="1"  width="20"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DDTarget 
+                  <pre class="res-block-inner"><a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+<img src="../../images/default/s.gif" height="1"  width="40"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DDTarget 
 
                   </pre>
                </div>
     <a id="Roo.dd.DDTarget-configs"></a>
                
     
+     
     
-     <table cellspacing="0" class="member-table">
-      <caption class="Empty">Config Options - Has None</caption>
-     </table>
-    
+       
+      <table cellspacing="0" class="member-table">   
+      <caption>Config Options (Usually are also Properties)</caption>
     
-     
-               
+       
+        <tr>
+            <th class="sig-header" colspan="2">Options</th>
+           
+            <th class="msource-header">Defined By</th>
+        </tr>
+       
+       
+       
+       
+       
+               <tr class="config-row expandable config-row-alt0">
+                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+                   <td class="sig">
+
+                       <a id="Roo.util.Observable-cfg-listeners" name=".listeners"></a>
+                       <div class="fixedFont">
+                               <b  class="itemname">listeners</b> : <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a>
+                               
+                               
+                       </div>
+                 
+                       <div class="mdesc">
+                           <div class="short">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           .</div> 
+                       </div>
+                       
+                       <div class="mdesc">
+                           <div class="long">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           ..... <br/>        } ,<br/>        .... <br/>    } <br/>  </code></pre></div> 
+                       </div>
+                       
+                       
+
+                   </td>
+                   <td class="msource">
+                       
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+                               
+                   </td>
+               </tr>
+        
+        
+    </table>
+               
   
   
   
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addEvents"   name=".addEvents"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addEvents</b>
+                               
+                                (<a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>object</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Used to define events on this Observable</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Used to define events on this Observable
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>object</b>
+                                               
+                                       </dt>
+                                       <dd>The object with the events defined</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-addInvalidHandleClass"   name=".addInvalidHandleClass"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addListener"   name=".addListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Appends an event handler to this component</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Appends an event handler to this component
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) An object containing handler configuration<br/>properties. This may contain any of the following properties:<ul><br/><li>scope {Object} The scope in which to execute the handler function. The handler function's "this" context.</li><br/><li>delay {Number} The number of milliseconds to delay the invocation of the handler after te event fires.</li><br/><li>single {Boolean} True to add a handler to handle just the next firing of the event, and then remove itself.</li><br/><li>buffer {Number} Causes the handler to be scheduled to run in an {<b>link</b> Roo.util.DelayedTask} delayed<br/>by the specified number of milliseconds. If the event fires again within that time, the original<br/>handler is <em>not</em> invoked, but the new handler is scheduled in its place.</li><br/></ul><br><br/><p><br/><b>Combining Options</b><br><br/>Using the options argument, it is possible to combine different types of listeners:<br><br/><br><br/>A normalized, delayed, one-time listener that auto stops the event and passes a custom argument (forumId)<br/>             <pre><code><br/>                el.on('click', this.onClick, this, {<br/>                       single: true,<br/>              delay: 100,<br/>                forumId: 4<br/>         });<br/>                </code></pre><br/><p><br/><b>Attaching multiple handlers in 1 call</b><br><br/>The method also allows for a single argument to be passed which is a config object containing properties<br/>which specify multiple handlers.<br/><pre><code><br/>               el.on({<br/>                    'click': {<br/>                 fn: this.onClick,<br/>                  scope: this,<br/>                       delay: 100<br/>                 }, <br/>                'mouseover': {<br/>                     fn: this.onMouseOver,<br/>                      scope: this<br/>                },<br/>                 'mouseout': {<br/>                      fn: this.onMouseOut,<br/>                       scope: this<br/>                }<br/>          });<br/>                </code></pre><br/><p><br/>Or a shorthand syntax which passes the same scope object to all handlers:<br/>        <pre><code><br/>                el.on({<br/>                    'click': this.onClick,<br/>             'mouseover': this.onMouseOver,<br/>             'mouseout': this.onMouseOut,<br/>               scope: this<br/>                });<br/>                </code></pre></dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-fireEvent"   name=".fireEvent"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">fireEvent</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a> <B><i>args</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Fires the specified event with the passed parameters (minus the event name).</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Fires the specified event with the passed parameters (minus the event name).
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd></dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a></span>  <b>args</b>
+                                               
+                                       </dt>
+                                       <dd>Variable number of parameters are passed to handlers</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  returns false if any of the handlers return false otherwise it returns true</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-function toString() {
     [native code]
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-hasListener"   name=".hasListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">hasListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Checks to see if this object has any listeners for a specified event</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Checks to see if this object has any listeners for a specified event
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The name of the event to check for</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  True if the event is being listened for, else false</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
                 
                     <div class="long">
                        
-                               Checks the tag exclusion list to see if this click should be ignored
+                               Checks the tag exclusion list to see if this click should be ignored
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-58190037">HTMLElement</a></span>  <b>node</b>
+                                               
+                                       </dt>
+                                       <dd>the HTMLElement to evaluate</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">lock</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Lock this instance</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Lock this instance
                    
                                
                        
                        
                        
                        
-                               <dl class="detailList">
-                               <dt class="heading">Parameters:</dt>
-                               
-                                       <dt>
-                                               <span class="fixedFont"><a href="http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-58190037">HTMLElement</a></span>  <b>node</b>
-                                               
-                                       </dt>
-                                       <dd>the HTMLElement to evaluate</dd>
-                               
-                               </dl>
-                       
-                       
                        
                        
                        
-                               <dl class="detailList">
-                               <dt class="heading">Returns:</dt>
-                               
-                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
-                               
-                               </dl>
                        
                        
                        
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
             <td class="sig">
-                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+                <a id="Roo.util.Observable-method-on"   name=".on"></a>
                <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">lock</b>
+                       <span class="attributes"></span><b class="itemname">on</b>
                                
-                                () 
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>
                        
                                
                        
                </div>
                 <div class="mdesc">
                
-                   <div class="short">Lock this instance</div> 
+                   <div class="short">Appends an event handler to this element (shorthand for addListener)</div> 
                 
                 
                 
                     <div class="long">
                        
-                               Lock this instance
+                               Appends an event handler to this element (shorthand for addListener)
                    
                                
                        
                        
                        
                        
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional)</dd>
+                               
+                               </dl>
+                       
                        
                        
                        
             </td>
             <td class="msource">
                
-                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
                &nbsp;
             </td>
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-purgeListeners"   name=".purgeListeners"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">purgeListeners</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes all listeners for this object</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes all listeners for this object
+                   
+                               
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-removeListener"   name=".removeListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">removeListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-resetConstraints"   name=".resetConstraints"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-un"   name=".un"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">un</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener (shorthand for removeListener)</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener (shorthand for removeListener)
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:23 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 2f41c0b..b42c78c 100644 (file)
     
 <!-- ============================== inheritance Block. ================================= -->   
        
+               <div class="inheritance res-block">
+                  <pre class="res-block-inner"><a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+<img src="../../images/default/s.gif" height="1"  width="20"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DragDrop 
+
+                  </pre>
+               </div>
+       
 <!-- ============================== class title / details ============================ -->
     
     
        
        
        
+               <tr><td class="label">Extends:</td><td class="hd-info">
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+       
+               </td></tr>    
+       
+       
     </table>
 
     
     <a id="Roo.dd.DragDrop-configs"></a>
                
     
+     
     
-     <table cellspacing="0" class="member-table">
-      <caption class="Empty">Config Options - Has None</caption>
-     </table>
-    
+       
+      <table cellspacing="0" class="member-table">   
+      <caption>Config Options (Usually are also Properties)</caption>
     
-     
-               
+       
+        <tr>
+            <th class="sig-header" colspan="2">Options</th>
+           
+            <th class="msource-header">Defined By</th>
+        </tr>
+       
+       
+       
+       
+       
+               <tr class="config-row expandable config-row-alt0">
+                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+                   <td class="sig">
+
+                       <a id="Roo.util.Observable-cfg-listeners" name=".listeners"></a>
+                       <div class="fixedFont">
+                               <b  class="itemname">listeners</b> : <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a>
+                               
+                               
+                       </div>
+                 
+                       <div class="mdesc">
+                           <div class="short">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           .</div> 
+                       </div>
+                       
+                       <div class="mdesc">
+                           <div class="long">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           ..... <br/>        } ,<br/>        .... <br/>    } <br/>  </code></pre></div> 
+                       </div>
+                       
+                       
+
+                   </td>
+                   <td class="msource">
+                       
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+                               
+                   </td>
+               </tr>
+        
+        
+    </table>
+               
   
   
   
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addEvents"   name=".addEvents"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addEvents</b>
+                               
+                                (<a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>object</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Used to define events on this Observable</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Used to define events on this Observable
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>object</b>
+                                               
+                                       </dt>
+                                       <dd>The object with the events defined</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addListener"   name=".addListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Appends an event handler to this component</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Appends an event handler to this component
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) An object containing handler configuration<br/>properties. This may contain any of the following properties:<ul><br/><li>scope {Object} The scope in which to execute the handler function. The handler function's "this" context.</li><br/><li>delay {Number} The number of milliseconds to delay the invocation of the handler after te event fires.</li><br/><li>single {Boolean} True to add a handler to handle just the next firing of the event, and then remove itself.</li><br/><li>buffer {Number} Causes the handler to be scheduled to run in an {<b>link</b> Roo.util.DelayedTask} delayed<br/>by the specified number of milliseconds. If the event fires again within that time, the original<br/>handler is <em>not</em> invoked, but the new handler is scheduled in its place.</li><br/></ul><br><br/><p><br/><b>Combining Options</b><br><br/>Using the options argument, it is possible to combine different types of listeners:<br><br/><br><br/>A normalized, delayed, one-time listener that auto stops the event and passes a custom argument (forumId)<br/>             <pre><code><br/>                el.on('click', this.onClick, this, {<br/>                       single: true,<br/>              delay: 100,<br/>                forumId: 4<br/>         });<br/>                </code></pre><br/><p><br/><b>Attaching multiple handlers in 1 call</b><br><br/>The method also allows for a single argument to be passed which is a config object containing properties<br/>which specify multiple handlers.<br/><pre><code><br/>               el.on({<br/>                    'click': {<br/>                 fn: this.onClick,<br/>                  scope: this,<br/>                       delay: 100<br/>                 }, <br/>                'mouseover': {<br/>                     fn: this.onMouseOver,<br/>                      scope: this<br/>                },<br/>                 'mouseout': {<br/>                      fn: this.onMouseOut,<br/>                       scope: this<br/>                }<br/>          });<br/>                </code></pre><br/><p><br/>Or a shorthand syntax which passes the same scope object to all handlers:<br/>        <pre><code><br/>                el.on({<br/>                    'click': this.onClick,<br/>             'mouseover': this.onMouseOver,<br/>             'mouseout': this.onMouseOut,<br/>               scope: this<br/>                });<br/>                </code></pre></dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-fireEvent"   name=".fireEvent"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">fireEvent</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a> <B><i>args</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Fires the specified event with the passed parameters (minus the event name).</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Fires the specified event with the passed parameters (minus the event name).
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd></dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a></span>  <b>args</b>
+                                               
+                                       </dt>
+                                       <dd>Variable number of parameters are passed to handlers</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  returns false if any of the handlers return false otherwise it returns true</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-hasListener"   name=".hasListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">hasListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Checks to see if this object has any listeners for a specified event</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Checks to see if this object has any listeners for a specified event
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The name of the event to check for</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  True if the event is being listened for, else false</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
                </div>
                 <div class="mdesc">
                
-                   <div class="short">Checks the tag exclusion list to see if this click should be ignored</div> 
+                   <div class="short">Checks the tag exclusion list to see if this click should be ignored</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Checks the tag exclusion list to see if this click should be ignored
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-58190037">HTMLElement</a></span>  <b>node</b>
+                                               
+                                       </dt>
+                                       <dd>the HTMLElement to evaluate</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       Roo.dd.DragDrop
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt1 expandable notInherited">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">lock</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Lock this instance</div> 
                 
                 
                 
                     <div class="long">
                        
-                               Checks the tag exclusion list to see if this click should be ignored
+                               Lock this instance
                    
                                
                        
                        
                        
                        
-                               <dl class="detailList">
-                               <dt class="heading">Parameters:</dt>
-                               
-                                       <dt>
-                                               <span class="fixedFont"><a href="http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-58190037">HTMLElement</a></span>  <b>node</b>
-                                               
-                                       </dt>
-                                       <dd>the HTMLElement to evaluate</dd>
-                               
-                               </dl>
-                       
-                       
                        
                        
                        
-                               <dl class="detailList">
-                               <dt class="heading">Returns:</dt>
-                               
-                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
-                               
-                               </dl>
                        
                        
                        
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
             <td class="sig">
-                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+                <a id="Roo.util.Observable-method-on"   name=".on"></a>
                <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">lock</b>
+                       <span class="attributes"></span><b class="itemname">on</b>
                                
-                                () 
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>
                        
                                
                        
                </div>
                 <div class="mdesc">
                
-                   <div class="short">Lock this instance</div> 
+                   <div class="short">Appends an event handler to this element (shorthand for addListener)</div> 
                 
                 
                 
                     <div class="long">
                        
-                               Lock this instance
+                               Appends an event handler to this element (shorthand for addListener)
                    
                                
                        
                        
                        
                        
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional)</dd>
+                               
+                               </dl>
+                       
                        
                        
                        
             </td>
             <td class="msource">
                
-                       Roo.dd.DragDrop
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
                &nbsp;
             </td>
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-purgeListeners"   name=".purgeListeners"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">purgeListeners</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes all listeners for this object</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes all listeners for this object
+                   
+                               
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-removeListener"   name=".removeListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">removeListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-un"   name=".un"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">un</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener (shorthand for removeListener)</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener (shorthand for removeListener)
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:23 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index de1bfed..4738226 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:23 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 782793a..fecaeac 100644 (file)
 <!-- ============================== inheritance Block. ================================= -->   
        
                <div class="inheritance res-block">
-                  <pre class="res-block-inner"><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
-<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DD.html#constructor" roo:cls="Roo.dd.DD.html#constructor">Roo.dd.DD</a>
-<img src="../../images/default/s.gif" height="1" width="40"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DDProxy.html#constructor" roo:cls="Roo.dd.DDProxy.html#constructor">Roo.dd.DDProxy</a>
-<img src="../../images/default/s.gif" height="1"  width="60"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DragSource 
+                  <pre class="res-block-inner"><a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+<img src="../../images/default/s.gif" height="1" width="40"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DD.html#constructor" roo:cls="Roo.dd.DD.html#constructor">Roo.dd.DD</a>
+<img src="../../images/default/s.gif" height="1" width="60"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DDProxy.html#constructor" roo:cls="Roo.dd.DDProxy.html#constructor">Roo.dd.DDProxy</a>
+<img src="../../images/default/s.gif" height="1"  width="80"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DragSource 
 
                   </pre>
                </div>
                    </td>
                </tr>
         
+       
+               <tr class="config-row expandable config-row-alt0">
+                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+                   <td class="sig">
+
+                       <a id="Roo.util.Observable-cfg-listeners" name=".listeners"></a>
+                       <div class="fixedFont">
+                               <b  class="itemname">listeners</b> : <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a>
+                               
+                               
+                       </div>
+                 
+                       <div class="mdesc">
+                           <div class="short">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           .</div> 
+                       </div>
+                       
+                       <div class="mdesc">
+                           <div class="long">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           ..... <br/>        } ,<br/>        .... <br/>    } <br/>  </code></pre></div> 
+                       </div>
+                       
+                       
+
+                   </td>
+                   <td class="msource">
+                       
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+                               
+                   </td>
+               </tr>
+        
         
     </table>
                
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addEvents"   name=".addEvents"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addEvents</b>
+                               
+                                (<a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>object</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Used to define events on this Observable</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Used to define events on this Observable
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>object</b>
+                                               
+                                       </dt>
+                                       <dd>The object with the events defined</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-addInvalidHandleClass"   name=".addInvalidHandleClass"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addListener"   name=".addListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Appends an event handler to this component</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Appends an event handler to this component
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) An object containing handler configuration<br/>properties. This may contain any of the following properties:<ul><br/><li>scope {Object} The scope in which to execute the handler function. The handler function's "this" context.</li><br/><li>delay {Number} The number of milliseconds to delay the invocation of the handler after te event fires.</li><br/><li>single {Boolean} True to add a handler to handle just the next firing of the event, and then remove itself.</li><br/><li>buffer {Number} Causes the handler to be scheduled to run in an {<b>link</b> Roo.util.DelayedTask} delayed<br/>by the specified number of milliseconds. If the event fires again within that time, the original<br/>handler is <em>not</em> invoked, but the new handler is scheduled in its place.</li><br/></ul><br><br/><p><br/><b>Combining Options</b><br><br/>Using the options argument, it is possible to combine different types of listeners:<br><br/><br><br/>A normalized, delayed, one-time listener that auto stops the event and passes a custom argument (forumId)<br/>             <pre><code><br/>                el.on('click', this.onClick, this, {<br/>                       single: true,<br/>              delay: 100,<br/>                forumId: 4<br/>         });<br/>                </code></pre><br/><p><br/><b>Attaching multiple handlers in 1 call</b><br><br/>The method also allows for a single argument to be passed which is a config object containing properties<br/>which specify multiple handlers.<br/><pre><code><br/>               el.on({<br/>                    'click': {<br/>                 fn: this.onClick,<br/>                  scope: this,<br/>                       delay: 100<br/>                 }, <br/>                'mouseover': {<br/>                     fn: this.onMouseOver,<br/>                      scope: this<br/>                },<br/>                 'mouseout': {<br/>                      fn: this.onMouseOut,<br/>                       scope: this<br/>                }<br/>          });<br/>                </code></pre><br/><p><br/>Or a shorthand syntax which passes the same scope object to all handlers:<br/>        <pre><code><br/>                el.on({<br/>                    'click': this.onClick,<br/>             'mouseover': this.onMouseOver,<br/>             'mouseout': this.onMouseOut,<br/>               scope: this<br/>                });<br/>                </code></pre></dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-fireEvent"   name=".fireEvent"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">fireEvent</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a> <B><i>args</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Fires the specified event with the passed parameters (minus the event name).</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Fires the specified event with the passed parameters (minus the event name).
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd></dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a></span>  <b>args</b>
+                                               
+                                       </dt>
+                                       <dd>Variable number of parameters are passed to handlers</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  returns false if any of the handlers return false otherwise it returns true</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-function toString() {
     [native code]
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-hasListener"   name=".hasListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">hasListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Checks to see if this object has any listeners for a specified event</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Checks to see if this object has any listeners for a specified event
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The name of the event to check for</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  True if the event is being listened for, else false</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
                                        </dt>
                                        <dd>the HTMLElement to evaluate</dd>
                                
-                               </dl>
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">lock</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Lock this instance</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Lock this instance
+                   
+                               
+                       
+                       
                        
                        
                        
                        
                        
-                               <dl class="detailList">
-                               <dt class="heading">Returns:</dt>
-                               
-                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
-                               
-                               </dl>
                        
                        
                        
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
             <td class="sig">
-                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+                <a id="Roo.util.Observable-method-on"   name=".on"></a>
                <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">lock</b>
+                       <span class="attributes"></span><b class="itemname">on</b>
                                
-                                () 
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>
                        
                                
                        
                </div>
                 <div class="mdesc">
                
-                   <div class="short">Lock this instance</div> 
+                   <div class="short">Appends an event handler to this element (shorthand for addListener)</div> 
                 
                 
                 
                     <div class="long">
                        
-                               Lock this instance
+                               Appends an event handler to this element (shorthand for addListener)
                    
                                
                        
                        
                        
                        
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional)</dd>
+                               
+                               </dl>
+                       
                        
                        
                        
             </td>
             <td class="msource">
                
-                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
                &nbsp;
             </td>
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-purgeListeners"   name=".purgeListeners"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">purgeListeners</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes all listeners for this object</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes all listeners for this object
+                   
+                               
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-removeListener"   name=".removeListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">removeListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-resetConstraints"   name=".resetConstraints"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-un"   name=".un"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">un</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener (shorthand for removeListener)</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener (shorthand for removeListener)
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:23 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index bc4e021..241a4ac 100644 (file)
 <!-- ============================== inheritance Block. ================================= -->   
        
                <div class="inheritance res-block">
-                  <pre class="res-block-inner"><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
-<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DD.html#constructor" roo:cls="Roo.dd.DD.html#constructor">Roo.dd.DD</a>
-<img src="../../images/default/s.gif" height="1" width="40"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DDProxy.html#constructor" roo:cls="Roo.dd.DDProxy.html#constructor">Roo.dd.DDProxy</a>
-<img src="../../images/default/s.gif" height="1" width="60"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DragSource.html#constructor" roo:cls="Roo.dd.DragSource.html#constructor">Roo.dd.DragSource</a>
-<img src="../../images/default/s.gif" height="1"  width="80"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DragZone 
+                  <pre class="res-block-inner"><a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+<img src="../../images/default/s.gif" height="1" width="40"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DD.html#constructor" roo:cls="Roo.dd.DD.html#constructor">Roo.dd.DD</a>
+<img src="../../images/default/s.gif" height="1" width="60"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DDProxy.html#constructor" roo:cls="Roo.dd.DDProxy.html#constructor">Roo.dd.DDProxy</a>
+<img src="../../images/default/s.gif" height="1" width="80"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DragSource.html#constructor" roo:cls="Roo.dd.DragSource.html#constructor">Roo.dd.DragSource</a>
+<img src="../../images/default/s.gif" height="1"  width="100"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DragZone 
 
                   </pre>
                </div>
                    </td>
                </tr>
         
+       
+               <tr class="config-row expandable config-row-alt0">
+                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+                   <td class="sig">
+
+                       <a id="Roo.util.Observable-cfg-listeners" name=".listeners"></a>
+                       <div class="fixedFont">
+                               <b  class="itemname">listeners</b> : <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a>
+                               
+                               
+                       </div>
+                 
+                       <div class="mdesc">
+                           <div class="short">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           .</div> 
+                       </div>
+                       
+                       <div class="mdesc">
+                           <div class="long">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           ..... <br/>        } ,<br/>        .... <br/>    } <br/>  </code></pre></div> 
+                       </div>
+                       
+                       
+
+                   </td>
+                   <td class="msource">
+                       
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+                               
+                   </td>
+               </tr>
+        
         
     </table>
                
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addEvents"   name=".addEvents"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addEvents</b>
+                               
+                                (<a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>object</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Used to define events on this Observable</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Used to define events on this Observable
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>object</b>
+                                               
+                                       </dt>
+                                       <dd>The object with the events defined</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-addInvalidHandleClass"   name=".addInvalidHandleClass"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addListener"   name=".addListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Appends an event handler to this component</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Appends an event handler to this component
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) An object containing handler configuration<br/>properties. This may contain any of the following properties:<ul><br/><li>scope {Object} The scope in which to execute the handler function. The handler function's "this" context.</li><br/><li>delay {Number} The number of milliseconds to delay the invocation of the handler after te event fires.</li><br/><li>single {Boolean} True to add a handler to handle just the next firing of the event, and then remove itself.</li><br/><li>buffer {Number} Causes the handler to be scheduled to run in an {<b>link</b> Roo.util.DelayedTask} delayed<br/>by the specified number of milliseconds. If the event fires again within that time, the original<br/>handler is <em>not</em> invoked, but the new handler is scheduled in its place.</li><br/></ul><br><br/><p><br/><b>Combining Options</b><br><br/>Using the options argument, it is possible to combine different types of listeners:<br><br/><br><br/>A normalized, delayed, one-time listener that auto stops the event and passes a custom argument (forumId)<br/>             <pre><code><br/>                el.on('click', this.onClick, this, {<br/>                       single: true,<br/>              delay: 100,<br/>                forumId: 4<br/>         });<br/>                </code></pre><br/><p><br/><b>Attaching multiple handlers in 1 call</b><br><br/>The method also allows for a single argument to be passed which is a config object containing properties<br/>which specify multiple handlers.<br/><pre><code><br/>               el.on({<br/>                    'click': {<br/>                 fn: this.onClick,<br/>                  scope: this,<br/>                       delay: 100<br/>                 }, <br/>                'mouseover': {<br/>                     fn: this.onMouseOver,<br/>                      scope: this<br/>                },<br/>                 'mouseout': {<br/>                      fn: this.onMouseOut,<br/>                       scope: this<br/>                }<br/>          });<br/>                </code></pre><br/><p><br/>Or a shorthand syntax which passes the same scope object to all handlers:<br/>        <pre><code><br/>                el.on({<br/>                    'click': this.onClick,<br/>             'mouseover': this.onMouseOver,<br/>             'mouseout': this.onMouseOut,<br/>               scope: this<br/>                });<br/>                </code></pre></dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-fireEvent"   name=".fireEvent"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">fireEvent</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a> <B><i>args</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Fires the specified event with the passed parameters (minus the event name).</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Fires the specified event with the passed parameters (minus the event name).
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd></dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a></span>  <b>args</b>
+                                               
+                                       </dt>
+                                       <dd>Variable number of parameters are passed to handlers</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  returns false if any of the handlers return false otherwise it returns true</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-function toString() {
     [native code]
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-hasListener"   name=".hasListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">hasListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Checks to see if this object has any listeners for a specified event</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Checks to see if this object has any listeners for a specified event
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The name of the event to check for</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  True if the event is being listened for, else false</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
                                        </dt>
                                        <dd>the HTMLElement to evaluate</dd>
                                
-                               </dl>
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">lock</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Lock this instance</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Lock this instance
+                   
+                               
+                       
+                       
                        
                        
                        
                        
                        
-                               <dl class="detailList">
-                               <dt class="heading">Returns:</dt>
-                               
-                                       <dd><span class="fixedFont">boolean</span>  true if this is a valid tag type, false if not</dd>
-                               
-                               </dl>
                        
                        
                        
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
             <td class="sig">
-                <a id="Roo.dd.DragDrop-method-lock"   name=".lock"></a>
+                <a id="Roo.util.Observable-method-on"   name=".on"></a>
                <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">lock</b>
+                       <span class="attributes"></span><b class="itemname">on</b>
                                
-                                () 
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>
                        
                                
                        
                </div>
                 <div class="mdesc">
                
-                   <div class="short">Lock this instance</div> 
+                   <div class="short">Appends an event handler to this element (shorthand for addListener)</div> 
                 
                 
                 
                     <div class="long">
                        
-                               Lock this instance
+                               Appends an event handler to this element (shorthand for addListener)
                    
                                
                        
                        
                        
                        
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional)</dd>
+                               
+                               </dl>
+                       
                        
                        
                        
             </td>
             <td class="msource">
                
-                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
                &nbsp;
             </td>
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-purgeListeners"   name=".purgeListeners"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">purgeListeners</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes all listeners for this object</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes all listeners for this object
+                   
+                               
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-removeListener"   name=".removeListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">removeListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-resetConstraints"   name=".resetConstraints"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-un"   name=".un"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">un</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener (shorthand for removeListener)</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener (shorthand for removeListener)
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:23 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 26d7467..f428dc9 100644 (file)
 <!-- ============================== inheritance Block. ================================= -->   
        
                <div class="inheritance res-block">
-                  <pre class="res-block-inner"><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
-<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DDTarget.html#constructor" roo:cls="Roo.dd.DDTarget.html#constructor">Roo.dd.DDTarget</a>
-<img src="../../images/default/s.gif" height="1"  width="40"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DropTarget 
+                  <pre class="res-block-inner"><a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+<img src="../../images/default/s.gif" height="1" width="40"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DDTarget.html#constructor" roo:cls="Roo.dd.DDTarget.html#constructor">Roo.dd.DDTarget</a>
+<img src="../../images/default/s.gif" height="1"  width="60"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DropTarget 
 
                   </pre>
                </div>
                </tr>
         
        
-               <tr class="config-row expandable config-row-alt1 notInherited">
+               <tr class="config-row expandable config-row-alt1">
+                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+                   <td class="sig">
+
+                       <a id="Roo.util.Observable-cfg-listeners" name=".listeners"></a>
+                       <div class="fixedFont">
+                               <b  class="itemname">listeners</b> : <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a>
+                               
+                               
+                       </div>
+                 
+                       <div class="mdesc">
+                           <div class="short">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           .</div> 
+                       </div>
+                       
+                       <div class="mdesc">
+                           <div class="long">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           ..... <br/>        } ,<br/>        .... <br/>    } <br/>  </code></pre></div> 
+                       </div>
+                       
+                       
+
+                   </td>
+                   <td class="msource">
+                       
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+                               
+                   </td>
+               </tr>
+        
+       
+               <tr class="config-row expandable config-row-alt0 notInherited">
                   <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
                    <td class="sig">
 
                </tr>
         
        
-               <tr class="config-row expandable config-row-alt0 notInherited">
+               <tr class="config-row expandable config-row-alt1 notInherited">
                   <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
                    <td class="sig">
 
                </tr>
         
        
-               <tr class="config-row expandable config-row-alt1 notInherited">
+               <tr class="config-row expandable config-row-alt0 notInherited">
                   <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
                    <td class="sig">
 
                        <a id="Roo.dd.DropTarget-cfg-valid" name=".valid"></a>
                        <div class="fixedFont">
-                               <b  class="itemname">valid</b> : boolean
+                               <b  class="itemname">valid</b> : boolean|<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a>
                                
                                
                        </div>
                  
                        <div class="mdesc">
-                           <div class="short">if the drop point is valid for over/enter.</div> 
+                           <div class="short">true/false or string (ok-add/ok-sub/ok/nodrop)<br/>if the drop point is valid for over/enter.</div> 
                        </div>
                        
                        <div class="mdesc">
-                           <div class="long">if the drop point is valid for over/enter..</div> 
+                           <div class="long">true/false or string (ok-add/ok-sub/ok/nodrop)<br/>if the drop point is valid for over/enter..</div> 
                        </div>
                        
                        
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addEvents"   name=".addEvents"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addEvents</b>
+                               
+                                (<a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>object</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Used to define events on this Observable</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Used to define events on this Observable
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>object</b>
+                                               
+                                       </dt>
+                                       <dd>The object with the events defined</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-addInvalidHandleClass"   name=".addInvalidHandleClass"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addListener"   name=".addListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Appends an event handler to this component</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Appends an event handler to this component
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) An object containing handler configuration<br/>properties. This may contain any of the following properties:<ul><br/><li>scope {Object} The scope in which to execute the handler function. The handler function's "this" context.</li><br/><li>delay {Number} The number of milliseconds to delay the invocation of the handler after te event fires.</li><br/><li>single {Boolean} True to add a handler to handle just the next firing of the event, and then remove itself.</li><br/><li>buffer {Number} Causes the handler to be scheduled to run in an {<b>link</b> Roo.util.DelayedTask} delayed<br/>by the specified number of milliseconds. If the event fires again within that time, the original<br/>handler is <em>not</em> invoked, but the new handler is scheduled in its place.</li><br/></ul><br><br/><p><br/><b>Combining Options</b><br><br/>Using the options argument, it is possible to combine different types of listeners:<br><br/><br><br/>A normalized, delayed, one-time listener that auto stops the event and passes a custom argument (forumId)<br/>             <pre><code><br/>                el.on('click', this.onClick, this, {<br/>                       single: true,<br/>              delay: 100,<br/>                forumId: 4<br/>         });<br/>                </code></pre><br/><p><br/><b>Attaching multiple handlers in 1 call</b><br><br/>The method also allows for a single argument to be passed which is a config object containing properties<br/>which specify multiple handlers.<br/><pre><code><br/>               el.on({<br/>                    'click': {<br/>                 fn: this.onClick,<br/>                  scope: this,<br/>                       delay: 100<br/>                 }, <br/>                'mouseover': {<br/>                     fn: this.onMouseOver,<br/>                      scope: this<br/>                },<br/>                 'mouseout': {<br/>                      fn: this.onMouseOut,<br/>                       scope: this<br/>                }<br/>          });<br/>                </code></pre><br/><p><br/>Or a shorthand syntax which passes the same scope object to all handlers:<br/>        <pre><code><br/>                el.on({<br/>                    'click': this.onClick,<br/>             'mouseover': this.onMouseOver,<br/>             'mouseout': this.onMouseOut,<br/>               scope: this<br/>                });<br/>                </code></pre></dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-fireEvent"   name=".fireEvent"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">fireEvent</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a> <B><i>args</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Fires the specified event with the passed parameters (minus the event name).</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Fires the specified event with the passed parameters (minus the event name).
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd></dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a></span>  <b>args</b>
+                                               
+                                       </dt>
+                                       <dd>Variable number of parameters are passed to handlers</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  returns false if any of the handlers return false otherwise it returns true</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-function toString() {
     [native code]
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-hasListener"   name=".hasListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">hasListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Checks to see if this object has any listeners for a specified event</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Checks to see if this object has any listeners for a specified event
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The name of the event to check for</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  True if the event is being listened for, else false</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             </td>
             <td class="msource">
                
-                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+                       <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable notInherited">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.dd.DropTarget-method-notifyDrop"   name=".notifyDrop"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">notifyDrop</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short"></div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               
+                   
+                               
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       Roo.dd.DropTarget
                &nbsp;
             </td>
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
             <td class="sig">
-                <a id="Roo.dd.DropTarget-method-notifyDrop"   name=".notifyDrop"></a>
+                <a id="Roo.dd.DropTarget-method-notifyEnter"   name=".notifyEnter"></a>
                <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">notifyDrop</b>
+                       <span class="attributes"></span><b class="itemname">notifyEnter</b>
                                
                                 () 
                        
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
             <td class="sig">
-                <a id="Roo.dd.DropTarget-method-notifyEnter"   name=".notifyEnter"></a>
+                <a id="Roo.dd.DropTarget-method-notifyOut"   name=".notifyOut"></a>
                <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">notifyEnter</b>
+                       <span class="attributes"></span><b class="itemname">notifyOut</b>
                                
                                 () 
                        
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
             <td class="sig">
-                <a id="Roo.dd.DropTarget-method-notifyOut"   name=".notifyOut"></a>
+                <a id="Roo.dd.DropTarget-method-notifyOver"   name=".notifyOver"></a>
                <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">notifyOut</b>
+                       <span class="attributes"></span><b class="itemname">notifyOver</b>
                                
                                 () 
                        
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
             <td class="sig">
-                <a id="Roo.dd.DropTarget-method-notifyOver"   name=".notifyOver"></a>
+                <a id="Roo.util.Observable-method-on"   name=".on"></a>
                <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">notifyOver</b>
+                       <span class="attributes"></span><b class="itemname">on</b>
                                
-                                () 
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>
                        
                                
                        
                </div>
                 <div class="mdesc">
                
-                   <div class="short"></div> 
+                   <div class="short">Appends an event handler to this element (shorthand for addListener)</div> 
                 
                 
                 
                     <div class="long">
                        
-                               
+                               Appends an event handler to this element (shorthand for addListener)
                    
                                
                        
                        
                        
                        
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional)</dd>
+                               
+                               </dl>
+                       
                        
                        
                        
             </td>
             <td class="msource">
                
-                       Roo.dd.DropTarget
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
                &nbsp;
             </td>
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-purgeListeners"   name=".purgeListeners"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">purgeListeners</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes all listeners for this object</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes all listeners for this object
+                   
+                               
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-removeListener"   name=".removeListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">removeListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-resetConstraints"   name=".resetConstraints"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-un"   name=".un"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">un</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener (shorthand for removeListener)</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener (shorthand for removeListener)
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:23 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index a038e92..cf4fd30 100644 (file)
 <!-- ============================== inheritance Block. ================================= -->   
        
                <div class="inheritance res-block">
-                  <pre class="res-block-inner"><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
-<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DDTarget.html#constructor" roo:cls="Roo.dd.DDTarget.html#constructor">Roo.dd.DDTarget</a>
-<img src="../../images/default/s.gif" height="1" width="40"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DropTarget.html#constructor" roo:cls="Roo.dd.DropTarget.html#constructor">Roo.dd.DropTarget</a>
-<img src="../../images/default/s.gif" height="1"  width="60"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DropZone 
+                  <pre class="res-block-inner"><a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+<img src="../../images/default/s.gif" height="1" width="20"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>
+<img src="../../images/default/s.gif" height="1" width="40"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DDTarget.html#constructor" roo:cls="Roo.dd.DDTarget.html#constructor">Roo.dd.DDTarget</a>
+<img src="../../images/default/s.gif" height="1" width="60"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/><a href="./Roo.dd.DropTarget.html#constructor" roo:cls="Roo.dd.DropTarget.html#constructor">Roo.dd.DropTarget</a>
+<img src="../../images/default/s.gif" height="1"  width="80"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>Roo.dd.DropZone 
 
                   </pre>
                </div>
         
        
                <tr class="config-row expandable config-row-alt1">
+                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+                   <td class="sig">
+
+                       <a id="Roo.util.Observable-cfg-listeners" name=".listeners"></a>
+                       <div class="fixedFont">
+                               <b  class="itemname">listeners</b> : <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a>
+                               
+                               
+                       </div>
+                 
+                       <div class="mdesc">
+                           <div class="short">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           .</div> 
+                       </div>
+                       
+                       <div class="mdesc">
+                           <div class="long">list of events and functions to call for this object, <br/>For example :<br/><pre><code><br/>    listeners :  { <br/>       'click' : function(e) {<br/>           ..... <br/>        } ,<br/>        .... <br/>    } <br/>  </code></pre></div> 
+                       </div>
+                       
+                       
+
+                   </td>
+                   <td class="msource">
+                       
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+                               
+                   </td>
+               </tr>
+        
+       
+               <tr class="config-row expandable config-row-alt0">
                   <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
                    <td class="sig">
 
                </tr>
         
        
-               <tr class="config-row expandable config-row-alt0">
+               <tr class="config-row expandable config-row-alt1">
                   <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
                    <td class="sig">
 
                </tr>
         
        
-               <tr class="config-row expandable config-row-alt1">
+               <tr class="config-row expandable config-row-alt0">
                   <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
                    <td class="sig">
 
                        <a id="Roo.dd.DropTarget-cfg-valid" name=".valid"></a>
                        <div class="fixedFont">
-                               <b  class="itemname">valid</b> : boolean
+                               <b  class="itemname">valid</b> : boolean|<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a>
                                
                                
                        </div>
                  
                        <div class="mdesc">
-                           <div class="short">if the drop point is valid for over/enter.</div> 
+                           <div class="short">true/false or string (ok-add/ok-sub/ok/nodrop)<br/>if the drop point is valid for over/enter.</div> 
                        </div>
                        
                        <div class="mdesc">
-                           <div class="long">if the drop point is valid for over/enter..</div> 
+                           <div class="long">true/false or string (ok-add/ok-sub/ok/nodrop)<br/>if the drop point is valid for over/enter..</div> 
                        </div>
                        
                        
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addEvents"   name=".addEvents"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addEvents</b>
+                               
+                                (<a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>object</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Used to define events on this Observable</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Used to define events on this Observable
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>object</b>
+                                               
+                                       </dt>
+                                       <dd>The object with the events defined</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-addInvalidHandleClass"   name=".addInvalidHandleClass"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-addListener"   name=".addListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">addListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Appends an event handler to this component</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Appends an event handler to this component
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The method the event invokes</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) An object containing handler configuration<br/>properties. This may contain any of the following properties:<ul><br/><li>scope {Object} The scope in which to execute the handler function. The handler function's "this" context.</li><br/><li>delay {Number} The number of milliseconds to delay the invocation of the handler after te event fires.</li><br/><li>single {Boolean} True to add a handler to handle just the next firing of the event, and then remove itself.</li><br/><li>buffer {Number} Causes the handler to be scheduled to run in an {<b>link</b> Roo.util.DelayedTask} delayed<br/>by the specified number of milliseconds. If the event fires again within that time, the original<br/>handler is <em>not</em> invoked, but the new handler is scheduled in its place.</li><br/></ul><br><br/><p><br/><b>Combining Options</b><br><br/>Using the options argument, it is possible to combine different types of listeners:<br><br/><br><br/>A normalized, delayed, one-time listener that auto stops the event and passes a custom argument (forumId)<br/>             <pre><code><br/>                el.on('click', this.onClick, this, {<br/>                       single: true,<br/>              delay: 100,<br/>                forumId: 4<br/>         });<br/>                </code></pre><br/><p><br/><b>Attaching multiple handlers in 1 call</b><br><br/>The method also allows for a single argument to be passed which is a config object containing properties<br/>which specify multiple handlers.<br/><pre><code><br/>               el.on({<br/>                    'click': {<br/>                 fn: this.onClick,<br/>                  scope: this,<br/>                       delay: 100<br/>                 }, <br/>                'mouseover': {<br/>                     fn: this.onMouseOver,<br/>                      scope: this<br/>                },<br/>                 'mouseout': {<br/>                      fn: this.onMouseOut,<br/>                       scope: this<br/>                }<br/>          });<br/>                </code></pre><br/><p><br/>Or a shorthand syntax which passes the same scope object to all handlers:<br/>        <pre><code><br/>                el.on({<br/>                    'click': this.onClick,<br/>             'mouseover': this.onMouseOver,<br/>             'mouseout': this.onMouseOut,<br/>               scope: this<br/>                });<br/>                </code></pre></dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-fireEvent"   name=".fireEvent"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">fireEvent</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a> <B><i>args</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Fires the specified event with the passed parameters (minus the event name).</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Fires the specified event with the passed parameters (minus the event name).
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd></dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object...</a></span>  <b>args</b>
+                                               
+                                       </dt>
+                                       <dd>Variable number of parameters are passed to handlers</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  returns false if any of the handlers return false otherwise it returns true</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-function toString() {
     [native code]
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-hasListener"   name=".hasListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">hasListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Checks to see if this object has any listeners for a specified event</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Checks to see if this object has any listeners for a specified event
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The name of the event to check for</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Boolean">Boolean</a></span>  True if the event is being listened for, else false</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
                        
                        
                        
-                       
-                       
-                       
-                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       Roo.dd.DropZone
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable notInherited">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.dd.DropZone-method-notifyOver"   name=".notifyOver"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">notifyOver</b>
+                               
+                                (<a href="./Roo.dd.DragSource.html#constructor" roo:cls="Roo.dd.DragSource.html#constructor">Roo.dd.DragSource</a> <B><i>source</i></B>, Event <B><i>e</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>data</i></B>) 
+                       
+                               
+                                        : 
+                                       
+                                               
+                                               <a href="./String.html#constructor" roo:cls="String.html#constructor">String</a>
+                                       
+                                       
+                                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">The function a {<b>link</b> Roo.dd.DragSource} calls continuously while it is being dragged over the drop zone.</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               The function a {<b>link</b> Roo.dd.DragSource} calls continuously while it is being dragged over the drop zone.<br/>This method will be called on every mouse movement while the drag source is over the drop zone.<br/>It will call {<b>link</b> <b>onNodeOver</b>} while the drag source is over a registered node, and will also automatically<br/>delegate to the appropriate node-specific methods as necessary when the drag source enters and exits<br/>registered nodes ({<b>link</b> <b>onNodeEnter</b>}, {<b>link</b> <b>onNodeOut</b>}). If the drag source is not currently over a<br/>registered node, it will call {<b>link</b> <b>onContainerOver</b>}.
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Roo.dd.DragSource.html#constructor" roo:cls="Roo.dd.DragSource.html#constructor">Roo.dd.DragSource</a></span>  <b>source</b>
+                                               
+                                       </dt>
+                                       <dd>The drag source that was dragged over this drop zone</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont">Event</span>  <b>e</b>
+                                               
+                                       </dt>
+                                       <dd>The event</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>data</b>
+                                               
+                                       </dt>
+                                       <dd>An object containing arbitrary data supplied by the drag source</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Returns:</dt>
+                               
+                                       <dd><span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  status The CSS class that communicates the drop status back to the source so that the<br/>underlying {<b>link</b> Roo.dd.StatusProxy} can be updated</dd>
+                               
+                               </dl>
+                       
+                       
+                       
 
                    
                    
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
             <td class="sig">
-                <a id="Roo.dd.DropZone-method-notifyOver"   name=".notifyOver"></a>
+                <a id="Roo.util.Observable-method-on"   name=".on"></a>
                <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">notifyOver</b>
+                       <span class="attributes"></span><b class="itemname">on</b>
                                
-                                (<a href="./Roo.dd.DragSource.html#constructor" roo:cls="Roo.dd.DragSource.html#constructor">Roo.dd.DragSource</a> <B><i>source</i></B>, Event <B><i>e</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>data</i></B>) 
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>options</i></B>) 
                        
                                
-                                        : 
-                                       
-                                               
-                                               <a href="./String.html#constructor" roo:cls="String.html#constructor">String</a>
-                                       
-                                       
-                                       
-                               
                        
                </div>
                 <div class="mdesc">
                
-                   <div class="short">The function a {<b>link</b> Roo.dd.DragSource} calls continuously while it is being dragged over the drop zone.</div> 
+                   <div class="short">Appends an event handler to this element (shorthand for addListener)</div> 
                 
                 
                 
                     <div class="long">
                        
-                               The function a {<b>link</b> Roo.dd.DragSource} calls continuously while it is being dragged over the drop zone.<br/>This method will be called on every mouse movement while the drag source is over the drop zone.<br/>It will call {<b>link</b> <b>onNodeOver</b>} while the drag source is over a registered node, and will also automatically<br/>delegate to the appropriate node-specific methods as necessary when the drag source enters and exits<br/>registered nodes ({<b>link</b> <b>onNodeEnter</b>}, {<b>link</b> <b>onNodeOut</b>}). If the drag source is not currently over a<br/>registered node, it will call {<b>link</b> <b>onContainerOver</b>}.
+                               Appends an event handler to this element (shorthand for addListener)
                    
                                
                        
                                <dt class="heading">Parameters:</dt>
                                
                                        <dt>
-                                               <span class="fixedFont"><a href="./Roo.dd.DragSource.html#constructor" roo:cls="Roo.dd.DragSource.html#constructor">Roo.dd.DragSource</a></span>  <b>source</b>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
                                                
                                        </dt>
-                                       <dd>The drag source that was dragged over this drop zone</dd>
+                                       <dd>The type of event to listen for</dd>
                                
                                        <dt>
-                                               <span class="fixedFont">Event</span>  <b>e</b>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
                                                
                                        </dt>
-                                       <dd>The event</dd>
+                                       <dd>The method the event invokes</dd>
                                
                                        <dt>
-                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>data</b>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
                                                
                                        </dt>
-                                       <dd>An object containing arbitrary data supplied by the drag source</dd>
+                                       <dd>(optional) The scope in which to execute the handler<br/>function. The handler function's "this" context.</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>options</b>
+                                               
+                                       </dt>
+                                       <dd>(optional)</dd>
                                
                                </dl>
                        
                        
                        
                        
-                               <dl class="detailList">
-                               <dt class="heading">Returns:</dt>
-                               
-                                       <dd><span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  status The CSS class that communicates the drop status back to the source so that the<br/>underlying {<b>link</b> Roo.dd.StatusProxy} can be updated</dd>
-                               
-                               </dl>
-                       
                        
                        
 
             </td>
             <td class="msource">
                
-                       Roo.dd.DropZone
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
                &nbsp;
             </td>
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable notInherited">
+          <tr class="method-row config-row-alt1 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable notInherited">
+          <tr class="method-row config-row-alt0 expandable notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-purgeListeners"   name=".purgeListeners"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">purgeListeners</b>
+                               
+                                () 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes all listeners for this object</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes all listeners for this object
+                   
+                               
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
+            <td class="sig">
+                <a id="Roo.util.Observable-method-removeListener"   name=".removeListener"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">removeListener</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
+          <tr class="method-row config-row-alt0 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
             <td class="sig">
                 <a id="Roo.dd.DragDrop-method-resetConstraints"   name=".resetConstraints"></a>
                <div class="fixedFont">
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt0 expandable">
+          <tr class="method-row config-row-alt1 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
-          <tr class="method-row config-row-alt1 expandable">
+          <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
           
         </tr>
        
          
+          <tr class="method-row config-row-alt1 expandable">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+          
+          
+            <td class="sig">
+                <a id="Roo.util.Observable-method-un"   name=".un"></a>
+               <div class="fixedFont">
+                       <span class="attributes"></span><b class="itemname">un</b>
+                               
+                                (<a href="./String.html#constructor" roo:cls="String.html#constructor">String</a> <B><i>eventName</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>handler</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>scope</i></B>) 
+                       
+                               
+                       
+               </div>
+                <div class="mdesc">
+               
+                   <div class="short">Removes a listener (shorthand for removeListener)</div> 
+                
+                
+                
+                    <div class="long">
+                       
+                               Removes a listener (shorthand for removeListener)
+                   
+                               
+                       
+                       
+                       
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./String.html#constructor" roo:cls="String.html#constructor">String</a></span>  <b>eventName</b>
+                                               
+                                       </dt>
+                                       <dd>The type of event to listen for</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>handler</b>
+                                               
+                                       </dt>
+                                       <dd>The handler to remove</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>scope</b>
+                                               
+                                       </dt>
+                                       <dd>(optional) The scope (this object) for the handler</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+               
+                       <a href="./Roo.util.Observable.html#constructor" roo:cls="Roo.util.Observable.html#constructor">Roo.util.Observable</a>
+               &nbsp;
+            </td>
+        </tr>
+       
+         
           <tr class="method-row config-row-alt0 expandable">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
           
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:24 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 0fafaa2..8a8c052 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:24 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 11d45c6..f4f7cc3 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:24 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 92b9d8e..90fb75d 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:24 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 7d5547c..b3345af 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:23 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 63744de..0beac41 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:24 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index e8f0464..e6a10fe 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:24 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 974c847..ad62bb2 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:24 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 361eee5..955c2cf 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:24 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index e78c1f7..b8623fd 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:24 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 234f919..0d21b21 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:24 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 912dba4..971bbb0 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:25 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 8e8d8d7..4f4d7a3 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:25 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index c907415..3dbe616 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:25 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 7bdc263..c189216 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:25 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 2c8d154..34fff57 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:25 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 97322fb..f449541 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:25 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index b201d1b..cd110a8 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:25 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 4fb5a86..e9dbe6b 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:25 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index e3fd375..bd20c6b 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:25 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 0998df1..1eef209 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:25 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 32dfd00..2e33e92 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:25 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 8946edf..efbffd3 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:26 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 23bcaa2..53d0370 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:26 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 16ad945..663117b 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:26 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 6555b12..8018328 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:26 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 6b6fe54..1895698 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:26 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index e3b1e86..9a44e1d 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:27 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 4e448dd..3f90519 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:27 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 3d73ea9..d895aef 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:50 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:24 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index dcc133e..493ab87 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:27 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index d161b38..e5f7b77 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:27 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index f62be0a..d971b3a 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:27 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 8f3f40d..5e51c5e 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:27 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index cda43d7..e289014 100644 (file)
           <tr class="method-row expandable config-row-alt0">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
+            <td class="sig">
+                <a id="Roo.grid.Grid-event-*rowclass"></a>
+                
+              <div class="fixedFont">
+               <b class="itemname">rowclass</b> (GridView <B><i>gridview</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>rowcfg,</i></B>) 
+               
+               </div>
+
+                <div class="mdesc">
+
+                   <div class="short">Fires when a row is rendered, so you can change add a style to it.
+                  
+               </div> 
+                   
+                    <div class="long">
+                   
+                       Fires when a row is rendered, so you can change add a style to it.
+                   
+                       
+                       
+               
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont">GridView</span> <b>gridview</b>
+                                               
+                                       </dt>
+                                       <dd>The grid view</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span> <b>rowcfg,</b>
+                                               
+                                       </dt>
+                                       <dd>contains record, rowIndex and rowClass - set rowClass to add a style.</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+                <a href="./Roo.grid.Grid.html#constructor" roo:cls="Roo.grid.Grid.html#constructor">Roo.grid.Grid</a>
+            </td>
+        </tr>
+       
+          <tr class="method-row expandable config-row-alt1">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+           
             <td class="sig">
                 <a id="Roo.grid.Grid-event-*rowclick"></a>
                 
             </td>
         </tr>
        
-          <tr class="method-row expandable config-row-alt1">
+          <tr class="method-row expandable config-row-alt0">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
             <td class="sig">
             </td>
         </tr>
        
-          <tr class="method-row expandable config-row-alt0">
+          <tr class="method-row expandable config-row-alt1">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
             <td class="sig">
             </td>
         </tr>
        
-          <tr class="method-row expandable config-row-alt1">
+          <tr class="method-row expandable config-row-alt0">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
             <td class="sig">
             </td>
         </tr>
        
-          <tr class="method-row expandable config-row-alt0 notInherited">
+          <tr class="method-row expandable config-row-alt1 notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
             <td class="sig">
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:27 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 0b9e189..7b7bc5b 100644 (file)
           <tr class="method-row expandable config-row-alt0 notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
+            <td class="sig">
+                <a id="Roo.grid.Grid-event-*rowclass"></a>
+                
+              <div class="fixedFont">
+               <b class="itemname">rowclass</b> (GridView <B><i>gridview</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>rowcfg,</i></B>) 
+               
+               </div>
+
+                <div class="mdesc">
+
+                   <div class="short">Fires when a row is rendered, so you can change add a style to it.
+                  
+               </div> 
+                   
+                    <div class="long">
+                   
+                       Fires when a row is rendered, so you can change add a style to it.
+                   
+                       
+                       
+               
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont">GridView</span> <b>gridview</b>
+                                               
+                                       </dt>
+                                       <dd>The grid view</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span> <b>rowcfg,</b>
+                                               
+                                       </dt>
+                                       <dd>contains record, rowIndex and rowClass - set rowClass to add a style.</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+                Roo.grid.Grid
+            </td>
+        </tr>
+       
+          <tr class="method-row expandable config-row-alt1 notInherited">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+           
             <td class="sig">
                 <a id="Roo.grid.Grid-event-*rowclick"></a>
                 
             </td>
         </tr>
        
-          <tr class="method-row expandable config-row-alt1 notInherited">
+          <tr class="method-row expandable config-row-alt0 notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
             <td class="sig">
             </td>
         </tr>
        
-          <tr class="method-row expandable config-row-alt0 notInherited">
+          <tr class="method-row expandable config-row-alt1 notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
             <td class="sig">
             </td>
         </tr>
        
-          <tr class="method-row expandable config-row-alt1 notInherited">
+          <tr class="method-row expandable config-row-alt0 notInherited">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
             <td class="sig">
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index fa12af6..1f01140 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 02c2399..a021f73 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index b21858d..67d9bd7 100644 (file)
           <tr class="method-row expandable config-row-alt0">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
+            <td class="sig">
+                <a id="Roo.grid.Grid-event-*rowclass"></a>
+                
+              <div class="fixedFont">
+               <b class="itemname">rowclass</b> (GridView <B><i>gridview</i></B>, <a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>rowcfg,</i></B>) 
+               
+               </div>
+
+                <div class="mdesc">
+
+                   <div class="short">Fires when a row is rendered, so you can change add a style to it.
+                  
+               </div> 
+                   
+                    <div class="long">
+                   
+                       Fires when a row is rendered, so you can change add a style to it.
+                   
+                       
+                       
+               
+                       
+                               <dl class="detailList">
+                               <dt class="heading">Parameters:</dt>
+                               
+                                       <dt>
+                                               <span class="fixedFont">GridView</span> <b>gridview</b>
+                                               
+                                       </dt>
+                                       <dd>The grid view</dd>
+                               
+                                       <dt>
+                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span> <b>rowcfg,</b>
+                                               
+                                       </dt>
+                                       <dd>contains record, rowIndex and rowClass - set rowClass to add a style.</dd>
+                               
+                               </dl>
+                       
+                       
+                       
+                       
+                       
+                       
+                       
+
+                   
+                   
+                    
+                    </div>                    
+                </div>
+
+            </td>
+            <td class="msource">
+                <a href="./Roo.grid.Grid.html#constructor" roo:cls="Roo.grid.Grid.html#constructor">Roo.grid.Grid</a>
+            </td>
+        </tr>
+       
+          <tr class="method-row expandable config-row-alt1">
+            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
+           
             <td class="sig">
                 <a id="Roo.grid.Grid-event-*rowclick"></a>
                 
             </td>
         </tr>
        
-          <tr class="method-row expandable config-row-alt1">
+          <tr class="method-row expandable config-row-alt0">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
             <td class="sig">
             </td>
         </tr>
        
-          <tr class="method-row expandable config-row-alt0">
+          <tr class="method-row expandable config-row-alt1">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
             <td class="sig">
             </td>
         </tr>
        
-          <tr class="method-row expandable config-row-alt1">
+          <tr class="method-row expandable config-row-alt0">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
             <td class="sig">
             </td>
         </tr>
        
-          <tr class="method-row expandable config-row-alt0">
+          <tr class="method-row expandable config-row-alt1">
             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
            
             <td class="sig">
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 49020ea..88a9f35 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 68a6414..1d200ef 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:27 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 23c9b36..be6194a 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 4176d5b..77a0ad0 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 23a2983..58b4900 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index e1792c2..d9fd92a 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 70577bc..65a0966 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 356897a..699347c 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 714b2ac..f60accc 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 12d988f..545f3b5 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index d9e5c33..e0e1182 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 81cfd4b..6b38d4b 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 8646b8d..5f8ed46 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index d22208d..cb65b94 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index fea60f4..31bf405 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:51 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:28 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 9a56fbf..8159c68 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 080afab..734aa2b 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index bb9b687..68cf90c 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index c8d2736..c26ec31 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 13dd3ce..d43a45e 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index e260987..5a41609 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 29b12e3..fe1e2f4 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index dba48ef..ad4babb 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index c166830..9a6c373 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 3253632..ccba8f0 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index e44bb46..9695c57 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index eda2d64..7763dfe 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 0a54481..fe966b8 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 3079875..7685ac4 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index fe872c2..c96c768 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 52720b2..e08d590 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:29 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index b8444e7..82f2a34 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index a986ecc..84725fd 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 3bc623f..8e29724 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index a1aee3c..09a739a 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 444bf8e..0ecc6f1 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index c1f9ef0..781cebc 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 19ee863..1d82c61 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index aa7e695..8ca6f97 100644 (file)
@@ -63,7 +63,7 @@
        
        
         <tr><td class="label">Subclasses:</td><td class="hd-info">
-               <a href="./Roo.Ajax.html#constructor" roo:cls="Roo.Ajax.html#constructor">Roo.Ajax</a>, <a href="./Roo.BasicDialog.html#constructor" roo:cls="Roo.BasicDialog.html#constructor">Roo.BasicDialog</a>, <a href="./Roo.BasicLayoutRegion.html#constructor" roo:cls="Roo.BasicLayoutRegion.html#constructor">Roo.BasicLayoutRegion</a>, <a href="./Roo.BorderLayout.html#constructor" roo:cls="Roo.BorderLayout.html#constructor">Roo.BorderLayout</a>, <a href="./Roo.BoxComponent.html#constructor" roo:cls="Roo.BoxComponent.html#constructor">Roo.BoxComponent</a>, <a href="./Roo.Button.html#constructor" roo:cls="Roo.Button.html#constructor">Roo.Button</a>, <a href="./Roo.ColorPalette.html#constructor" roo:cls="Roo.ColorPalette.html#constructor">Roo.ColorPalette</a>, <a href="./Roo.Component.html#constructor" roo:cls="Roo.Component.html#constructor">Roo.Component</a>, <a href="./Roo.ContentPanel.html#constructor" roo:cls="Roo.ContentPanel.html#constructor">Roo.ContentPanel</a>, <a href="./Roo.DatePicker.html#constructor" roo:cls="Roo.DatePicker.html#constructor">Roo.DatePicker</a>, <a href="./Roo.Editor.html#constructor" roo:cls="Roo.Editor.html#constructor">Roo.Editor</a>, <a href="./Roo.GridPanel.html#constructor" roo:cls="Roo.GridPanel.html#constructor">Roo.GridPanel</a>, <a href="./Roo.JsonView.html#constructor" roo:cls="Roo.JsonView.html#constructor">Roo.JsonView</a>, <a href="./Roo.LayoutDialog.html#constructor" roo:cls="Roo.LayoutDialog.html#constructor">Roo.LayoutDialog</a>, <a href="./Roo.LayoutManager.html#constructor" roo:cls="Roo.LayoutManager.html#constructor">Roo.LayoutManager</a>, <a href="./Roo.LayoutRegion.html#constructor" roo:cls="Roo.LayoutRegion.html#constructor">Roo.LayoutRegion</a>, <a href="./Roo.Login.html#constructor" roo:cls="Roo.Login.html#constructor">Roo.Login</a>, <a href="./Roo.NestedLayoutPanel.html#constructor" roo:cls="Roo.NestedLayoutPanel.html#constructor">Roo.NestedLayoutPanel</a>, <a href="./Roo.ReaderLayout.html#constructor" roo:cls="Roo.ReaderLayout.html#constructor">Roo.ReaderLayout</a>, <a href="./Roo.Resizable.html#constructor" roo:cls="Roo.Resizable.html#constructor">Roo.Resizable</a>, <a href="./Roo.SplitBar.html#constructor" roo:cls="Roo.SplitBar.html#constructor">Roo.SplitBar</a>, <a href="./Roo.SplitButton.html#constructor" roo:cls="Roo.SplitButton.html#constructor">Roo.SplitButton</a>, <a href="./Roo.SplitLayoutRegion.html#constructor" roo:cls="Roo.SplitLayoutRegion.html#constructor">Roo.SplitLayoutRegion</a>, <a href="./Roo.TabPanel.html#constructor" roo:cls="Roo.TabPanel.html#constructor">Roo.TabPanel</a>, <a href="./Roo.TabPanelItem.html#constructor" roo:cls="Roo.TabPanelItem.html#constructor">Roo.TabPanelItem</a>, <a href="./Roo.Toolbar.Button.html#constructor" roo:cls="Roo.Toolbar.Button.html#constructor">Roo.Toolbar.Button</a>, <a href="./Roo.Toolbar.SplitButton.html#constructor" roo:cls="Roo.Toolbar.SplitButton.html#constructor">Roo.Toolbar.SplitButton</a>, <a href="./Roo.TreePanel.html#constructor" roo:cls="Roo.TreePanel.html#constructor">Roo.TreePanel</a>, <a href="./Roo.UpdateManager.html#constructor" roo:cls="Roo.UpdateManager.html#constructor">Roo.UpdateManager</a>, <a href="./Roo.View.html#constructor" roo:cls="Roo.View.html#constructor">Roo.View</a>, <a href="./Roo.XComponent.html#constructor" roo:cls="Roo.XComponent.html#constructor">Roo.XComponent</a>, <a href="./Roo.data.Connection.html#constructor" roo:cls="Roo.data.Connection.html#constructor">Roo.data.Connection</a>, <a href="./Roo.data.JsonStore.html#constructor" roo:cls="Roo.data.JsonStore.html#constructor">Roo.data.JsonStore</a>, <a href="./Roo.data.Node.html#constructor" roo:cls="Roo.data.Node.html#constructor">Roo.data.Node</a>, <a href="./Roo.data.SimpleStore.html#constructor" roo:cls="Roo.data.SimpleStore.html#constructor">Roo.data.SimpleStore</a>, <a href="./Roo.data.Store.html#constructor" roo:cls="Roo.data.Store.html#constructor">Roo.data.Store</a>, <a href="./Roo.data.Tree.html#constructor" roo:cls="Roo.data.Tree.html#constructor">Roo.data.Tree</a>, <a href="./Roo.form.BasicForm.html#constructor" roo:cls="Roo.form.BasicForm.html#constructor">Roo.form.BasicForm</a>, <a href="./Roo.form.Checkbox.html#constructor" roo:cls="Roo.form.Checkbox.html#constructor">Roo.form.Checkbox</a>, <a href="./Roo.form.Column.html#constructor" roo:cls="Roo.form.Column.html#constructor">Roo.form.Column</a>, <a href="./Roo.form.ComboBox.html#constructor" roo:cls="Roo.form.ComboBox.html#constructor">Roo.form.ComboBox</a>, <a href="./Roo.form.DateField.html#constructor" roo:cls="Roo.form.DateField.html#constructor">Roo.form.DateField</a>, <a href="./Roo.form.DisplayField.html#constructor" roo:cls="Roo.form.DisplayField.html#constructor">Roo.form.DisplayField</a>, <a href="./Roo.form.FCKeditor.html#constructor" roo:cls="Roo.form.FCKeditor.html#constructor">Roo.form.FCKeditor</a>, <a href="./Roo.form.Field.html#constructor" roo:cls="Roo.form.Field.html#constructor">Roo.form.Field</a>, <a href="./Roo.form.FieldSet.html#constructor" roo:cls="Roo.form.FieldSet.html#constructor">Roo.form.FieldSet</a>, <a href="./Roo.form.Form.html#constructor" roo:cls="Roo.form.Form.html#constructor">Roo.form.Form</a>, <a href="./Roo.form.GridField.html#constructor" roo:cls="Roo.form.GridField.html#constructor">Roo.form.GridField</a>, <a href="./Roo.form.Hidden.html#constructor" roo:cls="Roo.form.Hidden.html#constructor">Roo.form.Hidden</a>, <a href="./Roo.form.Layout.html#constructor" roo:cls="Roo.form.Layout.html#constructor">Roo.form.Layout</a>, <a href="./Roo.form.NumberField.html#constructor" roo:cls="Roo.form.NumberField.html#constructor">Roo.form.NumberField</a>, <a href="./Roo.form.Radio.html#constructor" roo:cls="Roo.form.Radio.html#constructor">Roo.form.Radio</a>, <a href="./Roo.form.Row.html#constructor" roo:cls="Roo.form.Row.html#constructor">Roo.form.Row</a>, <a href="./Roo.form.TextArea.html#constructor" roo:cls="Roo.form.TextArea.html#constructor">Roo.form.TextArea</a>, <a href="./Roo.form.TextField.html#constructor" roo:cls="Roo.form.TextField.html#constructor">Roo.form.TextField</a>, <a href="./Roo.form.TriggerField.html#constructor" roo:cls="Roo.form.TriggerField.html#constructor">Roo.form.TriggerField</a>, <a href="./Roo.grid.AbstractSelectionModel.html#constructor" roo:cls="Roo.grid.AbstractSelectionModel.html#constructor">Roo.grid.AbstractSelectionModel</a>, <a href="./Roo.grid.CellSelectionModel.html#constructor" roo:cls="Roo.grid.CellSelectionModel.html#constructor">Roo.grid.CellSelectionModel</a>, <a href="./Roo.grid.ColumnModel.html#constructor" roo:cls="Roo.grid.ColumnModel.html#constructor">Roo.grid.ColumnModel</a>, <a href="./Roo.grid.EditorGrid.html#constructor" roo:cls="Roo.grid.EditorGrid.html#constructor">Roo.grid.EditorGrid</a>, <a href="./Roo.grid.Grid.html#constructor" roo:cls="Roo.grid.Grid.html#constructor">Roo.grid.Grid</a>, <a href="./Roo.grid.GridEditor.html#constructor" roo:cls="Roo.grid.GridEditor.html#constructor">Roo.grid.GridEditor</a>, <a href="./Roo.grid.GridView.html#constructor" roo:cls="Roo.grid.GridView.html#constructor">Roo.grid.GridView</a>, <a href="./Roo.grid.PropertyGrid.html#constructor" roo:cls="Roo.grid.PropertyGrid.html#constructor">Roo.grid.PropertyGrid</a>, <a href="./Roo.grid.RowSelectionModel.html#constructor" roo:cls="Roo.grid.RowSelectionModel.html#constructor">Roo.grid.RowSelectionModel</a>, <a href="./Roo.menu.Adapter.html#constructor" roo:cls="Roo.menu.Adapter.html#constructor">Roo.menu.Adapter</a>, <a href="./Roo.menu.BaseItem.html#constructor" roo:cls="Roo.menu.BaseItem.html#constructor">Roo.menu.BaseItem</a>, <a href="./Roo.menu.CheckItem.html#constructor" roo:cls="Roo.menu.CheckItem.html#constructor">Roo.menu.CheckItem</a>, <a href="./Roo.menu.ColorItem.html#constructor" roo:cls="Roo.menu.ColorItem.html#constructor">Roo.menu.ColorItem</a>, <a href="./Roo.menu.ColorMenu.html#constructor" roo:cls="Roo.menu.ColorMenu.html#constructor">Roo.menu.ColorMenu</a>, <a href="./Roo.menu.DateItem.html#constructor" roo:cls="Roo.menu.DateItem.html#constructor">Roo.menu.DateItem</a>, <a href="./Roo.menu.DateMenu.html#constructor" roo:cls="Roo.menu.DateMenu.html#constructor">Roo.menu.DateMenu</a>, <a href="./Roo.menu.Item.html#constructor" roo:cls="Roo.menu.Item.html#constructor">Roo.menu.Item</a>, <a href="./Roo.menu.Menu.html#constructor" roo:cls="Roo.menu.Menu.html#constructor">Roo.menu.Menu</a>, <a href="./Roo.menu.Separator.html#constructor" roo:cls="Roo.menu.Separator.html#constructor">Roo.menu.Separator</a>, <a href="./Roo.menu.TextItem.html#constructor" roo:cls="Roo.menu.TextItem.html#constructor">Roo.menu.TextItem</a>, <a href="./Roo.tree.AsyncTreeNode.html#constructor" roo:cls="Roo.tree.AsyncTreeNode.html#constructor">Roo.tree.AsyncTreeNode</a>, <a href="./Roo.tree.DefaultSelectionModel.html#constructor" roo:cls="Roo.tree.DefaultSelectionModel.html#constructor">Roo.tree.DefaultSelectionModel</a>, <a href="./Roo.tree.MultiSelectionModel.html#constructor" roo:cls="Roo.tree.MultiSelectionModel.html#constructor">Roo.tree.MultiSelectionModel</a>, <a href="./Roo.tree.TreeEditor.html#constructor" roo:cls="Roo.tree.TreeEditor.html#constructor">Roo.tree.TreeEditor</a>, <a href="./Roo.tree.TreeLoader.html#constructor" roo:cls="Roo.tree.TreeLoader.html#constructor">Roo.tree.TreeLoader</a>, <a href="./Roo.tree.TreeNode.html#constructor" roo:cls="Roo.tree.TreeNode.html#constructor">Roo.tree.TreeNode</a>, <a href="./Roo.tree.TreePanel.html#constructor" roo:cls="Roo.tree.TreePanel.html#constructor">Roo.tree.TreePanel</a>, <a href="./Roo.util.ClickRepeater.html#constructor" roo:cls="Roo.util.ClickRepeater.html#constructor">Roo.util.ClickRepeater</a>, <a href="./Roo.util.MixedCollection.html#constructor" roo:cls="Roo.util.MixedCollection.html#constructor">Roo.util.MixedCollection</a>
+               <a href="./Roo.Ajax.html#constructor" roo:cls="Roo.Ajax.html#constructor">Roo.Ajax</a>, <a href="./Roo.BasicDialog.html#constructor" roo:cls="Roo.BasicDialog.html#constructor">Roo.BasicDialog</a>, <a href="./Roo.BasicLayoutRegion.html#constructor" roo:cls="Roo.BasicLayoutRegion.html#constructor">Roo.BasicLayoutRegion</a>, <a href="./Roo.BorderLayout.html#constructor" roo:cls="Roo.BorderLayout.html#constructor">Roo.BorderLayout</a>, <a href="./Roo.BoxComponent.html#constructor" roo:cls="Roo.BoxComponent.html#constructor">Roo.BoxComponent</a>, <a href="./Roo.Button.html#constructor" roo:cls="Roo.Button.html#constructor">Roo.Button</a>, <a href="./Roo.ColorPalette.html#constructor" roo:cls="Roo.ColorPalette.html#constructor">Roo.ColorPalette</a>, <a href="./Roo.Component.html#constructor" roo:cls="Roo.Component.html#constructor">Roo.Component</a>, <a href="./Roo.ContentPanel.html#constructor" roo:cls="Roo.ContentPanel.html#constructor">Roo.ContentPanel</a>, <a href="./Roo.DatePicker.html#constructor" roo:cls="Roo.DatePicker.html#constructor">Roo.DatePicker</a>, <a href="./Roo.Editor.html#constructor" roo:cls="Roo.Editor.html#constructor">Roo.Editor</a>, <a href="./Roo.GridPanel.html#constructor" roo:cls="Roo.GridPanel.html#constructor">Roo.GridPanel</a>, <a href="./Roo.JsonView.html#constructor" roo:cls="Roo.JsonView.html#constructor">Roo.JsonView</a>, <a href="./Roo.LayoutDialog.html#constructor" roo:cls="Roo.LayoutDialog.html#constructor">Roo.LayoutDialog</a>, <a href="./Roo.LayoutManager.html#constructor" roo:cls="Roo.LayoutManager.html#constructor">Roo.LayoutManager</a>, <a href="./Roo.LayoutRegion.html#constructor" roo:cls="Roo.LayoutRegion.html#constructor">Roo.LayoutRegion</a>, <a href="./Roo.Login.html#constructor" roo:cls="Roo.Login.html#constructor">Roo.Login</a>, <a href="./Roo.NestedLayoutPanel.html#constructor" roo:cls="Roo.NestedLayoutPanel.html#constructor">Roo.NestedLayoutPanel</a>, <a href="./Roo.ReaderLayout.html#constructor" roo:cls="Roo.ReaderLayout.html#constructor">Roo.ReaderLayout</a>, <a href="./Roo.Resizable.html#constructor" roo:cls="Roo.Resizable.html#constructor">Roo.Resizable</a>, <a href="./Roo.SplitBar.html#constructor" roo:cls="Roo.SplitBar.html#constructor">Roo.SplitBar</a>, <a href="./Roo.SplitButton.html#constructor" roo:cls="Roo.SplitButton.html#constructor">Roo.SplitButton</a>, <a href="./Roo.SplitLayoutRegion.html#constructor" roo:cls="Roo.SplitLayoutRegion.html#constructor">Roo.SplitLayoutRegion</a>, <a href="./Roo.TabPanel.html#constructor" roo:cls="Roo.TabPanel.html#constructor">Roo.TabPanel</a>, <a href="./Roo.TabPanelItem.html#constructor" roo:cls="Roo.TabPanelItem.html#constructor">Roo.TabPanelItem</a>, <a href="./Roo.Toolbar.Button.html#constructor" roo:cls="Roo.Toolbar.Button.html#constructor">Roo.Toolbar.Button</a>, <a href="./Roo.Toolbar.SplitButton.html#constructor" roo:cls="Roo.Toolbar.SplitButton.html#constructor">Roo.Toolbar.SplitButton</a>, <a href="./Roo.TreePanel.html#constructor" roo:cls="Roo.TreePanel.html#constructor">Roo.TreePanel</a>, <a href="./Roo.UpdateManager.html#constructor" roo:cls="Roo.UpdateManager.html#constructor">Roo.UpdateManager</a>, <a href="./Roo.View.html#constructor" roo:cls="Roo.View.html#constructor">Roo.View</a>, <a href="./Roo.XComponent.html#constructor" roo:cls="Roo.XComponent.html#constructor">Roo.XComponent</a>, <a href="./Roo.data.Connection.html#constructor" roo:cls="Roo.data.Connection.html#constructor">Roo.data.Connection</a>, <a href="./Roo.data.JsonStore.html#constructor" roo:cls="Roo.data.JsonStore.html#constructor">Roo.data.JsonStore</a>, <a href="./Roo.data.Node.html#constructor" roo:cls="Roo.data.Node.html#constructor">Roo.data.Node</a>, <a href="./Roo.data.SimpleStore.html#constructor" roo:cls="Roo.data.SimpleStore.html#constructor">Roo.data.SimpleStore</a>, <a href="./Roo.data.Store.html#constructor" roo:cls="Roo.data.Store.html#constructor">Roo.data.Store</a>, <a href="./Roo.data.Tree.html#constructor" roo:cls="Roo.data.Tree.html#constructor">Roo.data.Tree</a>, <a href="./Roo.dd.DD.html#constructor" roo:cls="Roo.dd.DD.html#constructor">Roo.dd.DD</a>, <a href="./Roo.dd.DDProxy.html#constructor" roo:cls="Roo.dd.DDProxy.html#constructor">Roo.dd.DDProxy</a>, <a href="./Roo.dd.DDTarget.html#constructor" roo:cls="Roo.dd.DDTarget.html#constructor">Roo.dd.DDTarget</a>, <a href="./Roo.dd.DragDrop.html#constructor" roo:cls="Roo.dd.DragDrop.html#constructor">Roo.dd.DragDrop</a>, <a href="./Roo.dd.DragSource.html#constructor" roo:cls="Roo.dd.DragSource.html#constructor">Roo.dd.DragSource</a>, <a href="./Roo.dd.DragZone.html#constructor" roo:cls="Roo.dd.DragZone.html#constructor">Roo.dd.DragZone</a>, <a href="./Roo.dd.DropTarget.html#constructor" roo:cls="Roo.dd.DropTarget.html#constructor">Roo.dd.DropTarget</a>, <a href="./Roo.dd.DropZone.html#constructor" roo:cls="Roo.dd.DropZone.html#constructor">Roo.dd.DropZone</a>, <a href="./Roo.form.BasicForm.html#constructor" roo:cls="Roo.form.BasicForm.html#constructor">Roo.form.BasicForm</a>, <a href="./Roo.form.Checkbox.html#constructor" roo:cls="Roo.form.Checkbox.html#constructor">Roo.form.Checkbox</a>, <a href="./Roo.form.Column.html#constructor" roo:cls="Roo.form.Column.html#constructor">Roo.form.Column</a>, <a href="./Roo.form.ComboBox.html#constructor" roo:cls="Roo.form.ComboBox.html#constructor">Roo.form.ComboBox</a>, <a href="./Roo.form.DateField.html#constructor" roo:cls="Roo.form.DateField.html#constructor">Roo.form.DateField</a>, <a href="./Roo.form.DisplayField.html#constructor" roo:cls="Roo.form.DisplayField.html#constructor">Roo.form.DisplayField</a>, <a href="./Roo.form.FCKeditor.html#constructor" roo:cls="Roo.form.FCKeditor.html#constructor">Roo.form.FCKeditor</a>, <a href="./Roo.form.Field.html#constructor" roo:cls="Roo.form.Field.html#constructor">Roo.form.Field</a>, <a href="./Roo.form.FieldSet.html#constructor" roo:cls="Roo.form.FieldSet.html#constructor">Roo.form.FieldSet</a>, <a href="./Roo.form.Form.html#constructor" roo:cls="Roo.form.Form.html#constructor">Roo.form.Form</a>, <a href="./Roo.form.GridField.html#constructor" roo:cls="Roo.form.GridField.html#constructor">Roo.form.GridField</a>, <a href="./Roo.form.Hidden.html#constructor" roo:cls="Roo.form.Hidden.html#constructor">Roo.form.Hidden</a>, <a href="./Roo.form.Layout.html#constructor" roo:cls="Roo.form.Layout.html#constructor">Roo.form.Layout</a>, <a href="./Roo.form.NumberField.html#constructor" roo:cls="Roo.form.NumberField.html#constructor">Roo.form.NumberField</a>, <a href="./Roo.form.Radio.html#constructor" roo:cls="Roo.form.Radio.html#constructor">Roo.form.Radio</a>, <a href="./Roo.form.Row.html#constructor" roo:cls="Roo.form.Row.html#constructor">Roo.form.Row</a>, <a href="./Roo.form.TextArea.html#constructor" roo:cls="Roo.form.TextArea.html#constructor">Roo.form.TextArea</a>, <a href="./Roo.form.TextField.html#constructor" roo:cls="Roo.form.TextField.html#constructor">Roo.form.TextField</a>, <a href="./Roo.form.TriggerField.html#constructor" roo:cls="Roo.form.TriggerField.html#constructor">Roo.form.TriggerField</a>, <a href="./Roo.grid.AbstractSelectionModel.html#constructor" roo:cls="Roo.grid.AbstractSelectionModel.html#constructor">Roo.grid.AbstractSelectionModel</a>, <a href="./Roo.grid.CellSelectionModel.html#constructor" roo:cls="Roo.grid.CellSelectionModel.html#constructor">Roo.grid.CellSelectionModel</a>, <a href="./Roo.grid.ColumnModel.html#constructor" roo:cls="Roo.grid.ColumnModel.html#constructor">Roo.grid.ColumnModel</a>, <a href="./Roo.grid.EditorGrid.html#constructor" roo:cls="Roo.grid.EditorGrid.html#constructor">Roo.grid.EditorGrid</a>, <a href="./Roo.grid.Grid.html#constructor" roo:cls="Roo.grid.Grid.html#constructor">Roo.grid.Grid</a>, <a href="./Roo.grid.GridEditor.html#constructor" roo:cls="Roo.grid.GridEditor.html#constructor">Roo.grid.GridEditor</a>, <a href="./Roo.grid.GridView.html#constructor" roo:cls="Roo.grid.GridView.html#constructor">Roo.grid.GridView</a>, <a href="./Roo.grid.PropertyGrid.html#constructor" roo:cls="Roo.grid.PropertyGrid.html#constructor">Roo.grid.PropertyGrid</a>, <a href="./Roo.grid.RowSelectionModel.html#constructor" roo:cls="Roo.grid.RowSelectionModel.html#constructor">Roo.grid.RowSelectionModel</a>, <a href="./Roo.menu.Adapter.html#constructor" roo:cls="Roo.menu.Adapter.html#constructor">Roo.menu.Adapter</a>, <a href="./Roo.menu.BaseItem.html#constructor" roo:cls="Roo.menu.BaseItem.html#constructor">Roo.menu.BaseItem</a>, <a href="./Roo.menu.CheckItem.html#constructor" roo:cls="Roo.menu.CheckItem.html#constructor">Roo.menu.CheckItem</a>, <a href="./Roo.menu.ColorItem.html#constructor" roo:cls="Roo.menu.ColorItem.html#constructor">Roo.menu.ColorItem</a>, <a href="./Roo.menu.ColorMenu.html#constructor" roo:cls="Roo.menu.ColorMenu.html#constructor">Roo.menu.ColorMenu</a>, <a href="./Roo.menu.DateItem.html#constructor" roo:cls="Roo.menu.DateItem.html#constructor">Roo.menu.DateItem</a>, <a href="./Roo.menu.DateMenu.html#constructor" roo:cls="Roo.menu.DateMenu.html#constructor">Roo.menu.DateMenu</a>, <a href="./Roo.menu.Item.html#constructor" roo:cls="Roo.menu.Item.html#constructor">Roo.menu.Item</a>, <a href="./Roo.menu.Menu.html#constructor" roo:cls="Roo.menu.Menu.html#constructor">Roo.menu.Menu</a>, <a href="./Roo.menu.Separator.html#constructor" roo:cls="Roo.menu.Separator.html#constructor">Roo.menu.Separator</a>, <a href="./Roo.menu.TextItem.html#constructor" roo:cls="Roo.menu.TextItem.html#constructor">Roo.menu.TextItem</a>, <a href="./Roo.tree.AsyncTreeNode.html#constructor" roo:cls="Roo.tree.AsyncTreeNode.html#constructor">Roo.tree.AsyncTreeNode</a>, <a href="./Roo.tree.DefaultSelectionModel.html#constructor" roo:cls="Roo.tree.DefaultSelectionModel.html#constructor">Roo.tree.DefaultSelectionModel</a>, <a href="./Roo.tree.MultiSelectionModel.html#constructor" roo:cls="Roo.tree.MultiSelectionModel.html#constructor">Roo.tree.MultiSelectionModel</a>, <a href="./Roo.tree.TreeEditor.html#constructor" roo:cls="Roo.tree.TreeEditor.html#constructor">Roo.tree.TreeEditor</a>, <a href="./Roo.tree.TreeLoader.html#constructor" roo:cls="Roo.tree.TreeLoader.html#constructor">Roo.tree.TreeLoader</a>, <a href="./Roo.tree.TreeNode.html#constructor" roo:cls="Roo.tree.TreeNode.html#constructor">Roo.tree.TreeNode</a>, <a href="./Roo.tree.TreePanel.html#constructor" roo:cls="Roo.tree.TreePanel.html#constructor">Roo.tree.TreePanel</a>, <a href="./Roo.util.ClickRepeater.html#constructor" roo:cls="Roo.util.ClickRepeater.html#constructor">Roo.util.ClickRepeater</a>, <a href="./Roo.util.MixedCollection.html#constructor" roo:cls="Roo.util.MixedCollection.html#constructor">Roo.util.MixedCollection</a>
 
        
        
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:31 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 8772ed5..73490a1 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:53 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:31 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 0969f54..fa34b4b 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:31 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 8c08a08..fa58a02 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:52 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:30 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index cf60dc8..6196d22 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:53 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:31 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 532d839..cb05c94 100644 (file)
     <a id="_global_-configs"></a>
                
     
-     
     
-       
-      <table cellspacing="0" class="member-table">   
-      <caption>Config Options (Usually are also Properties)</caption>
+     <table cellspacing="0" class="member-table">
+      <caption class="Empty">Config Options - Has None</caption>
+     </table>
     
-       
-        <tr>
-            <th class="sig-header" colspan="2">Options</th>
-           
-            <th class="msource-header">Defined By</th>
-        </tr>
-       
-       
-       
-       
-       
-               <tr class="config-row expandable config-row-alt0 notInherited">
-                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
-                   <td class="sig">
-
-                       <a id="_global_-cfg-disabled" name=".disabled"></a>
-                       <div class="fixedFont">
-                               <b  class="itemname">disabled</b> : <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a>|boolean
-                               
-                               
-                       </div>
-                 
-                       <div class="mdesc">
-                           <div class="short">If this module is disabled by some rule, return true from the funtion</div> 
-                       </div>
-                       
-                       <div class="mdesc">
-                           <div class="long">If this module is disabled by some rule, return true from the funtion</div> 
-                       </div>
-                       
-                       
-
-                   </td>
-                   <td class="msource">
-                       
-                       _global_
-                               
-                   </td>
-               </tr>
-        
-       
-               <tr class="config-row expandable config-row-alt1 notInherited">
-                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
-                   <td class="sig">
-
-                       <a id="_global_-cfg-items" name=".items"></a>
-                       <div class="fixedFont">
-                               <b  class="itemname">items</b> : <a href="./Array.html#constructor" roo:cls="Array.html#constructor">Array</a>
-                               
-                               
-                       </div>
-                 
-                       <div class="mdesc">
-                           <div class="short">A single item array - the first element is the root of the tree.</div> 
-                       </div>
-                       
-                       <div class="mdesc">
-                           <div class="long">A single item array - the first element is the root of the tree..<br/>It's done this way to stay compatible with the Xtype system...</div> 
-                       </div>
-                       
-                       
-
-                   </td>
-                   <td class="msource">
-                       
-                       _global_
-                               
-                   </td>
-               </tr>
-        
-       
-               <tr class="config-row expandable config-row-alt0 notInherited">
-                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
-                   <td class="sig">
-
-                       <a id="_global_-cfg-name" name=".name"></a>
-                       <div class="fixedFont">
-                               <b  class="itemname">name</b> : <a href="./String.html#constructor" roo:cls="String.html#constructor">String</a>
-                               
-                               
-                       </div>
-                 
-                       <div class="mdesc">
-                           <div class="short">String to display while loading.</div> 
-                       </div>
-                       
-                       <div class="mdesc">
-                           <div class="long">String to display while loading.</div> 
-                       </div>
-                       
-                       
-
-                   </td>
-                   <td class="msource">
-                       
-                       _global_
-                               
-                   </td>
-               </tr>
-        
-       
-               <tr class="config-row expandable config-row-alt1 notInherited">
-                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
-                   <td class="sig">
-
-                       <a id="_global_-cfg-order" name=".order"></a>
-                       <div class="fixedFont">
-                               <b  class="itemname">order</b> : <a href="./String.html#constructor" roo:cls="String.html#constructor">String</a>
-                               
-                               
-                       </div>
-                 
-                       <div class="mdesc">
-                           <div class="short">Used to set the order in which elements are created (usefull for multiple tabs)</div> 
-                       </div>
-                       
-                       <div class="mdesc">
-                           <div class="long">Used to set the order in which elements are created (usefull for multiple tabs)</div> 
-                       </div>
-                       
-                       
-
-                   </td>
-                   <td class="msource">
-                       
-                       _global_
-                               
-                   </td>
-               </tr>
-        
-       
-               <tr class="config-row expandable config-row-alt0 notInherited">
-                  <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
-                   <td class="sig">
-
-                       <a id="_global_-cfg-parent" name=".parent"></a>
-                       <div class="fixedFont">
-                               <b  class="itemname">parent</b> : <a href="./String.html#constructor" roo:cls="String.html#constructor">String</a>
-                               
-                               
-                       </div>
-                 
-                       <div class="mdesc">
-                           <div class="short">Name of parent element which it get xtype added to.</div> 
-                       </div>
-                       
-                       <div class="mdesc">
-                           <div class="long">Name of parent element which it get xtype added to..</div> 
-                       </div>
-                       
-                       
-
-                   </td>
-                   <td class="msource">
-                       
-                       _global_
-                               
-                   </td>
-               </tr>
-        
-        
-    </table>
-               
+    
+     
+               
   
   
   
   
     
     
+     <table cellspacing="0" class="member-table">
+      <caption class="Empty">Public Methods - Has None</caption>
+     </table>
+    
+    
     
-      <table cellspacing="0" class="member-table">
-      <caption>Public Methods</caption>
-        <tr>
-            <th class="sig-header" colspan="2">Method</th>            
-            <th class="msource-header">Defined By</th>
-
-        </tr>
-        
-       
-       
-        
-       
-        
-         
-          <tr class="method-row config-row-alt0 expandable notInherited">
-            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
-          
-          
-            <td class="sig">
-                <a id="_global_-method-build"   name=".build"></a>
-               <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">build</b>
-                               
-                                (<a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>parent</i></B>, <a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a> <B><i>optional</i></B>) 
-                       
-                               
-                       
-               </div>
-                <div class="mdesc">
-               
-                   <div class="short">Build the registered modules.</div> 
-                
-                
-                
-                    <div class="long">
-                       
-                               Build the registered modules.
-                   
-                               
-                       
-                       
-                       
-                       
-                               <dl class="detailList">
-                               <dt class="heading">Parameters:</dt>
-                               
-                                       <dt>
-                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>parent</b>
-                                               
-                                       </dt>
-                                       <dd>element.</dd>
-                               
-                                       <dt>
-                                               <span class="fixedFont"><a href="./Function.html#constructor" roo:cls="Function.html#constructor">Function</a></span>  <b>optional</b>
-                                               
-                                       </dt>
-                                       <dd>method to call after module has been added.</dd>
-                               
-                               </dl>
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-
-                   
-                   
-                    
-                    </div>                    
-                </div>
-
-            </td>
-            <td class="msource">
-               
-                       _global_
-               &nbsp;
-            </td>
-        </tr>
-       
-         
-          <tr class="method-row config-row-alt1 expandable notInherited">
-            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
-          
-          
-            <td class="sig">
-                <a id="_global_-method-buildOrder"   name=".buildOrder"></a>
-               <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">buildOrder</b>
-                               
-                                () 
-                       
-                               
-                                        : 
-                                       
-                                               
-                                               <a href="./Array.html#constructor" roo:cls="Array.html#constructor">Array</a>
-                                       
-                                       
-                                       
-                               
-                       
-               </div>
-                <div class="mdesc">
-               
-                   <div class="short">make a list of modules to build.</div> 
-                
-                
-                
-                    <div class="long">
-                       
-                               make a list of modules to build.
-                   
-                               
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-                               <dl class="detailList">
-                               <dt class="heading">Returns:</dt>
-                               
-                                       <dd><span class="fixedFont"><a href="./Array.html#constructor" roo:cls="Array.html#constructor">Array</a></span>  list of modules.</dd>
-                               
-                               </dl>
-                       
-                       
-                       
-
-                   
-                   
-                    
-                    </div>                    
-                </div>
-
-            </td>
-            <td class="msource">
-               
-                       _global_
-               &nbsp;
-            </td>
-        </tr>
-       
-         
-          <tr class="method-row config-row-alt0 expandable notInherited">
-            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
-          
-          
-            <td class="sig">
-                <a id="_global_-method-preBuild"   name=".preBuild"></a>
-               <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">preBuild</b>
-                               
-                                () 
-                       
-                               
-                       
-               </div>
-                <div class="mdesc">
-               
-                   <div class="short">move modules into their correct place in the tree.</div> 
-                
-                
-                
-                    <div class="long">
-                       
-                               move modules into their correct place in the tree..
-                   
-                               
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-
-                   
-                   
-                    
-                    </div>                    
-                </div>
-
-            </td>
-            <td class="msource">
-               
-                       _global_
-               &nbsp;
-            </td>
-        </tr>
-       
-         
-          <tr class="method-row config-row-alt1 expandable notInherited">
-            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
-          
-          
-            <td class="sig">
-                <a id="_global_-method-register"   name=".register"></a>
-               <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">register</b>
-                               
-                                (<a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a> <B><i>details</i></B>) 
-                       
-                               
-                       
-               </div>
-                <div class="mdesc">
-               
-                   <div class="short">Register components to be built later.</div> 
-                
-                
-                
-                    <div class="long">
-                       
-                               Register components to be built later.
-                   
-                               
-                       
-                       
-                       
-                       
-                               <dl class="detailList">
-                               <dt class="heading">Parameters:</dt>
-                               
-                                       <dt>
-                                               <span class="fixedFont"><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Object">Object</a></span>  <b>details</b>
-                                               
-                                       </dt>
-                                       <dd>about module<br/><br/>This solves the following issues<br/>- Building is not done on page load, but after an authentication process has occured.<br/>- Interface elements are registered on page load<br/>- Parent Interface elements may not be loaded before child, so this handles that..<br/><br/><br/>example:<br/><br/>MyApp.register({<br/>          order : '000001',<br/>          module : 'Pman.Tab.projectMgr',<br/>          region : 'center',<br/>          parent : 'Pman.layout',<br/>          disabled : false,  // or use a function..<br/>        })</dd>
-                               
-                               </dl>
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-
-                   
-                   
-                    
-                    </div>                    
-                </div>
-
-            </td>
-            <td class="msource">
-               
-                       _global_
-               &nbsp;
-            </td>
-        </tr>
-       
-         
-          <tr class="method-row config-row-alt0 expandable notInherited">
-            <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
-          
-          
-            <td class="sig">
-                <a id="_global_-method-toObject"   name=".toObject"></a>
-               <div class="fixedFont">
-                       <span class="attributes"></span><b class="itemname">toObject</b>
-                               
-                                () 
-                       
-                               
-                       
-               </div>
-                <div class="mdesc">
-               
-                   <div class="short">convert a string to an object.</div> 
-                
-                
-                
-                    <div class="long">
-                       
-                               convert a string to an object..
-                   
-                               
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-                       
-
-                   
-                   
-                    
-                    </div>                    
-                </div>
-
-            </td>
-            <td class="msource">
-               
-                       _global_
-               &nbsp;
-            </td>
-        </tr>
-       
-                                                      
-    </table>
-
   
   <!-- ============================== events summary / details ======================== -->
   
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Wed Aug 11 2010 15:16:37 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:31 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index aa76932..1fbafc3 100644 (file)
@@ -567,7 +567,23 @@ Roo.factory(conf, Roo.data);
          * you may want to set this to true.
          * @type Boolean
          */
-        </span><span class="jsdoc-var">useShims </span><span class="jsdoc-syntax">: ((</span><span class="jsdoc-var">isIE </span><span class="jsdoc-syntax">&amp;&amp; !</span><span class="jsdoc-var">isIE7</span><span class="jsdoc-syntax">) || (</span><span class="jsdoc-var">isGecko </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">isMac</span><span class="jsdoc-syntax">))
+        </span><span class="jsdoc-var">useShims </span><span class="jsdoc-syntax">: ((</span><span class="jsdoc-var">isIE </span><span class="jsdoc-syntax">&amp;&amp; !</span><span class="jsdoc-var">isIE7</span><span class="jsdoc-syntax">) || (</span><span class="jsdoc-var">isGecko </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">isMac</span><span class="jsdoc-syntax">)),
+        
+        
+                
+        </span><span class="jsdoc-comment">/**
+         * Selects a single element as a Roo Element
+         * This is about as close as you can get to jQuery's $('do crazy stuff')
+         * @param {String} selector The selector/xpath query
+         * @param {Node} root (optional) The start of the query (defaults to document).
+         * @return {Roo.Element}
+         */
+        </span><span class="jsdoc-var">selectNode </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">selector</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">root</span><span class="jsdoc-syntax">) 
+        {
+            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">node </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.DomQuery.selectNode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">selector</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">root</span><span class="jsdoc-syntax">);
+            </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">node </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">node</span><span class="jsdoc-syntax">) : </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.Element</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
+        }
+        
     });
 
 
index 1b354a1..2ea5526 100644 (file)
         }
     },
 
-    </span><span class="jsdoc-var">onSpecialKey </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">field</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
+    </span><span class="jsdoc-var">onSpecialKey </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">field</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)
+    {
         </span><span class="jsdoc-comment">//Roo.log('editor onSpecialKey');
         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.completeOnEnter </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.getKey</span><span class="jsdoc-syntax">() == </span><span class="jsdoc-var">e.ENTER</span><span class="jsdoc-syntax">){
             </span><span class="jsdoc-var">e.stopEvent</span><span class="jsdoc-syntax">();
             </span><span class="jsdoc-var">this.completeEdit</span><span class="jsdoc-syntax">();
-        }</span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.cancelOnEsc </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.getKey</span><span class="jsdoc-syntax">() == </span><span class="jsdoc-var">e.ESC</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-var">this.cancelEdit</span><span class="jsdoc-syntax">();
-        }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
-            </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'specialkey'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">field</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
+            </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
         }
+        </span><span class="jsdoc-comment">// do not fire special key otherwise it might hide close the editor...
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e.getKey</span><span class="jsdoc-syntax">() == </span><span class="jsdoc-var">e.ENTER</span><span class="jsdoc-syntax">){    
+            </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
+        }
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.cancelOnEsc </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.getKey</span><span class="jsdoc-syntax">() == </span><span class="jsdoc-var">e.ESC</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.cancelEdit</span><span class="jsdoc-syntax">();
+            </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
+        } 
+        </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'specialkey'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">field</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
+    
     },
 
     </span><span class="jsdoc-comment">/**
index b3f1941..b4dcae2 100644 (file)
@@ -1135,7 +1135,9 @@ if(opt.anim.isAnimated()){
          * @param {Object}   options   (optional)An object with standard {@link Roo.EventManager#addListener} options
          */
         </span><span class="jsdoc-var">addListener </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">eventName</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">options</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-var">Roo.EventManager.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.dom</span><span class="jsdoc-syntax">,  </span><span class="jsdoc-var">eventName</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">options</span><span class="jsdoc-syntax">);
+            </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.dom</span><span class="jsdoc-syntax">) {
+                </span><span class="jsdoc-var">Roo.EventManager.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.dom</span><span class="jsdoc-syntax">,  </span><span class="jsdoc-var">eventName</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">options</span><span class="jsdoc-syntax">);
+            }
         },
 
         </span><span class="jsdoc-comment">/**
index 3ba6d65..2964c37 100644 (file)
     </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">) {
         </span><span class="jsdoc-var">this.initTarget</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">sGroup</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
     }
+    </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config.listeners </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">config.events</span><span class="jsdoc-syntax">) { 
+       </span><span class="jsdoc-var">Roo.dd.DragDrop.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,  { 
+            </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">config.listeners </span><span class="jsdoc-syntax">|| {}, 
+            </span><span class="jsdoc-var">events </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">config.events </span><span class="jsdoc-syntax">|| {} 
+        });    
+    }
 };
 
 </span><span class="jsdoc-comment">// Roo.dd.DDTarget.prototype = new Roo.dd.DragDrop();
index 8a60882..afbd06f 100644 (file)
@@ -26,6 +26,7 @@
 
 </span><span class="jsdoc-comment">/**
  * @class Roo.dd.DragDrop
+ * @extends Roo.util.Observable
  * Defines the interface and base operation of items that that can be
  * dragged or can be drop targets.  It was designed to be extended, overriding
  * the event handlers for startDrag, onDrag, onDragOver and onDragOut.
     </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">) {
         </span><span class="jsdoc-var">this.init</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">sGroup</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
     }
-    </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config.listeners </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">config.events</span><span class="jsdoc-syntax">) { 
-        </span><span class="jsdoc-var">Roo.BasicLayoutRegion.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,  { 
-            </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">config.listeners </span><span class="jsdoc-syntax">|| {}, 
-            </span><span class="jsdoc-var">events </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">config.events </span><span class="jsdoc-syntax">|| {} 
-        });    
-    }
+    
 };
 
 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.dd.DragDrop</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.util.Observable </span><span class="jsdoc-syntax">, {
index d3996e9..c00e47c 100644 (file)
 </span><span class="jsdoc-var">Roo.dd.DropTarget </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
     </span><span class="jsdoc-var">this.el </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">);
     
+    </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">; ;
+    </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">config.listeners</span><span class="jsdoc-syntax">) {
+        </span><span class="jsdoc-var">listeners</span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">config.listeners</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">delete </span><span class="jsdoc-var">config.listeners</span><span class="jsdoc-syntax">;
+    }
     </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
     
     </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.containerScroll</span><span class="jsdoc-syntax">){
         </span><span class="jsdoc-var">Roo.dd.ScrollManager.register</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">);
     }
-    
+    </span><span class="jsdoc-var">this.addEvents</span><span class="jsdoc-syntax">( {
+         </span><span class="jsdoc-comment">/**
+         * @scope Roo.dd.DropTarget
+         */
+         
+         /**
+         * @event enter
+         * The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source is now over the
+         * target.  This default implementation adds the CSS class specified by overClass (if any) to the drop element
+         * and returns the dropAllowed config value.  This method should be overridden if drop validation is required.
+         * 
+         * IMPORTANT : it should set this.overClass and this.dropAllowed
+         * 
+         * @param {Roo.dd.DragSource} source The drag source that was dragged over this drop target
+         * @param {Event} e The event
+         * @param {Object} data An object containing arbitrary data supplied by the drag source
+         */
+        </span><span class="jsdoc-string">&quot;enter&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        
+         </span><span class="jsdoc-comment">/**
+         * @event over
+         * The function a {@link Roo.dd.DragSource} calls continuously while it is being dragged over the target.
+         * This method will be called on every mouse movement while the drag source is over the drop target.
+         * This default implementation simply returns the dropAllowed config value.
+         * 
+         * IMPORTANT : it should set this.dropAllowed
+         * 
+         * @param {Roo.dd.DragSource} source The drag source that was dragged over this drop target
+         * @param {Event} e The event
+         * @param {Object} data An object containing arbitrary data supplied by the drag source
+         
+         */
+        </span><span class="jsdoc-string">&quot;over&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event out
+         * The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source has been dragged
+         * out of the target without dropping.  This default implementation simply removes the CSS class specified by
+         * overClass (if any) from the drop element.
+         * @param {Roo.dd.DragSource} source The drag source that was dragged over this drop target
+         * @param {Event} e The event
+         * @param {Object} data An object containing arbitrary data supplied by the drag source
+         */
+         </span><span class="jsdoc-string">&quot;out&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+         
+        </span><span class="jsdoc-comment">/**
+         * @event drop
+         * The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the dragged item has
+         * been dropped on it.  This method has no default implementation and returns false, so you must provide an
+         * implementation that does something to process the drop event and returns true so that the drag source's
+         * repair action does not run.
+         * 
+         * IMPORTANT : it should set this.success
+         * 
+         * @param {Roo.dd.DragSource} source The drag source that was dragged over this drop target
+         * @param {Event} e The event
+         * @param {Object} data An object containing arbitrary data supplied by the drag source
+        */
+         </span><span class="jsdoc-string">&quot;drop&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
+    </span><span class="jsdoc-syntax">});
+            
      
     </span><span class="jsdoc-var">Roo.dd.DropTarget.superclass.constructor.call</span><span class="jsdoc-syntax">(  </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, 
         </span><span class="jsdoc-var">this.el.dom</span><span class="jsdoc-syntax">, 
         </span><span class="jsdoc-var">this.ddGroup </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.group</span><span class="jsdoc-syntax">,
         {
             </span><span class="jsdoc-var">isTarget</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-            </span><span class="jsdoc-var">events </span><span class="jsdoc-syntax">: {
-                 </span><span class="jsdoc-comment">/**
-                 * @scope Roo.dd.DropTarget
-                 */
-                 
-                 /**
-                 * @event enter
-                 * The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source is now over the
-                 * target.  This default implementation adds the CSS class specified by overClass (if any) to the drop element
-                 * and returns the dropAllowed config value.  This method should be overridden if drop validation is required.
-                 * 
-                 * IMPORTANT : it should set this.overClass and this.dropAllowed
-                 * 
-                 * @param {Roo.dd.DragSource} source The drag source that was dragged over this drop target
-                 * @param {Event} e The event
-                 * @param {Object} data An object containing arbitrary data supplied by the drag source
-                 */
-                </span><span class="jsdoc-string">&quot;enter&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-                
-                 </span><span class="jsdoc-comment">/**
-                 * @event over
-                 * The function a {@link Roo.dd.DragSource} calls continuously while it is being dragged over the target.
-                 * This method will be called on every mouse movement while the drag source is over the drop target.
-                 * This default implementation simply returns the dropAllowed config value.
-                 * 
-                 * IMPORTANT : it should set this.dropAllowed
-                 * 
-                 * @param {Roo.dd.DragSource} source The drag source that was dragged over this drop target
-                 * @param {Event} e The event
-                 * @param {Object} data An object containing arbitrary data supplied by the drag source
-                 
-                 */
-                </span><span class="jsdoc-string">&quot;over&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-                </span><span class="jsdoc-comment">/**
-                 * @event out
-                 * The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source has been dragged
-                 * out of the target without dropping.  This default implementation simply removes the CSS class specified by
-                 * overClass (if any) from the drop element.
-                 * @param {Roo.dd.DragSource} source The drag source that was dragged over this drop target
-                 * @param {Event} e The event
-                 * @param {Object} data An object containing arbitrary data supplied by the drag source
-                 */
-                 </span><span class="jsdoc-string">&quot;out&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-                 
-                </span><span class="jsdoc-comment">/**
-                 * @event drop
-                 * The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the dragged item has
-                 * been dropped on it.  This method has no default implementation and returns false, so you must provide an
-                 * implementation that does something to process the drop event and returns true so that the drag source's
-                 * repair action does not run.
-                 * 
-                 * IMPORTANT : it should set this.success
-                 * 
-                 * @param {Roo.dd.DragSource} source The drag source that was dragged over this drop target
-                 * @param {Event} e The event
-                 * @param {Object} data An object containing arbitrary data supplied by the drag source
-                */
-                 </span><span class="jsdoc-string">&quot;drop&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
-            </span><span class="jsdoc-syntax">}
-                
+            </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">|| {} 
+           
         
         }
     );
      */
     </span><span class="jsdoc-var">success </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
     </span><span class="jsdoc-comment">/**
-     * @cfg {boolean} valid
+     * @cfg {boolean|String} valid true/false or string (ok-add/ok-sub/ok/nodrop)
      * if the drop point is valid for over/enter..
      */
     </span><span class="jsdoc-var">valid </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
     </span><span class="jsdoc-comment">/**
      * @hide
      */
-    </span><span class="jsdoc-var">notifyEnter </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">){
+    </span><span class="jsdoc-var">notifyEnter </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">)
+    {
         </span><span class="jsdoc-var">this.valid </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
-        </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'enter'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'enter'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">);
         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.overClass</span><span class="jsdoc-syntax">){
             </span><span class="jsdoc-var">this.el.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.overClass</span><span class="jsdoc-syntax">);
         }
-        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.valid </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.dropAllowed </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.dropNotAllowed</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-keyword">return typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.valid</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'string' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'x-dd-drop-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.valid </span><span class="jsdoc-syntax">: (
+            </span><span class="jsdoc-var">this.valid </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.dropAllowed </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.dropNotAllowed
+        </span><span class="jsdoc-syntax">);
     },
 
     </span><span class="jsdoc-comment">/**
      * @hide
      */
-    </span><span class="jsdoc-var">notifyOver </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">){
+    </span><span class="jsdoc-var">notifyOver </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">)
+    {
         </span><span class="jsdoc-var">this.valid </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
-        </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'over'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">);
-        </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.valid </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.dropAllowed </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.dropNotAllowed</span><span class="jsdoc-syntax">;
+        </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'over'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-keyword">return typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.valid</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'string' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'x-dd-drop-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.valid </span><span class="jsdoc-syntax">: (
+            </span><span class="jsdoc-var">this.valid </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.dropAllowed </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.dropNotAllowed
+        </span><span class="jsdoc-syntax">);
     },
 
     </span><span class="jsdoc-comment">/**
      * @hide
      */
-    </span><span class="jsdoc-var">notifyOut </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">){
-        </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'out'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">);
+    </span><span class="jsdoc-var">notifyOut </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">)
+    {
+        </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'out'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">);
         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.overClass</span><span class="jsdoc-syntax">){
             </span><span class="jsdoc-var">this.el.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.overClass</span><span class="jsdoc-syntax">);
         }
     </span><span class="jsdoc-comment">/**
      * @hide
      */
-    </span><span class="jsdoc-var">notifyDrop </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">){
+    </span><span class="jsdoc-var">notifyDrop </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">)
+    {
         </span><span class="jsdoc-var">this.success </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
-        </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'drop'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">);
+        </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'drop'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">);
         </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.success</span><span class="jsdoc-syntax">;
     }
 });</span></code></body></html>
\ No newline at end of file
index b373715..4b27fce 100644 (file)
@@ -67,6 +67,7 @@
 
     </span><span class="jsdoc-comment">// default connection failure
     </span><span class="jsdoc-var">failure </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">){
+        
         </span><span class="jsdoc-var">this.response </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">;
         </span><span class="jsdoc-var">this.failureType </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.form.Action.CONNECT_FAILURE</span><span class="jsdoc-syntax">;
         </span><span class="jsdoc-var">this.form.afterAction</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
                     
             } 
             
+            
             </span><span class="jsdoc-var">Roo.Ajax.request</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.createCallback</span><span class="jsdoc-syntax">(), {
                 </span><span class="jsdoc-var">form</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">this.form.el.dom</span><span class="jsdoc-syntax">,
                 </span><span class="jsdoc-var">url</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">this.getUrl</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">isPost</span><span class="jsdoc-syntax">),
             </span><span class="jsdoc-var">Roo.MessageBox.hide</span><span class="jsdoc-syntax">();
         }
         
+        
         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">result </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.processResponse</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">);
         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">result </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">true </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">result.success</span><span class="jsdoc-syntax">){
             </span><span class="jsdoc-var">this.form.afterAction</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
             </span><span class="jsdoc-var">Roo.MessageBox.hide</span><span class="jsdoc-syntax">();
         }
         
+        
         </span><span class="jsdoc-var">this.response </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">;
         </span><span class="jsdoc-var">this.failureType </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.form.Action.CONNECT_FAILURE</span><span class="jsdoc-syntax">;
         </span><span class="jsdoc-var">this.form.afterAction</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
     </span><span class="jsdoc-var">type </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'load'</span><span class="jsdoc-syntax">,
 
     </span><span class="jsdoc-var">run </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
+        
         </span><span class="jsdoc-var">Roo.Ajax.request</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(
                 </span><span class="jsdoc-var">this.createCallback</span><span class="jsdoc-syntax">(), {
                     </span><span class="jsdoc-var">method</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">this.getMethod</span><span class="jsdoc-syntax">(),
     },
 
     </span><span class="jsdoc-var">success </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">){
+        
         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">result </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.processResponse</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">response</span><span class="jsdoc-syntax">);
         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">result </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">true </span><span class="jsdoc-syntax">|| !</span><span class="jsdoc-var">result.success </span><span class="jsdoc-syntax">|| !</span><span class="jsdoc-var">result.data</span><span class="jsdoc-syntax">){
             </span><span class="jsdoc-var">this.failureType </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.form.Action.LOAD_FAILURE</span><span class="jsdoc-syntax">;
index 622f892..e70d02c 100644 (file)
      * @cfg {Boolean} fileUpload
      * Set to true if this form is a file upload.
      */
+     
     /**
      * @cfg {Object} baseParams
      * Parameters to pass with all requests. e.g. baseParams: {id: '123', foo: 'bar'}.
      */
+     /**
+     
     /**
      * @cfg {Number} timeout Timeout for form actions in seconds (default is 30 seconds).
      */
      * element by passing it or its id or mask the form itself by passing in true.
      * @type Mixed
      */
-    </span><span class="jsdoc-var">waitMsgTarget </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">,
+    </span><span class="jsdoc-var">waitMsgTarget </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
 
     </span><span class="jsdoc-comment">// private
     </span><span class="jsdoc-var">initEl </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">){
@@ -241,42 +244,50 @@ clientValidation  Boolean          Applies to submit only.  Pass true to call fo
     </span><span class="jsdoc-comment">// private
     </span><span class="jsdoc-var">beforeAction </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">action</span><span class="jsdoc-syntax">){
         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">action.options</span><span class="jsdoc-syntax">;
-        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.waitMsg</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.waitMsgTarget </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">){
-                </span><span class="jsdoc-var">this.el.mask</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.waitMsg</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'x-mask-loading'</span><span class="jsdoc-syntax">);
-            }</span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.waitMsgTarget</span><span class="jsdoc-syntax">){
-                </span><span class="jsdoc-var">this.waitMsgTarget </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.waitMsgTarget</span><span class="jsdoc-syntax">);
-                </span><span class="jsdoc-var">this.waitMsgTarget.mask</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.waitMsg</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'x-mask-loading'</span><span class="jsdoc-syntax">);
-            }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
-                </span><span class="jsdoc-var">Roo.MessageBox.wait</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.waitMsg</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o.waitTitle </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.waitTitle </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">'Please Wait...'</span><span class="jsdoc-syntax">);
-            }
+        
+       
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.waitMsgTarget </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.el.mask</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.waitMsg </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">&quot;Sending&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'x-mask-loading'</span><span class="jsdoc-syntax">);
+        }</span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.waitMsgTarget</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.waitMsgTarget </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.waitMsgTarget</span><span class="jsdoc-syntax">);
+            </span><span class="jsdoc-var">this.waitMsgTarget.mask</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.waitMsg </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">&quot;Sending&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'x-mask-loading'</span><span class="jsdoc-syntax">);
+        }</span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
+            </span><span class="jsdoc-var">Roo.MessageBox.wait</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.waitMsg </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">&quot;Sending&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o.waitTitle </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.waitTitle </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">'Please Wait...'</span><span class="jsdoc-syntax">);
         }
+         
     },
 
     </span><span class="jsdoc-comment">// private
     </span><span class="jsdoc-var">afterAction </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">action</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">success</span><span class="jsdoc-syntax">){
         </span><span class="jsdoc-var">this.activeAction </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">;
         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">action.options</span><span class="jsdoc-syntax">;
-        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.waitMsg</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.waitMsgTarget </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">){
-                </span><span class="jsdoc-var">this.el.unmask</span><span class="jsdoc-syntax">();
-            }</span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.waitMsgTarget</span><span class="jsdoc-syntax">){
-                </span><span class="jsdoc-var">this.waitMsgTarget.unmask</span><span class="jsdoc-syntax">();
-            }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
-                </span><span class="jsdoc-var">Roo.MessageBox.updateProgress</span><span class="jsdoc-syntax">(1);
-                </span><span class="jsdoc-var">Roo.MessageBox.hide</span><span class="jsdoc-syntax">();
-            }
+        
+        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.waitMsgTarget </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.el.unmask</span><span class="jsdoc-syntax">();
+        }</span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.waitMsgTarget</span><span class="jsdoc-syntax">){
+            </span><span class="jsdoc-var">this.waitMsgTarget.unmask</span><span class="jsdoc-syntax">();
+        }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
+            </span><span class="jsdoc-var">Roo.MessageBox.updateProgress</span><span class="jsdoc-syntax">(1);
+            </span><span class="jsdoc-var">Roo.MessageBox.hide</span><span class="jsdoc-syntax">();
         }
+         
         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">success</span><span class="jsdoc-syntax">){
             </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.reset</span><span class="jsdoc-syntax">){
                 </span><span class="jsdoc-var">this.reset</span><span class="jsdoc-syntax">();
             }
             </span><span class="jsdoc-var">Roo.callback</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.success</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o.scope</span><span class="jsdoc-syntax">, [</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">action</span><span class="jsdoc-syntax">]);
             </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'actioncomplete'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">action</span><span class="jsdoc-syntax">);
+            
         }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
             </span><span class="jsdoc-var">Roo.callback</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.failure</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o.scope</span><span class="jsdoc-syntax">, [</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">action</span><span class="jsdoc-syntax">]);
+            </span><span class="jsdoc-comment">// show an error message if no failed handler is set..
+            </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.hasListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'actionfailed'</span><span class="jsdoc-syntax">)) {
+                </span><span class="jsdoc-var">Roo.MessageBox.alert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;Error&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;Saving Failed, please check your entries&quot;</span><span class="jsdoc-syntax">);
+            }
+            
             </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'actionfailed'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">action</span><span class="jsdoc-syntax">);
         }
+        
     },
 
     </span><span class="jsdoc-comment">/**
index fc3aa9b..7f925c9 100644 (file)
     }
     </span><span class="jsdoc-comment">/** @private */
        </span><span class="jsdoc-var">this.addEvents</span><span class="jsdoc-syntax">({
-           </span><span class="jsdoc-comment">// raw events
-           /**
-            * @event click
-            * The raw click event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;click&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event dblclick
-            * The raw dblclick event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;dblclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event contextmenu
-            * The raw contextmenu event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;contextmenu&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event mousedown
-            * The raw mousedown event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;mousedown&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event mouseup
-            * The raw mouseup event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;mouseup&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event mouseover
-            * The raw mouseover event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;mouseover&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event mouseout
-            * The raw mouseout event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;mouseout&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event keypress
-            * The raw keypress event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;keypress&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event keydown
-            * The raw keydown event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;keydown&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-
-           </span><span class="jsdoc-comment">// custom events
-
-           /**
-            * @event cellclick
-            * Fires when a cell is clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;cellclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event celldblclick
-            * Fires when a cell is double clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;celldblclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event rowclick
-            * Fires when a row is clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;rowclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event rowdblclick
-            * Fires when a row is double clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;rowdblclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event headerclick
-            * Fires when a header is clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;headerclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event headerdblclick
-            * Fires when a header cell is double clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;headerdblclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event rowcontextmenu
-            * Fires when a row is right clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;rowcontextmenu&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
+        </span><span class="jsdoc-comment">// raw events
+        /**
+         * @event click
+         * The raw click event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;click&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event dblclick
+         * The raw dblclick event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;dblclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event contextmenu
+         * The raw contextmenu event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;contextmenu&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event mousedown
+         * The raw mousedown event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;mousedown&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event mouseup
+         * The raw mouseup event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;mouseup&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event mouseover
+         * The raw mouseover event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;mouseover&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event mouseout
+         * The raw mouseout event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;mouseout&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event keypress
+         * The raw keypress event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;keypress&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event keydown
+         * The raw keydown event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;keydown&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+
+        </span><span class="jsdoc-comment">// custom events
+
+        /**
+         * @event cellclick
+         * Fires when a cell is clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;cellclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event celldblclick
+         * Fires when a cell is double clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;celldblclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event rowclick
+         * Fires when a row is clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;rowclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event rowdblclick
+         * Fires when a row is double clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;rowdblclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event headerclick
+         * Fires when a header is clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;headerclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event headerdblclick
+         * Fires when a header cell is double clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;headerdblclick&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event rowcontextmenu
+         * Fires when a row is right clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;rowcontextmenu&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
          * @event cellcontextmenu
          * Fires when a cell is right clicked
          * @param {Grid} this
          * @param {Roo.EventObject} e
          */
          </span><span class="jsdoc-string">&quot;cellcontextmenu&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event headercontextmenu
-            * Fires when a header is right clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           </span><span class="jsdoc-string">&quot;headercontextmenu&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event bodyscroll
-            * Fires when the body element is scrolled
-            * @param {Number} scrollLeft
-            * @param {Number} scrollTop
-            */
-           </span><span class="jsdoc-string">&quot;bodyscroll&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event columnresize
-            * Fires when the user resizes a column
-            * @param {Number} columnIndex
-            * @param {Number} newSize
-            */
-           </span><span class="jsdoc-string">&quot;columnresize&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event columnmove
-            * Fires when the user moves a column
-            * @param {Number} oldIndex
-            * @param {Number} newIndex
-            */
-           </span><span class="jsdoc-string">&quot;columnmove&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event startdrag
-            * Fires when row(s) start being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {event} e The raw browser event
-            */
-           </span><span class="jsdoc-string">&quot;startdrag&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event enddrag
-            * Fires when a drag operation is complete
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {event} e The raw browser event
-            */
-           </span><span class="jsdoc-string">&quot;enddrag&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event dragdrop
-            * Fires when dragged row(s) are dropped on a valid DD target
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           </span><span class="jsdoc-string">&quot;dragdrop&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event dragover
-            * Fires while row(s) are being dragged. &quot;targetId&quot; is the id of the Yahoo.util.DD object the selected rows are being dragged over.
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           </span><span class="jsdoc-string">&quot;dragover&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event dragenter
-            *  Fires when the dragged row(s) first cross another DD target while being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           </span><span class="jsdoc-string">&quot;dragenter&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
-           </span><span class="jsdoc-comment">/**
-            * @event dragout
-            * Fires when the dragged row(s) leave another DD target while being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           </span><span class="jsdoc-string">&quot;dragout&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event headercontextmenu
+         * Fires when a header is right clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        </span><span class="jsdoc-string">&quot;headercontextmenu&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event bodyscroll
+         * Fires when the body element is scrolled
+         * @param {Number} scrollLeft
+         * @param {Number} scrollTop
+         */
+        </span><span class="jsdoc-string">&quot;bodyscroll&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event columnresize
+         * Fires when the user resizes a column
+         * @param {Number} columnIndex
+         * @param {Number} newSize
+         */
+        </span><span class="jsdoc-string">&quot;columnresize&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event columnmove
+         * Fires when the user moves a column
+         * @param {Number} oldIndex
+         * @param {Number} newIndex
+         */
+        </span><span class="jsdoc-string">&quot;columnmove&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event startdrag
+         * Fires when row(s) start being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {event} e The raw browser event
+         */
+        </span><span class="jsdoc-string">&quot;startdrag&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event enddrag
+         * Fires when a drag operation is complete
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {event} e The raw browser event
+         */
+        </span><span class="jsdoc-string">&quot;enddrag&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event dragdrop
+         * Fires when dragged row(s) are dropped on a valid DD target
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        </span><span class="jsdoc-string">&quot;dragdrop&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event dragover
+         * Fires while row(s) are being dragged. &quot;targetId&quot; is the id of the Yahoo.util.DD object the selected rows are being dragged over.
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        </span><span class="jsdoc-string">&quot;dragover&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event dragenter
+         *  Fires when the dragged row(s) first cross another DD target while being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        </span><span class="jsdoc-string">&quot;dragenter&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event dragout
+         * Fires when the dragged row(s) leave another DD target while being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        </span><span class="jsdoc-string">&quot;dragout&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+        </span><span class="jsdoc-comment">/**
+         * @event rowclass
+         * Fires when a row is rendered, so you can change add a style to it.
+         * @param {GridView} gridview The grid view
+         * @param {Object} rowcfg, contains record, rowIndex and rowClass - set rowClass to add a style.
+         */
+        </span><span class="jsdoc-string">'rowclass' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
+
         </span><span class="jsdoc-comment">/**
          * @event render
          * Fires when the grid is rendered
          * @param {Grid} grid
          */
-        </span><span class="jsdoc-var">render </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
+        </span><span class="jsdoc-string">'render' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
     </span><span class="jsdoc-syntax">});
 
     </span><span class="jsdoc-var">Roo.grid.Grid.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
index de25b78..73a12b5 100644 (file)
                 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ts </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.templates</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ct </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ts.cell</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ts.row</span><span class="jsdoc-syntax">;
                 </span><span class="jsdoc-comment">// buffers
                 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">buf </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">lbuf </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cb</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">lcb</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">p </span><span class="jsdoc-syntax">= {}, </span><span class="jsdoc-var">rp </span><span class="jsdoc-syntax">= {}, </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">;
+                
+                </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">hasListener </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.grid.hasListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'rowclass'</span><span class="jsdoc-syntax">);
+                </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">rowcfg </span><span class="jsdoc-syntax">= {};
                 </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">j </span><span class="jsdoc-syntax">= 0, </span><span class="jsdoc-var">len </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">rs.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">j </span><span class="jsdoc-syntax">&lt; </span><span class="jsdoc-var">len</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">j</span><span class="jsdoc-syntax">++){
                     </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">rs</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">j</span><span class="jsdoc-syntax">]; </span><span class="jsdoc-var">cb </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">lcb </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">rowIndex </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">j</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">startRow</span><span class="jsdoc-syntax">);
                     </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">&lt; </span><span class="jsdoc-var">colCount</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++){
                     }
                     </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">alt </span><span class="jsdoc-syntax">= [];
                     </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">stripe </span><span class="jsdoc-syntax">&amp;&amp; ((</span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">+1) % 2 == 0)){
-                        </span><span class="jsdoc-var">alt</span><span class="jsdoc-syntax">[0] = </span><span class="jsdoc-string">&quot;x-grid-row-alt&quot;</span><span class="jsdoc-syntax">;
+                        </span><span class="jsdoc-var">alt.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;x-grid-row-alt&quot;</span><span class="jsdoc-syntax">)
                     }
                     </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.dirty</span><span class="jsdoc-syntax">){
-                        </span><span class="jsdoc-var">alt</span><span class="jsdoc-syntax">[1] = </span><span class="jsdoc-string">&quot; x-grid-dirty-row&quot;</span><span class="jsdoc-syntax">;
+                        </span><span class="jsdoc-var">alt.push</span><span class="jsdoc-syntax">(  </span><span class="jsdoc-string">&quot; x-grid-dirty-row&quot;</span><span class="jsdoc-syntax">);
                     }
                     </span><span class="jsdoc-var">rp.cells </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">lcb</span><span class="jsdoc-syntax">;
                     </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.getRowClass</span><span class="jsdoc-syntax">){
-                        </span><span class="jsdoc-var">alt</span><span class="jsdoc-syntax">[2] = </span><span class="jsdoc-var">this.getRowClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">);
+                        </span><span class="jsdoc-var">alt.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.getRowClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">));
+                    }
+                    </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">hasListener</span><span class="jsdoc-syntax">) {
+                        </span><span class="jsdoc-var">rowcfg </span><span class="jsdoc-syntax">= {
+                             
+                            </span><span class="jsdoc-var">record</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">,
+                            </span><span class="jsdoc-var">rowIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">,
+                            </span><span class="jsdoc-var">rowClass </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
+                        }
+                        </span><span class="jsdoc-var">this.grid.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'rowclass'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowcfg</span><span class="jsdoc-syntax">);
+                        </span><span class="jsdoc-var">alt.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rowcfg.rowClass</span><span class="jsdoc-syntax">);
                     }
                     </span><span class="jsdoc-var">rp.alt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">alt.join</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot; &quot;</span><span class="jsdoc-syntax">);
                     </span><span class="jsdoc-var">lbuf</span><span class="jsdoc-syntax">+= </span><span class="jsdoc-var">rt.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rp</span><span class="jsdoc-syntax">);
                 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ts </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.templates</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ct </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ts.cell</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ts.row</span><span class="jsdoc-syntax">;
                 </span><span class="jsdoc-comment">// buffers
                 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">buf </span><span class="jsdoc-syntax">= [], </span><span class="jsdoc-var">lbuf </span><span class="jsdoc-syntax">= [], </span><span class="jsdoc-var">cb</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">lcb</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">p </span><span class="jsdoc-syntax">= {}, </span><span class="jsdoc-var">rp </span><span class="jsdoc-syntax">= {}, </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">;
+                </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">hasListener </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.grid.hasListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'rowclass'</span><span class="jsdoc-syntax">);
+                </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">rowcfg </span><span class="jsdoc-syntax">= {};
                 </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">j </span><span class="jsdoc-syntax">= 0, </span><span class="jsdoc-var">len </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">rs.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">j </span><span class="jsdoc-syntax">&lt; </span><span class="jsdoc-var">len</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">j</span><span class="jsdoc-syntax">++){
                     </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">rs</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">j</span><span class="jsdoc-syntax">]; </span><span class="jsdoc-var">cb </span><span class="jsdoc-syntax">= []; </span><span class="jsdoc-var">lcb </span><span class="jsdoc-syntax">= []; </span><span class="jsdoc-var">rowIndex </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">j</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">startRow</span><span class="jsdoc-syntax">);
                     </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">&lt; </span><span class="jsdoc-var">colCount</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++){
                     }
                     </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">alt </span><span class="jsdoc-syntax">= [];
                     </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">stripe </span><span class="jsdoc-syntax">&amp;&amp; ((</span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">+1) % 2 == 0)){
-                        </span><span class="jsdoc-var">alt</span><span class="jsdoc-syntax">[0] = </span><span class="jsdoc-string">&quot;x-grid-row-alt&quot;</span><span class="jsdoc-syntax">;
+                        </span><span class="jsdoc-var">alt.push</span><span class="jsdoc-syntax">( </span><span class="jsdoc-string">&quot;x-grid-row-alt&quot;</span><span class="jsdoc-syntax">);
                     }
                     </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.dirty</span><span class="jsdoc-syntax">){
-                        </span><span class="jsdoc-var">alt</span><span class="jsdoc-syntax">[1] = </span><span class="jsdoc-string">&quot; x-grid-dirty-row&quot;</span><span class="jsdoc-syntax">;
+                        </span><span class="jsdoc-var">alt.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot; x-grid-dirty-row&quot;</span><span class="jsdoc-syntax">);
                     }
                     </span><span class="jsdoc-var">rp.cells </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">lcb</span><span class="jsdoc-syntax">;
                     </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.getRowClass</span><span class="jsdoc-syntax">){
-                        </span><span class="jsdoc-var">alt</span><span class="jsdoc-syntax">[2] = </span><span class="jsdoc-var">this.getRowClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">);
+                        </span><span class="jsdoc-var">alt.push</span><span class="jsdoc-syntax">( </span><span class="jsdoc-var">this.getRowClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">));
+                    }
+                    </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">hasListener</span><span class="jsdoc-syntax">) {
+                        </span><span class="jsdoc-var">rowcfg </span><span class="jsdoc-syntax">= {
+                             
+                            </span><span class="jsdoc-var">record</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">,
+                            </span><span class="jsdoc-var">rowIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">,
+                            </span><span class="jsdoc-var">rowClass </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
+                        }
+                        </span><span class="jsdoc-var">this.grid.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'rowclass'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowcfg</span><span class="jsdoc-syntax">);
+                        </span><span class="jsdoc-var">alt.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rowcfg.rowClass</span><span class="jsdoc-syntax">);
                     }
                     </span><span class="jsdoc-var">rp.alt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">alt.join</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot; &quot;</span><span class="jsdoc-syntax">);
                     </span><span class="jsdoc-var">rp.cells </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">lcb.join</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;&quot;</span><span class="jsdoc-syntax">);
index 4e9e166..4c4418c 100644 (file)
 <!-- ============================== footer ================================= -->
                <div class="fineprint" style="clear:both">
                        
-                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Fri Jan 14 2011 17:01:53 GMT+0800 (HKT)
+                       Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on Thu Feb 10 2011 17:59:31 GMT+0800 (HKT)
                        Based on 
                        <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
                </div>
index 60a33f6..4eec8cd 100644 (file)
@@ -6,7 +6,7 @@ sb.override=function(o){Roo.override(sb,o);};N.override=io;Roo.override(sb,M);re
 ns=c.xns?c.xns:ns;if(c.constructor==ns[c.xtype]){return c;}if(ns[c.xtype]){if(Roo.debug)Roo.log("Roo.Factory("+c.xtype+")");var M=new ns[c.xtype](c);M.xns=false;return M;}
 c.xns=false;return c;},log:function(s){if((typeof(console)=='undefined')||(typeof(console.log)=='undefined')){return;}
 console.log(s);},urlEncode:function(o){if(!o){return "";}var M=[];for(var N in o){var ov=o[N],k=encodeURIComponent(N);var O=typeof ov;if(O=='undefined'){M.push(k,"=&");}else if(O!="function"&&O!="object"){M.push(k,"=",encodeURIComponent(ov),"&");}else if(ov instanceof Array){if(ov.length){for(var i=0,P=ov.length;i<P;i++){M.push(k,"=",encodeURIComponent(ov[i]===undefined?'':ov[i]),"&");}}else {M.push(k,"=&");}}}
-M.pop();return M.join("");},urlDecode:function(M,N){if(!M||!M.length){return {};}var O={};var P=M.split('&');var Q,R,S;for(var i=0,T=P.length;i<T;i++){Q=P[i].split('=');R=decodeURIComponent(Q[0]);S=decodeURIComponent(Q[1]);if(N!==true){if(typeof O[R]=="undefined"){O[R]=S;}else if(typeof O[R]=="string"){O[R]=[O[R]];O[R].push(S);}else {O[R].push(S);}}else {O[R]=S;}}return O;},each:function(M,fn,N){if(typeof M.length=="undefined"||typeof M=="string"){M=[M];}for(var i=0,O=M.length;i<O;i++){if(fn.call(N||M[i],M[i],i,M)===false){return i;};}},combine:function(){var as=arguments,l=as.length,r=[];for(var i=0;i<l;i++){var a=as[i];if(a instanceof Array){r=r.concat(a);}else if(a.length!==undefined&&!a.substr){r=r.concat(Array.prototype.slice.call(a,0));}else {r.push(a);}}return r;},escapeRe:function(s){return s.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1");},callback:function(cb,M,N,O){if(typeof cb=="function"){if(O){cb.defer(O,M,N||[]);}else {cb.apply(M,N||[]);}}},getDom:function(el){if(!el){return null;}return el.dom?el.dom:(typeof el=='string'?document.getElementById(el):el);},getCmp:function(id){return Roo.ComponentMgr.get(id);},num:function(v,M){if(typeof v!='number'){return M;}return v;},destroy:function(){for(var i=0,a=arguments,M=a.length;i<M;i++){var as=a[i];if(as){if(as.dom){as.removeAllListeners();as.remove();continue;}if(typeof as.purgeListeners=='function'){as.purgeListeners();}if(typeof as.destroy=='function'){as.destroy();}}}},type:function(o){if(o===undefined||o===null){return false;}if(o.htmlElement){return 'element';}var t=typeof o;if(t=='object'&&o.nodeName){switch(o.nodeType){case 1:return 'element';case 3:return (/\S/).test(o.nodeValue)?'textnode':'whitespace';}}if(t=='object'||t=='function'){switch(o.constructor){case Array:return 'array';case RegExp:return 'regexp';}if(typeof o.length=='number'&&typeof o.item=='function'){return 'nodelist';}}return t;},isEmpty:function(v,M){return v===null||v===undefined||(!M?v==='':false);},isOpera:C,isSafari:D,isIE:E,isIE7:F,isGecko:G,isBorderBox:H,isWindows:I,isLinux:K,isMac:J,useShims:((E&&!F)||(G&&J))});})();Roo.namespace("Roo","Roo.util","Roo.grid","Roo.dd","Roo.tree","Roo.data","Roo.form","Roo.menu","Roo.state","Roo.lib","Roo.layout","Roo.app","Roo.ux");
+M.pop();return M.join("");},urlDecode:function(M,N){if(!M||!M.length){return {};}var O={};var P=M.split('&');var Q,R,S;for(var i=0,T=P.length;i<T;i++){Q=P[i].split('=');R=decodeURIComponent(Q[0]);S=decodeURIComponent(Q[1]);if(N!==true){if(typeof O[R]=="undefined"){O[R]=S;}else if(typeof O[R]=="string"){O[R]=[O[R]];O[R].push(S);}else {O[R].push(S);}}else {O[R]=S;}}return O;},each:function(M,fn,N){if(typeof M.length=="undefined"||typeof M=="string"){M=[M];}for(var i=0,O=M.length;i<O;i++){if(fn.call(N||M[i],M[i],i,M)===false){return i;};}},combine:function(){var as=arguments,l=as.length,r=[];for(var i=0;i<l;i++){var a=as[i];if(a instanceof Array){r=r.concat(a);}else if(a.length!==undefined&&!a.substr){r=r.concat(Array.prototype.slice.call(a,0));}else {r.push(a);}}return r;},escapeRe:function(s){return s.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1");},callback:function(cb,M,N,O){if(typeof cb=="function"){if(O){cb.defer(O,M,N||[]);}else {cb.apply(M,N||[]);}}},getDom:function(el){if(!el){return null;}return el.dom?el.dom:(typeof el=='string'?document.getElementById(el):el);},getCmp:function(id){return Roo.ComponentMgr.get(id);},num:function(v,M){if(typeof v!='number'){return M;}return v;},destroy:function(){for(var i=0,a=arguments,M=a.length;i<M;i++){var as=a[i];if(as){if(as.dom){as.removeAllListeners();as.remove();continue;}if(typeof as.purgeListeners=='function'){as.purgeListeners();}if(typeof as.destroy=='function'){as.destroy();}}}},type:function(o){if(o===undefined||o===null){return false;}if(o.htmlElement){return 'element';}var t=typeof o;if(t=='object'&&o.nodeName){switch(o.nodeType){case 1:return 'element';case 3:return (/\S/).test(o.nodeValue)?'textnode':'whitespace';}}if(t=='object'||t=='function'){switch(o.constructor){case Array:return 'array';case RegExp:return 'regexp';}if(typeof o.length=='number'&&typeof o.item=='function'){return 'nodelist';}}return t;},isEmpty:function(v,M){return v===null||v===undefined||(!M?v==='':false);},isOpera:C,isSafari:D,isIE:E,isIE7:F,isGecko:G,isBorderBox:H,isWindows:I,isLinux:K,isMac:J,useShims:((E&&!F)||(G&&J)),selectNode:function(M,N){var O=Roo.DomQuery.selectNode(M,N);return O?Roo.get(O):new Roo.Element(false);}});})();Roo.namespace("Roo","Roo.util","Roo.grid","Roo.dd","Roo.tree","Roo.data","Roo.form","Roo.menu","Roo.state","Roo.lib","Roo.layout","Roo.app","Roo.ux");
 (function(){if(Roo.isIE){function fnCleanUp(){var p=Function.prototype;delete p.createSequence;delete p.defer;delete p.createDelegate;delete p.createCallback;delete p.createInterceptor;window.detachEvent("onunload",fnCleanUp);}
 window.attachEvent("onunload",fnCleanUp);}})();Roo.apply(Function.prototype,{createCallback:function(){var A=arguments;var B=this;return function(){return B.apply(window,A);};},createDelegate:function(A,B,C){var D=this;return function(){var E=B||arguments;if(C===true){E=Array.prototype.slice.call(arguments,0);E=E.concat(B);}else if(typeof C=="number"){E=Array.prototype.slice.call(arguments,0);var F=[C,0].concat(B);Array.prototype.splice.apply(E,F);}return D.apply(A||window,E);};},defer:function(A,B,C,D){var fn=this.createDelegate(B,C,D);if(A){return setTimeout(fn,A);}
 fn();return 0;},createSequence:function(A,B){if(typeof A!="function"){return this;}var C=this;return function(){var D=C.apply(this||window,arguments);A.apply(B||this||window,arguments);return D;};},createInterceptor:function(A,B){if(typeof A!="function"){return this;}var C=this;return function(){A.target=this;A.method=C;if(A.apply(B||this||window,arguments)===false){return;}return C.apply(this||window,arguments);};}});
@@ -133,7 +133,7 @@ Roo.get(L).setOpacity(1);}});}return this;},isDisplayed:function(){return this.g
 this.setStyle("display",J);return this;},focus:function(){try{this.dom.focus();}catch(e){}return this;},blur:function(){try{this.dom.blur();}catch(e){}return this;},addClass:function(J){if(J instanceof Array){for(var i=0,K=J.length;i<K;i++){this.addClass(J[i]);}}else {if(J&&!this.hasClass(J)){this.dom.className=this.dom.className+" "+J;}}return this;},radioClass:function(J){var K=this.dom.parentNode.childNodes;for(var i=0;i<K.length;i++){var s=K[i];if(s.nodeType==1){Roo.get(s).removeClass(J);}}
 this.addClass(J);return this;},removeClass:function(J){if(!J||!this.dom.className){return this;}if(J instanceof Array){for(var i=0,K=J.length;i<K;i++){this.removeClass(J[i]);}}else {if(this.hasClass(J)){var re=this.classReCache[J];if(!re){re=new RegExp('(?:^|\\s+)'+J+'(?:\\s+|$)',"g");this.classReCache[J]=re;}
 this.dom.className=this.dom.className.replace(re," ");}}return this;},classReCache:{},toggleClass:function(J){if(this.hasClass(J)){this.removeClass(J);}else {this.addClass(J);}return this;},hasClass:function(J){return J&&(' '+this.dom.className+' ').indexOf(' '+J+' ')!=-1;},replaceClass:function(J,K){this.removeClass(J);this.addClass(K);return this;},getStyles:function(){var a=arguments,J=a.length,r={};for(var i=0;i<J;i++){r[a[i]]=this.getStyle(a[i]);}return r;},getStyle:function(){return G&&G.getComputedStyle?function(J){var el=this.dom,v,cs,K;if(J=='float'){J="cssFloat";}if(el.style&&(v=el.style[J])){return v;}if(cs=G.getComputedStyle(el,"")){if(!(K=B[J])){K=B[J]=J.replace(C,F);}return cs[K];}return null;}:function(J){var el=this.dom,v,cs,K;if(J=='opacity'){if(typeof el.style.filter=='string'){var m=el.style.filter.match(/alpha\(opacity=(.*)\)/i);if(m){var fv=parseFloat(m[1]);if(!isNaN(fv)){return fv?fv/100:0;}}}return 1;}else if(J=='float'){J="styleFloat";}if(!(K=B[J])){K=B[J]=J.replace(C,F);}if(v=el.style[K]){return v;}if(cs=el.currentStyle){return cs[K];}return null;};}(),setStyle:function(J,K){if(typeof J=="string"){if(J=='float'){this.setStyle(Roo.isIE?'styleFloat':'cssFloat',K);return this;}var L;if(!(L=B[J])){L=B[J]=J.replace(C,F);}if(L=='opacity'){this.setOpacity(K);}else {this.dom.style[L]=K;}}else {for(var M in J){if(typeof J[M]!="function"){this.setStyle(M,J[M]);}}}return this;},applyStyles:function(J){Roo.DomHelper.applyStyles(this.dom,J);return this;},getX:function(){return D.getX(this.dom);},getY:function(){return D.getY(this.dom);},getXY:function(){return D.getXY(this.dom);},setX:function(x,J){if(!J||!A){D.setX(this.dom,x);}else {this.setXY([x,this.getY()],this.preanim(arguments,1));}return this;},setY:function(y,J){if(!J||!A){D.setY(this.dom,y);}else {this.setXY([this.getX(),y],this.preanim(arguments,1));}return this;},setLeft:function(J){this.setStyle("left",this.addUnits(J));return this;},setTop:function(J){this.setStyle("top",this.addUnits(J));return this;},setRight:function(J){this.setStyle("right",this.addUnits(J));return this;},setBottom:function(J){this.setStyle("bottom",this.addUnits(J));return this;},setXY:function(J,K){if(!K||!A){D.setXY(this.dom,J);}else {this.anim({points:{to:J}},this.preanim(arguments,1),'motion');}return this;},setLocation:function(x,y,J){this.setXY([x,y],this.preanim(arguments,2));return this;},moveTo:function(x,y,J){this.setXY([x,y],this.preanim(arguments,2));return this;},getRegion:function(){return D.getRegion(this.dom);},getHeight:function(J){var h=this.dom.offsetHeight||0;return J!==true?h:h-this.getBorderWidth("tb")-this.getPadding("tb");},getWidth:function(J){var w=this.dom.offsetWidth||0;return J!==true?w:w-this.getBorderWidth("lr")-this.getPadding("lr");},getComputedHeight:function(){var h=Math.max(this.dom.offsetHeight,this.dom.clientHeight);if(!h){h=parseInt(this.getStyle('height'),10)||0;if(!this.isBorderBox()){h+=this.getFrameWidth('tb');}}return h;},getComputedWidth:function(){var w=Math.max(this.dom.offsetWidth,this.dom.clientWidth);if(!w){w=parseInt(this.getStyle('width'),10)||0;if(!this.isBorderBox()){w+=this.getFrameWidth('lr');}}return w;},getSize:function(J){return {width:this.getWidth(J),height:this.getHeight(J)};},getViewSize:function(){var d=this.dom,J=document,aw=0,ah=0;if(d==J||d==J.body){return {width:D.getViewWidth(),height:D.getViewHeight()};}else {return {width:d.clientWidth,height:d.clientHeight};}},getValue:function(J){return J?parseInt(this.dom.value,10):this.dom.value;},adjustWidth:function(J){if(typeof J=="number"){if(this.autoBoxAdjust&&!this.isBorderBox()){J-=(this.getBorderWidth("lr")+this.getPadding("lr"));}if(J<0){J=0;}}return J;},adjustHeight:function(J){if(typeof J=="number"){if(this.autoBoxAdjust&&!this.isBorderBox()){J-=(this.getBorderWidth("tb")+this.getPadding("tb"));}if(J<0){J=0;}}return J;},setWidth:function(J,K){J=this.adjustWidth(J);if(!K||!A){this.dom.style.width=this.addUnits(J);}else {this.anim({width:{to:J}},this.preanim(arguments,1));}return this;},setHeight:function(J,K){J=this.adjustHeight(J);if(!K||!A){this.dom.style.height=this.addUnits(J);}else {this.anim({height:{to:J}},this.preanim(arguments,1));}return this;},setSize:function(J,K,L){if(typeof J=="object"){K=J.height;J=J.width;}
-J=this.adjustWidth(J);K=this.adjustHeight(K);if(!L||!A){this.dom.style.width=this.addUnits(J);this.dom.style.height=this.addUnits(K);}else {this.anim({width:{to:J},height:{to:K}},this.preanim(arguments,2));}return this;},setBounds:function(x,y,J,K,L){if(!L||!A){this.setSize(J,K);this.setLocation(x,y);}else {J=this.adjustWidth(J);K=this.adjustHeight(K);this.anim({points:{to:[x,y]},width:{to:J},height:{to:K}},this.preanim(arguments,4),'motion');}return this;},setRegion:function(J,K){this.setBounds(J.left,J.top,J.right-J.left,J.bottom-J.top,this.preanim(arguments,1));return this;},addListener:function(J,fn,K,L){Roo.EventManager.on(this.dom,J,fn,K||this,L);},removeListener:function(J,fn){Roo.EventManager.removeListener(this.dom,J,fn);return this;},removeAllListeners:function(){E.purgeElement(this.dom);return this;},relayEvent:function(J,K){this.on(J,function(e){K.fireEvent(J,e);});},setOpacity:function(J,K){if(!K||!A){var s=this.dom.style;if(Roo.isIE){s.zoom=1;s.filter=(s.filter||'').replace(/alpha\([^\)]*\)/gi,"")+(J==1?"":"alpha(opacity="+J*100+")");}else {s.opacity=J;}}else {this.anim({opacity:{to:J}},this.preanim(arguments,1),null,.35,'easeIn');}return this;},getLeft:function(J){if(!J){return this.getX();}else {return parseInt(this.getStyle("left"),10)||0;}},getRight:function(J){if(!J){return this.getX()+this.getWidth();}else {return (this.getLeft(true)+this.getWidth())||0;}},getTop:function(J){if(!J){return this.getY();}else {return parseInt(this.getStyle("top"),10)||0;}},getBottom:function(J){if(!J){return this.getY()+this.getHeight();}else {return (this.getTop(true)+this.getHeight())||0;}},position:function(J,K,x,y){if(!J){if(this.getStyle('position')=='static'){this.setStyle('position','relative');}}else {this.setStyle("position",J);}if(K){this.setStyle("z-index",K);}if(x!==undefined&&y!==undefined){this.setXY([x,y]);}else if(x!==undefined){this.setX(x);}else if(y!==undefined){this.setY(y);}},clearPositioning:function(J){J=J||'';this.setStyle({"left":J,"right":J,"top":J,"bottom":J,"z-index":"","position":"static"});return this;},getPositioning:function(){var l=this.getStyle("left");var t=this.getStyle("top");return {"position":this.getStyle("position"),"left":l,"right":l?"":this.getStyle("right"),"top":t,"bottom":t?"":this.getStyle("bottom"),"z-index":this.getStyle("z-index")};},getBorderWidth:function(J){return this.addStyles(J,El.borders);},getPadding:function(J){return this.addStyles(J,El.paddings);},setPositioning:function(pc){this.applyStyles(pc);if(pc.right=="auto"){this.dom.style.right="";}if(pc.bottom=="auto"){this.dom.style.bottom="";}return this;},fixDisplay:function(){if(this.getStyle("display")=="none"){this.setStyle("visibility","hidden");this.setStyle("display",this.originalDisplay);if(this.getStyle("display")=="none"){this.setStyle("display","block");}}},setLeftTop:function(J,K){this.dom.style.left=this.addUnits(J);this.dom.style.top=this.addUnits(K);return this;},move:function(J,K,L){var xy=this.getXY();J=J.toLowerCase();switch(J){case "l":case "left":this.moveTo(xy[0]-K,xy[1],this.preanim(arguments,2));break;case "r":case "right":this.moveTo(xy[0]+K,xy[1],this.preanim(arguments,2));break;case "t":case "top":case "up":this.moveTo(xy[0],xy[1]-K,this.preanim(arguments,2));break;case "b":case "bottom":case "down":this.moveTo(xy[0],xy[1]+K,this.preanim(arguments,2));break;}return this;},clip:function(){if(!this.isClipped){this.isClipped=true;this.originalClip={"o":this.getStyle("overflow"),"x":this.getStyle("overflow-x"),"y":this.getStyle("overflow-y")};this.setStyle("overflow","hidden");this.setStyle("overflow-x","hidden");this.setStyle("overflow-y","hidden");}return this;},unclip:function(){if(this.isClipped){this.isClipped=false;var o=this.originalClip;if(o.o){this.setStyle("overflow",o.o);}if(o.x){this.setStyle("overflow-x",o.x);}if(o.y){this.setStyle("overflow-y",o.y);}}return this;},getAnchorXY:function(J,K,s){var w,h,vp=false;if(!s){var d=this.dom;if(d==document.body||d==document){vp=true;w=D.getViewWidth();h=D.getViewHeight();}else {w=this.getWidth();h=this.getHeight();}}else {w=s.width;h=s.height;}var x=0,y=0,r=Math.round;switch((J||"tl").toLowerCase()){case "c":x=r(w*.5);y=r(h*.5);break;case "t":x=r(w*.5);y=0;break;case "l":x=0;y=r(h*.5);break;case "r":x=w;y=r(h*.5);break;case "b":x=r(w*.5);y=h;break;case "tl":x=0;y=0;break;case "bl":x=0;y=h;break;case "br":x=w;y=h;break;case "tr":x=w;y=0;break;}if(K===true){return [x,y];}if(vp){var sc=this.getScroll();return [x+sc.left,y+sc.top];}var o=this.getXY();return [x+o[0],y+o[1]];},getAlignToXY:function(el,p,o){el=Roo.get(el);var d=this.dom;if(!el.dom){throw "Element.alignTo with an element that doesn't exist";}var c=false;var p1="",p2="";o=o||[0,0];if(!p){p="tl-bl";}else if(p=="?"){p="tl-bl?";}else if(p.indexOf("-")==-1){p="tl-"+p;}
+J=this.adjustWidth(J);K=this.adjustHeight(K);if(!L||!A){this.dom.style.width=this.addUnits(J);this.dom.style.height=this.addUnits(K);}else {this.anim({width:{to:J},height:{to:K}},this.preanim(arguments,2));}return this;},setBounds:function(x,y,J,K,L){if(!L||!A){this.setSize(J,K);this.setLocation(x,y);}else {J=this.adjustWidth(J);K=this.adjustHeight(K);this.anim({points:{to:[x,y]},width:{to:J},height:{to:K}},this.preanim(arguments,4),'motion');}return this;},setRegion:function(J,K){this.setBounds(J.left,J.top,J.right-J.left,J.bottom-J.top,this.preanim(arguments,1));return this;},addListener:function(J,fn,K,L){if(this.dom){Roo.EventManager.on(this.dom,J,fn,K||this,L);}},removeListener:function(J,fn){Roo.EventManager.removeListener(this.dom,J,fn);return this;},removeAllListeners:function(){E.purgeElement(this.dom);return this;},relayEvent:function(J,K){this.on(J,function(e){K.fireEvent(J,e);});},setOpacity:function(J,K){if(!K||!A){var s=this.dom.style;if(Roo.isIE){s.zoom=1;s.filter=(s.filter||'').replace(/alpha\([^\)]*\)/gi,"")+(J==1?"":"alpha(opacity="+J*100+")");}else {s.opacity=J;}}else {this.anim({opacity:{to:J}},this.preanim(arguments,1),null,.35,'easeIn');}return this;},getLeft:function(J){if(!J){return this.getX();}else {return parseInt(this.getStyle("left"),10)||0;}},getRight:function(J){if(!J){return this.getX()+this.getWidth();}else {return (this.getLeft(true)+this.getWidth())||0;}},getTop:function(J){if(!J){return this.getY();}else {return parseInt(this.getStyle("top"),10)||0;}},getBottom:function(J){if(!J){return this.getY()+this.getHeight();}else {return (this.getTop(true)+this.getHeight())||0;}},position:function(J,K,x,y){if(!J){if(this.getStyle('position')=='static'){this.setStyle('position','relative');}}else {this.setStyle("position",J);}if(K){this.setStyle("z-index",K);}if(x!==undefined&&y!==undefined){this.setXY([x,y]);}else if(x!==undefined){this.setX(x);}else if(y!==undefined){this.setY(y);}},clearPositioning:function(J){J=J||'';this.setStyle({"left":J,"right":J,"top":J,"bottom":J,"z-index":"","position":"static"});return this;},getPositioning:function(){var l=this.getStyle("left");var t=this.getStyle("top");return {"position":this.getStyle("position"),"left":l,"right":l?"":this.getStyle("right"),"top":t,"bottom":t?"":this.getStyle("bottom"),"z-index":this.getStyle("z-index")};},getBorderWidth:function(J){return this.addStyles(J,El.borders);},getPadding:function(J){return this.addStyles(J,El.paddings);},setPositioning:function(pc){this.applyStyles(pc);if(pc.right=="auto"){this.dom.style.right="";}if(pc.bottom=="auto"){this.dom.style.bottom="";}return this;},fixDisplay:function(){if(this.getStyle("display")=="none"){this.setStyle("visibility","hidden");this.setStyle("display",this.originalDisplay);if(this.getStyle("display")=="none"){this.setStyle("display","block");}}},setLeftTop:function(J,K){this.dom.style.left=this.addUnits(J);this.dom.style.top=this.addUnits(K);return this;},move:function(J,K,L){var xy=this.getXY();J=J.toLowerCase();switch(J){case "l":case "left":this.moveTo(xy[0]-K,xy[1],this.preanim(arguments,2));break;case "r":case "right":this.moveTo(xy[0]+K,xy[1],this.preanim(arguments,2));break;case "t":case "top":case "up":this.moveTo(xy[0],xy[1]-K,this.preanim(arguments,2));break;case "b":case "bottom":case "down":this.moveTo(xy[0],xy[1]+K,this.preanim(arguments,2));break;}return this;},clip:function(){if(!this.isClipped){this.isClipped=true;this.originalClip={"o":this.getStyle("overflow"),"x":this.getStyle("overflow-x"),"y":this.getStyle("overflow-y")};this.setStyle("overflow","hidden");this.setStyle("overflow-x","hidden");this.setStyle("overflow-y","hidden");}return this;},unclip:function(){if(this.isClipped){this.isClipped=false;var o=this.originalClip;if(o.o){this.setStyle("overflow",o.o);}if(o.x){this.setStyle("overflow-x",o.x);}if(o.y){this.setStyle("overflow-y",o.y);}}return this;},getAnchorXY:function(J,K,s){var w,h,vp=false;if(!s){var d=this.dom;if(d==document.body||d==document){vp=true;w=D.getViewWidth();h=D.getViewHeight();}else {w=this.getWidth();h=this.getHeight();}}else {w=s.width;h=s.height;}var x=0,y=0,r=Math.round;switch((J||"tl").toLowerCase()){case "c":x=r(w*.5);y=r(h*.5);break;case "t":x=r(w*.5);y=0;break;case "l":x=0;y=r(h*.5);break;case "r":x=w;y=r(h*.5);break;case "b":x=r(w*.5);y=h;break;case "tl":x=0;y=0;break;case "bl":x=0;y=h;break;case "br":x=w;y=h;break;case "tr":x=w;y=0;break;}if(K===true){return [x,y];}if(vp){var sc=this.getScroll();return [x+sc.left,y+sc.top];}var o=this.getXY();return [x+o[0],y+o[1]];},getAlignToXY:function(el,p,o){el=Roo.get(el);var d=this.dom;if(!el.dom){throw "Element.alignTo with an element that doesn't exist";}var c=false;var p1="",p2="";o=o||[0,0];if(!p){p="tl-bl";}else if(p=="?"){p="tl-bl?";}else if(p.indexOf("-")==-1){p="tl-"+p;}
 p=p.toLowerCase();var m=p.match(/^([a-z]+)-([a-z]+)(\?)?$/);if(!m){throw "Element.alignTo with an invalid alignment "+p;}
 p1=m[1];p2=m[2];c=!!m[3];var a1=this.getAnchorXY(p1,true);var a2=el.getAnchorXY(p2,false);var x=a2[0]-a1[0]+o[0];var y=a2[1]-a1[1]+o[1];if(c){var w=this.getWidth(),h=this.getHeight(),r=el.getRegion();var dw=D.getViewWidth()-5,dh=D.getViewHeight()-5;var J=p1.charAt(0),K=p1.charAt(p1.length-1);var L=p2.charAt(0),M=p2.charAt(p2.length-1);var N=((J=="t"&&L=="b")||(J=="b"&&L=="t"));var O=((K=="r"&&M=="l")||(K=="l"&&M=="r"));var P=document;var Q=(P.documentElement.scrollLeft||P.body.scrollLeft||0)+5;var R=(P.documentElement.scrollTop||P.body.scrollTop||0)+5;if((x+w)>dw+Q){x=O?r.left-w:dw+Q-w;}if(x<Q){x=O?r.right:Q;}if((y+h)>dh+R){y=N?r.top-h:dh+R-h;}if(y<R){y=N?r.bottom:R;}}return [x,y];},getConstrainToXY:function(){var os={top:0,left:0,bottom:0,right:0};return function(el,J,K,L){el=Roo.get(el);K=K?Roo.applyIf(K,os):os;var vw,vh,vx=0,vy=0;if(el.dom==document.body||el.dom==document){vw=Roo.lib.Dom.getViewWidth();vh=Roo.lib.Dom.getViewHeight();}else {vw=el.dom.clientWidth;vh=el.dom.clientHeight;if(!J){var M=el.getXY();vx=M[0];vy=M[1];}}var s=el.getScroll();vx+=K.left+s.left;vy+=K.top+s.top;vw-=K.right;vh-=K.bottom;var vr=vx+vw;var vb=vy+vh;var xy=L||(!J?this.getXY():[this.getLeft(true),this.getTop(true)]);var x=xy[0],y=xy[1];var w=this.dom.offsetWidth,h=this.dom.offsetHeight;var N=false;if((x+w)>vr){x=vr-w;N=true;}if((y+h)>vb){y=vb-h;N=true;}if(x<vx){x=vx;N=true;}if(y<vy){y=vy;N=true;}return N?[x,y]:false;};}(),adjustForConstraints:function(xy,J,K){return this.getConstrainToXY(J||document,false,K,xy)||xy;},alignTo:function(J,K,L,M){var xy=this.getAlignToXY(J,K,L);this.setXY(xy,this.preanim(arguments,3));return this;},anchorTo:function(el,J,K,L,M,N){var O=function(){this.alignTo(el,J,K,L);Roo.callback(N,this);};Roo.EventManager.onWindowResize(O,this);var tm=typeof M;if(tm!='undefined'){Roo.EventManager.on(window,'scroll',O,this,{buffer:tm=='number'?M:50});}
 O.call(this);return this;},clearOpacity:function(){if(window.ActiveXObject){if(typeof this.dom.style.filter=='string'&&(/alpha/i).test(this.dom.style.filter)){this.dom.style.filter="";}}else {this.dom.style.opacity="";this.dom.style["-moz-opacity"]="";this.dom.style["-khtml-opacity"]="";}return this;},hide:function(J){this.setVisible(false,this.preanim(arguments,0));return this;},show:function(J){this.setVisible(true,this.preanim(arguments,0));return this;},addUnits:function(J){return Roo.Element.addUnits(J,this.defaultUnit);},beginMeasure:function(){var el=this.dom;if(el.offsetWidth||el.offsetHeight){return this;}var J=[];var p=this.dom,b=document.body;while((!el.offsetWidth&&!el.offsetHeight)&&p&&p.tagName&&p!=b){var pe=Roo.get(p);if(pe.getStyle('display')=='none'){J.push({el:p,visibility:pe.getStyle("visibility")});p.style.visibility="hidden";p.style.display="block";}
@@ -481,7 +481,7 @@ this.el.on("mousedown",this.onMouseDown,this);if(!B){this.el.on("mouseover",this
 Roo.Editor=function(A,B){Roo.Editor.superclass.constructor.call(this,B);this.field=A;this.addEvents({"beforestartedit":true,"startedit":true,"beforecomplete":true,"complete":true,"specialkey":true});};Roo.extend(Roo.Editor,Roo.Component,{value:"",alignment:"c-c?",shadow:"frame",constrain:false,completeOnEnter:false,cancelOnEsc:false,updateEl:false,onRender:function(ct,A){this.el=new Roo.Layer({shadow:this.shadow,cls:"x-editor",parentEl:ct,shim:this.shim,shadowOffset:4,id:this.id,constrain:this.constrain});this.el.setStyle("overflow",Roo.isGecko?"auto":"hidden");if(this.field.msgTarget!='title'){this.field.msgTarget='qtip';}
 this.field.render(this.el);if(Roo.isGecko){this.field.el.dom.setAttribute('autocomplete','off');}
 this.field.on("specialkey",this.onSpecialKey,this);if(this.swallowKeys){this.field.el.swallowEvent(['keydown','keypress']);}
-this.field.show();this.field.on("blur",this.onBlur,this);if(this.field.grow){this.field.on("autosize",this.el.sync,this.el,{delay:1});}},onSpecialKey:function(A,e){if(this.completeOnEnter&&e.getKey()==e.ENTER){e.stopEvent();this.completeEdit();}else if(this.cancelOnEsc&&e.getKey()==e.ESC){this.cancelEdit();}else {this.fireEvent('specialkey',A,e);}},startEdit:function(el,A){if(this.editing){this.completeEdit();}
+this.field.show();this.field.on("blur",this.onBlur,this);if(this.field.grow){this.field.on("autosize",this.el.sync,this.el,{delay:1});}},onSpecialKey:function(A,e){if(this.completeOnEnter&&e.getKey()==e.ENTER){e.stopEvent();this.completeEdit();return;}if(e.getKey()==e.ENTER){return;}if(this.cancelOnEsc&&e.getKey()==e.ESC){this.cancelEdit();return;}this.fireEvent('specialkey',A,e);},startEdit:function(el,A){if(this.editing){this.completeEdit();}
 this.boundEl=Roo.get(el);var v=A!==undefined?A:this.boundEl.dom.innerHTML;if(!this.rendered){this.render(this.parentEl||document.body);}if(this.fireEvent("beforestartedit",this,this.boundEl,v)===false){return;}
 this.startValue=v;this.field.setValue(v);if(this.autoSize){var sz=this.boundEl.getSize();switch(this.autoSize){case "width":this.setSize(sz.width,"");break;case "height":this.setSize("",sz.height);break;default:this.setSize(sz.width,sz.height);}}
 this.el.alignTo(this.boundEl,this.alignment);this.editing=true;if(Roo.QuickTips){Roo.QuickTips.disable();}
@@ -519,7 +519,7 @@ this.refreshSize();this.adjustAssets();this.focus();this.fireEvent("move",this,t
 D.call(this);return this;},isVisible:function(){return this.el.isVisible();},animHide:function(A){var b=Roo.get(this.animateTarget).getBox();this.proxy.show();this.proxy.setBounds(this.xy[0],this.xy[1],this.size.width,this.size.height);this.el.hide();this.proxy.setBounds(b.x,b.y,b.width,b.height,true,.35,this.hideEl.createDelegate(this,[A]));},hide:function(A){if(this.fireEvent("beforehide",this)===false){return;}if(this.shadow){this.shadow.hide();}if(this.shim){this.shim.hide();}if(this.animateTarget&&Roo.get(this.animateTarget)){this.animHide(A);}else {this.el.hide();this.hideEl(A);}return this;},hideEl:function(A){this.proxy.hide();if(this.modal){this.mask.hide();Roo.get(document.body).removeClass("x-body-masked");}
 this.fireEvent("hide",this);if(typeof A=="function"){A();}},hideAction:function(){this.setLeft("-10000px");this.setTop("-10000px");this.setStyle("visibility","hidden");},refreshSize:function(){this.size=this.el.getSize();this.xy=this.el.getXY();Roo.state.Manager.set(this.stateId||this.el.id+"-state",this.el.getBox());},setZIndex:function(A){if(this.modal){this.mask.setStyle("z-index",A);}if(this.shim){this.shim.setStyle("z-index",++A);}if(this.shadow){this.shadow.setZIndex(++A);}
 this.el.setStyle("z-index",++A);if(this.proxy){this.proxy.setStyle("z-index",++A);}if(this.resizer){this.resizer.proxy.setStyle("z-index",++A);}
-this.lastZIndex=A;},getEl:function(){return this.el;}});Roo.DialogManager=function(){var A={};var B=[];var C=null;var D=function(d1,d2){return (!d1._lastAccess||d1._lastAccess<d2._lastAccess)?-1:1;};var E=function(){B.sort(D);var F=Roo.DialogManager.zseed;for(var i=0,G=B.length;i<G;i++){var H=B[i];if(H){H.setZIndex(F+(i*10));}}};return {zseed:9000,register:function(F){A[F.id]=F;B.push(F);},unregister:function(F){delete A[F.id];var i=0;var G=0;if(!B.indexOf){for(i=0,G=B.length;i<G;i++){if(B[i]==F){B.splice(i,1);return;}}}else {i=B.indexOf(F);if(i!=-1){B.splice(i,1);}}},get:function(id){return typeof id=="object"?id:A[id];},bringToFront:function(F){F=this.get(F);if(F!=C){C=F;F._lastAccess=new Date().getTime();E();}return F;},sendToBack:function(F){F=this.get(F);F._lastAccess=-(new Date().getTime());E();return F;},hideAll:function(){for(var id in A){if(A[id]&&typeof A[id]!="function"&&A[id].isVisible()){A[id].hide();}}}};}();Roo.LayoutDialog=function(el,A){var B=A;if(typeof(A)=='undefined'){B=Roo.apply({},el);el=Roo.get(Roo.isIE?(document.body||document.documentElement):(document.documentElement||document.body)).createChild();}
+this.lastZIndex=A;},getEl:function(){return this.el;}});Roo.DialogManager=function(){var A={};var B=[];var C=null;var D=function(d1,d2){return (!d1._lastAccess||d1._lastAccess<d2._lastAccess)?-1:1;};var E=function(){B.sort(D);var F=Roo.DialogManager.zseed;for(var i=0,G=B.length;i<G;i++){var H=B[i];if(H){H.setZIndex(F+(i*10));}}};return {zseed:9000,register:function(F){A[F.id]=F;B.push(F);},unregister:function(F){delete A[F.id];var i=0;var G=0;if(!B.indexOf){for(i=0,G=B.length;i<G;i++){if(B[i]==F){B.splice(i,1);return;}}}else {i=B.indexOf(F);if(i!=-1){B.splice(i,1);}}},get:function(id){return typeof id=="object"?id:A[id];},bringToFront:function(F){F=this.get(F);if(F!=C){C=F;F._lastAccess=new Date().getTime();E();}return F;},sendToBack:function(F){F=this.get(F);F._lastAccess=-(new Date().getTime());E();return F;},hideAll:function(){for(var id in A){if(A[id]&&typeof A[id]!="function"&&A[id].isVisible()){A[id].hide();}}}};}();Roo.LayoutDialog=function(el,A){var B=A;if(typeof(A)=='undefined'){B=Roo.apply({},el);el=Roo.get(document.body||document.documentElement).createChild();}
 B.autoTabs=false;Roo.LayoutDialog.superclass.constructor.call(this,el,B);this.body.setStyle({overflow:"hidden",position:"relative"});this.layout=new Roo.BorderLayout(this.body.dom,B);this.layout.monitorWindowResize=false;this.el.addClass("x-dlg-auto-layout");this.center=Roo.BasicDialog.prototype.center;this.on("show",this.layout.layout,this.layout,true);if(B.items){var C=B.items;delete B.items;Roo.each(C,this.addxtype,this);}};Roo.extend(Roo.LayoutDialog,Roo.BasicDialog,{endUpdate:function(){this.layout.endUpdate();},beginUpdate:function(){this.layout.beginUpdate();},getLayout:function(){return this.layout;},showEl:function(){Roo.LayoutDialog.superclass.showEl.apply(this,arguments);if(Roo.isIE7){this.layout.layout();}},syncBodyHeight:function(){Roo.LayoutDialog.superclass.syncBodyHeight.call(this);if(this.layout){this.layout.layout();}},addxtype:function(c){return this.layout.addxtype(c);}});
 Roo.MessageBox=function(){var A,B,C,D;var E,F,G,H,I,pp;var J,K,L;var M=function(Q){A.hide();Roo.callback(B.fn,B.scope||window,[Q,K.dom.value],1);};var N=function(){if(B&&B.cls){A.el.removeClass(B.cls);}if(D){Roo.TaskMgr.stop(D);D=null;}};var O=function(b){var Q=0;if(!b){J["ok"].hide();J["cancel"].hide();J["yes"].hide();J["no"].hide();A.footer.dom.style.display='none';return Q;}
 A.footer.dom.style.display='';for(var k in J){if(typeof J[k]!="function"){if(b[k]){J[k].show();J[k].setText(typeof b[k]=="string"?b[k]:Roo.MessageBox.buttonText[k]);Q+=J[k].el.getWidth()+15;}else {J[k].hide();}}}return Q;};var P=function(d,k,e){if(B&&B.closable!==false){A.hide();}if(e){e.stopEvent();}};return {getDialog:function(){if(!A){A=new Roo.BasicDialog("x-msg-box",{autoCreate:true,shadow:true,draggable:true,resizable:false,constraintoviewport:false,fixedcenter:true,collapsible:false,shim:true,modal:true,width:400,height:100,buttonAlign:"center",closeClick:function(){if(B&&B.buttons&&B.buttons.no&&!B.buttons.cancel){M("no");}else {M("cancel");}}});A.on("hide",N);C=A.mask;A.addKeyListener(27,P);J={};var bt=this.buttonText;J["ok"]=A.addButton(bt["ok"],M.createCallback("ok"));J["yes"]=A.addButton(bt["yes"],M.createCallback("yes"));J["no"]=A.addButton(bt["no"],M.createCallback("no"));J["cancel"]=A.addButton(bt["cancel"],M.createCallback("cancel"));E=A.body.createChild({html:'<span class="roo-mb-text"></span><br /><input type="text" class="roo-mb-input" /><textarea class="roo-mb-textarea"></textarea><div class="roo-mb-progress-wrap"><div class="roo-mb-progress"><div class="roo-mb-progress-bar">&#160;</div></div></div>'});F=E.dom.firstChild;G=Roo.get(E.dom.childNodes[2]);G.enableDisplayMode();G.addKeyListener([10,13],function(){if(A.isVisible()&&B&&B.buttons){if(B.buttons.ok){M("ok");}else if(B.buttons.yes){M("yes");}}});H=Roo.get(E.dom.childNodes[3]);H.enableDisplayMode();I=Roo.get(E.dom.childNodes[4]);I.enableDisplayMode();var pf=I.dom.firstChild;if(pf){pp=Roo.get(pf.firstChild);pp.setHeight(pf.offsetHeight);}}return A;},updateText:function(Q){if(!A.isVisible()&&!B.width){A.resizeTo(this.maxWidth,100);}
@@ -732,8 +732,9 @@ A.destroy();});}},onFirstFocus:function(){this.tb.items.each(function(A){A.enabl
 tb.addField(new Roo.form.TextField({name:i,width:D.width,value:'',listeners:{'change':function(f,nv,ov){tb.selectedNode.setAttribute(f.name,nv);}}}));}
 tb.el.on('click',function(e){e.preventDefault();});tb.el.setVisibilityMode(Roo.Element.DISPLAY);tb.el.hide();tb.name=nm;return tb;}});
 Roo.form.BasicForm=function(el,A){this.allItems=[];this.childForms=[];Roo.apply(this,A);this.items=new Roo.util.MixedCollection(false,function(o){return o.id||(o.id=Roo.id());});this.addEvents({beforeaction:true,actionfailed:true,actioncomplete:true});if(el){this.initEl(el);}
-Roo.form.BasicForm.superclass.constructor.call(this);};Roo.extend(Roo.form.BasicForm,Roo.util.Observable,{timeout:30,activeAction:null,trackResetOnLoad:false,childForms:false,allItems:false,waitMsgTarget:undefined,initEl:function(el){this.el=Roo.get(el);this.id=this.el.id||Roo.id();this.el.on('submit',this.onSubmit,this);this.el.addClass('x-form');},onSubmit:function(e){e.stopEvent();},isValid:function(){var A=true;this.items.each(function(f){if(!f.validate()){A=false;}});return A;},isDirty:function(){var A=false;this.items.each(function(f){if(f.isDirty()){A=true;return false;}});return A;},doAction:function(A,B){if(typeof A=='string'){A=new Roo.form.Action.ACTION_TYPES[A](this,B);}if(this.fireEvent('beforeaction',this,A)!==false){this.beforeAction(A);A.run.defer(100,A);}return this;},submit:function(A){this.doAction('submit',A);return this;},load:function(A){this.doAction('load',A);return this;},updateRecord:function(A){A.beginEdit();var fs=A.fields;fs.each(function(f){var B=this.findField(f.name);if(B){A.set(f.name,B.getValue());}},this);A.endEdit();return this;},loadRecord:function(A){this.setValues(A.data);return this;},beforeAction:function(A){var o=A.options;if(o.waitMsg){if(this.waitMsgTarget===true){this.el.mask(o.waitMsg,'x-mask-loading');}else if(this.waitMsgTarget){this.waitMsgTarget=Roo.get(this.waitMsgTarget);this.waitMsgTarget.mask(o.waitMsg,'x-mask-loading');}else {Roo.MessageBox.wait(o.waitMsg,o.waitTitle||this.waitTitle||'Please Wait...');}}},afterAction:function(A,B){this.activeAction=null;var o=A.options;if(o.waitMsg){if(this.waitMsgTarget===true){this.el.unmask();}else if(this.waitMsgTarget){this.waitMsgTarget.unmask();}else {Roo.MessageBox.updateProgress(1);Roo.MessageBox.hide();}}if(B){if(o.reset){this.reset();}
-Roo.callback(o.success,o.scope,[this,A]);this.fireEvent('actioncomplete',this,A);}else {Roo.callback(o.failure,o.scope,[this,A]);this.fireEvent('actionfailed',this,A);}},findField:function(id){var A=this.items.get(id);if(!A){this.items.each(function(f){if(f.isFormField&&(f.dataIndex==id||f.id==id||f.getName()==id)){A=f;return false;}});}return A||null;},addForm:function(A){if(this.childForms.indexOf(A)>-1){return;}
+Roo.form.BasicForm.superclass.constructor.call(this);};Roo.extend(Roo.form.BasicForm,Roo.util.Observable,{timeout:30,activeAction:null,trackResetOnLoad:false,childForms:false,allItems:false,waitMsgTarget:false,initEl:function(el){this.el=Roo.get(el);this.id=this.el.id||Roo.id();this.el.on('submit',this.onSubmit,this);this.el.addClass('x-form');},onSubmit:function(e){e.stopEvent();},isValid:function(){var A=true;this.items.each(function(f){if(!f.validate()){A=false;}});return A;},isDirty:function(){var A=false;this.items.each(function(f){if(f.isDirty()){A=true;return false;}});return A;},doAction:function(A,B){if(typeof A=='string'){A=new Roo.form.Action.ACTION_TYPES[A](this,B);}if(this.fireEvent('beforeaction',this,A)!==false){this.beforeAction(A);A.run.defer(100,A);}return this;},submit:function(A){this.doAction('submit',A);return this;},load:function(A){this.doAction('load',A);return this;},updateRecord:function(A){A.beginEdit();var fs=A.fields;fs.each(function(f){var B=this.findField(f.name);if(B){A.set(f.name,B.getValue());}},this);A.endEdit();return this;},loadRecord:function(A){this.setValues(A.data);return this;},beforeAction:function(A){var o=A.options;if(this.waitMsgTarget===true){this.el.mask(o.waitMsg||"Sending",'x-mask-loading');}else if(this.waitMsgTarget){this.waitMsgTarget=Roo.get(this.waitMsgTarget);this.waitMsgTarget.mask(o.waitMsg||"Sending",'x-mask-loading');}else {Roo.MessageBox.wait(o.waitMsg||"Sending",o.waitTitle||this.waitTitle||'Please Wait...');}},afterAction:function(A,B){this.activeAction=null;var o=A.options;if(this.waitMsgTarget===true){this.el.unmask();}else if(this.waitMsgTarget){this.waitMsgTarget.unmask();}else {Roo.MessageBox.updateProgress(1);Roo.MessageBox.hide();}if(B){if(o.reset){this.reset();}
+Roo.callback(o.success,o.scope,[this,A]);this.fireEvent('actioncomplete',this,A);}else {Roo.callback(o.failure,o.scope,[this,A]);if(!this.hasListener('actionfailed')){Roo.MessageBox.alert("Error","Saving Failed, please check your entries");}
+this.fireEvent('actionfailed',this,A);}},findField:function(id){var A=this.items.get(id);if(!A){this.items.each(function(f){if(f.isFormField&&(f.dataIndex==id||f.id==id||f.getName()==id)){A=f;return false;}});}return A||null;},addForm:function(A){if(this.childForms.indexOf(A)>-1){return;}
 this.childForms.push(A);var n='';Roo.each(A.allItems,function(fe){n=typeof(fe.getName)=='undefined'?fe.name:fe.getName();if(this.findField(n)){return;}var B=new Roo.form.Hidden({name:n});B.render(this.el);this.add(B);},this);},markInvalid:function(A){if(A instanceof Array){for(var i=0,B=A.length;i<B;i++){var C=A[i];var f=this.findField(C.id);if(f){f.markInvalid(C.msg);}}}else {var D,id;for(id in A){if(typeof A[id]!='function'&&(D=this.findField(id))){D.markInvalid(A[id]);}}}
 Roo.each(this.childForms||[],function(f){f.markInvalid(A);});return this;},setValues:function(A){if(A instanceof Array){for(var i=0,B=A.length;i<B;i++){var v=A[i];var f=this.findField(v.id);if(f){f.setValue(v.value);if(this.trackResetOnLoad){f.originalValue=f.getValue();}}}}else {var C,id;for(id in A){if(typeof A[id]!='function'&&(C=this.findField(id))){if(C.setFromData&&C.valueField&&C.displayField&&(C.store&&!C.store.isLocal)){var sd={};sd[C.valueField]=typeof(A[C.hiddenName])=='undefined'?'':A[C.hiddenName];sd[C.displayField]=typeof(A[C.name])=='undefined'?'':A[C.name];C.setFromData(sd);}else {C.setValue(A[id]);}if(this.trackResetOnLoad){C.originalValue=C.getValue();}}}}
 Roo.each(this.childForms||[],function(f){f.setValues(A);});return this;},getValues:function(A){if(this.childForms){Roo.each(this.childForms,function(f){this.setValues(f.getValues());},this);}var fs=Roo.lib.Ajax.serializeForm(this.el.dom);if(A===true){return fs;}return Roo.urlDecode(fs);},getFieldValues:function(){if(this.childForms){Roo.each(this.childForms,function(f){this.setValues(f.getValues());},this);}var A={};this.items.each(function(f){if(!f.getName()){return;}var v=f.getValue();if((typeof(v)=='object')&&f.getRawValue){v=f.getRawValue();}
@@ -850,7 +851,7 @@ B.showPanel(B.getPanel(0));}},getLayout:function(){return this.layout;},addxtype
 this.tree.render();});this.on('resize',function(cp,w,h){this.tree.innerCt.setWidth(w);this.tree.innerCt.setHeight(h);this.tree.innerCt.setStyle('overflow-y','auto');});};Roo.extend(Roo.TreePanel,Roo.ContentPanel,{fitToFrame:true,autoScroll:true});
 Roo.ReaderLayout=function(A,B){var c=A||{size:{}};Roo.ReaderLayout.superclass.constructor.call(this,B||document.body,{north:c.north!==false?Roo.apply({split:false,initialSize:32,titlebar:false},c.north):false,west:c.west!==false?Roo.apply({split:true,initialSize:200,minSize:175,maxSize:400,titlebar:true,collapsible:true,animate:true,margins:{left:5,right:0,bottom:5,top:5},cmargins:{left:5,right:5,bottom:5,top:5}},c.west):false,east:c.east!==false?Roo.apply({split:true,initialSize:200,minSize:175,maxSize:400,titlebar:true,collapsible:true,animate:true,margins:{left:0,right:5,bottom:5,top:5},cmargins:{left:5,right:5,bottom:5,top:5}},c.east):false,center:Roo.apply({tabPosition:'top',autoScroll:false,closeOnTab:true,titlebar:false,margins:{left:c.west!==false?0:5,right:c.east!==false?0:5,bottom:5,top:2}},c.center)});this.el.addClass('x-reader');this.beginUpdate();var C=new Roo.BorderLayout(Roo.get(document.body).createChild(),{south:c.preview!==false?Roo.apply({split:true,initialSize:200,minSize:100,autoScroll:true,collapsible:true,titlebar:true,cmargins:{top:5,left:0,right:0,bottom:0}},c.preview):false,center:Roo.apply({autoScroll:false,titlebar:false,minHeight:200},c.listView)});this.add('center',new Roo.NestedLayoutPanel(C,Roo.apply({title:c.mainTitle||'',tabTip:''},c.innerPanelCfg)));this.endUpdate();this.regions.preview=C.getRegion('south');this.regions.listView=C.getRegion('center');};Roo.extend(Roo.ReaderLayout,Roo.BorderLayout);
 Roo.grid.Grid=function(A,B){this.container=Roo.get(A);this.container.update("");this.container.setStyle("overflow","hidden");this.container.addClass('x-grid-container');this.id=this.container.id;Roo.apply(this,B);if(this.ds){this.dataSource=this.ds;delete this.ds;}if(this.cm){this.colModel=this.cm;delete this.cm;}if(this.sm){this.selModel=this.sm;delete this.sm;}if(this.selModel){this.selModel=Roo.factory(this.selModel,Roo.grid);this.sm=this.selModel;this.sm.xmodule=this.xmodule||false;}if(typeof(this.colModel.config)=='undefined'){this.colModel=new Roo.grid.ColumnModel(this.colModel);this.cm=this.colModel;this.cm.xmodule=this.xmodule||false;}if(this.dataSource){this.dataSource=Roo.factory(this.dataSource,Roo.data);this.ds=this.dataSource;this.ds.xmodule=this.xmodule||false;}if(this.width){this.container.setWidth(this.width);}if(this.height){this.container.setHeight(this.height);}
-this.addEvents({"click":true,"dblclick":true,"contextmenu":true,"mousedown":true,"mouseup":true,"mouseover":true,"mouseout":true,"keypress":true,"keydown":true,"cellclick":true,"celldblclick":true,"rowclick":true,"rowdblclick":true,"headerclick":true,"headerdblclick":true,"rowcontextmenu":true,"cellcontextmenu":true,"headercontextmenu":true,"bodyscroll":true,"columnresize":true,"columnmove":true,"startdrag":true,"enddrag":true,"dragdrop":true,"dragover":true,"dragenter":true,"dragout":true,render:true});Roo.grid.Grid.superclass.constructor.call(this);};Roo.extend(Roo.grid.Grid,Roo.util.Observable,{minColumnWidth:25,autoSizeColumns:false,autoSizeHeaders:true,monitorWindowResize:true,maxRowsToMeasure:0,trackMouseOver:true,enableDragDrop:false,enableColumnMove:true,enableColumnHide:true,enableRowHeightSync:false,stripeRows:true,autoHeight:false,autoExpandColumn:false,autoExpandMin:50,autoExpandMax:1000,view:null,loadMask:false,dropTarget:false,rendered:false,render:function(){var c=this.container;if((!c.dom.offsetHeight||c.dom.offsetHeight<20)||c.getStyle("height")=="auto"){this.autoHeight=true;}var A=this.getView();A.init(this);c.on("click",this.onClick,this);c.on("dblclick",this.onDblClick,this);c.on("contextmenu",this.onContextMenu,this);c.on("keydown",this.onKeyDown,this);this.relayEvents(c,["mousedown","mouseup","mouseover","mouseout","keypress"]);this.getSelectionModel().init(this);A.render();if(this.loadMask){this.loadMask=new Roo.LoadMask(this.container,Roo.apply({store:this.dataSource},this.loadMask));}if(this.toolbar&&this.toolbar.xtype){this.toolbar.container=this.getView().getHeaderPanel(true);this.toolbar=new Ext.Toolbar(this.toolbar);}if(this.footer&&this.footer.xtype){this.footer.dataSource=this.getDataSource();this.footer.container=this.getView().getFooterPanel(true);this.footer=Roo.factory(this.footer,Roo);}if(this.dropTarget&&this.dropTarget.xtype){delete this.dropTarget.xtype;this.dropTarget=new Ext.dd.DropTarget(this.getView().mainBody,this.dropTarget);}
+this.addEvents({"click":true,"dblclick":true,"contextmenu":true,"mousedown":true,"mouseup":true,"mouseover":true,"mouseout":true,"keypress":true,"keydown":true,"cellclick":true,"celldblclick":true,"rowclick":true,"rowdblclick":true,"headerclick":true,"headerdblclick":true,"rowcontextmenu":true,"cellcontextmenu":true,"headercontextmenu":true,"bodyscroll":true,"columnresize":true,"columnmove":true,"startdrag":true,"enddrag":true,"dragdrop":true,"dragover":true,"dragenter":true,"dragout":true,'rowclass':true,'render':true});Roo.grid.Grid.superclass.constructor.call(this);};Roo.extend(Roo.grid.Grid,Roo.util.Observable,{minColumnWidth:25,autoSizeColumns:false,autoSizeHeaders:true,monitorWindowResize:true,maxRowsToMeasure:0,trackMouseOver:true,enableDragDrop:false,enableColumnMove:true,enableColumnHide:true,enableRowHeightSync:false,stripeRows:true,autoHeight:false,autoExpandColumn:false,autoExpandMin:50,autoExpandMax:1000,view:null,loadMask:false,dropTarget:false,rendered:false,render:function(){var c=this.container;if((!c.dom.offsetHeight||c.dom.offsetHeight<20)||c.getStyle("height")=="auto"){this.autoHeight=true;}var A=this.getView();A.init(this);c.on("click",this.onClick,this);c.on("dblclick",this.onDblClick,this);c.on("contextmenu",this.onContextMenu,this);c.on("keydown",this.onKeyDown,this);this.relayEvents(c,["mousedown","mouseup","mouseover","mouseout","keypress"]);this.getSelectionModel().init(this);A.render();if(this.loadMask){this.loadMask=new Roo.LoadMask(this.container,Roo.apply({store:this.dataSource},this.loadMask));}if(this.toolbar&&this.toolbar.xtype){this.toolbar.container=this.getView().getHeaderPanel(true);this.toolbar=new Ext.Toolbar(this.toolbar);}if(this.footer&&this.footer.xtype){this.footer.dataSource=this.getDataSource();this.footer.container=this.getView().getFooterPanel(true);this.footer=Roo.factory(this.footer,Roo);}if(this.dropTarget&&this.dropTarget.xtype){delete this.dropTarget.xtype;this.dropTarget=new Ext.dd.DropTarget(this.getView().mainBody,this.dropTarget);}
 this.rendered=true;this.fireEvent('render',this);return this;},reconfigure:function(A,B){if(this.loadMask){this.loadMask.destroy();this.loadMask=new Roo.LoadMask(this.container,Roo.apply({store:A},this.loadMask));}
 this.view.bind(A,B);this.dataSource=A;this.colModel=B;this.view.refresh(true);},onKeyDown:function(e){this.fireEvent("keydown",e);},destroy:function(A,B){if(this.loadMask){this.loadMask.destroy();}var c=this.container;c.removeAllListeners();this.view.destroy();this.colModel.purgeListeners();if(!B){this.purgeListeners();}
 c.update("");if(A===true){c.remove();}},processEvent:function(A,e){this.fireEvent(A,e);var t=e.getTarget();var v=this.view;var B=v.findHeaderIndex(t);if(B!==false){this.fireEvent("header"+A,this,B,e);}else {var C=v.findRowIndex(t);var D=v.findCellIndex(t);if(C!==false){this.fireEvent("row"+A,this,C,e);if(D!==false){this.fireEvent("cell"+A,this,C,D,e);}}}},onClick:function(e){this.processEvent("click",e);},onContextMenu:function(e,t){this.processEvent("contextmenu",e);},onDblClick:function(e){this.processEvent("dblclick",e);},walkCells:function(A,B,C,fn,D){var cm=this.colModel,E=cm.getColumnCount();var ds=this.dataSource,F=ds.getCount(),G=true;if(C<0){if(B<0){A--;G=false;}while(A>=0){if(!G){B=E-1;}
@@ -891,11 +892,13 @@ b.innerHTML="";b=null;},deleteRows:function(dm,A,B){if(dm.getRowCount()<1){this.
 this.stripeRows(A);this.fireEvent("rowsdeleted",this,A,B);}},updateRows:function(A,B,C){var s=this.getScrollState();this.refresh();this.restoreScroll(s);},handleSort:function(A,B,C,D){if(!D){this.refresh();}
 this.updateHeaderSortState();},getScrollState:function(){var sb=this.scroller.dom;return {left:sb.scrollLeft,top:sb.scrollTop};},stripeRows:function(A){if(!this.grid.stripeRows||this.ds.getCount()<1){return;}
 A=A||0;var B=this.getBodyTable().rows;var C=this.getLockedTable().rows;var D=' x-grid-row-alt ';for(var i=A,E=B.length;i<E;i++){var F=B[i],G=C[i];var H=((i+1)%2==0);var I=(' '+F.className+' ').indexOf(D)!=-1;if(H==I){continue;}if(H){F.className+=" x-grid-row-alt";}else {F.className=F.className.replace("x-grid-row-alt","");}if(G){G.className=F.className;}}},restoreScroll:function(A){var sb=this.scroller.dom;sb.scrollLeft=A.left;sb.scrollTop=A.top;this.syncScroll();},syncScroll:function(){var sb=this.scroller.dom;var sh=this.mainHd.dom;var bs=this.mainBody.dom;var lv=this.lockedBody.dom;sh.scrollLeft=bs.scrollLeft=sb.scrollLeft;lv.scrollTop=bs.scrollTop=sb.scrollTop;},handleScroll:function(e){this.syncScroll();var sb=this.scroller.dom;this.grid.fireEvent("bodyscroll",sb.scrollLeft,sb.scrollTop);e.stopEvent();},handleWheel:function(e){var d=e.getWheelDelta();this.scroller.dom.scrollTop-=d*22;this.lockedBody.dom.scrollTop=this.mainBody.dom.scrollTop=this.scroller.dom.scrollTop;e.stopEvent();},renderRows:function(A,B){var g=this.grid,cm=g.colModel,ds=g.dataSource,C=g.stripeRows;var D=cm.getColumnCount();if(ds.getCount()<1){return ["",""];}var cs=[];for(var i=0;i<D;i++){var E=cm.getDataIndex(i);cs[i]={name:typeof E=='undefined'?ds.fields.get(i).name:E,renderer:cm.getRenderer(i),id:cm.getColumnId(i),locked:cm.isLocked(i)};}
-A=A||0;B=typeof B=="undefined"?ds.getCount()-1:B;var rs=ds.getRange(A,B);return this.doRender(cs,rs,ds,A,D,C);},doRender:Roo.isGecko?function(cs,rs,ds,A,B,C){var ts=this.templates,ct=ts.cell,rt=ts.row;var D="",E="",cb,F,c,p={},rp={},r,G;for(var j=0,H=rs.length;j<H;j++){r=rs[j];cb="";F="";G=(j+A);for(var i=0;i<B;i++){c=cs[i];p.cellId="x-grid-cell-"+G+"-"+i;p.id=c.id;p.css=p.attr="";p.value=c.renderer(r.data[c.name],p,r,G,i,ds);if(p.value==undefined||p.value==="")p.value="&#160;";if(r.dirty&&typeof r.modified[c.name]!=='undefined'){p.css+=p.css?' x-grid-dirty-cell':'x-grid-dirty-cell';}var I=ct.apply(p);if(!c.locked){cb+=I;}else {F+=I;}}var J=[];if(C&&((G+1)%2==0)){J[0]="x-grid-row-alt";}if(r.dirty){J[1]=" x-grid-dirty-row";}
-rp.cells=F;if(this.getRowClass){J[2]=this.getRowClass(r,G);}
-rp.alt=J.join(" ");E+=rt.apply(rp);rp.cells=cb;D+=rt.apply(rp);}return [E,D];}:function(cs,rs,ds,A,B,C){var ts=this.templates,ct=ts.cell,rt=ts.row;var D=[],E=[],cb,F,c,p={},rp={},r,G;for(var j=0,H=rs.length;j<H;j++){r=rs[j];cb=[];F=[];G=(j+A);for(var i=0;i<B;i++){c=cs[i];p.cellId="x-grid-cell-"+G+"-"+i;p.id=c.id;p.css=p.attr="";p.value=c.renderer(r.data[c.name],p,r,G,i,ds);if(p.value==undefined||p.value==="")p.value="&#160;";if(r.dirty&&typeof r.modified[c.name]!=='undefined'){p.css+=p.css?' x-grid-dirty-cell':'x-grid-dirty-cell';}var I=ct.apply(p);if(!c.locked){cb[cb.length]=I;}else {F[F.length]=I;}}var J=[];if(C&&((G+1)%2==0)){J[0]="x-grid-row-alt";}if(r.dirty){J[1]=" x-grid-dirty-row";}
-rp.cells=F;if(this.getRowClass){J[2]=this.getRowClass(r,G);}
-rp.alt=J.join(" ");rp.cells=F.join("");E[E.length]=rt.apply(rp);rp.cells=cb.join("");D[D.length]=rt.apply(rp);}return [E.join(""),D.join("")];},renderBody:function(){var A=this.renderRows();var bt=this.templates.body;return [bt.apply({rows:A[0]}),bt.apply({rows:A[1]})];},refresh:function(A){this.fireEvent("beforerefresh",this);this.grid.stopEditing();var B=this.renderBody();this.lockedBody.update(B[0]);this.mainBody.update(B[1]);if(A===true){this.updateHeaders();this.updateColumns();this.updateSplitters();this.updateHeaderSortState();}
+A=A||0;B=typeof B=="undefined"?ds.getCount()-1:B;var rs=ds.getRange(A,B);return this.doRender(cs,rs,ds,A,D,C);},doRender:Roo.isGecko?function(cs,rs,ds,A,B,C){var ts=this.templates,ct=ts.cell,rt=ts.row;var D="",E="",cb,F,c,p={},rp={},r,G;var H=this.grid.hasListener('rowclass');var I={};for(var j=0,J=rs.length;j<J;j++){r=rs[j];cb="";F="";G=(j+A);for(var i=0;i<B;i++){c=cs[i];p.cellId="x-grid-cell-"+G+"-"+i;p.id=c.id;p.css=p.attr="";p.value=c.renderer(r.data[c.name],p,r,G,i,ds);if(p.value==undefined||p.value==="")p.value="&#160;";if(r.dirty&&typeof r.modified[c.name]!=='undefined'){p.css+=p.css?' x-grid-dirty-cell':'x-grid-dirty-cell';}var K=ct.apply(p);if(!c.locked){cb+=K;}else {F+=K;}}var L=[];if(C&&((G+1)%2==0)){L.push("x-grid-row-alt")}if(r.dirty){L.push(" x-grid-dirty-row");}
+rp.cells=F;if(this.getRowClass){L.push(this.getRowClass(r,G));}if(H){I={record:r,rowIndex:G,rowClass:''}
+this.grid.fireEvent('rowclass',this,I);L.push(I.rowClass);}
+rp.alt=L.join(" ");E+=rt.apply(rp);rp.cells=cb;D+=rt.apply(rp);}return [E,D];}:function(cs,rs,ds,A,B,C){var ts=this.templates,ct=ts.cell,rt=ts.row;var D=[],E=[],cb,F,c,p={},rp={},r,G;var H=this.grid.hasListener('rowclass');var I={};for(var j=0,J=rs.length;j<J;j++){r=rs[j];cb=[];F=[];G=(j+A);for(var i=0;i<B;i++){c=cs[i];p.cellId="x-grid-cell-"+G+"-"+i;p.id=c.id;p.css=p.attr="";p.value=c.renderer(r.data[c.name],p,r,G,i,ds);if(p.value==undefined||p.value==="")p.value="&#160;";if(r.dirty&&typeof r.modified[c.name]!=='undefined'){p.css+=p.css?' x-grid-dirty-cell':'x-grid-dirty-cell';}var K=ct.apply(p);if(!c.locked){cb[cb.length]=K;}else {F[F.length]=K;}}var L=[];if(C&&((G+1)%2==0)){L.push("x-grid-row-alt");}if(r.dirty){L.push(" x-grid-dirty-row");}
+rp.cells=F;if(this.getRowClass){L.push(this.getRowClass(r,G));}if(H){I={record:r,rowIndex:G,rowClass:''}
+this.grid.fireEvent('rowclass',this,I);L.push(I.rowClass);}
+rp.alt=L.join(" ");rp.cells=F.join("");E[E.length]=rt.apply(rp);rp.cells=cb.join("");D[D.length]=rt.apply(rp);}return [E.join(""),D.join("")];},renderBody:function(){var A=this.renderRows();var bt=this.templates.body;return [bt.apply({rows:A[0]}),bt.apply({rows:A[1]})];},refresh:function(A){this.fireEvent("beforerefresh",this);this.grid.stopEditing();var B=this.renderBody();this.lockedBody.update(B[0]);this.mainBody.update(B[1]);if(A===true){this.updateHeaders();this.updateColumns();this.updateSplitters();this.updateHeaderSortState();}
 this.syncRowHeights();this.layout();this.fireEvent("refresh",this);},handleColumnMove:function(cm,A,B){this.indexMap=null;var s=this.getScrollState();this.refresh(true);this.restoreScroll(s);this.afterMove(B);},afterMove:function(A){if(this.enableMoveAnim&&Roo.enableFx){this.fly(this.getHeaderCell(A).firstChild).highlight(this.hlColor);}},updateCell:function(dm,A,B){var C=this.getColumnIndexByDataIndex(B);if(typeof C=="undefined"){return;}var cm=this.grid.colModel;var D=this.getCell(A,C);var E=this.getCellText(A,C);var p={cellId:"x-grid-cell-"+A+"-"+C,id:cm.getColumnId(C),css:C==cm.getColumnCount()-1?"x-grid-col-last":""};var F=cm.getRenderer(C);var G=F(dm.getValueAt(A,B),p,A,C,dm);if(typeof G=="undefined"||G==="")G="&#160;";E.innerHTML=G;D.className=this.cellClass+" "+this.idToCssName(p.cellId)+" "+p.css;this.syncRowHeights(A,A);},calcColumnWidth:function(A,B){var C=0;if(this.grid.autoSizeHeaders){var h=this.getHeaderCellMeasure(A);C=Math.max(C,h.scrollWidth);}var tb,D;if(this.cm.isLocked(A)){tb=this.getLockedTable();D=A;}else {tb=this.getBodyTable();D=A-this.cm.getLockedCount();}if(tb&&tb.rows){var E=tb.rows;var F=Math.min(B||E.length,E.length);for(var i=0;i<F;i++){var G=E[i].childNodes[D].firstChild;C=Math.max(C,G.scrollWidth);}}return C+5;},autoSizeColumn:function(A,B,C){if(this.cm.isHidden(A)){return;}if(B){var D=this.cm.getColumnId(A);this.css.updateRule(this.colSelector+this.idToCssName(D),"width",this.grid.minColumnWidth+"px");if(this.grid.autoSizeHeaders){this.css.updateRule(this.hdSelector+this.idToCssName(D),"width",this.grid.minColumnWidth+"px");}}var E=this.calcColumnWidth(A);this.cm.setColumnWidth(A,Math.max(this.grid.minColumnWidth,E),C);if(!C){this.grid.fireEvent("columnresize",A,E);}},autoSizeColumns:function(){var cm=this.grid.colModel;var A=cm.getColumnCount();for(var i=0;i<A;i++){this.autoSizeColumn(i,true,true);}if(cm.getTotalWidth()<this.scroller.dom.clientWidth){this.fitColumns();}else {this.updateColumns();this.layout();}},fitColumns:function(A){var cm=this.grid.colModel;var B=cm.getColumnCount();var C=[];var D=0;var i,w;for(i=0;i<B;i++){if(!cm.isHidden(i)&&!cm.isFixed(i)){w=cm.getColumnWidth(i);C.push(i);C.push(w);D+=w;}}var E=Math.min(this.scroller.dom.clientWidth,this.el.getWidth());if(A){E-=17;}var F=(E-cm.getTotalWidth())/D;while(C.length){w=C.pop();i=C.pop();cm.setColumnWidth(i,Math.floor(w+w*F),true);}
 this.updateColumns();this.layout();},onRowSelect:function(A){var B=this.getRowComposite(A);B.addClass("x-grid-row-selected");},onRowDeselect:function(A){var B=this.getRowComposite(A);B.removeClass("x-grid-row-selected");},onCellSelect:function(A,B){var C=this.getCell(A,B);if(C){Roo.fly(C).addClass("x-grid-cell-selected");}},onCellDeselect:function(A,B){var C=this.getCell(A,B);if(C){Roo.fly(C).removeClass("x-grid-cell-selected");}},updateHeaderSortState:function(){var A=this.ds.getSortState();if(!A){return;}
 this.sortState=A;var B=this.cm.findColumnIndex(A.field);if(B!=-1){var C=A.direction;var sc=this.sortClasses;var D=this.el.select(this.headerSelector).removeClass(sc);D.item(B).addClass(sc[C=="DESC"?1:0]);}},handleHeaderClick:function(g,A){if(this.headersDisabled){return;}var dm=g.dataSource,cm=g.colModel;if(!cm.isSortable(A)){return;}
index 1d721af..b091f14 100644 (file)
@@ -567,7 +567,23 @@ Roo.factory(conf, Roo.data);
          * you may want to set this to true.
          * @type Boolean
          */
-        useShims : ((isIE && !isIE7) || (isGecko && isMac))
+        useShims : ((isIE && !isIE7) || (isGecko && isMac)),
+        
+        
+                
+        /**
+         * Selects a single element as a Roo Element
+         * This is about as close as you can get to jQuery's $('do crazy stuff')
+         * @param {String} selector The selector/xpath query
+         * @param {Node} root (optional) The start of the query (defaults to document).
+         * @return {Roo.Element}
+         */
+        selectNode : function(selector, root) 
+        {
+            var node = Roo.DomQuery.selectNode(selector,root);
+            return node ? Roo.get(node) : new Roo.Element(false);
+        }
+        
     });
 
 
@@ -7805,7 +7821,9 @@ if(opt.anim.isAnimated()){
          * @param {Object}   options   (optional)An object with standard {@link Roo.EventManager#addListener} options
          */
         addListener : function(eventName, fn, scope, options){
-            Roo.EventManager.on(this.dom,  eventName, fn, scope || this, options);
+            if (this.dom) {
+                Roo.EventManager.on(this.dom,  eventName, fn, scope || this, options);
+            }
         },
 
         /**
index f5530bc..e9859a0 100644 (file)
@@ -6,7 +6,7 @@ sb.override=function(o){Roo.override(sb,o);};N.override=io;Roo.override(sb,M);re
 ns=c.xns?c.xns:ns;if(c.constructor==ns[c.xtype]){return c;}if(ns[c.xtype]){if(Roo.debug)Roo.log("Roo.Factory("+c.xtype+")");var M=new ns[c.xtype](c);M.xns=false;return M;}
 c.xns=false;return c;},log:function(s){if((typeof(console)=='undefined')||(typeof(console.log)=='undefined')){return;}
 console.log(s);},urlEncode:function(o){if(!o){return "";}var M=[];for(var N in o){var ov=o[N],k=encodeURIComponent(N);var O=typeof ov;if(O=='undefined'){M.push(k,"=&");}else if(O!="function"&&O!="object"){M.push(k,"=",encodeURIComponent(ov),"&");}else if(ov instanceof Array){if(ov.length){for(var i=0,P=ov.length;i<P;i++){M.push(k,"=",encodeURIComponent(ov[i]===undefined?'':ov[i]),"&");}}else {M.push(k,"=&");}}}
-M.pop();return M.join("");},urlDecode:function(M,N){if(!M||!M.length){return {};}var O={};var P=M.split('&');var Q,R,S;for(var i=0,T=P.length;i<T;i++){Q=P[i].split('=');R=decodeURIComponent(Q[0]);S=decodeURIComponent(Q[1]);if(N!==true){if(typeof O[R]=="undefined"){O[R]=S;}else if(typeof O[R]=="string"){O[R]=[O[R]];O[R].push(S);}else {O[R].push(S);}}else {O[R]=S;}}return O;},each:function(M,fn,N){if(typeof M.length=="undefined"||typeof M=="string"){M=[M];}for(var i=0,O=M.length;i<O;i++){if(fn.call(N||M[i],M[i],i,M)===false){return i;};}},combine:function(){var as=arguments,l=as.length,r=[];for(var i=0;i<l;i++){var a=as[i];if(a instanceof Array){r=r.concat(a);}else if(a.length!==undefined&&!a.substr){r=r.concat(Array.prototype.slice.call(a,0));}else {r.push(a);}}return r;},escapeRe:function(s){return s.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1");},callback:function(cb,M,N,O){if(typeof cb=="function"){if(O){cb.defer(O,M,N||[]);}else {cb.apply(M,N||[]);}}},getDom:function(el){if(!el){return null;}return el.dom?el.dom:(typeof el=='string'?document.getElementById(el):el);},getCmp:function(id){return Roo.ComponentMgr.get(id);},num:function(v,M){if(typeof v!='number'){return M;}return v;},destroy:function(){for(var i=0,a=arguments,M=a.length;i<M;i++){var as=a[i];if(as){if(as.dom){as.removeAllListeners();as.remove();continue;}if(typeof as.purgeListeners=='function'){as.purgeListeners();}if(typeof as.destroy=='function'){as.destroy();}}}},type:function(o){if(o===undefined||o===null){return false;}if(o.htmlElement){return 'element';}var t=typeof o;if(t=='object'&&o.nodeName){switch(o.nodeType){case 1:return 'element';case 3:return (/\S/).test(o.nodeValue)?'textnode':'whitespace';}}if(t=='object'||t=='function'){switch(o.constructor){case Array:return 'array';case RegExp:return 'regexp';}if(typeof o.length=='number'&&typeof o.item=='function'){return 'nodelist';}}return t;},isEmpty:function(v,M){return v===null||v===undefined||(!M?v==='':false);},isOpera:C,isSafari:D,isIE:E,isIE7:F,isGecko:G,isBorderBox:H,isWindows:I,isLinux:K,isMac:J,useShims:((E&&!F)||(G&&J))});})();Roo.namespace("Roo","Roo.util","Roo.grid","Roo.dd","Roo.tree","Roo.data","Roo.form","Roo.menu","Roo.state","Roo.lib","Roo.layout","Roo.app","Roo.ux");
+M.pop();return M.join("");},urlDecode:function(M,N){if(!M||!M.length){return {};}var O={};var P=M.split('&');var Q,R,S;for(var i=0,T=P.length;i<T;i++){Q=P[i].split('=');R=decodeURIComponent(Q[0]);S=decodeURIComponent(Q[1]);if(N!==true){if(typeof O[R]=="undefined"){O[R]=S;}else if(typeof O[R]=="string"){O[R]=[O[R]];O[R].push(S);}else {O[R].push(S);}}else {O[R]=S;}}return O;},each:function(M,fn,N){if(typeof M.length=="undefined"||typeof M=="string"){M=[M];}for(var i=0,O=M.length;i<O;i++){if(fn.call(N||M[i],M[i],i,M)===false){return i;};}},combine:function(){var as=arguments,l=as.length,r=[];for(var i=0;i<l;i++){var a=as[i];if(a instanceof Array){r=r.concat(a);}else if(a.length!==undefined&&!a.substr){r=r.concat(Array.prototype.slice.call(a,0));}else {r.push(a);}}return r;},escapeRe:function(s){return s.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1");},callback:function(cb,M,N,O){if(typeof cb=="function"){if(O){cb.defer(O,M,N||[]);}else {cb.apply(M,N||[]);}}},getDom:function(el){if(!el){return null;}return el.dom?el.dom:(typeof el=='string'?document.getElementById(el):el);},getCmp:function(id){return Roo.ComponentMgr.get(id);},num:function(v,M){if(typeof v!='number'){return M;}return v;},destroy:function(){for(var i=0,a=arguments,M=a.length;i<M;i++){var as=a[i];if(as){if(as.dom){as.removeAllListeners();as.remove();continue;}if(typeof as.purgeListeners=='function'){as.purgeListeners();}if(typeof as.destroy=='function'){as.destroy();}}}},type:function(o){if(o===undefined||o===null){return false;}if(o.htmlElement){return 'element';}var t=typeof o;if(t=='object'&&o.nodeName){switch(o.nodeType){case 1:return 'element';case 3:return (/\S/).test(o.nodeValue)?'textnode':'whitespace';}}if(t=='object'||t=='function'){switch(o.constructor){case Array:return 'array';case RegExp:return 'regexp';}if(typeof o.length=='number'&&typeof o.item=='function'){return 'nodelist';}}return t;},isEmpty:function(v,M){return v===null||v===undefined||(!M?v==='':false);},isOpera:C,isSafari:D,isIE:E,isIE7:F,isGecko:G,isBorderBox:H,isWindows:I,isLinux:K,isMac:J,useShims:((E&&!F)||(G&&J)),selectNode:function(M,N){var O=Roo.DomQuery.selectNode(M,N);return O?Roo.get(O):new Roo.Element(false);}});})();Roo.namespace("Roo","Roo.util","Roo.grid","Roo.dd","Roo.tree","Roo.data","Roo.form","Roo.menu","Roo.state","Roo.lib","Roo.layout","Roo.app","Roo.ux");
 (function(){if(Roo.isIE){function fnCleanUp(){var p=Function.prototype;delete p.createSequence;delete p.defer;delete p.createDelegate;delete p.createCallback;delete p.createInterceptor;window.detachEvent("onunload",fnCleanUp);}
 window.attachEvent("onunload",fnCleanUp);}})();Roo.apply(Function.prototype,{createCallback:function(){var A=arguments;var B=this;return function(){return B.apply(window,A);};},createDelegate:function(A,B,C){var D=this;return function(){var E=B||arguments;if(C===true){E=Array.prototype.slice.call(arguments,0);E=E.concat(B);}else if(typeof C=="number"){E=Array.prototype.slice.call(arguments,0);var F=[C,0].concat(B);Array.prototype.splice.apply(E,F);}return D.apply(A||window,E);};},defer:function(A,B,C,D){var fn=this.createDelegate(B,C,D);if(A){return setTimeout(fn,A);}
 fn();return 0;},createSequence:function(A,B){if(typeof A!="function"){return this;}var C=this;return function(){var D=C.apply(this||window,arguments);A.apply(B||this||window,arguments);return D;};},createInterceptor:function(A,B){if(typeof A!="function"){return this;}var C=this;return function(){A.target=this;A.method=C;if(A.apply(B||this||window,arguments)===false){return;}return C.apply(this||window,arguments);};}});
@@ -133,7 +133,7 @@ Roo.get(L).setOpacity(1);}});}return this;},isDisplayed:function(){return this.g
 this.setStyle("display",J);return this;},focus:function(){try{this.dom.focus();}catch(e){}return this;},blur:function(){try{this.dom.blur();}catch(e){}return this;},addClass:function(J){if(J instanceof Array){for(var i=0,K=J.length;i<K;i++){this.addClass(J[i]);}}else {if(J&&!this.hasClass(J)){this.dom.className=this.dom.className+" "+J;}}return this;},radioClass:function(J){var K=this.dom.parentNode.childNodes;for(var i=0;i<K.length;i++){var s=K[i];if(s.nodeType==1){Roo.get(s).removeClass(J);}}
 this.addClass(J);return this;},removeClass:function(J){if(!J||!this.dom.className){return this;}if(J instanceof Array){for(var i=0,K=J.length;i<K;i++){this.removeClass(J[i]);}}else {if(this.hasClass(J)){var re=this.classReCache[J];if(!re){re=new RegExp('(?:^|\\s+)'+J+'(?:\\s+|$)',"g");this.classReCache[J]=re;}
 this.dom.className=this.dom.className.replace(re," ");}}return this;},classReCache:{},toggleClass:function(J){if(this.hasClass(J)){this.removeClass(J);}else {this.addClass(J);}return this;},hasClass:function(J){return J&&(' '+this.dom.className+' ').indexOf(' '+J+' ')!=-1;},replaceClass:function(J,K){this.removeClass(J);this.addClass(K);return this;},getStyles:function(){var a=arguments,J=a.length,r={};for(var i=0;i<J;i++){r[a[i]]=this.getStyle(a[i]);}return r;},getStyle:function(){return G&&G.getComputedStyle?function(J){var el=this.dom,v,cs,K;if(J=='float'){J="cssFloat";}if(el.style&&(v=el.style[J])){return v;}if(cs=G.getComputedStyle(el,"")){if(!(K=B[J])){K=B[J]=J.replace(C,F);}return cs[K];}return null;}:function(J){var el=this.dom,v,cs,K;if(J=='opacity'){if(typeof el.style.filter=='string'){var m=el.style.filter.match(/alpha\(opacity=(.*)\)/i);if(m){var fv=parseFloat(m[1]);if(!isNaN(fv)){return fv?fv/100:0;}}}return 1;}else if(J=='float'){J="styleFloat";}if(!(K=B[J])){K=B[J]=J.replace(C,F);}if(v=el.style[K]){return v;}if(cs=el.currentStyle){return cs[K];}return null;};}(),setStyle:function(J,K){if(typeof J=="string"){if(J=='float'){this.setStyle(Roo.isIE?'styleFloat':'cssFloat',K);return this;}var L;if(!(L=B[J])){L=B[J]=J.replace(C,F);}if(L=='opacity'){this.setOpacity(K);}else {this.dom.style[L]=K;}}else {for(var M in J){if(typeof J[M]!="function"){this.setStyle(M,J[M]);}}}return this;},applyStyles:function(J){Roo.DomHelper.applyStyles(this.dom,J);return this;},getX:function(){return D.getX(this.dom);},getY:function(){return D.getY(this.dom);},getXY:function(){return D.getXY(this.dom);},setX:function(x,J){if(!J||!A){D.setX(this.dom,x);}else {this.setXY([x,this.getY()],this.preanim(arguments,1));}return this;},setY:function(y,J){if(!J||!A){D.setY(this.dom,y);}else {this.setXY([this.getX(),y],this.preanim(arguments,1));}return this;},setLeft:function(J){this.setStyle("left",this.addUnits(J));return this;},setTop:function(J){this.setStyle("top",this.addUnits(J));return this;},setRight:function(J){this.setStyle("right",this.addUnits(J));return this;},setBottom:function(J){this.setStyle("bottom",this.addUnits(J));return this;},setXY:function(J,K){if(!K||!A){D.setXY(this.dom,J);}else {this.anim({points:{to:J}},this.preanim(arguments,1),'motion');}return this;},setLocation:function(x,y,J){this.setXY([x,y],this.preanim(arguments,2));return this;},moveTo:function(x,y,J){this.setXY([x,y],this.preanim(arguments,2));return this;},getRegion:function(){return D.getRegion(this.dom);},getHeight:function(J){var h=this.dom.offsetHeight||0;return J!==true?h:h-this.getBorderWidth("tb")-this.getPadding("tb");},getWidth:function(J){var w=this.dom.offsetWidth||0;return J!==true?w:w-this.getBorderWidth("lr")-this.getPadding("lr");},getComputedHeight:function(){var h=Math.max(this.dom.offsetHeight,this.dom.clientHeight);if(!h){h=parseInt(this.getStyle('height'),10)||0;if(!this.isBorderBox()){h+=this.getFrameWidth('tb');}}return h;},getComputedWidth:function(){var w=Math.max(this.dom.offsetWidth,this.dom.clientWidth);if(!w){w=parseInt(this.getStyle('width'),10)||0;if(!this.isBorderBox()){w+=this.getFrameWidth('lr');}}return w;},getSize:function(J){return {width:this.getWidth(J),height:this.getHeight(J)};},getViewSize:function(){var d=this.dom,J=document,aw=0,ah=0;if(d==J||d==J.body){return {width:D.getViewWidth(),height:D.getViewHeight()};}else {return {width:d.clientWidth,height:d.clientHeight};}},getValue:function(J){return J?parseInt(this.dom.value,10):this.dom.value;},adjustWidth:function(J){if(typeof J=="number"){if(this.autoBoxAdjust&&!this.isBorderBox()){J-=(this.getBorderWidth("lr")+this.getPadding("lr"));}if(J<0){J=0;}}return J;},adjustHeight:function(J){if(typeof J=="number"){if(this.autoBoxAdjust&&!this.isBorderBox()){J-=(this.getBorderWidth("tb")+this.getPadding("tb"));}if(J<0){J=0;}}return J;},setWidth:function(J,K){J=this.adjustWidth(J);if(!K||!A){this.dom.style.width=this.addUnits(J);}else {this.anim({width:{to:J}},this.preanim(arguments,1));}return this;},setHeight:function(J,K){J=this.adjustHeight(J);if(!K||!A){this.dom.style.height=this.addUnits(J);}else {this.anim({height:{to:J}},this.preanim(arguments,1));}return this;},setSize:function(J,K,L){if(typeof J=="object"){K=J.height;J=J.width;}
-J=this.adjustWidth(J);K=this.adjustHeight(K);if(!L||!A){this.dom.style.width=this.addUnits(J);this.dom.style.height=this.addUnits(K);}else {this.anim({width:{to:J},height:{to:K}},this.preanim(arguments,2));}return this;},setBounds:function(x,y,J,K,L){if(!L||!A){this.setSize(J,K);this.setLocation(x,y);}else {J=this.adjustWidth(J);K=this.adjustHeight(K);this.anim({points:{to:[x,y]},width:{to:J},height:{to:K}},this.preanim(arguments,4),'motion');}return this;},setRegion:function(J,K){this.setBounds(J.left,J.top,J.right-J.left,J.bottom-J.top,this.preanim(arguments,1));return this;},addListener:function(J,fn,K,L){Roo.EventManager.on(this.dom,J,fn,K||this,L);},removeListener:function(J,fn){Roo.EventManager.removeListener(this.dom,J,fn);return this;},removeAllListeners:function(){E.purgeElement(this.dom);return this;},relayEvent:function(J,K){this.on(J,function(e){K.fireEvent(J,e);});},setOpacity:function(J,K){if(!K||!A){var s=this.dom.style;if(Roo.isIE){s.zoom=1;s.filter=(s.filter||'').replace(/alpha\([^\)]*\)/gi,"")+(J==1?"":"alpha(opacity="+J*100+")");}else {s.opacity=J;}}else {this.anim({opacity:{to:J}},this.preanim(arguments,1),null,.35,'easeIn');}return this;},getLeft:function(J){if(!J){return this.getX();}else {return parseInt(this.getStyle("left"),10)||0;}},getRight:function(J){if(!J){return this.getX()+this.getWidth();}else {return (this.getLeft(true)+this.getWidth())||0;}},getTop:function(J){if(!J){return this.getY();}else {return parseInt(this.getStyle("top"),10)||0;}},getBottom:function(J){if(!J){return this.getY()+this.getHeight();}else {return (this.getTop(true)+this.getHeight())||0;}},position:function(J,K,x,y){if(!J){if(this.getStyle('position')=='static'){this.setStyle('position','relative');}}else {this.setStyle("position",J);}if(K){this.setStyle("z-index",K);}if(x!==undefined&&y!==undefined){this.setXY([x,y]);}else if(x!==undefined){this.setX(x);}else if(y!==undefined){this.setY(y);}},clearPositioning:function(J){J=J||'';this.setStyle({"left":J,"right":J,"top":J,"bottom":J,"z-index":"","position":"static"});return this;},getPositioning:function(){var l=this.getStyle("left");var t=this.getStyle("top");return {"position":this.getStyle("position"),"left":l,"right":l?"":this.getStyle("right"),"top":t,"bottom":t?"":this.getStyle("bottom"),"z-index":this.getStyle("z-index")};},getBorderWidth:function(J){return this.addStyles(J,El.borders);},getPadding:function(J){return this.addStyles(J,El.paddings);},setPositioning:function(pc){this.applyStyles(pc);if(pc.right=="auto"){this.dom.style.right="";}if(pc.bottom=="auto"){this.dom.style.bottom="";}return this;},fixDisplay:function(){if(this.getStyle("display")=="none"){this.setStyle("visibility","hidden");this.setStyle("display",this.originalDisplay);if(this.getStyle("display")=="none"){this.setStyle("display","block");}}},setLeftTop:function(J,K){this.dom.style.left=this.addUnits(J);this.dom.style.top=this.addUnits(K);return this;},move:function(J,K,L){var xy=this.getXY();J=J.toLowerCase();switch(J){case "l":case "left":this.moveTo(xy[0]-K,xy[1],this.preanim(arguments,2));break;case "r":case "right":this.moveTo(xy[0]+K,xy[1],this.preanim(arguments,2));break;case "t":case "top":case "up":this.moveTo(xy[0],xy[1]-K,this.preanim(arguments,2));break;case "b":case "bottom":case "down":this.moveTo(xy[0],xy[1]+K,this.preanim(arguments,2));break;}return this;},clip:function(){if(!this.isClipped){this.isClipped=true;this.originalClip={"o":this.getStyle("overflow"),"x":this.getStyle("overflow-x"),"y":this.getStyle("overflow-y")};this.setStyle("overflow","hidden");this.setStyle("overflow-x","hidden");this.setStyle("overflow-y","hidden");}return this;},unclip:function(){if(this.isClipped){this.isClipped=false;var o=this.originalClip;if(o.o){this.setStyle("overflow",o.o);}if(o.x){this.setStyle("overflow-x",o.x);}if(o.y){this.setStyle("overflow-y",o.y);}}return this;},getAnchorXY:function(J,K,s){var w,h,vp=false;if(!s){var d=this.dom;if(d==document.body||d==document){vp=true;w=D.getViewWidth();h=D.getViewHeight();}else {w=this.getWidth();h=this.getHeight();}}else {w=s.width;h=s.height;}var x=0,y=0,r=Math.round;switch((J||"tl").toLowerCase()){case "c":x=r(w*.5);y=r(h*.5);break;case "t":x=r(w*.5);y=0;break;case "l":x=0;y=r(h*.5);break;case "r":x=w;y=r(h*.5);break;case "b":x=r(w*.5);y=h;break;case "tl":x=0;y=0;break;case "bl":x=0;y=h;break;case "br":x=w;y=h;break;case "tr":x=w;y=0;break;}if(K===true){return [x,y];}if(vp){var sc=this.getScroll();return [x+sc.left,y+sc.top];}var o=this.getXY();return [x+o[0],y+o[1]];},getAlignToXY:function(el,p,o){el=Roo.get(el);var d=this.dom;if(!el.dom){throw "Element.alignTo with an element that doesn't exist";}var c=false;var p1="",p2="";o=o||[0,0];if(!p){p="tl-bl";}else if(p=="?"){p="tl-bl?";}else if(p.indexOf("-")==-1){p="tl-"+p;}
+J=this.adjustWidth(J);K=this.adjustHeight(K);if(!L||!A){this.dom.style.width=this.addUnits(J);this.dom.style.height=this.addUnits(K);}else {this.anim({width:{to:J},height:{to:K}},this.preanim(arguments,2));}return this;},setBounds:function(x,y,J,K,L){if(!L||!A){this.setSize(J,K);this.setLocation(x,y);}else {J=this.adjustWidth(J);K=this.adjustHeight(K);this.anim({points:{to:[x,y]},width:{to:J},height:{to:K}},this.preanim(arguments,4),'motion');}return this;},setRegion:function(J,K){this.setBounds(J.left,J.top,J.right-J.left,J.bottom-J.top,this.preanim(arguments,1));return this;},addListener:function(J,fn,K,L){if(this.dom){Roo.EventManager.on(this.dom,J,fn,K||this,L);}},removeListener:function(J,fn){Roo.EventManager.removeListener(this.dom,J,fn);return this;},removeAllListeners:function(){E.purgeElement(this.dom);return this;},relayEvent:function(J,K){this.on(J,function(e){K.fireEvent(J,e);});},setOpacity:function(J,K){if(!K||!A){var s=this.dom.style;if(Roo.isIE){s.zoom=1;s.filter=(s.filter||'').replace(/alpha\([^\)]*\)/gi,"")+(J==1?"":"alpha(opacity="+J*100+")");}else {s.opacity=J;}}else {this.anim({opacity:{to:J}},this.preanim(arguments,1),null,.35,'easeIn');}return this;},getLeft:function(J){if(!J){return this.getX();}else {return parseInt(this.getStyle("left"),10)||0;}},getRight:function(J){if(!J){return this.getX()+this.getWidth();}else {return (this.getLeft(true)+this.getWidth())||0;}},getTop:function(J){if(!J){return this.getY();}else {return parseInt(this.getStyle("top"),10)||0;}},getBottom:function(J){if(!J){return this.getY()+this.getHeight();}else {return (this.getTop(true)+this.getHeight())||0;}},position:function(J,K,x,y){if(!J){if(this.getStyle('position')=='static'){this.setStyle('position','relative');}}else {this.setStyle("position",J);}if(K){this.setStyle("z-index",K);}if(x!==undefined&&y!==undefined){this.setXY([x,y]);}else if(x!==undefined){this.setX(x);}else if(y!==undefined){this.setY(y);}},clearPositioning:function(J){J=J||'';this.setStyle({"left":J,"right":J,"top":J,"bottom":J,"z-index":"","position":"static"});return this;},getPositioning:function(){var l=this.getStyle("left");var t=this.getStyle("top");return {"position":this.getStyle("position"),"left":l,"right":l?"":this.getStyle("right"),"top":t,"bottom":t?"":this.getStyle("bottom"),"z-index":this.getStyle("z-index")};},getBorderWidth:function(J){return this.addStyles(J,El.borders);},getPadding:function(J){return this.addStyles(J,El.paddings);},setPositioning:function(pc){this.applyStyles(pc);if(pc.right=="auto"){this.dom.style.right="";}if(pc.bottom=="auto"){this.dom.style.bottom="";}return this;},fixDisplay:function(){if(this.getStyle("display")=="none"){this.setStyle("visibility","hidden");this.setStyle("display",this.originalDisplay);if(this.getStyle("display")=="none"){this.setStyle("display","block");}}},setLeftTop:function(J,K){this.dom.style.left=this.addUnits(J);this.dom.style.top=this.addUnits(K);return this;},move:function(J,K,L){var xy=this.getXY();J=J.toLowerCase();switch(J){case "l":case "left":this.moveTo(xy[0]-K,xy[1],this.preanim(arguments,2));break;case "r":case "right":this.moveTo(xy[0]+K,xy[1],this.preanim(arguments,2));break;case "t":case "top":case "up":this.moveTo(xy[0],xy[1]-K,this.preanim(arguments,2));break;case "b":case "bottom":case "down":this.moveTo(xy[0],xy[1]+K,this.preanim(arguments,2));break;}return this;},clip:function(){if(!this.isClipped){this.isClipped=true;this.originalClip={"o":this.getStyle("overflow"),"x":this.getStyle("overflow-x"),"y":this.getStyle("overflow-y")};this.setStyle("overflow","hidden");this.setStyle("overflow-x","hidden");this.setStyle("overflow-y","hidden");}return this;},unclip:function(){if(this.isClipped){this.isClipped=false;var o=this.originalClip;if(o.o){this.setStyle("overflow",o.o);}if(o.x){this.setStyle("overflow-x",o.x);}if(o.y){this.setStyle("overflow-y",o.y);}}return this;},getAnchorXY:function(J,K,s){var w,h,vp=false;if(!s){var d=this.dom;if(d==document.body||d==document){vp=true;w=D.getViewWidth();h=D.getViewHeight();}else {w=this.getWidth();h=this.getHeight();}}else {w=s.width;h=s.height;}var x=0,y=0,r=Math.round;switch((J||"tl").toLowerCase()){case "c":x=r(w*.5);y=r(h*.5);break;case "t":x=r(w*.5);y=0;break;case "l":x=0;y=r(h*.5);break;case "r":x=w;y=r(h*.5);break;case "b":x=r(w*.5);y=h;break;case "tl":x=0;y=0;break;case "bl":x=0;y=h;break;case "br":x=w;y=h;break;case "tr":x=w;y=0;break;}if(K===true){return [x,y];}if(vp){var sc=this.getScroll();return [x+sc.left,y+sc.top];}var o=this.getXY();return [x+o[0],y+o[1]];},getAlignToXY:function(el,p,o){el=Roo.get(el);var d=this.dom;if(!el.dom){throw "Element.alignTo with an element that doesn't exist";}var c=false;var p1="",p2="";o=o||[0,0];if(!p){p="tl-bl";}else if(p=="?"){p="tl-bl?";}else if(p.indexOf("-")==-1){p="tl-"+p;}
 p=p.toLowerCase();var m=p.match(/^([a-z]+)-([a-z]+)(\?)?$/);if(!m){throw "Element.alignTo with an invalid alignment "+p;}
 p1=m[1];p2=m[2];c=!!m[3];var a1=this.getAnchorXY(p1,true);var a2=el.getAnchorXY(p2,false);var x=a2[0]-a1[0]+o[0];var y=a2[1]-a1[1]+o[1];if(c){var w=this.getWidth(),h=this.getHeight(),r=el.getRegion();var dw=D.getViewWidth()-5,dh=D.getViewHeight()-5;var J=p1.charAt(0),K=p1.charAt(p1.length-1);var L=p2.charAt(0),M=p2.charAt(p2.length-1);var N=((J=="t"&&L=="b")||(J=="b"&&L=="t"));var O=((K=="r"&&M=="l")||(K=="l"&&M=="r"));var P=document;var Q=(P.documentElement.scrollLeft||P.body.scrollLeft||0)+5;var R=(P.documentElement.scrollTop||P.body.scrollTop||0)+5;if((x+w)>dw+Q){x=O?r.left-w:dw+Q-w;}if(x<Q){x=O?r.right:Q;}if((y+h)>dh+R){y=N?r.top-h:dh+R-h;}if(y<R){y=N?r.bottom:R;}}return [x,y];},getConstrainToXY:function(){var os={top:0,left:0,bottom:0,right:0};return function(el,J,K,L){el=Roo.get(el);K=K?Roo.applyIf(K,os):os;var vw,vh,vx=0,vy=0;if(el.dom==document.body||el.dom==document){vw=Roo.lib.Dom.getViewWidth();vh=Roo.lib.Dom.getViewHeight();}else {vw=el.dom.clientWidth;vh=el.dom.clientHeight;if(!J){var M=el.getXY();vx=M[0];vy=M[1];}}var s=el.getScroll();vx+=K.left+s.left;vy+=K.top+s.top;vw-=K.right;vh-=K.bottom;var vr=vx+vw;var vb=vy+vh;var xy=L||(!J?this.getXY():[this.getLeft(true),this.getTop(true)]);var x=xy[0],y=xy[1];var w=this.dom.offsetWidth,h=this.dom.offsetHeight;var N=false;if((x+w)>vr){x=vr-w;N=true;}if((y+h)>vb){y=vb-h;N=true;}if(x<vx){x=vx;N=true;}if(y<vy){y=vy;N=true;}return N?[x,y]:false;};}(),adjustForConstraints:function(xy,J,K){return this.getConstrainToXY(J||document,false,K,xy)||xy;},alignTo:function(J,K,L,M){var xy=this.getAlignToXY(J,K,L);this.setXY(xy,this.preanim(arguments,3));return this;},anchorTo:function(el,J,K,L,M,N){var O=function(){this.alignTo(el,J,K,L);Roo.callback(N,this);};Roo.EventManager.onWindowResize(O,this);var tm=typeof M;if(tm!='undefined'){Roo.EventManager.on(window,'scroll',O,this,{buffer:tm=='number'?M:50});}
 O.call(this);return this;},clearOpacity:function(){if(window.ActiveXObject){if(typeof this.dom.style.filter=='string'&&(/alpha/i).test(this.dom.style.filter)){this.dom.style.filter="";}}else {this.dom.style.opacity="";this.dom.style["-moz-opacity"]="";this.dom.style["-khtml-opacity"]="";}return this;},hide:function(J){this.setVisible(false,this.preanim(arguments,0));return this;},show:function(J){this.setVisible(true,this.preanim(arguments,0));return this;},addUnits:function(J){return Roo.Element.addUnits(J,this.defaultUnit);},beginMeasure:function(){var el=this.dom;if(el.offsetWidth||el.offsetHeight){return this;}var J=[];var p=this.dom,b=document.body;while((!el.offsetWidth&&!el.offsetHeight)&&p&&p.tagName&&p!=b){var pe=Roo.get(p);if(pe.getStyle('display')=='none'){J.push({el:p,visibility:pe.getStyle("visibility")});p.style.visibility="hidden";p.style.display="block";}
index 54f0335..a07d67f 100644 (file)
@@ -567,7 +567,23 @@ Roo.factory(conf, Roo.data);
          * you may want to set this to true.
          * @type Boolean
          */
-        useShims : ((isIE && !isIE7) || (isGecko && isMac))
+        useShims : ((isIE && !isIE7) || (isGecko && isMac)),
+        
+        
+                
+        /**
+         * Selects a single element as a Roo Element
+         * This is about as close as you can get to jQuery's $('do crazy stuff')
+         * @param {String} selector The selector/xpath query
+         * @param {Node} root (optional) The start of the query (defaults to document).
+         * @return {Roo.Element}
+         */
+        selectNode : function(selector, root) 
+        {
+            var node = Roo.DomQuery.selectNode(selector,root);
+            return node ? Roo.get(node) : new Roo.Element(false);
+        }
+        
     });
 
 
@@ -7805,7 +7821,9 @@ if(opt.anim.isAnimated()){
          * @param {Object}   options   (optional)An object with standard {@link Roo.EventManager#addListener} options
          */
         addListener : function(eventName, fn, scope, options){
-            Roo.EventManager.on(this.dom,  eventName, fn, scope || this, options);
+            if (this.dom) {
+                Roo.EventManager.on(this.dom,  eventName, fn, scope || this, options);
+            }
         },
 
         /**
@@ -18375,7 +18393,7 @@ Roo.extend(Roo.dd.DropTarget, Roo.dd.DDTarget, {
      */
     success : false,
     /**
-     * @cfg {boolean|String} valid true/false or string (add/sub/ok/nodrop)
+     * @cfg {boolean|String} valid true/false or string (ok-add/ok-sub/ok/nodrop)
      * if the drop point is valid for over/enter..
      */
     valid : false,
@@ -18388,7 +18406,8 @@ Roo.extend(Roo.dd.DropTarget, Roo.dd.DDTarget, {
     /**
      * @hide
      */
-    notifyEnter : function(dd, e, data){
+    notifyEnter : function(dd, e, data)
+    {
         this.valid = true;
         this.fireEvent('enter', dd, e, data);
         if(this.overClass){
@@ -18402,7 +18421,8 @@ Roo.extend(Roo.dd.DropTarget, Roo.dd.DDTarget, {
     /**
      * @hide
      */
-    notifyOver : function(dd, e, data){
+    notifyOver : function(dd, e, data)
+    {
         this.valid = true;
         this.fireEvent('over', dd, e, data);
         return typeof(this.valid) == 'string' ? 'x-dd-drop-' + this.valid : (
@@ -18413,7 +18433,8 @@ Roo.extend(Roo.dd.DropTarget, Roo.dd.DDTarget, {
     /**
      * @hide
      */
-    notifyOut : function(dd, e, data){
+    notifyOut : function(dd, e, data)
+    {
         this.fireEvent('out', dd, e, data);
         if(this.overClass){
             this.el.removeClass(this.overClass);
@@ -18423,7 +18444,8 @@ Roo.extend(Roo.dd.DropTarget, Roo.dd.DDTarget, {
     /**
      * @hide
      */
-    notifyDrop : function(dd, e, data){
+    notifyDrop : function(dd, e, data)
+    {
         this.success = false;
         this.fireEvent('drop', dd, e, data);
         return this.success;
@@ -28289,16 +28311,24 @@ Roo.extend(Roo.Editor, Roo.Component, {
         }
     },
 
-    onSpecialKey : function(field, e){
+    onSpecialKey : function(field, e)
+    {
         //Roo.log('editor onSpecialKey');
         if(this.completeOnEnter && e.getKey() == e.ENTER){
             e.stopEvent();
             this.completeEdit();
-        }else if(this.cancelOnEsc && e.getKey() == e.ESC){
-            this.cancelEdit();
-        }else{
-            this.fireEvent('specialkey', field, e);
+            return;
+        }
+        // do not fire special key otherwise it might hide close the editor...
+        if(e.getKey() == e.ENTER){    
+            return;
         }
+        if(this.cancelOnEsc && e.getKey() == e.ESC){
+            this.cancelEdit();
+            return;
+        } 
+        this.fireEvent('specialkey', field, e);
+    
     },
 
     /**
@@ -29648,7 +29678,8 @@ Roo.LayoutDialog = function(el, cfg){
         config = Roo.apply({}, el);
         // not sure why we use documentElement here.. - it should always be body.
         // IE7 borks horribly if we use documentElement.
-        el = Roo.get( Roo.isIE ? (document.body || document.documentElement) : (document.documentElement || document.body) ).createChild();
+        // webkit also does not like documentElement - it creates a body element...
+        el = Roo.get( document.body || document.documentElement ).createChild();
         //config.autoCreate = true;
     }
     
@@ -40352,10 +40383,13 @@ Roo.extend(Roo.form.BasicForm, Roo.util.Observable, {
      * @cfg {Boolean} fileUpload
      * Set to true if this form is a file upload.
      */
+     
     /**
      * @cfg {Object} baseParams
      * Parameters to pass with all requests. e.g. baseParams: {id: '123', foo: 'bar'}.
      */
+     /**
+     
     /**
      * @cfg {Number} timeout Timeout for form actions in seconds (default is 30 seconds).
      */
@@ -40388,7 +40422,7 @@ Roo.extend(Roo.form.BasicForm, Roo.util.Observable, {
      * element by passing it or its id or mask the form itself by passing in true.
      * @type Mixed
      */
-    waitMsgTarget : undefined,
+    waitMsgTarget : false,
 
     // private
     initEl : function(el){
@@ -40511,42 +40545,50 @@ clientValidation  Boolean          Applies to submit only.  Pass true to call fo
     // private
     beforeAction : function(action){
         var o = action.options;
-        if(o.waitMsg){
-            if(this.waitMsgTarget === true){
-                this.el.mask(o.waitMsg, 'x-mask-loading');
-            }else if(this.waitMsgTarget){
-                this.waitMsgTarget = Roo.get(this.waitMsgTarget);
-                this.waitMsgTarget.mask(o.waitMsg, 'x-mask-loading');
-            }else{
-                Roo.MessageBox.wait(o.waitMsg, o.waitTitle || this.waitTitle || 'Please Wait...');
-            }
+        
+       
+        if(this.waitMsgTarget === true){
+            this.el.mask(o.waitMsg || "Sending", 'x-mask-loading');
+        }else if(this.waitMsgTarget){
+            this.waitMsgTarget = Roo.get(this.waitMsgTarget);
+            this.waitMsgTarget.mask(o.waitMsg || "Sending", 'x-mask-loading');
+        }else {
+            Roo.MessageBox.wait(o.waitMsg || "Sending", o.waitTitle || this.waitTitle || 'Please Wait...');
         }
+         
     },
 
     // private
     afterAction : function(action, success){
         this.activeAction = null;
         var o = action.options;
-        if(o.waitMsg){
-            if(this.waitMsgTarget === true){
-                this.el.unmask();
-            }else if(this.waitMsgTarget){
-                this.waitMsgTarget.unmask();
-            }else{
-                Roo.MessageBox.updateProgress(1);
-                Roo.MessageBox.hide();
-            }
+        
+        if(this.waitMsgTarget === true){
+            this.el.unmask();
+        }else if(this.waitMsgTarget){
+            this.waitMsgTarget.unmask();
+        }else{
+            Roo.MessageBox.updateProgress(1);
+            Roo.MessageBox.hide();
         }
+         
         if(success){
             if(o.reset){
                 this.reset();
             }
             Roo.callback(o.success, o.scope, [this, action]);
             this.fireEvent('actioncomplete', this, action);
+            
         }else{
             Roo.callback(o.failure, o.scope, [this, action]);
+            // show an error message if no failed handler is set..
+            if (!this.hasListener('actionfailed')) {
+                Roo.MessageBox.alert("Error", "Saving Failed, please check your entries");
+            }
+            
             this.fireEvent('actionfailed', this, action);
         }
+        
     },
 
     /**
@@ -41341,6 +41383,7 @@ Roo.form.Action.prototype = {
 
     // default connection failure
     failure : function(response){
+        
         this.response = response;
         this.failureType = Roo.form.Action.CONNECT_FAILURE;
         this.form.afterAction(this, false);
@@ -41489,6 +41532,7 @@ Roo.extend(Roo.form.Action.Submit, Roo.form.Action, {
                     
             } 
             
+            
             Roo.Ajax.request(Roo.apply(this.createCallback(), {
                 form:this.form.el.dom,
                 url:this.getUrl(!isPost),
@@ -41512,6 +41556,7 @@ Roo.extend(Roo.form.Action.Submit, Roo.form.Action, {
             Roo.MessageBox.hide();
         }
         
+        
         var result = this.processResponse(response);
         if(result === true || result.success){
             this.form.afterAction(this, true);
@@ -41530,6 +41575,7 @@ Roo.extend(Roo.form.Action.Submit, Roo.form.Action, {
             Roo.MessageBox.hide();
         }
         
+        
         this.response = response;
         this.failureType = Roo.form.Action.CONNECT_FAILURE;
         this.form.afterAction(this, false);
@@ -41578,6 +41624,7 @@ Roo.extend(Roo.form.Action.Load, Roo.form.Action, {
     type : 'load',
 
     run : function(){
+        
         Roo.Ajax.request(Roo.apply(
                 this.createCallback(), {
                     method:this.getMethod(),
@@ -41587,6 +41634,7 @@ Roo.extend(Roo.form.Action.Load, Roo.form.Action, {
     },
 
     success : function(response){
+        
         var result = this.processResponse(response);
         if(result === true || !result.success || !result.data){
             this.failureType = Roo.form.Action.LOAD_FAILURE;
@@ -46183,123 +46231,123 @@ Roo.grid.Grid = function(container, config){
     }
     /** @private */
        this.addEvents({
-           // raw events
-           /**
-            * @event click
-            * The raw click event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "click" : true,
-           /**
-            * @event dblclick
-            * The raw dblclick event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "dblclick" : true,
-           /**
-            * @event contextmenu
-            * The raw contextmenu event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "contextmenu" : true,
-           /**
-            * @event mousedown
-            * The raw mousedown event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mousedown" : true,
-           /**
-            * @event mouseup
-            * The raw mouseup event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mouseup" : true,
-           /**
-            * @event mouseover
-            * The raw mouseover event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mouseover" : true,
-           /**
-            * @event mouseout
-            * The raw mouseout event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mouseout" : true,
-           /**
-            * @event keypress
-            * The raw keypress event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "keypress" : true,
-           /**
-            * @event keydown
-            * The raw keydown event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "keydown" : true,
+        // raw events
+        /**
+         * @event click
+         * The raw click event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "click" : true,
+        /**
+         * @event dblclick
+         * The raw dblclick event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "dblclick" : true,
+        /**
+         * @event contextmenu
+         * The raw contextmenu event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "contextmenu" : true,
+        /**
+         * @event mousedown
+         * The raw mousedown event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mousedown" : true,
+        /**
+         * @event mouseup
+         * The raw mouseup event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mouseup" : true,
+        /**
+         * @event mouseover
+         * The raw mouseover event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mouseover" : true,
+        /**
+         * @event mouseout
+         * The raw mouseout event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mouseout" : true,
+        /**
+         * @event keypress
+         * The raw keypress event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "keypress" : true,
+        /**
+         * @event keydown
+         * The raw keydown event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "keydown" : true,
 
-           // custom events
+        // custom events
 
-           /**
-            * @event cellclick
-            * Fires when a cell is clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "cellclick" : true,
-           /**
-            * @event celldblclick
-            * Fires when a cell is double clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "celldblclick" : true,
-           /**
-            * @event rowclick
-            * Fires when a row is clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           "rowclick" : true,
-           /**
-            * @event rowdblclick
-            * Fires when a row is double clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           "rowdblclick" : true,
-           /**
-            * @event headerclick
-            * Fires when a header is clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "headerclick" : true,
-           /**
-            * @event headerdblclick
-            * Fires when a header cell is double clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "headerdblclick" : true,
-           /**
-            * @event rowcontextmenu
-            * Fires when a row is right clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           "rowcontextmenu" : true,
-           /**
+        /**
+         * @event cellclick
+         * Fires when a cell is clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "cellclick" : true,
+        /**
+         * @event celldblclick
+         * Fires when a cell is double clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "celldblclick" : true,
+        /**
+         * @event rowclick
+         * Fires when a row is clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        "rowclick" : true,
+        /**
+         * @event rowdblclick
+         * Fires when a row is double clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        "rowdblclick" : true,
+        /**
+         * @event headerclick
+         * Fires when a header is clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "headerclick" : true,
+        /**
+         * @event headerdblclick
+         * Fires when a header cell is double clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "headerdblclick" : true,
+        /**
+         * @event rowcontextmenu
+         * Fires when a row is right clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        "rowcontextmenu" : true,
+        /**
          * @event cellcontextmenu
          * Fires when a cell is right clicked
          * @param {Grid} this
@@ -46308,93 +46356,101 @@ Roo.grid.Grid = function(container, config){
          * @param {Roo.EventObject} e
          */
          "cellcontextmenu" : true,
-           /**
-            * @event headercontextmenu
-            * Fires when a header is right clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "headercontextmenu" : true,
-           /**
-            * @event bodyscroll
-            * Fires when the body element is scrolled
-            * @param {Number} scrollLeft
-            * @param {Number} scrollTop
-            */
-           "bodyscroll" : true,
-           /**
-            * @event columnresize
-            * Fires when the user resizes a column
-            * @param {Number} columnIndex
-            * @param {Number} newSize
-            */
-           "columnresize" : true,
-           /**
-            * @event columnmove
-            * Fires when the user moves a column
-            * @param {Number} oldIndex
-            * @param {Number} newIndex
-            */
-           "columnmove" : true,
-           /**
-            * @event startdrag
-            * Fires when row(s) start being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {event} e The raw browser event
-            */
-           "startdrag" : true,
-           /**
-            * @event enddrag
-            * Fires when a drag operation is complete
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {event} e The raw browser event
-            */
-           "enddrag" : true,
-           /**
-            * @event dragdrop
-            * Fires when dragged row(s) are dropped on a valid DD target
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragdrop" : true,
-           /**
-            * @event dragover
-            * Fires while row(s) are being dragged. "targetId" is the id of the Yahoo.util.DD object the selected rows are being dragged over.
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragover" : true,
-           /**
-            * @event dragenter
-            *  Fires when the dragged row(s) first cross another DD target while being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragenter" : true,
-           /**
-            * @event dragout
-            * Fires when the dragged row(s) leave another DD target while being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragout" : true,
+        /**
+         * @event headercontextmenu
+         * Fires when a header is right clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "headercontextmenu" : true,
+        /**
+         * @event bodyscroll
+         * Fires when the body element is scrolled
+         * @param {Number} scrollLeft
+         * @param {Number} scrollTop
+         */
+        "bodyscroll" : true,
+        /**
+         * @event columnresize
+         * Fires when the user resizes a column
+         * @param {Number} columnIndex
+         * @param {Number} newSize
+         */
+        "columnresize" : true,
+        /**
+         * @event columnmove
+         * Fires when the user moves a column
+         * @param {Number} oldIndex
+         * @param {Number} newIndex
+         */
+        "columnmove" : true,
+        /**
+         * @event startdrag
+         * Fires when row(s) start being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {event} e The raw browser event
+         */
+        "startdrag" : true,
+        /**
+         * @event enddrag
+         * Fires when a drag operation is complete
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {event} e The raw browser event
+         */
+        "enddrag" : true,
+        /**
+         * @event dragdrop
+         * Fires when dragged row(s) are dropped on a valid DD target
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragdrop" : true,
+        /**
+         * @event dragover
+         * Fires while row(s) are being dragged. "targetId" is the id of the Yahoo.util.DD object the selected rows are being dragged over.
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragover" : true,
+        /**
+         * @event dragenter
+         *  Fires when the dragged row(s) first cross another DD target while being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragenter" : true,
+        /**
+         * @event dragout
+         * Fires when the dragged row(s) leave another DD target while being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragout" : true,
+        /**
+         * @event rowclass
+         * Fires when a row is rendered, so you can change add a style to it.
+         * @param {GridView} gridview The grid view
+         * @param {Object} rowcfg contains record, rowIndex and rowClass - set rowClass to add a style.
+         */
+        'rowclass' : true,
+
         /**
          * @event render
          * Fires when the grid is rendered
          * @param {Grid} grid
          */
-        render : true
+        'render' : true
     });
 
     Roo.grid.Grid.superclass.constructor.call(this);
@@ -47922,6 +47978,9 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                 var ts = this.templates, ct = ts.cell, rt = ts.row;
                 // buffers
                 var buf = "", lbuf = "", cb, lcb, c, p = {}, rp = {}, r, rowIndex;
+                
+                var hasListener = this.grid.hasListener('rowclass');
+                var rowcfg = {};
                 for(var j = 0, len = rs.length; j < len; j++){
                     r = rs[j]; cb = ""; lcb = ""; rowIndex = (j+startRow);
                     for(var i = 0; i < colCount; i++){
@@ -47943,14 +48002,24 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                     }
                     var alt = [];
                     if(stripe && ((rowIndex+1) % 2 == 0)){
-                        alt[0] = "x-grid-row-alt";
+                        alt.push("x-grid-row-alt")
                     }
                     if(r.dirty){
-                        alt[1] = " x-grid-dirty-row";
+                        alt.push(  " x-grid-dirty-row");
                     }
                     rp.cells = lcb;
                     if(this.getRowClass){
-                        alt[2] = this.getRowClass(r, rowIndex);
+                        alt.push(this.getRowClass(r, rowIndex));
+                    }
+                    if (hasListener) {
+                        rowcfg = {
+                             
+                            record: r,
+                            rowIndex : rowIndex,
+                            rowClass : ''
+                        }
+                        this.grid.fireEvent('rowclass', this, rowcfg);
+                        alt.push(rowcfg.rowClass);
                     }
                     rp.alt = alt.join(" ");
                     lbuf+= rt.apply(rp);
@@ -47963,6 +48032,8 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                 var ts = this.templates, ct = ts.cell, rt = ts.row;
                 // buffers
                 var buf = [], lbuf = [], cb, lcb, c, p = {}, rp = {}, r, rowIndex;
+                var hasListener = this.grid.hasListener('rowclass');
+                var rowcfg = {};
                 for(var j = 0, len = rs.length; j < len; j++){
                     r = rs[j]; cb = []; lcb = []; rowIndex = (j+startRow);
                     for(var i = 0; i < colCount; i++){
@@ -47984,14 +48055,24 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                     }
                     var alt = [];
                     if(stripe && ((rowIndex+1) % 2 == 0)){
-                        alt[0] = "x-grid-row-alt";
+                        alt.push( "x-grid-row-alt");
                     }
                     if(r.dirty){
-                        alt[1] = " x-grid-dirty-row";
+                        alt.push(" x-grid-dirty-row");
                     }
                     rp.cells = lcb;
                     if(this.getRowClass){
-                        alt[2] = this.getRowClass(r, rowIndex);
+                        alt.push( this.getRowClass(r, rowIndex));
+                    }
+                    if (hasListener) {
+                        rowcfg = {
+                             
+                            record: r,
+                            rowIndex : rowIndex,
+                            rowClass : ''
+                        }
+                        this.grid.fireEvent('rowclass', this, rowcfg);
+                        alt.push(rowcfg.rowClass);
                     }
                     rp.alt = alt.join(" ");
                     rp.cells = lcb.join("");
index 24f8ca5..88b8611 100644 (file)
@@ -4002,7 +4002,7 @@ Roo.extend(Roo.dd.DropTarget, Roo.dd.DDTarget, {
      */
     success : false,
     /**
-     * @cfg {boolean|String} valid true/false or string (add/sub/ok/nodrop)
+     * @cfg {boolean|String} valid true/false or string (ok-add/ok-sub/ok/nodrop)
      * if the drop point is valid for over/enter..
      */
     valid : false,
@@ -4015,7 +4015,8 @@ Roo.extend(Roo.dd.DropTarget, Roo.dd.DDTarget, {
     /**
      * @hide
      */
-    notifyEnter : function(dd, e, data){
+    notifyEnter : function(dd, e, data)
+    {
         this.valid = true;
         this.fireEvent('enter', dd, e, data);
         if(this.overClass){
@@ -4029,7 +4030,8 @@ Roo.extend(Roo.dd.DropTarget, Roo.dd.DDTarget, {
     /**
      * @hide
      */
-    notifyOver : function(dd, e, data){
+    notifyOver : function(dd, e, data)
+    {
         this.valid = true;
         this.fireEvent('over', dd, e, data);
         return typeof(this.valid) == 'string' ? 'x-dd-drop-' + this.valid : (
@@ -4040,7 +4042,8 @@ Roo.extend(Roo.dd.DropTarget, Roo.dd.DDTarget, {
     /**
      * @hide
      */
-    notifyOut : function(dd, e, data){
+    notifyOut : function(dd, e, data)
+    {
         this.fireEvent('out', dd, e, data);
         if(this.overClass){
             this.el.removeClass(this.overClass);
@@ -4050,7 +4053,8 @@ Roo.extend(Roo.dd.DropTarget, Roo.dd.DDTarget, {
     /**
      * @hide
      */
-    notifyDrop : function(dd, e, data){
+    notifyDrop : function(dd, e, data)
+    {
         this.success = false;
         this.fireEvent('drop', dd, e, data);
         return this.success;
@@ -13916,16 +13920,24 @@ Roo.extend(Roo.Editor, Roo.Component, {
         }
     },
 
-    onSpecialKey : function(field, e){
+    onSpecialKey : function(field, e)
+    {
         //Roo.log('editor onSpecialKey');
         if(this.completeOnEnter && e.getKey() == e.ENTER){
             e.stopEvent();
             this.completeEdit();
-        }else if(this.cancelOnEsc && e.getKey() == e.ESC){
-            this.cancelEdit();
-        }else{
-            this.fireEvent('specialkey', field, e);
+            return;
+        }
+        // do not fire special key otherwise it might hide close the editor...
+        if(e.getKey() == e.ENTER){    
+            return;
         }
+        if(this.cancelOnEsc && e.getKey() == e.ESC){
+            this.cancelEdit();
+            return;
+        } 
+        this.fireEvent('specialkey', field, e);
+    
     },
 
     /**
@@ -15275,7 +15287,8 @@ Roo.LayoutDialog = function(el, cfg){
         config = Roo.apply({}, el);
         // not sure why we use documentElement here.. - it should always be body.
         // IE7 borks horribly if we use documentElement.
-        el = Roo.get( Roo.isIE ? (document.body || document.documentElement) : (document.documentElement || document.body) ).createChild();
+        // webkit also does not like documentElement - it creates a body element...
+        el = Roo.get( document.body || document.documentElement ).createChild();
         //config.autoCreate = true;
     }
     
@@ -25979,10 +25992,13 @@ Roo.extend(Roo.form.BasicForm, Roo.util.Observable, {
      * @cfg {Boolean} fileUpload
      * Set to true if this form is a file upload.
      */
+     
     /**
      * @cfg {Object} baseParams
      * Parameters to pass with all requests. e.g. baseParams: {id: '123', foo: 'bar'}.
      */
+     /**
+     
     /**
      * @cfg {Number} timeout Timeout for form actions in seconds (default is 30 seconds).
      */
@@ -26015,7 +26031,7 @@ Roo.extend(Roo.form.BasicForm, Roo.util.Observable, {
      * element by passing it or its id or mask the form itself by passing in true.
      * @type Mixed
      */
-    waitMsgTarget : undefined,
+    waitMsgTarget : false,
 
     // private
     initEl : function(el){
@@ -26138,42 +26154,50 @@ clientValidation  Boolean          Applies to submit only.  Pass true to call fo
     // private
     beforeAction : function(action){
         var o = action.options;
-        if(o.waitMsg){
-            if(this.waitMsgTarget === true){
-                this.el.mask(o.waitMsg, 'x-mask-loading');
-            }else if(this.waitMsgTarget){
-                this.waitMsgTarget = Roo.get(this.waitMsgTarget);
-                this.waitMsgTarget.mask(o.waitMsg, 'x-mask-loading');
-            }else{
-                Roo.MessageBox.wait(o.waitMsg, o.waitTitle || this.waitTitle || 'Please Wait...');
-            }
+        
+       
+        if(this.waitMsgTarget === true){
+            this.el.mask(o.waitMsg || "Sending", 'x-mask-loading');
+        }else if(this.waitMsgTarget){
+            this.waitMsgTarget = Roo.get(this.waitMsgTarget);
+            this.waitMsgTarget.mask(o.waitMsg || "Sending", 'x-mask-loading');
+        }else {
+            Roo.MessageBox.wait(o.waitMsg || "Sending", o.waitTitle || this.waitTitle || 'Please Wait...');
         }
+         
     },
 
     // private
     afterAction : function(action, success){
         this.activeAction = null;
         var o = action.options;
-        if(o.waitMsg){
-            if(this.waitMsgTarget === true){
-                this.el.unmask();
-            }else if(this.waitMsgTarget){
-                this.waitMsgTarget.unmask();
-            }else{
-                Roo.MessageBox.updateProgress(1);
-                Roo.MessageBox.hide();
-            }
+        
+        if(this.waitMsgTarget === true){
+            this.el.unmask();
+        }else if(this.waitMsgTarget){
+            this.waitMsgTarget.unmask();
+        }else{
+            Roo.MessageBox.updateProgress(1);
+            Roo.MessageBox.hide();
         }
+         
         if(success){
             if(o.reset){
                 this.reset();
             }
             Roo.callback(o.success, o.scope, [this, action]);
             this.fireEvent('actioncomplete', this, action);
+            
         }else{
             Roo.callback(o.failure, o.scope, [this, action]);
+            // show an error message if no failed handler is set..
+            if (!this.hasListener('actionfailed')) {
+                Roo.MessageBox.alert("Error", "Saving Failed, please check your entries");
+            }
+            
             this.fireEvent('actionfailed', this, action);
         }
+        
     },
 
     /**
@@ -26968,6 +26992,7 @@ Roo.form.Action.prototype = {
 
     // default connection failure
     failure : function(response){
+        
         this.response = response;
         this.failureType = Roo.form.Action.CONNECT_FAILURE;
         this.form.afterAction(this, false);
@@ -27116,6 +27141,7 @@ Roo.extend(Roo.form.Action.Submit, Roo.form.Action, {
                     
             } 
             
+            
             Roo.Ajax.request(Roo.apply(this.createCallback(), {
                 form:this.form.el.dom,
                 url:this.getUrl(!isPost),
@@ -27139,6 +27165,7 @@ Roo.extend(Roo.form.Action.Submit, Roo.form.Action, {
             Roo.MessageBox.hide();
         }
         
+        
         var result = this.processResponse(response);
         if(result === true || result.success){
             this.form.afterAction(this, true);
@@ -27157,6 +27184,7 @@ Roo.extend(Roo.form.Action.Submit, Roo.form.Action, {
             Roo.MessageBox.hide();
         }
         
+        
         this.response = response;
         this.failureType = Roo.form.Action.CONNECT_FAILURE;
         this.form.afterAction(this, false);
@@ -27205,6 +27233,7 @@ Roo.extend(Roo.form.Action.Load, Roo.form.Action, {
     type : 'load',
 
     run : function(){
+        
         Roo.Ajax.request(Roo.apply(
                 this.createCallback(), {
                     method:this.getMethod(),
@@ -27214,6 +27243,7 @@ Roo.extend(Roo.form.Action.Load, Roo.form.Action, {
     },
 
     success : function(response){
+        
         var result = this.processResponse(response);
         if(result === true || !result.success || !result.data){
             this.failureType = Roo.form.Action.LOAD_FAILURE;
@@ -31810,123 +31840,123 @@ Roo.grid.Grid = function(container, config){
     }
     /** @private */
        this.addEvents({
-           // raw events
-           /**
-            * @event click
-            * The raw click event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "click" : true,
-           /**
-            * @event dblclick
-            * The raw dblclick event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "dblclick" : true,
-           /**
-            * @event contextmenu
-            * The raw contextmenu event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "contextmenu" : true,
-           /**
-            * @event mousedown
-            * The raw mousedown event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mousedown" : true,
-           /**
-            * @event mouseup
-            * The raw mouseup event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mouseup" : true,
-           /**
-            * @event mouseover
-            * The raw mouseover event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mouseover" : true,
-           /**
-            * @event mouseout
-            * The raw mouseout event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "mouseout" : true,
-           /**
-            * @event keypress
-            * The raw keypress event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "keypress" : true,
-           /**
-            * @event keydown
-            * The raw keydown event for the entire grid.
-            * @param {Roo.EventObject} e
-            */
-           "keydown" : true,
+        // raw events
+        /**
+         * @event click
+         * The raw click event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "click" : true,
+        /**
+         * @event dblclick
+         * The raw dblclick event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "dblclick" : true,
+        /**
+         * @event contextmenu
+         * The raw contextmenu event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "contextmenu" : true,
+        /**
+         * @event mousedown
+         * The raw mousedown event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mousedown" : true,
+        /**
+         * @event mouseup
+         * The raw mouseup event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mouseup" : true,
+        /**
+         * @event mouseover
+         * The raw mouseover event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mouseover" : true,
+        /**
+         * @event mouseout
+         * The raw mouseout event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "mouseout" : true,
+        /**
+         * @event keypress
+         * The raw keypress event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "keypress" : true,
+        /**
+         * @event keydown
+         * The raw keydown event for the entire grid.
+         * @param {Roo.EventObject} e
+         */
+        "keydown" : true,
 
-           // custom events
+        // custom events
 
-           /**
-            * @event cellclick
-            * Fires when a cell is clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "cellclick" : true,
-           /**
-            * @event celldblclick
-            * Fires when a cell is double clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "celldblclick" : true,
-           /**
-            * @event rowclick
-            * Fires when a row is clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           "rowclick" : true,
-           /**
-            * @event rowdblclick
-            * Fires when a row is double clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           "rowdblclick" : true,
-           /**
-            * @event headerclick
-            * Fires when a header is clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "headerclick" : true,
-           /**
-            * @event headerdblclick
-            * Fires when a header cell is double clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "headerdblclick" : true,
-           /**
-            * @event rowcontextmenu
-            * Fires when a row is right clicked
-            * @param {Grid} this
-            * @param {Number} rowIndex
-            * @param {Roo.EventObject} e
-            */
-           "rowcontextmenu" : true,
-           /**
+        /**
+         * @event cellclick
+         * Fires when a cell is clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "cellclick" : true,
+        /**
+         * @event celldblclick
+         * Fires when a cell is double clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "celldblclick" : true,
+        /**
+         * @event rowclick
+         * Fires when a row is clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        "rowclick" : true,
+        /**
+         * @event rowdblclick
+         * Fires when a row is double clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        "rowdblclick" : true,
+        /**
+         * @event headerclick
+         * Fires when a header is clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "headerclick" : true,
+        /**
+         * @event headerdblclick
+         * Fires when a header cell is double clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "headerdblclick" : true,
+        /**
+         * @event rowcontextmenu
+         * Fires when a row is right clicked
+         * @param {Grid} this
+         * @param {Number} rowIndex
+         * @param {Roo.EventObject} e
+         */
+        "rowcontextmenu" : true,
+        /**
          * @event cellcontextmenu
          * Fires when a cell is right clicked
          * @param {Grid} this
@@ -31935,93 +31965,101 @@ Roo.grid.Grid = function(container, config){
          * @param {Roo.EventObject} e
          */
          "cellcontextmenu" : true,
-           /**
-            * @event headercontextmenu
-            * Fires when a header is right clicked
-            * @param {Grid} this
-            * @param {Number} columnIndex
-            * @param {Roo.EventObject} e
-            */
-           "headercontextmenu" : true,
-           /**
-            * @event bodyscroll
-            * Fires when the body element is scrolled
-            * @param {Number} scrollLeft
-            * @param {Number} scrollTop
-            */
-           "bodyscroll" : true,
-           /**
-            * @event columnresize
-            * Fires when the user resizes a column
-            * @param {Number} columnIndex
-            * @param {Number} newSize
-            */
-           "columnresize" : true,
-           /**
-            * @event columnmove
-            * Fires when the user moves a column
-            * @param {Number} oldIndex
-            * @param {Number} newIndex
-            */
-           "columnmove" : true,
-           /**
-            * @event startdrag
-            * Fires when row(s) start being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {event} e The raw browser event
-            */
-           "startdrag" : true,
-           /**
-            * @event enddrag
-            * Fires when a drag operation is complete
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {event} e The raw browser event
-            */
-           "enddrag" : true,
-           /**
-            * @event dragdrop
-            * Fires when dragged row(s) are dropped on a valid DD target
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragdrop" : true,
-           /**
-            * @event dragover
-            * Fires while row(s) are being dragged. "targetId" is the id of the Yahoo.util.DD object the selected rows are being dragged over.
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragover" : true,
-           /**
-            * @event dragenter
-            *  Fires when the dragged row(s) first cross another DD target while being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragenter" : true,
-           /**
-            * @event dragout
-            * Fires when the dragged row(s) leave another DD target while being dragged
-            * @param {Grid} this
-            * @param {Roo.GridDD} dd The drag drop object
-            * @param {String} targetId The target drag drop object
-            * @param {event} e The raw browser event
-            */
-           "dragout" : true,
+        /**
+         * @event headercontextmenu
+         * Fires when a header is right clicked
+         * @param {Grid} this
+         * @param {Number} columnIndex
+         * @param {Roo.EventObject} e
+         */
+        "headercontextmenu" : true,
+        /**
+         * @event bodyscroll
+         * Fires when the body element is scrolled
+         * @param {Number} scrollLeft
+         * @param {Number} scrollTop
+         */
+        "bodyscroll" : true,
+        /**
+         * @event columnresize
+         * Fires when the user resizes a column
+         * @param {Number} columnIndex
+         * @param {Number} newSize
+         */
+        "columnresize" : true,
+        /**
+         * @event columnmove
+         * Fires when the user moves a column
+         * @param {Number} oldIndex
+         * @param {Number} newIndex
+         */
+        "columnmove" : true,
+        /**
+         * @event startdrag
+         * Fires when row(s) start being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {event} e The raw browser event
+         */
+        "startdrag" : true,
+        /**
+         * @event enddrag
+         * Fires when a drag operation is complete
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {event} e The raw browser event
+         */
+        "enddrag" : true,
+        /**
+         * @event dragdrop
+         * Fires when dragged row(s) are dropped on a valid DD target
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragdrop" : true,
+        /**
+         * @event dragover
+         * Fires while row(s) are being dragged. "targetId" is the id of the Yahoo.util.DD object the selected rows are being dragged over.
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragover" : true,
+        /**
+         * @event dragenter
+         *  Fires when the dragged row(s) first cross another DD target while being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragenter" : true,
+        /**
+         * @event dragout
+         * Fires when the dragged row(s) leave another DD target while being dragged
+         * @param {Grid} this
+         * @param {Roo.GridDD} dd The drag drop object
+         * @param {String} targetId The target drag drop object
+         * @param {event} e The raw browser event
+         */
+        "dragout" : true,
+        /**
+         * @event rowclass
+         * Fires when a row is rendered, so you can change add a style to it.
+         * @param {GridView} gridview The grid view
+         * @param {Object} rowcfg contains record, rowIndex and rowClass - set rowClass to add a style.
+         */
+        'rowclass' : true,
+
         /**
          * @event render
          * Fires when the grid is rendered
          * @param {Grid} grid
          */
-        render : true
+        'render' : true
     });
 
     Roo.grid.Grid.superclass.constructor.call(this);
@@ -33549,6 +33587,9 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                 var ts = this.templates, ct = ts.cell, rt = ts.row;
                 // buffers
                 var buf = "", lbuf = "", cb, lcb, c, p = {}, rp = {}, r, rowIndex;
+                
+                var hasListener = this.grid.hasListener('rowclass');
+                var rowcfg = {};
                 for(var j = 0, len = rs.length; j < len; j++){
                     r = rs[j]; cb = ""; lcb = ""; rowIndex = (j+startRow);
                     for(var i = 0; i < colCount; i++){
@@ -33570,14 +33611,24 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                     }
                     var alt = [];
                     if(stripe && ((rowIndex+1) % 2 == 0)){
-                        alt[0] = "x-grid-row-alt";
+                        alt.push("x-grid-row-alt")
                     }
                     if(r.dirty){
-                        alt[1] = " x-grid-dirty-row";
+                        alt.push(  " x-grid-dirty-row");
                     }
                     rp.cells = lcb;
                     if(this.getRowClass){
-                        alt[2] = this.getRowClass(r, rowIndex);
+                        alt.push(this.getRowClass(r, rowIndex));
+                    }
+                    if (hasListener) {
+                        rowcfg = {
+                             
+                            record: r,
+                            rowIndex : rowIndex,
+                            rowClass : ''
+                        }
+                        this.grid.fireEvent('rowclass', this, rowcfg);
+                        alt.push(rowcfg.rowClass);
                     }
                     rp.alt = alt.join(" ");
                     lbuf+= rt.apply(rp);
@@ -33590,6 +33641,8 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                 var ts = this.templates, ct = ts.cell, rt = ts.row;
                 // buffers
                 var buf = [], lbuf = [], cb, lcb, c, p = {}, rp = {}, r, rowIndex;
+                var hasListener = this.grid.hasListener('rowclass');
+                var rowcfg = {};
                 for(var j = 0, len = rs.length; j < len; j++){
                     r = rs[j]; cb = []; lcb = []; rowIndex = (j+startRow);
                     for(var i = 0; i < colCount; i++){
@@ -33611,14 +33664,24 @@ Roo.extend(Roo.grid.GridView, Roo.grid.AbstractGridView, {
                     }
                     var alt = [];
                     if(stripe && ((rowIndex+1) % 2 == 0)){
-                        alt[0] = "x-grid-row-alt";
+                        alt.push( "x-grid-row-alt");
                     }
                     if(r.dirty){
-                        alt[1] = " x-grid-dirty-row";
+                        alt.push(" x-grid-dirty-row");
                     }
                     rp.cells = lcb;
                     if(this.getRowClass){
-                        alt[2] = this.getRowClass(r, rowIndex);
+                        alt.push( this.getRowClass(r, rowIndex));
+                    }
+                    if (hasListener) {
+                        rowcfg = {
+                             
+                            record: r,
+                            rowIndex : rowIndex,
+                            rowClass : ''
+                        }
+                        this.grid.fireEvent('rowclass', this, rowcfg);
+                        alt.push(rowcfg.rowClass);
                     }
                     rp.alt = alt.join(" ");
                     rp.cells = lcb.join("");
index 7ad7baf..9229dcd 100644 (file)
@@ -239,7 +239,7 @@ this.el.on("mousedown",this.onMouseDown,this);if(!B){this.el.on("mouseover",this
 Roo.Editor=function(A,B){Roo.Editor.superclass.constructor.call(this,B);this.field=A;this.addEvents({"beforestartedit":true,"startedit":true,"beforecomplete":true,"complete":true,"specialkey":true});};Roo.extend(Roo.Editor,Roo.Component,{value:"",alignment:"c-c?",shadow:"frame",constrain:false,completeOnEnter:false,cancelOnEsc:false,updateEl:false,onRender:function(ct,A){this.el=new Roo.Layer({shadow:this.shadow,cls:"x-editor",parentEl:ct,shim:this.shim,shadowOffset:4,id:this.id,constrain:this.constrain});this.el.setStyle("overflow",Roo.isGecko?"auto":"hidden");if(this.field.msgTarget!='title'){this.field.msgTarget='qtip';}
 this.field.render(this.el);if(Roo.isGecko){this.field.el.dom.setAttribute('autocomplete','off');}
 this.field.on("specialkey",this.onSpecialKey,this);if(this.swallowKeys){this.field.el.swallowEvent(['keydown','keypress']);}
-this.field.show();this.field.on("blur",this.onBlur,this);if(this.field.grow){this.field.on("autosize",this.el.sync,this.el,{delay:1});}},onSpecialKey:function(A,e){if(this.completeOnEnter&&e.getKey()==e.ENTER){e.stopEvent();this.completeEdit();}else if(this.cancelOnEsc&&e.getKey()==e.ESC){this.cancelEdit();}else {this.fireEvent('specialkey',A,e);}},startEdit:function(el,A){if(this.editing){this.completeEdit();}
+this.field.show();this.field.on("blur",this.onBlur,this);if(this.field.grow){this.field.on("autosize",this.el.sync,this.el,{delay:1});}},onSpecialKey:function(A,e){if(this.completeOnEnter&&e.getKey()==e.ENTER){e.stopEvent();this.completeEdit();return;}if(e.getKey()==e.ENTER){return;}if(this.cancelOnEsc&&e.getKey()==e.ESC){this.cancelEdit();return;}this.fireEvent('specialkey',A,e);},startEdit:function(el,A){if(this.editing){this.completeEdit();}
 this.boundEl=Roo.get(el);var v=A!==undefined?A:this.boundEl.dom.innerHTML;if(!this.rendered){this.render(this.parentEl||document.body);}if(this.fireEvent("beforestartedit",this,this.boundEl,v)===false){return;}
 this.startValue=v;this.field.setValue(v);if(this.autoSize){var sz=this.boundEl.getSize();switch(this.autoSize){case "width":this.setSize(sz.width,"");break;case "height":this.setSize("",sz.height);break;default:this.setSize(sz.width,sz.height);}}
 this.el.alignTo(this.boundEl,this.alignment);this.editing=true;if(Roo.QuickTips){Roo.QuickTips.disable();}
@@ -277,7 +277,7 @@ this.refreshSize();this.adjustAssets();this.focus();this.fireEvent("move",this,t
 D.call(this);return this;},isVisible:function(){return this.el.isVisible();},animHide:function(A){var b=Roo.get(this.animateTarget).getBox();this.proxy.show();this.proxy.setBounds(this.xy[0],this.xy[1],this.size.width,this.size.height);this.el.hide();this.proxy.setBounds(b.x,b.y,b.width,b.height,true,.35,this.hideEl.createDelegate(this,[A]));},hide:function(A){if(this.fireEvent("beforehide",this)===false){return;}if(this.shadow){this.shadow.hide();}if(this.shim){this.shim.hide();}if(this.animateTarget&&Roo.get(this.animateTarget)){this.animHide(A);}else {this.el.hide();this.hideEl(A);}return this;},hideEl:function(A){this.proxy.hide();if(this.modal){this.mask.hide();Roo.get(document.body).removeClass("x-body-masked");}
 this.fireEvent("hide",this);if(typeof A=="function"){A();}},hideAction:function(){this.setLeft("-10000px");this.setTop("-10000px");this.setStyle("visibility","hidden");},refreshSize:function(){this.size=this.el.getSize();this.xy=this.el.getXY();Roo.state.Manager.set(this.stateId||this.el.id+"-state",this.el.getBox());},setZIndex:function(A){if(this.modal){this.mask.setStyle("z-index",A);}if(this.shim){this.shim.setStyle("z-index",++A);}if(this.shadow){this.shadow.setZIndex(++A);}
 this.el.setStyle("z-index",++A);if(this.proxy){this.proxy.setStyle("z-index",++A);}if(this.resizer){this.resizer.proxy.setStyle("z-index",++A);}
-this.lastZIndex=A;},getEl:function(){return this.el;}});Roo.DialogManager=function(){var A={};var B=[];var C=null;var D=function(d1,d2){return (!d1._lastAccess||d1._lastAccess<d2._lastAccess)?-1:1;};var E=function(){B.sort(D);var F=Roo.DialogManager.zseed;for(var i=0,G=B.length;i<G;i++){var H=B[i];if(H){H.setZIndex(F+(i*10));}}};return {zseed:9000,register:function(F){A[F.id]=F;B.push(F);},unregister:function(F){delete A[F.id];var i=0;var G=0;if(!B.indexOf){for(i=0,G=B.length;i<G;i++){if(B[i]==F){B.splice(i,1);return;}}}else {i=B.indexOf(F);if(i!=-1){B.splice(i,1);}}},get:function(id){return typeof id=="object"?id:A[id];},bringToFront:function(F){F=this.get(F);if(F!=C){C=F;F._lastAccess=new Date().getTime();E();}return F;},sendToBack:function(F){F=this.get(F);F._lastAccess=-(new Date().getTime());E();return F;},hideAll:function(){for(var id in A){if(A[id]&&typeof A[id]!="function"&&A[id].isVisible()){A[id].hide();}}}};}();Roo.LayoutDialog=function(el,A){var B=A;if(typeof(A)=='undefined'){B=Roo.apply({},el);el=Roo.get(Roo.isIE?(document.body||document.documentElement):(document.documentElement||document.body)).createChild();}
+this.lastZIndex=A;},getEl:function(){return this.el;}});Roo.DialogManager=function(){var A={};var B=[];var C=null;var D=function(d1,d2){return (!d1._lastAccess||d1._lastAccess<d2._lastAccess)?-1:1;};var E=function(){B.sort(D);var F=Roo.DialogManager.zseed;for(var i=0,G=B.length;i<G;i++){var H=B[i];if(H){H.setZIndex(F+(i*10));}}};return {zseed:9000,register:function(F){A[F.id]=F;B.push(F);},unregister:function(F){delete A[F.id];var i=0;var G=0;if(!B.indexOf){for(i=0,G=B.length;i<G;i++){if(B[i]==F){B.splice(i,1);return;}}}else {i=B.indexOf(F);if(i!=-1){B.splice(i,1);}}},get:function(id){return typeof id=="object"?id:A[id];},bringToFront:function(F){F=this.get(F);if(F!=C){C=F;F._lastAccess=new Date().getTime();E();}return F;},sendToBack:function(F){F=this.get(F);F._lastAccess=-(new Date().getTime());E();return F;},hideAll:function(){for(var id in A){if(A[id]&&typeof A[id]!="function"&&A[id].isVisible()){A[id].hide();}}}};}();Roo.LayoutDialog=function(el,A){var B=A;if(typeof(A)=='undefined'){B=Roo.apply({},el);el=Roo.get(document.body||document.documentElement).createChild();}
 B.autoTabs=false;Roo.LayoutDialog.superclass.constructor.call(this,el,B);this.body.setStyle({overflow:"hidden",position:"relative"});this.layout=new Roo.BorderLayout(this.body.dom,B);this.layout.monitorWindowResize=false;this.el.addClass("x-dlg-auto-layout");this.center=Roo.BasicDialog.prototype.center;this.on("show",this.layout.layout,this.layout,true);if(B.items){var C=B.items;delete B.items;Roo.each(C,this.addxtype,this);}};Roo.extend(Roo.LayoutDialog,Roo.BasicDialog,{endUpdate:function(){this.layout.endUpdate();},beginUpdate:function(){this.layout.beginUpdate();},getLayout:function(){return this.layout;},showEl:function(){Roo.LayoutDialog.superclass.showEl.apply(this,arguments);if(Roo.isIE7){this.layout.layout();}},syncBodyHeight:function(){Roo.LayoutDialog.superclass.syncBodyHeight.call(this);if(this.layout){this.layout.layout();}},addxtype:function(c){return this.layout.addxtype(c);}});
 Roo.MessageBox=function(){var A,B,C,D;var E,F,G,H,I,pp;var J,K,L;var M=function(Q){A.hide();Roo.callback(B.fn,B.scope||window,[Q,K.dom.value],1);};var N=function(){if(B&&B.cls){A.el.removeClass(B.cls);}if(D){Roo.TaskMgr.stop(D);D=null;}};var O=function(b){var Q=0;if(!b){J["ok"].hide();J["cancel"].hide();J["yes"].hide();J["no"].hide();A.footer.dom.style.display='none';return Q;}
 A.footer.dom.style.display='';for(var k in J){if(typeof J[k]!="function"){if(b[k]){J[k].show();J[k].setText(typeof b[k]=="string"?b[k]:Roo.MessageBox.buttonText[k]);Q+=J[k].el.getWidth()+15;}else {J[k].hide();}}}return Q;};var P=function(d,k,e){if(B&&B.closable!==false){A.hide();}if(e){e.stopEvent();}};return {getDialog:function(){if(!A){A=new Roo.BasicDialog("x-msg-box",{autoCreate:true,shadow:true,draggable:true,resizable:false,constraintoviewport:false,fixedcenter:true,collapsible:false,shim:true,modal:true,width:400,height:100,buttonAlign:"center",closeClick:function(){if(B&&B.buttons&&B.buttons.no&&!B.buttons.cancel){M("no");}else {M("cancel");}}});A.on("hide",N);C=A.mask;A.addKeyListener(27,P);J={};var bt=this.buttonText;J["ok"]=A.addButton(bt["ok"],M.createCallback("ok"));J["yes"]=A.addButton(bt["yes"],M.createCallback("yes"));J["no"]=A.addButton(bt["no"],M.createCallback("no"));J["cancel"]=A.addButton(bt["cancel"],M.createCallback("cancel"));E=A.body.createChild({html:'<span class="roo-mb-text"></span><br /><input type="text" class="roo-mb-input" /><textarea class="roo-mb-textarea"></textarea><div class="roo-mb-progress-wrap"><div class="roo-mb-progress"><div class="roo-mb-progress-bar">&#160;</div></div></div>'});F=E.dom.firstChild;G=Roo.get(E.dom.childNodes[2]);G.enableDisplayMode();G.addKeyListener([10,13],function(){if(A.isVisible()&&B&&B.buttons){if(B.buttons.ok){M("ok");}else if(B.buttons.yes){M("yes");}}});H=Roo.get(E.dom.childNodes[3]);H.enableDisplayMode();I=Roo.get(E.dom.childNodes[4]);I.enableDisplayMode();var pf=I.dom.firstChild;if(pf){pp=Roo.get(pf.firstChild);pp.setHeight(pf.offsetHeight);}}return A;},updateText:function(Q){if(!A.isVisible()&&!B.width){A.resizeTo(this.maxWidth,100);}
@@ -490,8 +490,9 @@ A.destroy();});}},onFirstFocus:function(){this.tb.items.each(function(A){A.enabl
 tb.addField(new Roo.form.TextField({name:i,width:D.width,value:'',listeners:{'change':function(f,nv,ov){tb.selectedNode.setAttribute(f.name,nv);}}}));}
 tb.el.on('click',function(e){e.preventDefault();});tb.el.setVisibilityMode(Roo.Element.DISPLAY);tb.el.hide();tb.name=nm;return tb;}});
 Roo.form.BasicForm=function(el,A){this.allItems=[];this.childForms=[];Roo.apply(this,A);this.items=new Roo.util.MixedCollection(false,function(o){return o.id||(o.id=Roo.id());});this.addEvents({beforeaction:true,actionfailed:true,actioncomplete:true});if(el){this.initEl(el);}
-Roo.form.BasicForm.superclass.constructor.call(this);};Roo.extend(Roo.form.BasicForm,Roo.util.Observable,{timeout:30,activeAction:null,trackResetOnLoad:false,childForms:false,allItems:false,waitMsgTarget:undefined,initEl:function(el){this.el=Roo.get(el);this.id=this.el.id||Roo.id();this.el.on('submit',this.onSubmit,this);this.el.addClass('x-form');},onSubmit:function(e){e.stopEvent();},isValid:function(){var A=true;this.items.each(function(f){if(!f.validate()){A=false;}});return A;},isDirty:function(){var A=false;this.items.each(function(f){if(f.isDirty()){A=true;return false;}});return A;},doAction:function(A,B){if(typeof A=='string'){A=new Roo.form.Action.ACTION_TYPES[A](this,B);}if(this.fireEvent('beforeaction',this,A)!==false){this.beforeAction(A);A.run.defer(100,A);}return this;},submit:function(A){this.doAction('submit',A);return this;},load:function(A){this.doAction('load',A);return this;},updateRecord:function(A){A.beginEdit();var fs=A.fields;fs.each(function(f){var B=this.findField(f.name);if(B){A.set(f.name,B.getValue());}},this);A.endEdit();return this;},loadRecord:function(A){this.setValues(A.data);return this;},beforeAction:function(A){var o=A.options;if(o.waitMsg){if(this.waitMsgTarget===true){this.el.mask(o.waitMsg,'x-mask-loading');}else if(this.waitMsgTarget){this.waitMsgTarget=Roo.get(this.waitMsgTarget);this.waitMsgTarget.mask(o.waitMsg,'x-mask-loading');}else {Roo.MessageBox.wait(o.waitMsg,o.waitTitle||this.waitTitle||'Please Wait...');}}},afterAction:function(A,B){this.activeAction=null;var o=A.options;if(o.waitMsg){if(this.waitMsgTarget===true){this.el.unmask();}else if(this.waitMsgTarget){this.waitMsgTarget.unmask();}else {Roo.MessageBox.updateProgress(1);Roo.MessageBox.hide();}}if(B){if(o.reset){this.reset();}
-Roo.callback(o.success,o.scope,[this,A]);this.fireEvent('actioncomplete',this,A);}else {Roo.callback(o.failure,o.scope,[this,A]);this.fireEvent('actionfailed',this,A);}},findField:function(id){var A=this.items.get(id);if(!A){this.items.each(function(f){if(f.isFormField&&(f.dataIndex==id||f.id==id||f.getName()==id)){A=f;return false;}});}return A||null;},addForm:function(A){if(this.childForms.indexOf(A)>-1){return;}
+Roo.form.BasicForm.superclass.constructor.call(this);};Roo.extend(Roo.form.BasicForm,Roo.util.Observable,{timeout:30,activeAction:null,trackResetOnLoad:false,childForms:false,allItems:false,waitMsgTarget:false,initEl:function(el){this.el=Roo.get(el);this.id=this.el.id||Roo.id();this.el.on('submit',this.onSubmit,this);this.el.addClass('x-form');},onSubmit:function(e){e.stopEvent();},isValid:function(){var A=true;this.items.each(function(f){if(!f.validate()){A=false;}});return A;},isDirty:function(){var A=false;this.items.each(function(f){if(f.isDirty()){A=true;return false;}});return A;},doAction:function(A,B){if(typeof A=='string'){A=new Roo.form.Action.ACTION_TYPES[A](this,B);}if(this.fireEvent('beforeaction',this,A)!==false){this.beforeAction(A);A.run.defer(100,A);}return this;},submit:function(A){this.doAction('submit',A);return this;},load:function(A){this.doAction('load',A);return this;},updateRecord:function(A){A.beginEdit();var fs=A.fields;fs.each(function(f){var B=this.findField(f.name);if(B){A.set(f.name,B.getValue());}},this);A.endEdit();return this;},loadRecord:function(A){this.setValues(A.data);return this;},beforeAction:function(A){var o=A.options;if(this.waitMsgTarget===true){this.el.mask(o.waitMsg||"Sending",'x-mask-loading');}else if(this.waitMsgTarget){this.waitMsgTarget=Roo.get(this.waitMsgTarget);this.waitMsgTarget.mask(o.waitMsg||"Sending",'x-mask-loading');}else {Roo.MessageBox.wait(o.waitMsg||"Sending",o.waitTitle||this.waitTitle||'Please Wait...');}},afterAction:function(A,B){this.activeAction=null;var o=A.options;if(this.waitMsgTarget===true){this.el.unmask();}else if(this.waitMsgTarget){this.waitMsgTarget.unmask();}else {Roo.MessageBox.updateProgress(1);Roo.MessageBox.hide();}if(B){if(o.reset){this.reset();}
+Roo.callback(o.success,o.scope,[this,A]);this.fireEvent('actioncomplete',this,A);}else {Roo.callback(o.failure,o.scope,[this,A]);if(!this.hasListener('actionfailed')){Roo.MessageBox.alert("Error","Saving Failed, please check your entries");}
+this.fireEvent('actionfailed',this,A);}},findField:function(id){var A=this.items.get(id);if(!A){this.items.each(function(f){if(f.isFormField&&(f.dataIndex==id||f.id==id||f.getName()==id)){A=f;return false;}});}return A||null;},addForm:function(A){if(this.childForms.indexOf(A)>-1){return;}
 this.childForms.push(A);var n='';Roo.each(A.allItems,function(fe){n=typeof(fe.getName)=='undefined'?fe.name:fe.getName();if(this.findField(n)){return;}var B=new Roo.form.Hidden({name:n});B.render(this.el);this.add(B);},this);},markInvalid:function(A){if(A instanceof Array){for(var i=0,B=A.length;i<B;i++){var C=A[i];var f=this.findField(C.id);if(f){f.markInvalid(C.msg);}}}else {var D,id;for(id in A){if(typeof A[id]!='function'&&(D=this.findField(id))){D.markInvalid(A[id]);}}}
 Roo.each(this.childForms||[],function(f){f.markInvalid(A);});return this;},setValues:function(A){if(A instanceof Array){for(var i=0,B=A.length;i<B;i++){var v=A[i];var f=this.findField(v.id);if(f){f.setValue(v.value);if(this.trackResetOnLoad){f.originalValue=f.getValue();}}}}else {var C,id;for(id in A){if(typeof A[id]!='function'&&(C=this.findField(id))){if(C.setFromData&&C.valueField&&C.displayField&&(C.store&&!C.store.isLocal)){var sd={};sd[C.valueField]=typeof(A[C.hiddenName])=='undefined'?'':A[C.hiddenName];sd[C.displayField]=typeof(A[C.name])=='undefined'?'':A[C.name];C.setFromData(sd);}else {C.setValue(A[id]);}if(this.trackResetOnLoad){C.originalValue=C.getValue();}}}}
 Roo.each(this.childForms||[],function(f){f.setValues(A);});return this;},getValues:function(A){if(this.childForms){Roo.each(this.childForms,function(f){this.setValues(f.getValues());},this);}var fs=Roo.lib.Ajax.serializeForm(this.el.dom);if(A===true){return fs;}return Roo.urlDecode(fs);},getFieldValues:function(){if(this.childForms){Roo.each(this.childForms,function(f){this.setValues(f.getValues());},this);}var A={};this.items.each(function(f){if(!f.getName()){return;}var v=f.getValue();if((typeof(v)=='object')&&f.getRawValue){v=f.getRawValue();}
@@ -608,7 +609,7 @@ B.showPanel(B.getPanel(0));}},getLayout:function(){return this.layout;},addxtype
 this.tree.render();});this.on('resize',function(cp,w,h){this.tree.innerCt.setWidth(w);this.tree.innerCt.setHeight(h);this.tree.innerCt.setStyle('overflow-y','auto');});};Roo.extend(Roo.TreePanel,Roo.ContentPanel,{fitToFrame:true,autoScroll:true});
 Roo.ReaderLayout=function(A,B){var c=A||{size:{}};Roo.ReaderLayout.superclass.constructor.call(this,B||document.body,{north:c.north!==false?Roo.apply({split:false,initialSize:32,titlebar:false},c.north):false,west:c.west!==false?Roo.apply({split:true,initialSize:200,minSize:175,maxSize:400,titlebar:true,collapsible:true,animate:true,margins:{left:5,right:0,bottom:5,top:5},cmargins:{left:5,right:5,bottom:5,top:5}},c.west):false,east:c.east!==false?Roo.apply({split:true,initialSize:200,minSize:175,maxSize:400,titlebar:true,collapsible:true,animate:true,margins:{left:0,right:5,bottom:5,top:5},cmargins:{left:5,right:5,bottom:5,top:5}},c.east):false,center:Roo.apply({tabPosition:'top',autoScroll:false,closeOnTab:true,titlebar:false,margins:{left:c.west!==false?0:5,right:c.east!==false?0:5,bottom:5,top:2}},c.center)});this.el.addClass('x-reader');this.beginUpdate();var C=new Roo.BorderLayout(Roo.get(document.body).createChild(),{south:c.preview!==false?Roo.apply({split:true,initialSize:200,minSize:100,autoScroll:true,collapsible:true,titlebar:true,cmargins:{top:5,left:0,right:0,bottom:0}},c.preview):false,center:Roo.apply({autoScroll:false,titlebar:false,minHeight:200},c.listView)});this.add('center',new Roo.NestedLayoutPanel(C,Roo.apply({title:c.mainTitle||'',tabTip:''},c.innerPanelCfg)));this.endUpdate();this.regions.preview=C.getRegion('south');this.regions.listView=C.getRegion('center');};Roo.extend(Roo.ReaderLayout,Roo.BorderLayout);
 Roo.grid.Grid=function(A,B){this.container=Roo.get(A);this.container.update("");this.container.setStyle("overflow","hidden");this.container.addClass('x-grid-container');this.id=this.container.id;Roo.apply(this,B);if(this.ds){this.dataSource=this.ds;delete this.ds;}if(this.cm){this.colModel=this.cm;delete this.cm;}if(this.sm){this.selModel=this.sm;delete this.sm;}if(this.selModel){this.selModel=Roo.factory(this.selModel,Roo.grid);this.sm=this.selModel;this.sm.xmodule=this.xmodule||false;}if(typeof(this.colModel.config)=='undefined'){this.colModel=new Roo.grid.ColumnModel(this.colModel);this.cm=this.colModel;this.cm.xmodule=this.xmodule||false;}if(this.dataSource){this.dataSource=Roo.factory(this.dataSource,Roo.data);this.ds=this.dataSource;this.ds.xmodule=this.xmodule||false;}if(this.width){this.container.setWidth(this.width);}if(this.height){this.container.setHeight(this.height);}
-this.addEvents({"click":true,"dblclick":true,"contextmenu":true,"mousedown":true,"mouseup":true,"mouseover":true,"mouseout":true,"keypress":true,"keydown":true,"cellclick":true,"celldblclick":true,"rowclick":true,"rowdblclick":true,"headerclick":true,"headerdblclick":true,"rowcontextmenu":true,"cellcontextmenu":true,"headercontextmenu":true,"bodyscroll":true,"columnresize":true,"columnmove":true,"startdrag":true,"enddrag":true,"dragdrop":true,"dragover":true,"dragenter":true,"dragout":true,render:true});Roo.grid.Grid.superclass.constructor.call(this);};Roo.extend(Roo.grid.Grid,Roo.util.Observable,{minColumnWidth:25,autoSizeColumns:false,autoSizeHeaders:true,monitorWindowResize:true,maxRowsToMeasure:0,trackMouseOver:true,enableDragDrop:false,enableColumnMove:true,enableColumnHide:true,enableRowHeightSync:false,stripeRows:true,autoHeight:false,autoExpandColumn:false,autoExpandMin:50,autoExpandMax:1000,view:null,loadMask:false,dropTarget:false,rendered:false,render:function(){var c=this.container;if((!c.dom.offsetHeight||c.dom.offsetHeight<20)||c.getStyle("height")=="auto"){this.autoHeight=true;}var A=this.getView();A.init(this);c.on("click",this.onClick,this);c.on("dblclick",this.onDblClick,this);c.on("contextmenu",this.onContextMenu,this);c.on("keydown",this.onKeyDown,this);this.relayEvents(c,["mousedown","mouseup","mouseover","mouseout","keypress"]);this.getSelectionModel().init(this);A.render();if(this.loadMask){this.loadMask=new Roo.LoadMask(this.container,Roo.apply({store:this.dataSource},this.loadMask));}if(this.toolbar&&this.toolbar.xtype){this.toolbar.container=this.getView().getHeaderPanel(true);this.toolbar=new Ext.Toolbar(this.toolbar);}if(this.footer&&this.footer.xtype){this.footer.dataSource=this.getDataSource();this.footer.container=this.getView().getFooterPanel(true);this.footer=Roo.factory(this.footer,Roo);}if(this.dropTarget&&this.dropTarget.xtype){delete this.dropTarget.xtype;this.dropTarget=new Ext.dd.DropTarget(this.getView().mainBody,this.dropTarget);}
+this.addEvents({"click":true,"dblclick":true,"contextmenu":true,"mousedown":true,"mouseup":true,"mouseover":true,"mouseout":true,"keypress":true,"keydown":true,"cellclick":true,"celldblclick":true,"rowclick":true,"rowdblclick":true,"headerclick":true,"headerdblclick":true,"rowcontextmenu":true,"cellcontextmenu":true,"headercontextmenu":true,"bodyscroll":true,"columnresize":true,"columnmove":true,"startdrag":true,"enddrag":true,"dragdrop":true,"dragover":true,"dragenter":true,"dragout":true,'rowclass':true,'render':true});Roo.grid.Grid.superclass.constructor.call(this);};Roo.extend(Roo.grid.Grid,Roo.util.Observable,{minColumnWidth:25,autoSizeColumns:false,autoSizeHeaders:true,monitorWindowResize:true,maxRowsToMeasure:0,trackMouseOver:true,enableDragDrop:false,enableColumnMove:true,enableColumnHide:true,enableRowHeightSync:false,stripeRows:true,autoHeight:false,autoExpandColumn:false,autoExpandMin:50,autoExpandMax:1000,view:null,loadMask:false,dropTarget:false,rendered:false,render:function(){var c=this.container;if((!c.dom.offsetHeight||c.dom.offsetHeight<20)||c.getStyle("height")=="auto"){this.autoHeight=true;}var A=this.getView();A.init(this);c.on("click",this.onClick,this);c.on("dblclick",this.onDblClick,this);c.on("contextmenu",this.onContextMenu,this);c.on("keydown",this.onKeyDown,this);this.relayEvents(c,["mousedown","mouseup","mouseover","mouseout","keypress"]);this.getSelectionModel().init(this);A.render();if(this.loadMask){this.loadMask=new Roo.LoadMask(this.container,Roo.apply({store:this.dataSource},this.loadMask));}if(this.toolbar&&this.toolbar.xtype){this.toolbar.container=this.getView().getHeaderPanel(true);this.toolbar=new Ext.Toolbar(this.toolbar);}if(this.footer&&this.footer.xtype){this.footer.dataSource=this.getDataSource();this.footer.container=this.getView().getFooterPanel(true);this.footer=Roo.factory(this.footer,Roo);}if(this.dropTarget&&this.dropTarget.xtype){delete this.dropTarget.xtype;this.dropTarget=new Ext.dd.DropTarget(this.getView().mainBody,this.dropTarget);}
 this.rendered=true;this.fireEvent('render',this);return this;},reconfigure:function(A,B){if(this.loadMask){this.loadMask.destroy();this.loadMask=new Roo.LoadMask(this.container,Roo.apply({store:A},this.loadMask));}
 this.view.bind(A,B);this.dataSource=A;this.colModel=B;this.view.refresh(true);},onKeyDown:function(e){this.fireEvent("keydown",e);},destroy:function(A,B){if(this.loadMask){this.loadMask.destroy();}var c=this.container;c.removeAllListeners();this.view.destroy();this.colModel.purgeListeners();if(!B){this.purgeListeners();}
 c.update("");if(A===true){c.remove();}},processEvent:function(A,e){this.fireEvent(A,e);var t=e.getTarget();var v=this.view;var B=v.findHeaderIndex(t);if(B!==false){this.fireEvent("header"+A,this,B,e);}else {var C=v.findRowIndex(t);var D=v.findCellIndex(t);if(C!==false){this.fireEvent("row"+A,this,C,e);if(D!==false){this.fireEvent("cell"+A,this,C,D,e);}}}},onClick:function(e){this.processEvent("click",e);},onContextMenu:function(e,t){this.processEvent("contextmenu",e);},onDblClick:function(e){this.processEvent("dblclick",e);},walkCells:function(A,B,C,fn,D){var cm=this.colModel,E=cm.getColumnCount();var ds=this.dataSource,F=ds.getCount(),G=true;if(C<0){if(B<0){A--;G=false;}while(A>=0){if(!G){B=E-1;}
@@ -649,11 +650,13 @@ b.innerHTML="";b=null;},deleteRows:function(dm,A,B){if(dm.getRowCount()<1){this.
 this.stripeRows(A);this.fireEvent("rowsdeleted",this,A,B);}},updateRows:function(A,B,C){var s=this.getScrollState();this.refresh();this.restoreScroll(s);},handleSort:function(A,B,C,D){if(!D){this.refresh();}
 this.updateHeaderSortState();},getScrollState:function(){var sb=this.scroller.dom;return {left:sb.scrollLeft,top:sb.scrollTop};},stripeRows:function(A){if(!this.grid.stripeRows||this.ds.getCount()<1){return;}
 A=A||0;var B=this.getBodyTable().rows;var C=this.getLockedTable().rows;var D=' x-grid-row-alt ';for(var i=A,E=B.length;i<E;i++){var F=B[i],G=C[i];var H=((i+1)%2==0);var I=(' '+F.className+' ').indexOf(D)!=-1;if(H==I){continue;}if(H){F.className+=" x-grid-row-alt";}else {F.className=F.className.replace("x-grid-row-alt","");}if(G){G.className=F.className;}}},restoreScroll:function(A){var sb=this.scroller.dom;sb.scrollLeft=A.left;sb.scrollTop=A.top;this.syncScroll();},syncScroll:function(){var sb=this.scroller.dom;var sh=this.mainHd.dom;var bs=this.mainBody.dom;var lv=this.lockedBody.dom;sh.scrollLeft=bs.scrollLeft=sb.scrollLeft;lv.scrollTop=bs.scrollTop=sb.scrollTop;},handleScroll:function(e){this.syncScroll();var sb=this.scroller.dom;this.grid.fireEvent("bodyscroll",sb.scrollLeft,sb.scrollTop);e.stopEvent();},handleWheel:function(e){var d=e.getWheelDelta();this.scroller.dom.scrollTop-=d*22;this.lockedBody.dom.scrollTop=this.mainBody.dom.scrollTop=this.scroller.dom.scrollTop;e.stopEvent();},renderRows:function(A,B){var g=this.grid,cm=g.colModel,ds=g.dataSource,C=g.stripeRows;var D=cm.getColumnCount();if(ds.getCount()<1){return ["",""];}var cs=[];for(var i=0;i<D;i++){var E=cm.getDataIndex(i);cs[i]={name:typeof E=='undefined'?ds.fields.get(i).name:E,renderer:cm.getRenderer(i),id:cm.getColumnId(i),locked:cm.isLocked(i)};}
-A=A||0;B=typeof B=="undefined"?ds.getCount()-1:B;var rs=ds.getRange(A,B);return this.doRender(cs,rs,ds,A,D,C);},doRender:Roo.isGecko?function(cs,rs,ds,A,B,C){var ts=this.templates,ct=ts.cell,rt=ts.row;var D="",E="",cb,F,c,p={},rp={},r,G;for(var j=0,H=rs.length;j<H;j++){r=rs[j];cb="";F="";G=(j+A);for(var i=0;i<B;i++){c=cs[i];p.cellId="x-grid-cell-"+G+"-"+i;p.id=c.id;p.css=p.attr="";p.value=c.renderer(r.data[c.name],p,r,G,i,ds);if(p.value==undefined||p.value==="")p.value="&#160;";if(r.dirty&&typeof r.modified[c.name]!=='undefined'){p.css+=p.css?' x-grid-dirty-cell':'x-grid-dirty-cell';}var I=ct.apply(p);if(!c.locked){cb+=I;}else {F+=I;}}var J=[];if(C&&((G+1)%2==0)){J[0]="x-grid-row-alt";}if(r.dirty){J[1]=" x-grid-dirty-row";}
-rp.cells=F;if(this.getRowClass){J[2]=this.getRowClass(r,G);}
-rp.alt=J.join(" ");E+=rt.apply(rp);rp.cells=cb;D+=rt.apply(rp);}return [E,D];}:function(cs,rs,ds,A,B,C){var ts=this.templates,ct=ts.cell,rt=ts.row;var D=[],E=[],cb,F,c,p={},rp={},r,G;for(var j=0,H=rs.length;j<H;j++){r=rs[j];cb=[];F=[];G=(j+A);for(var i=0;i<B;i++){c=cs[i];p.cellId="x-grid-cell-"+G+"-"+i;p.id=c.id;p.css=p.attr="";p.value=c.renderer(r.data[c.name],p,r,G,i,ds);if(p.value==undefined||p.value==="")p.value="&#160;";if(r.dirty&&typeof r.modified[c.name]!=='undefined'){p.css+=p.css?' x-grid-dirty-cell':'x-grid-dirty-cell';}var I=ct.apply(p);if(!c.locked){cb[cb.length]=I;}else {F[F.length]=I;}}var J=[];if(C&&((G+1)%2==0)){J[0]="x-grid-row-alt";}if(r.dirty){J[1]=" x-grid-dirty-row";}
-rp.cells=F;if(this.getRowClass){J[2]=this.getRowClass(r,G);}
-rp.alt=J.join(" ");rp.cells=F.join("");E[E.length]=rt.apply(rp);rp.cells=cb.join("");D[D.length]=rt.apply(rp);}return [E.join(""),D.join("")];},renderBody:function(){var A=this.renderRows();var bt=this.templates.body;return [bt.apply({rows:A[0]}),bt.apply({rows:A[1]})];},refresh:function(A){this.fireEvent("beforerefresh",this);this.grid.stopEditing();var B=this.renderBody();this.lockedBody.update(B[0]);this.mainBody.update(B[1]);if(A===true){this.updateHeaders();this.updateColumns();this.updateSplitters();this.updateHeaderSortState();}
+A=A||0;B=typeof B=="undefined"?ds.getCount()-1:B;var rs=ds.getRange(A,B);return this.doRender(cs,rs,ds,A,D,C);},doRender:Roo.isGecko?function(cs,rs,ds,A,B,C){var ts=this.templates,ct=ts.cell,rt=ts.row;var D="",E="",cb,F,c,p={},rp={},r,G;var H=this.grid.hasListener('rowclass');var I={};for(var j=0,J=rs.length;j<J;j++){r=rs[j];cb="";F="";G=(j+A);for(var i=0;i<B;i++){c=cs[i];p.cellId="x-grid-cell-"+G+"-"+i;p.id=c.id;p.css=p.attr="";p.value=c.renderer(r.data[c.name],p,r,G,i,ds);if(p.value==undefined||p.value==="")p.value="&#160;";if(r.dirty&&typeof r.modified[c.name]!=='undefined'){p.css+=p.css?' x-grid-dirty-cell':'x-grid-dirty-cell';}var K=ct.apply(p);if(!c.locked){cb+=K;}else {F+=K;}}var L=[];if(C&&((G+1)%2==0)){L.push("x-grid-row-alt")}if(r.dirty){L.push(" x-grid-dirty-row");}
+rp.cells=F;if(this.getRowClass){L.push(this.getRowClass(r,G));}if(H){I={record:r,rowIndex:G,rowClass:''}
+this.grid.fireEvent('rowclass',this,I);L.push(I.rowClass);}
+rp.alt=L.join(" ");E+=rt.apply(rp);rp.cells=cb;D+=rt.apply(rp);}return [E,D];}:function(cs,rs,ds,A,B,C){var ts=this.templates,ct=ts.cell,rt=ts.row;var D=[],E=[],cb,F,c,p={},rp={},r,G;var H=this.grid.hasListener('rowclass');var I={};for(var j=0,J=rs.length;j<J;j++){r=rs[j];cb=[];F=[];G=(j+A);for(var i=0;i<B;i++){c=cs[i];p.cellId="x-grid-cell-"+G+"-"+i;p.id=c.id;p.css=p.attr="";p.value=c.renderer(r.data[c.name],p,r,G,i,ds);if(p.value==undefined||p.value==="")p.value="&#160;";if(r.dirty&&typeof r.modified[c.name]!=='undefined'){p.css+=p.css?' x-grid-dirty-cell':'x-grid-dirty-cell';}var K=ct.apply(p);if(!c.locked){cb[cb.length]=K;}else {F[F.length]=K;}}var L=[];if(C&&((G+1)%2==0)){L.push("x-grid-row-alt");}if(r.dirty){L.push(" x-grid-dirty-row");}
+rp.cells=F;if(this.getRowClass){L.push(this.getRowClass(r,G));}if(H){I={record:r,rowIndex:G,rowClass:''}
+this.grid.fireEvent('rowclass',this,I);L.push(I.rowClass);}
+rp.alt=L.join(" ");rp.cells=F.join("");E[E.length]=rt.apply(rp);rp.cells=cb.join("");D[D.length]=rt.apply(rp);}return [E.join(""),D.join("")];},renderBody:function(){var A=this.renderRows();var bt=this.templates.body;return [bt.apply({rows:A[0]}),bt.apply({rows:A[1]})];},refresh:function(A){this.fireEvent("beforerefresh",this);this.grid.stopEditing();var B=this.renderBody();this.lockedBody.update(B[0]);this.mainBody.update(B[1]);if(A===true){this.updateHeaders();this.updateColumns();this.updateSplitters();this.updateHeaderSortState();}
 this.syncRowHeights();this.layout();this.fireEvent("refresh",this);},handleColumnMove:function(cm,A,B){this.indexMap=null;var s=this.getScrollState();this.refresh(true);this.restoreScroll(s);this.afterMove(B);},afterMove:function(A){if(this.enableMoveAnim&&Roo.enableFx){this.fly(this.getHeaderCell(A).firstChild).highlight(this.hlColor);}},updateCell:function(dm,A,B){var C=this.getColumnIndexByDataIndex(B);if(typeof C=="undefined"){return;}var cm=this.grid.colModel;var D=this.getCell(A,C);var E=this.getCellText(A,C);var p={cellId:"x-grid-cell-"+A+"-"+C,id:cm.getColumnId(C),css:C==cm.getColumnCount()-1?"x-grid-col-last":""};var F=cm.getRenderer(C);var G=F(dm.getValueAt(A,B),p,A,C,dm);if(typeof G=="undefined"||G==="")G="&#160;";E.innerHTML=G;D.className=this.cellClass+" "+this.idToCssName(p.cellId)+" "+p.css;this.syncRowHeights(A,A);},calcColumnWidth:function(A,B){var C=0;if(this.grid.autoSizeHeaders){var h=this.getHeaderCellMeasure(A);C=Math.max(C,h.scrollWidth);}var tb,D;if(this.cm.isLocked(A)){tb=this.getLockedTable();D=A;}else {tb=this.getBodyTable();D=A-this.cm.getLockedCount();}if(tb&&tb.rows){var E=tb.rows;var F=Math.min(B||E.length,E.length);for(var i=0;i<F;i++){var G=E[i].childNodes[D].firstChild;C=Math.max(C,G.scrollWidth);}}return C+5;},autoSizeColumn:function(A,B,C){if(this.cm.isHidden(A)){return;}if(B){var D=this.cm.getColumnId(A);this.css.updateRule(this.colSelector+this.idToCssName(D),"width",this.grid.minColumnWidth+"px");if(this.grid.autoSizeHeaders){this.css.updateRule(this.hdSelector+this.idToCssName(D),"width",this.grid.minColumnWidth+"px");}}var E=this.calcColumnWidth(A);this.cm.setColumnWidth(A,Math.max(this.grid.minColumnWidth,E),C);if(!C){this.grid.fireEvent("columnresize",A,E);}},autoSizeColumns:function(){var cm=this.grid.colModel;var A=cm.getColumnCount();for(var i=0;i<A;i++){this.autoSizeColumn(i,true,true);}if(cm.getTotalWidth()<this.scroller.dom.clientWidth){this.fitColumns();}else {this.updateColumns();this.layout();}},fitColumns:function(A){var cm=this.grid.colModel;var B=cm.getColumnCount();var C=[];var D=0;var i,w;for(i=0;i<B;i++){if(!cm.isHidden(i)&&!cm.isFixed(i)){w=cm.getColumnWidth(i);C.push(i);C.push(w);D+=w;}}var E=Math.min(this.scroller.dom.clientWidth,this.el.getWidth());if(A){E-=17;}var F=(E-cm.getTotalWidth())/D;while(C.length){w=C.pop();i=C.pop();cm.setColumnWidth(i,Math.floor(w+w*F),true);}
 this.updateColumns();this.layout();},onRowSelect:function(A){var B=this.getRowComposite(A);B.addClass("x-grid-row-selected");},onRowDeselect:function(A){var B=this.getRowComposite(A);B.removeClass("x-grid-row-selected");},onCellSelect:function(A,B){var C=this.getCell(A,B);if(C){Roo.fly(C).addClass("x-grid-cell-selected");}},onCellDeselect:function(A,B){var C=this.getCell(A,B);if(C){Roo.fly(C).removeClass("x-grid-cell-selected");}},updateHeaderSortState:function(){var A=this.ds.getSortState();if(!A){return;}
 this.sortState=A;var B=this.cm.findColumnIndex(A.field);if(B!=-1){var C=A.direction;var sc=this.sortClasses;var D=this.el.select(this.headerSelector).removeClass(sc);D.item(B).addClass(sc[C=="DESC"?1:0]);}},handleHeaderClick:function(g,A){if(this.headersDisabled){return;}var dm=g.dataSource,cm=g.colModel;if(!cm.isSortable(A)){return;}
index 2bd45f7..60e13f0 100644 (file)
@@ -394,8 +394,7 @@ Roo.apply(Roo.ux.Lightbox.prototype,
         }
         */
         var s = Roo.get(document).getScroll();
-        
-        // calculate top and left offset for the lightbox 
+         // calculate top and left offset for the lightbox 
         // weird.. why / 10?
         var lightboxTop = s.top + (Roo.lib.Dom.getViewHeight() / 10);
         var lightboxLeft = s.left
@@ -408,7 +407,6 @@ Roo.apply(Roo.ux.Lightbox.prototype,
         this.lightbox.show();
         
         
-        
         this.changeImage(imageNum);
     },