docs/default.css
[roojs1] / docs / json / roodata.json
index 0acec68..eebfd75 100644 (file)
      "type": "function",
      "desc": "Protected method that will not generally be called directly. If you need/want\ncustom HTML cleanup, this is the method you should override."
     },
+    {
+     "name": "cleanTableWidths",
+     "sig": "()",
+     "type": "function",
+     "desc": "cleanTableWidths.\n\nQuite often pasting from word etc.. results in tables with column and widths.\nThis does not work well on fluid HTML layouts - like emails. - so this code should hunt an destroy them.."
+    },
     {
      "name": "cleanWord",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
+    {
+     "name": "iterateChildren",
+     "sig": "(DomNode node, Function fn)",
+     "type": "function",
+     "desc": "iterateChildren of a Node, calling fn each time, using this as the scole.."
+    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
+    },
+    {
+     "name": "initEvents",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialize Events for the element"
+    },
+    {
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
+    },
+    {
+     "name": "setActive",
+     "sig": "(Boolean state)",
+     "type": "function",
+     "desc": "sets the active state on/off,"
+    },
+    {
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
+    {
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show a component - removes 'hidden' class"
+    },
+    {
+     "name": "toggleActive",
+     "sig": "()",
+     "type": "function",
+     "desc": "toggles the current active state"
+    },
+    {
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.bootstrap.ButtonGroup": {
+   "props": [
+    {
+     "name": "size",
+     "type": "String",
+     "desc": "lg | sm | xs (default empty normal)",
+     "memberOf": ""
+    },
+    {
+     "name": "align",
+     "type": "String",
+     "desc": "vertical | justified  (default none)",
+     "memberOf": ""
+    },
+    {
+     "name": "direction",
+     "type": "String",
+     "desc": "up | down (default down)",
+     "memberOf": ""
+    },
+    {
+     "name": "toolbar",
+     "type": "Boolean",
+     "desc": "false | true",
+     "memberOf": ""
+    },
+    {
+     "name": "btn",
+     "type": "Boolean",
+     "desc": "true | false",
+     "memberOf": ""
+    },
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "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": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+    },
+    {
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
+    },
+    {
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
+    {
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
+    {
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getChildContainer",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to add children to"
+    },
+    {
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
+    },
+    {
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
-    {
-     "name": "setActive",
-     "sig": "(Boolean state)",
-     "type": "function",
-     "desc": "sets the active state on/off,"
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
-    },
-    {
-     "name": "toggleActive",
-     "sig": "()",
-     "type": "function",
-     "desc": "toggles the current active state"
-    },
-    {
-     "name": "tooltipEl",
-     "sig": "()",
-     "type": "function",
-     "desc": "Fetch the element to display the tooltip on."
-    },
-    {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
-    }
-   ]
-  },
-  "Roo.bootstrap.ButtonGroup": {
-   "props": [
-    {
-     "name": "size",
-     "type": "String",
-     "desc": "lg | sm | xs (default empty normal)",
-     "memberOf": ""
-    },
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "vertical | justified  (default none)",
-     "memberOf": ""
-    },
-    {
-     "name": "direction",
-     "type": "String",
-     "desc": "up | down (default down)",
-     "memberOf": ""
-    },
-    {
-     "name": "toolbar",
-     "type": "Boolean",
-     "desc": "false | true",
-     "memberOf": ""
-    },
-    {
-     "name": "btn",
-     "type": "Boolean",
-     "desc": "true | false",
-     "memberOf": ""
-    },
-    {
-     "name": "cls",
-     "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
-    },
-    {
-     "name": "style",
-     "type": "String",
-     "desc": "any extra css",
-     "memberOf": "Roo.bootstrap.Component"
-    },
-    {
-     "name": "xattr",
-     "type": "Object",
-     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
-     "memberOf": "Roo.bootstrap.Component"
-    },
-    {
-     "name": "can_build_overlaid",
-     "type": "Boolean",
-     "desc": "True if element can be rebuild from a HTML page",
-     "memberOf": "Roo.bootstrap.Component"
-    },
-    {
-     "name": "dataId",
-     "type": "string",
-     "desc": "cutomer id",
-     "memberOf": "Roo.bootstrap.Component"
-    },
-    {
-     "name": "name",
-     "type": "string",
-     "desc": "Specifies name attribute",
-     "memberOf": "Roo.bootstrap.Component"
-    },
-    {
-     "name": "tooltip",
-     "type": "string",
-     "desc": "Text for the tooltip",
-     "memberOf": "Roo.bootstrap.Component"
-    },
-    {
-     "name": "container_method",
-     "type": "string",
-     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
-     "memberOf": "Roo.bootstrap.Component"
-    },
-    {
-     "name": "disableClass",
-     "type": "String",
-     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
-     "memberOf": "Roo.Component"
-    },
-    {
-     "name": "allowDomMove",
-     "type": "Boolean",
-     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
-     "memberOf": "Roo.Component"
-    },
-    {
-     "name": "hideMode",
-     "type": "String",
-     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
-     "memberOf": "Roo.Component",
-     "optvals": [
-      "display",
-      "visibility"
-     ]
-    },
-    {
-     "name": "actionMode",
-     "type": "String",
-     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
-     "memberOf": "Roo.Component"
-    },
-    {
-     "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": "beforedestroy",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
-    },
-    {
-     "name": "beforehide",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is hidden. Return false to stop the hide."
-    },
-    {
-     "name": "beforerender",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is rendered. Return false to stop the render."
-    },
-    {
-     "name": "beforeshow",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is shown.  Return false to stop the show."
-    },
-    {
-     "name": "childrenrendered",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the children have been rendered.."
-    },
-    {
-     "name": "destroy",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is destroyed."
-    },
-    {
-     "name": "disable",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is disabled."
-    },
-    {
-     "name": "enable",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is enabled."
-    },
-    {
-     "name": "hide",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is hidden."
-    },
-    {
-     "name": "render",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is rendered."
-    },
-    {
-     "name": "show",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is shown."
-    }
-   ],
-   "methods": [
-    {
-     "name": "addEvents",
-     "sig": "(Object object)",
-     "type": "function",
-     "desc": "Used to define events on this Observable"
-    },
-    {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this component"
-    },
-    {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
-     "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
-    },
-    {
-     "name": "destroy",
-     "sig": "()",
-     "type": "function",
-     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
-    },
-    {
-     "name": "disable",
-     "sig": "()",
-     "type": "function",
-     "desc": "Disable this component."
-    },
-    {
-     "name": "enable",
-     "sig": "()",
-     "type": "function",
-     "desc": "Enable this component."
-    },
-    {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
-     "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
-    },
-    {
-     "name": "focus",
-     "sig": "(Boolean selectText)",
-     "type": "function",
-     "desc": "Try to focus this component."
-    },
-    {
-     "name": "getChildContainer",
-     "sig": "()",
-     "type": "function",
-     "desc": "Fetch the element to add children to"
-    },
-    {
-     "name": "getEl",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the underlying {@link Roo.Element}."
-    },
-    {
-     "name": "getId",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the id of this component."
-    },
-    {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
-    },
-    {
-     "name": "hide",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hide this component."
-    },
-    {
-     "name": "initEvents",
-     "sig": "()",
-     "type": "function",
-     "desc": "Initialize Events for the element"
-    },
-    {
-     "name": "isVisible",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if this component is visible."
-    },
-    {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
-    },
-    {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
-    },
-    {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
-     "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
-    },
-    {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener"
-    },
-    {
-     "name": "render",
-     "sig": "(String/HTMLElement/Element container)",
-     "type": "function",
-     "desc": "If this is a lazy rendering component, render it to its container element."
-    },
-    {
-     "name": "setDisabled",
-     "sig": "(Boolean disabled)",
-     "type": "function",
-     "desc": "Convenience function for setting disabled/enabled by boolean."
-    },
-    {
-     "name": "setVisible",
-     "sig": "(Boolean visible)",
-     "type": "function",
-     "desc": "Convenience function to hide or show this component by boolean."
-    },
-    {
-     "name": "show",
-     "sig": "()",
-     "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "desc": "is it disabled",
      "memberOf": "Roo.bootstrap.Input"
     },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
     {
      "name": "inputType",
      "type": "String",
      "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "desc": "set the position of the trigger button (left | right) default right",
      "memberOf": ""
     },
+    {
+     "name": "animate",
+     "type": "Boolean",
+     "desc": "default true",
+     "memberOf": ""
+    },
+    {
+     "name": "emptyResultText",
+     "type": "Boolean",
+     "desc": "only for touch device",
+     "memberOf": ""
+    },
+    {
+     "name": "triggerText",
+     "type": "String",
+     "desc": "multiple combobox trigger button text default 'Select'",
+     "memberOf": ""
+    },
     {
      "name": "lazyRender",
      "type": "Boolean",
       "false"
      ]
     },
+    {
+     "name": "mobileTouchView",
+     "type": "Boolean",
+     "desc": "show mobile touch view when using a mobile default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "triggerClass",
      "type": "String",
      "memberOf": "Roo.bootstrap.TriggerField"
     },
     {
-     "name": "disabled",
+     "name": "removable",
      "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "special filter default false",
+     "memberOf": "Roo.bootstrap.TriggerField",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "is it disabled",
      "memberOf": "Roo.bootstrap.Input"
     },
     {
      "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "type": "function",
      "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
     },
+    {
+     "name": "tick",
+     "sig": "function (combo)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when tick the element"
+    },
+    {
+     "name": "touchviewdisplay",
+     "sig": "function (combo, cfg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when touch view require special display (default is using displayField)"
+    },
     {
      "name": "valid",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.ComboBox2": {
+  "Roo.bootstrap.Component": {
    "props": [
     {
-     "name": "append",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "autoFocus",
-     "type": "Boolean",
-     "desc": "auto focus the first item, default true",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "tickable",
-     "type": "Boolean",
-     "desc": "ComboBox with tickable selections (true|false), default false",
-     "memberOf": ""
-    },
-    {
-     "name": "btnPosition",
+     "name": "cls",
      "type": "String",
-     "desc": "set the position of the trigger button (left | right) default right",
-     "memberOf": ""
-    },
-    {
-     "name": "lazyRender",
-     "type": "Boolean",
-     "desc": "True to prevent the ComboBox from rendering until requested (should always be used when\nrendering into an Roo.Editor, defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "autoCreate",
-     "type": "Boolean/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to:\n{tag: \"input\", type: \"text\", size: \"24\", autocomplete: \"off\"})",
-     "memberOf": ""
-    },
-    {
-     "name": "store",
-     "type": "Roo.data.Store",
-     "desc": "The data store to which this combo is bound (defaults to undefined)",
+     "desc": "css class",
      "memberOf": ""
     },
     {
-     "name": "title",
+     "name": "style",
      "type": "String",
-     "desc": "If supplied, a header element is created containing this text and added into the top of\nthe dropdown list (defaults to undefined, with no header element)",
+     "desc": "any extra css",
      "memberOf": ""
     },
     {
-     "name": "tpl",
-     "type": "String/Roo.Template",
-     "desc": "The template to use to render the output",
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
      "memberOf": ""
     },
     {
-     "name": "grow",
+     "name": "can_build_overlaid",
      "type": "Boolean",
-     "desc": "",
+     "desc": "True if element can be rebuild from a HTML page",
      "memberOf": ""
     },
     {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "",
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
      "memberOf": ""
     },
     {
-     "name": "growMax",
-     "type": "Number",
-     "desc": "",
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
      "memberOf": ""
     },
     {
-     "name": "listWidth",
-     "type": "Number",
-     "desc": "The width in pixels of the dropdown list (defaults to the width of the ComboBox field)",
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
      "memberOf": ""
     },
     {
-     "name": "displayField",
-     "type": "String",
-     "desc": "The underlying data field name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'text' if mode = 'local')",
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
      "memberOf": ""
     },
     {
-     "name": "valueField",
+     "name": "disableClass",
      "type": "String",
-     "desc": "The underlying data value name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'value' if mode = 'local'). \nNote: use of a valueField requires the user make a selection\nin order for a value to be mapped.",
-     "memberOf": ""
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "hiddenName",
-     "type": "String",
-     "desc": "If specified, a hidden form field with this name is dynamically generated to store the\nfield's data value (defaults to the underlying DOM element's name)",
-     "memberOf": ""
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "listClass",
+     "name": "hideMode",
      "type": "String",
-     "desc": "CSS class to apply to the dropdown list element (defaults to '')",
-     "memberOf": ""
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
     },
     {
-     "name": "selectedClass",
+     "name": "actionMode",
      "type": "String",
-     "desc": "CSS class to apply to the selected item in the dropdown list (defaults to 'x-combo-selected')",
-     "memberOf": ""
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "shadow",
-     "type": "Boolean/String",
-     "desc": "True or \"sides\" for the default effect, \"frame\" for 4-way shadow, and \"drop\" for bottom-right",
-     "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": "listAlign",
-     "type": "String",
-     "desc": "A valid anchor position value. See {@link Roo.Element#alignTo} for details on supported\nanchor positions (defaults to 'tl-bl')",
-     "memberOf": ""
+     "name": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "maxHeight",
-     "type": "Number",
-     "desc": "The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300)",
-     "memberOf": ""
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "triggerAction",
-     "type": "String",
-     "desc": "The action to execute when the trigger field is activated.  Use 'all' to run the\nquery specified by the allQuery config option (defaults to 'query')",
-     "memberOf": ""
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "minChars",
-     "type": "Number",
-     "desc": "The minimum number of characters the user must type before autocomplete and typeahead activate\n(defaults to 4, does not apply if editable = false)",
-     "memberOf": ""
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "typeAhead",
-     "type": "Boolean",
-     "desc": "True to populate and autoselect the remainder of the text being typed after a configurable\ndelay (typeAheadDelay) if it matches a known value (defaults to false)",
-     "memberOf": ""
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "queryDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to delay between the start of typing and sending the\nquery to filter the dropdown list (defaults to 500 if mode = 'remote' or 10 if mode = 'local')",
-     "memberOf": ""
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
     },
     {
-     "name": "pageSize",
-     "type": "Number",
-     "desc": "If greater than 0, a paging toolbar is displayed in the footer of the dropdown list and the\nfilter queries will execute with page start and limit parameters.  Only applies when mode = 'remote' (defaults to 0)",
-     "memberOf": ""
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
     },
     {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to select any existing text in the field immediately on focus.  Only applies\nwhen editable = true (defaults to false)",
-     "memberOf": ""
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
     },
     {
-     "name": "queryParam",
-     "type": "String",
-     "desc": "Name of the query as it will be passed on the querystring (defaults to 'query')",
-     "memberOf": ""
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
     },
     {
-     "name": "loadingText",
-     "type": "String",
-     "desc": "The text to display in the dropdown list while data is loading.  Only applies\nwhen mode = 'remote' (defaults to 'Loading...')",
-     "memberOf": ""
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "resizable",
-     "type": "Boolean",
-     "desc": "True to add a resize handle to the bottom of the dropdown list (defaults to false)",
-     "memberOf": ""
-    },
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    }
+   ],
+   "methods": [
     {
-     "name": "handleHeight",
-     "type": "Number",
-     "desc": "The height in pixels of the dropdown list resize handle if resizable = true (defaults to 8)",
-     "memberOf": ""
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "editable",
-     "type": "Boolean",
-     "desc": "False to prevent the user from typing text directly into the field, just like a\ntraditional select (defaults to true)",
-     "memberOf": ""
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "allQuery",
-     "type": "String",
-     "desc": "The text query to send to the server to return all records for the list with no filtering (defaults to '')",
-     "memberOf": ""
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "mode",
-     "type": "String",
-     "desc": "Set to 'local' if the ComboBox loads local data (defaults to 'remote' which loads from the server)",
-     "memberOf": ""
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
     },
     {
-     "name": "minListWidth",
-     "type": "Number",
-     "desc": "The minimum width of the dropdown list in pixels (defaults to 70, will be ignored if\nlistWidth has a higher value)",
-     "memberOf": ""
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
     },
     {
-     "name": "forceSelection",
-     "type": "Boolean",
-     "desc": "True to restrict the selected value to one of the values in the list, false to\nallow the user to set arbitrary text into the field (defaults to false)",
-     "memberOf": ""
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
     },
     {
-     "name": "typeAheadDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to wait until the typeahead text is displayed\nif typeAhead = true (defaults to 250)",
-     "memberOf": ""
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "valueNotFoundText",
-     "type": "String",
-     "desc": "When using a name/value combo, if the value passed to setValue is not found in\nthe store, valueNotFoundText will be displayed as the field text if defined (defaults to undefined)",
-     "memberOf": ""
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
     },
     {
-     "name": "blockFocus",
-     "type": "Boolean",
-     "desc": "Prevents all focus calls, so it can work with things like HTML edtor bar",
-     "memberOf": ""
+     "name": "getChildContainer",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to add children to"
     },
     {
-     "name": "disableClear",
-     "type": "Boolean",
-     "desc": "Disable showing of clear button.",
-     "memberOf": ""
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "alwaysQuery",
-     "type": "Boolean",
-     "desc": "Disable caching of results, and always send query",
-     "memberOf": ""
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
     },
     {
-     "name": "multiple",
-     "type": "Boolean",
-     "desc": "ComboBobArray, default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "triggerClass",
-     "type": "String",
-     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' by default and triggerClass will be <b>appended</b> if specified.",
-     "memberOf": "Roo.bootstrap.TriggerField"
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
-     "name": "caret",
-     "type": "String",
-     "desc": "a fontawesome for the trigger icon see http://fortawesome.github.io/Font-Awesome/icons/",
-     "memberOf": "Roo.bootstrap.TriggerField",
-     "optvals": [
-      "search",
-      "calendar"
-     ]
+     "name": "initEvents",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialize Events for the element"
     },
     {
-     "name": "hideTrigger",
-     "type": "Boolean",
-     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
-     "memberOf": "Roo.bootstrap.TriggerField"
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
     },
     {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "inputType",
-     "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "name",
-     "type": "String",
-     "desc": "name of the input",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
     },
     {
-     "name": "placeholder",
-     "type": "string",
-     "desc": "- placeholder to put in text.",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "before",
-     "type": "string",
-     "desc": "- input group add on before",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "after",
-     "type": "string",
-     "desc": "- input group add on after",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "size",
-     "type": "string",
-     "desc": "- (lg|sm) or leave empty..",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
-     "name": "xs",
-     "type": "Number",
-     "desc": "colspan out of 12 for mobile-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
     },
     {
-     "name": "sm",
-     "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.bootstrap.Container": {
+   "props": [
+    {
+     "name": "jumbotron",
+     "type": "Boolean",
+     "desc": "is it a jumbotron element",
+     "memberOf": ""
     },
     {
-     "name": "md",
-     "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "html",
+     "type": "String",
+     "desc": "content of element",
+     "memberOf": ""
     },
     {
-     "name": "lg",
-     "type": "Number",
-     "desc": "colspan out of 12 for large computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "value",
-     "type": "string",
-     "desc": "default value of the input",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "labelWidth",
-     "type": "Number",
-     "desc": "set the width of label (0-12)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "labelAlign",
+     "name": "well",
      "type": "String",
-     "desc": "",
-     "memberOf": "Roo.bootstrap.Input",
+     "desc": "a well, large, small or medium.",
+     "memberOf": "",
      "optvals": [
-      "top",
-      "left"
+      "lg",
+      "sm",
+      "md"
      ]
     },
     {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "Specifies that the field should be read-only",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "autocomplete",
-     "type": "String",
-     "desc": "- default is new-password see: https://developers.google.com/web/fundamentals/input/form/label-and-name-inputs?hl=en",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "align",
+     "name": "panel",
      "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
+     "desc": "render as panel  - type - primary/success.....",
+     "memberOf": "",
      "optvals": [
-      "left",
-      "center",
-      "right"
+      "primary",
+      "success",
+      "info",
+      "warning",
+      "danger"
      ]
     },
     {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "focusClass",
+     "name": "header",
      "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "content of header (for panel)",
+     "memberOf": ""
     },
     {
-     "name": "invalidClass",
+     "name": "footer",
      "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "content of footer (for panel)",
+     "memberOf": ""
     },
     {
-     "name": "validClass",
+     "name": "sticky",
      "type": "String",
-     "desc": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "hasFeedback",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
+     "desc": "block to use as footer or body- needs css-bootstrap/sticky-footer.css",
+     "memberOf": "",
      "optvals": [
-      "true",
-      "false"
+      "footer",
+      "wrap",
+      "push"
      ]
     },
     {
-     "name": "invalidFeedbackIcon",
+     "name": "tag",
      "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "type of HTML tag.",
+     "memberOf": "",
+     "optvals": [
+      "header",
+      "aside",
+      "section"
+     ]
     },
     {
-     "name": "validFeedbackIcon",
+     "name": "alert",
      "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "type alert (changes background / border...)",
+     "memberOf": "",
+     "optvals": [
+      "success",
+      "info",
+      "warning",
+      "danger"
+     ]
     },
     {
-     "name": "maskRe",
+     "name": "fa",
      "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "font awesome icon",
+     "memberOf": ""
     },
     {
-     "name": "vtype",
+     "name": "icon",
      "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "glyphicon name",
+     "memberOf": "",
+     "optvals": [
+      "info-sign",
+      "check",
+      "..."
+     ]
     },
     {
-     "name": "disableKeyFilter",
+     "name": "hidden",
      "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "hide the element",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "allowBlank",
+     "name": "expandable",
      "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "blankText",
-     "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "minLengthText",
-     "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "expanded",
+     "type": "Boolean",
+     "desc": "default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "maxLengthText",
+     "name": "rheader",
      "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "contet on the right of header",
+     "memberOf": ""
     },
     {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "clickable",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
      "name": "cls",
      "desc": "cutomer id",
      "memberOf": "Roo.bootstrap.Component"
     },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
     {
      "name": "tooltip",
      "type": "string",
     }
    ],
    "events": [
-    {
-     "name": "add",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'add' icon is pressed (add a listener to enable add button)"
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
-    {
-     "name": "beforequery",
-     "sig": "function (combo, query, forceAll, cancel, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before all queries are processed. Return false to cancel the query or set cancel to true.\nThe event object passed has these properties:"
-    },
     {
      "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is rendered. Return false to stop the render."
     },
-    {
-     "name": "beforeselect",
-     "sig": "function (combo, record, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a list item is selected. Return false to cancel the selection."
-    },
     {
      "name": "beforeshow",
      "sig": "function (_self)\n{\n\n}",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "blur",
+     "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this field loses input focus."
-    },
-    {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "childrenrendered",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "click",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the children have been rendered.."
+     "desc": "When a element is chick"
     },
     {
      "name": "collapse",
-     "sig": "function (combo)\n{\n\n}",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the dropdown list is collapsed"
+     "desc": "After the panel has been collapsed"
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Fires after the component is disabled."
     },
-    {
-     "name": "edit",
-     "sig": "function (combo, record)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'edit' icon is pressed (add a listener to enable add button)"
-    },
     {
      "name": "enable",
      "sig": "function (_self)\n{\n\n}",
     },
     {
      "name": "expand",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the dropdown list is expanded"
-    },
-    {
-     "name": "focus",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this field receives input focus."
+     "desc": "After the panel has been expand"
     },
     {
      "name": "hide",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
-    },
-    {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the key up"
-    },
-    {
-     "name": "remove",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the remove value from the combobox array"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "select",
-     "sig": "function (combo, record, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a list item is selected"
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
-    },
-    {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
-    },
-    {
-     "name": "valid",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
-    },
-    {
-     "name": "clearValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clears any text/value currently set in the field"
-    },
-    {
-     "name": "collapse",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hides the dropdown list if it is currently expanded. Fires the 'collapse' event on completion."
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Disable this component."
     },
-    {
-     "name": "doQuery",
-     "sig": "(String query, Boolean forceAll)",
-     "type": "function",
-     "desc": "Execute a query to filter the dropdown list.  Fires the beforequery event prior to performing the\nquery allowing the query action to be canceled if needed."
-    },
     {
      "name": "enable",
      "sig": "()",
      "type": "function",
      "desc": "Enable this component."
     },
-    {
-     "name": "expand",
-     "sig": "()",
-     "type": "function",
-     "desc": "Expands the dropdown list if it is currently hidden. Fires the 'expand' event on completion."
-    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getName",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the name of the field"
-    },
-    {
-     "name": "getRawValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
-    },
-    {
-     "name": "getValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the currently selected field value or empty string if no value is set."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Initialize Events for the element"
     },
-    {
-     "name": "inputEl",
-     "sig": "()",
-     "type": "function",
-     "desc": "return the real input element."
-    },
-    {
-     "name": "isExpanded",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the dropdown list is expanded, else false."
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
-    {
-     "name": "markInvalid",
-     "sig": "(String msg)",
-     "type": "function",
-     "desc": "Mark this field as invalid"
-    },
-    {
-     "name": "markValid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Mark this field as valid"
-    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
-    {
-     "name": "onTriggerClick",
-     "sig": "(EventObject e)",
-     "type": "function",
-     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
-    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
-    {
-     "name": "reset",
-     "sig": "()",
-     "type": "function",
-     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
-    },
-    {
-     "name": "select",
-     "sig": "(Number index, Boolean scrollIntoView)",
-     "type": "function",
-     "desc": "Select an item in the dropdown list by its numeric index in the list. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
-    },
-    {
-     "name": "selectByValue",
-     "sig": "(String value, Boolean scrollIntoView)",
-     "type": "function",
-     "desc": "Select an item in the dropdown list by its data value. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setEditable",
-     "sig": "(Boolean value)",
-     "type": "function",
-     "desc": "Allow or prevent the user from directly editing the field text.  If false is passed,\nthe user will only be able to select from the items defined in the dropdown list.  This method\nis the runtime equivalent of setting the 'editable' config option at config time."
-    },
-    {
-     "name": "setFromData",
-     "sig": "(Object value)",
-     "type": "function",
-     "desc": "Sets the value of the field based on a object which is related to the record format for the store."
-    },
-    {
-     "name": "setRawValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
-    },
-    {
-     "name": "setValue",
-     "sig": "(String value)",
-     "type": "function",
-     "desc": "Sets the specified value into the field.  If the value finds a match, the corresponding record text\nwill be displayed in the field.  If the value does not match the data value of an existing item,\nand the valueNotFoundText config option is defined, it will be displayed as the default field text.\nOtherwise the field will be blank (although the value will still be set)."
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "validate",
-     "sig": "()",
-     "type": "function",
-     "desc": "Validates the field value"
-    },
-    {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.bootstrap.ComboBox_old": {
+  "Roo.bootstrap.DateField": {
    "props": [
     {
-     "name": "append",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "autoFocus",
-     "type": "Boolean",
-     "desc": "auto focus the first item, default true",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "weekStart",
+     "type": "Number",
+     "desc": "default 0",
+     "memberOf": ""
     },
     {
-     "name": "lazyRender",
-     "type": "Boolean",
-     "desc": "True to prevent the ComboBox from rendering until requested (should always be used when\nrendering into an Roo.Editor, defaults to false)",
+     "name": "viewMode",
+     "type": "String",
+     "desc": "default empty, (months|years)",
      "memberOf": ""
     },
     {
-     "name": "autoCreate",
-     "type": "Boolean/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to:\n{tag: \"input\", type: \"text\", size: \"24\", autocomplete: \"off\"})",
+     "name": "minViewMode",
+     "type": "String",
+     "desc": "default empty, (months|years)",
      "memberOf": ""
     },
     {
-     "name": "store",
-     "type": "Roo.data.Store",
-     "desc": "The data store to which this combo is bound (defaults to undefined)",
+     "name": "startDate",
+     "type": "Number",
+     "desc": "default -Infinity",
      "memberOf": ""
     },
     {
-     "name": "title",
-     "type": "String",
-     "desc": "If supplied, a header element is created containing this text and added into the top of\nthe dropdown list (defaults to undefined, with no header element)",
+     "name": "endDate",
+     "type": "Number",
+     "desc": "default Infinity",
      "memberOf": ""
     },
     {
-     "name": "tpl",
-     "type": "String/Roo.Template",
-     "desc": "The template to use to render the output",
+     "name": "todayHighlight",
+     "type": "Boolean",
+     "desc": "default false",
      "memberOf": ""
     },
     {
-     "name": "grow",
+     "name": "todayBtn",
      "type": "Boolean",
-     "desc": "",
+     "desc": "default false",
      "memberOf": ""
     },
     {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "",
+     "name": "calendarWeeks",
+     "type": "Boolean",
+     "desc": "default false",
      "memberOf": ""
     },
     {
-     "name": "growMax",
-     "type": "Number",
-     "desc": "",
+     "name": "daysOfWeekDisabled",
+     "type": "Object",
+     "desc": "default empty",
      "memberOf": ""
     },
     {
-     "name": "listWidth",
-     "type": "Number",
-     "desc": "The width in pixels of the dropdown list (defaults to the width of the ComboBox field)",
-     "memberOf": ""
-    },
-    {
-     "name": "displayField",
-     "type": "String",
-     "desc": "The underlying data field name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'text' if mode = 'local')",
-     "memberOf": ""
-    },
-    {
-     "name": "valueField",
-     "type": "String",
-     "desc": "The underlying data value name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'value' if mode = 'local'). \nNote: use of a valueField requires the user make a selection\nin order for a value to be mapped.",
-     "memberOf": ""
-    },
-    {
-     "name": "hiddenName",
-     "type": "String",
-     "desc": "If specified, a hidden form field with this name is dynamically generated to store the\nfield's data value (defaults to the underlying DOM element's name)",
-     "memberOf": ""
-    },
-    {
-     "name": "listClass",
-     "type": "String",
-     "desc": "CSS class to apply to the dropdown list element (defaults to '')",
-     "memberOf": ""
-    },
-    {
-     "name": "selectedClass",
-     "type": "String",
-     "desc": "CSS class to apply to the selected item in the dropdown list (defaults to 'x-combo-selected')",
-     "memberOf": ""
-    },
-    {
-     "name": "shadow",
-     "type": "Boolean/String",
-     "desc": "True or \"sides\" for the default effect, \"frame\" for 4-way shadow, and \"drop\" for bottom-right",
-     "memberOf": ""
-    },
-    {
-     "name": "listAlign",
-     "type": "String",
-     "desc": "A valid anchor position value. See {@link Roo.Element#alignTo} for details on supported\nanchor positions (defaults to 'tl-bl')",
-     "memberOf": ""
-    },
-    {
-     "name": "maxHeight",
-     "type": "Number",
-     "desc": "The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300)",
-     "memberOf": ""
-    },
-    {
-     "name": "triggerAction",
-     "type": "String",
-     "desc": "The action to execute when the trigger field is activated.  Use 'all' to run the\nquery specified by the allQuery config option (defaults to 'query')",
-     "memberOf": ""
-    },
-    {
-     "name": "minChars",
-     "type": "Number",
-     "desc": "The minimum number of characters the user must type before autocomplete and typeahead activate\n(defaults to 4, does not apply if editable = false)",
-     "memberOf": ""
-    },
-    {
-     "name": "typeAhead",
-     "type": "Boolean",
-     "desc": "True to populate and autoselect the remainder of the text being typed after a configurable\ndelay (typeAheadDelay) if it matches a known value (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "queryDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to delay between the start of typing and sending the\nquery to filter the dropdown list (defaults to 500 if mode = 'remote' or 10 if mode = 'local')",
-     "memberOf": ""
-    },
-    {
-     "name": "pageSize",
-     "type": "Number",
-     "desc": "If greater than 0, a paging toolbar is displayed in the footer of the dropdown list and the\nfilter queries will execute with page start and limit parameters.  Only applies when mode = 'remote' (defaults to 0)",
-     "memberOf": ""
-    },
-    {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to select any existing text in the field immediately on focus.  Only applies\nwhen editable = true (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "queryParam",
-     "type": "String",
-     "desc": "Name of the query as it will be passed on the querystring (defaults to 'query')",
-     "memberOf": ""
-    },
-    {
-     "name": "loadingText",
-     "type": "String",
-     "desc": "The text to display in the dropdown list while data is loading.  Only applies\nwhen mode = 'remote' (defaults to 'Loading...')",
-     "memberOf": ""
-    },
-    {
-     "name": "resizable",
+     "name": "singleMode",
      "type": "Boolean",
-     "desc": "True to add a resize handle to the bottom of the dropdown list (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "handleHeight",
-     "type": "Number",
-     "desc": "The height in pixels of the dropdown list resize handle if resizable = true (defaults to 8)",
+     "desc": "default false (true | false)",
      "memberOf": ""
     },
     {
-     "name": "editable",
+     "name": "keyboardNavigation",
      "type": "Boolean",
-     "desc": "False to prevent the user from typing text directly into the field, just like a\ntraditional select (defaults to true)",
+     "desc": "default true",
      "memberOf": ""
     },
     {
-     "name": "allQuery",
+     "name": "language",
      "type": "String",
-     "desc": "The text query to send to the server to return all records for the list with no filtering (defaults to '')",
+     "desc": "default en",
      "memberOf": ""
     },
     {
-     "name": "mode",
+     "name": "format",
      "type": "String",
-     "desc": "Set to 'local' if the ComboBox loads local data (defaults to 'remote' which loads from the server)",
-     "memberOf": ""
-    },
-    {
-     "name": "minListWidth",
-     "type": "Number",
-     "desc": "The minimum width of the dropdown list in pixels (defaults to 70, will be ignored if\nlistWidth has a higher value)",
-     "memberOf": ""
-    },
-    {
-     "name": "forceSelection",
-     "type": "Boolean",
-     "desc": "True to restrict the selected value to one of the values in the list, false to\nallow the user to set arbitrary text into the field (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "typeAheadDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to wait until the typeahead text is displayed\nif typeAhead = true (defaults to 250)",
+     "desc": "The default date format string which can be overriden for localization support.  The format must be\nvalid according to {@link Date#parseDate} (defaults to 'm/d/y').",
      "memberOf": ""
     },
     {
-     "name": "valueNotFoundText",
+     "name": "altFormats",
      "type": "String",
-     "desc": "When using a name/value combo, if the value passed to setValue is not found in\nthe store, valueNotFoundText will be displayed as the field text if defined (defaults to undefined)",
-     "memberOf": ""
-    },
-    {
-     "name": "blockFocus",
-     "type": "Boolean",
-     "desc": "Prevents all focus calls, so it can work with things like HTML edtor bar",
-     "memberOf": ""
-    },
-    {
-     "name": "disableClear",
-     "type": "Boolean",
-     "desc": "Disable showing of clear button.",
-     "memberOf": ""
-    },
-    {
-     "name": "alwaysQuery",
-     "type": "Boolean",
-     "desc": "Disable caching of results, and always send query",
+     "desc": "Multiple date formats separated by \"|\" to try when parsing a user input value and it doesn't match the defined\nformat (defaults to 'm/d/Y|m-d-y|m-d-Y|m/d|m-d|d').",
      "memberOf": ""
     },
-    {
-     "name": "multiple",
-     "type": "Boolean",
-     "desc": "ComboBobArray, default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "triggerClass",
-     "type": "String",
-     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' by default and triggerClass will be <b>appended</b> if specified.",
-     "memberOf": "Roo.bootstrap.TriggerField"
-    },
-    {
-     "name": "caret",
-     "type": "String",
-     "desc": "a fontawesome for the trigger icon see http://fortawesome.github.io/Font-Awesome/icons/",
-     "memberOf": "Roo.bootstrap.TriggerField",
-     "optvals": [
-      "search",
-      "calendar"
-     ]
-    },
-    {
-     "name": "hideTrigger",
-     "type": "Boolean",
-     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
-     "memberOf": "Roo.bootstrap.TriggerField"
-    },
     {
      "name": "disabled",
      "type": "Boolean",
      "desc": "is it disabled",
      "memberOf": "Roo.bootstrap.Input"
     },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
     {
      "name": "inputType",
      "type": "String",
      "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "selectOnFocus",
+     "type": "Boolean",
+     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "maskRe",
      "type": "String",
     }
    ],
    "events": [
-    {
-     "name": "add",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'add' icon is pressed (add a listener to enable add button)"
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
-    {
-     "name": "beforequery",
-     "sig": "function (combo, query, forceAll, cancel, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before all queries are processed. Return false to cancel the query or set cancel to true.\nThe event object passed has these properties:"
-    },
     {
      "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
     },
     {
      "name": "beforeselect",
-     "sig": "function (combo, record, index)\n{\n\n}",
+     "sig": "function (_self, date)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before a list item is selected. Return false to cancel the selection."
+     "desc": "Fires when before select a date."
     },
     {
      "name": "beforeshow",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
-    {
-     "name": "collapse",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the dropdown list is collapsed"
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is disabled."
     },
-    {
-     "name": "edit",
-     "sig": "function (combo, record)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'edit' icon is pressed (add a listener to enable add button)"
-    },
     {
      "name": "enable",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "expand",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the dropdown list is expanded"
-    },
     {
      "name": "focus",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the key up"
     },
-    {
-     "name": "remove",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the remove value from the combobox array"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
     },
     {
      "name": "select",
-     "sig": "function (combo, record, index)\n{\n\n}",
+     "sig": "function (_self, date)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a list item is selected"
+     "desc": "Fires when select a date."
     },
     {
      "name": "show",
-     "sig": "function (_self)\n{\n\n}",
+     "sig": "function (_self, date)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is shown."
+     "desc": "Fires when this field show."
     },
     {
      "name": "specialkey",
      "type": "function",
      "desc": "Clear any invalid styles/messages for this field"
     },
-    {
-     "name": "clearValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clears any text/value currently set in the field"
-    },
-    {
-     "name": "collapse",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hides the dropdown list if it is currently expanded. Fires the 'collapse' event on completion."
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Disable this component."
     },
-    {
-     "name": "doQuery",
-     "sig": "(String query, Boolean forceAll)",
-     "type": "function",
-     "desc": "Execute a query to filter the dropdown list.  Fires the beforequery event prior to performing the\nquery allowing the query action to be canceled if needed."
-    },
     {
      "name": "enable",
      "sig": "()",
      "type": "function",
      "desc": "Enable this component."
     },
-    {
-     "name": "expand",
-     "sig": "()",
-     "type": "function",
-     "desc": "Expands the dropdown list if it is currently hidden. Fires the 'expand' event on completion."
-    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the currently selected field value or empty string if no value is set."
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
     },
     {
      "name": "hasListener",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "return the real input element."
     },
-    {
-     "name": "isExpanded",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the dropdown list is expanded, else false."
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
-    {
-     "name": "onTriggerClick",
-     "sig": "(EventObject e)",
-     "type": "function",
-     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
-    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "type": "function",
      "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
     },
-    {
-     "name": "select",
-     "sig": "(Number index, Boolean scrollIntoView)",
-     "type": "function",
-     "desc": "Select an item in the dropdown list by its numeric index in the list. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
-    },
-    {
-     "name": "selectByValue",
-     "sig": "(String value, Boolean scrollIntoView)",
-     "type": "function",
-     "desc": "Select an item in the dropdown list by its data value. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setEditable",
-     "sig": "(Boolean value)",
-     "type": "function",
-     "desc": "Allow or prevent the user from directly editing the field text.  If false is passed,\nthe user will only be able to select from the items defined in the dropdown list.  This method\nis the runtime equivalent of setting the 'editable' config option at config time."
-    },
-    {
-     "name": "setFromData",
-     "sig": "(Object value)",
-     "type": "function",
-     "desc": "Sets the value of the field based on a object which is related to the record format for the store."
-    },
     {
      "name": "setRawValue",
      "sig": "(Mixed value)",
     },
     {
      "name": "setValue",
-     "sig": "(String value)",
+     "sig": "(Mixed value)",
      "type": "function",
-     "desc": "Sets the specified value into the field.  If the value finds a match, the corresponding record text\nwill be displayed in the field.  If the value does not match the data value of an existing item,\nand the valueNotFoundText config option is defined, it will be displayed as the default field text.\nOtherwise the field will be blank (although the value will still be set)."
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
     },
     {
      "name": "setVisible",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Component": {
+  "Roo.bootstrap.DateSplitField": {
    "props": [
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": ""
+    },
+    {
+     "name": "labelWidth",
+     "type": "Number",
+     "desc": "set the width of label (0-12)",
+     "memberOf": ""
+    },
+    {
+     "name": "labelAlign",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "top",
+      "left"
+     ]
+    },
+    {
+     "name": "dayAllowBlank",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "monthAllowBlank",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "yearAllowBlank",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "dayPlaceholder",
+     "type": "string",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "monthPlaceholder",
+     "type": "string",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "yearPlaceholder",
+     "type": "string",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "dayFormat",
+     "type": "string",
+     "desc": "default 'd'",
+     "memberOf": ""
+    },
+    {
+     "name": "monthFormat",
+     "type": "string",
+     "desc": "default 'm'",
+     "memberOf": ""
+    },
+    {
+     "name": "yearFormat",
+     "type": "string",
+     "desc": "default 'Y'",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
      "desc": "css class",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "style",
      "type": "String",
      "desc": "any extra css",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "xattr",
      "type": "Object",
      "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "can_build_overlaid",
      "type": "Boolean",
      "desc": "True if element can be rebuild from a HTML page",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "dataId",
      "type": "string",
      "desc": "cutomer id",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "name",
      "type": "string",
      "desc": "Specifies name attribute",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "tooltip",
      "type": "string",
      "desc": "Text for the tooltip",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "container_method",
      "type": "string",
      "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "disableClass",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "days",
+     "sig": "function (_self, days)\n{\n\n}",
+     "type": "function",
+     "desc": "getting the data of days"
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been marked as invalid."
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
+    },
+    {
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been validated with no errors."
+    },
+    {
+     "name": "years",
+     "sig": "function (_self, years)\n{\n\n}",
+     "type": "function",
+     "desc": "getting the data of years"
     }
    ],
    "methods": [
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
+    {
+     "name": "markInvalid",
+     "sig": "(String msg)",
+     "type": "function",
+     "desc": "Mark this field as invalid"
+    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Container": {
+  "Roo.bootstrap.DocumentManager": {
    "props": [
     {
-     "name": "jumbotron",
-     "type": "Boolean",
-     "desc": "is it a jumbotron element",
-     "memberOf": ""
-    },
-    {
-     "name": "html",
+     "name": "paramName",
      "type": "String",
-     "desc": "content of element",
+     "desc": "default 'imageUpload'",
      "memberOf": ""
     },
     {
-     "name": "well",
-     "type": "String",
-     "desc": "a well, large, small or medium.",
-     "memberOf": "",
-     "optvals": [
-      "lg",
-      "sm",
-      "md"
-     ]
-    },
-    {
-     "name": "panel",
+     "name": "method",
      "type": "String",
-     "desc": "render as a panel.",
-     "memberOf": "",
-     "optvals": [
-      "primary",
-      "success",
-      "info",
-      "warning",
-      "danger"
-     ]
+     "desc": "default POST",
+     "memberOf": ""
     },
     {
-     "name": "header",
+     "name": "url",
      "type": "String",
-     "desc": "content of header (for panel)",
+     "desc": "action url",
      "memberOf": ""
     },
     {
-     "name": "footer",
-     "type": "String",
-     "desc": "content of footer (for panel)",
+     "name": "boxes",
+     "type": "Number",
+     "desc": "number of boxes, 0 is no limit.. default 0",
      "memberOf": ""
     },
     {
-     "name": "sticky",
-     "type": "String",
-     "desc": "block to use as footer or body- needs css-bootstrap/sticky-footer.css",
-     "memberOf": "",
-     "optvals": [
-      "footer",
-      "wrap",
-      "push"
-     ]
+     "name": "multiple",
+     "type": "Boolean",
+     "desc": "multiple upload default true",
+     "memberOf": ""
     },
     {
-     "name": "tag",
-     "type": "String",
-     "desc": "type of HTML tag.",
-     "memberOf": "",
-     "optvals": [
-      "header",
-      "aside",
-      "section"
-     ]
+     "name": "thumbSize",
+     "type": "Number",
+     "desc": "default 300",
+     "memberOf": ""
     },
     {
-     "name": "alert",
+     "name": "fieldLabel",
      "type": "String",
-     "desc": "type alert (changes background / border...)",
-     "memberOf": "",
-     "optvals": [
-      "success",
-      "info",
-      "warning",
-      "danger"
-     ]
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "fa",
-     "type": "String",
-     "desc": "font awesome icon",
-     "memberOf": "",
-     "optvals": [
-      "ban",
-      "check",
-      "..."
-     ]
+     "name": "labelWidth",
+     "type": "Number",
+     "desc": "default 4",
+     "memberOf": ""
     },
     {
-     "name": "icon",
+     "name": "labelAlign",
      "type": "String",
-     "desc": "glyphicon name",
+     "desc": "default left",
      "memberOf": "",
      "optvals": [
-      "info-sign",
-      "check",
-      "..."
+      "left",
+      "top"
      ]
     },
     {
-     "name": "hidden",
+     "name": "editable",
      "type": "Boolean",
-     "desc": "hide the element",
+     "desc": "allow edit when upload a image default true",
      "memberOf": "",
      "optvals": [
       "true",
      "type": "function",
      "desc": "Fires before the component is rendered. Return false to stop the render."
     },
+    {
+     "name": "beforeselectfile",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire before select file"
+    },
     {
      "name": "beforeshow",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "click",
+     "sig": "function (_self, file)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire after click the image"
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is disabled."
     },
+    {
+     "name": "edit",
+     "sig": "function (_self, file)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when upload a image and editable set to true"
+    },
     {
      "name": "enable",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
+    {
+     "name": "exception",
+     "sig": "function (_self, xhr)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when xhr load exception"
+    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "initial",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when initial the DocumentManager"
+    },
+    {
+     "name": "inspect",
+     "sig": "function (_self, file)\n{\n\n}",
+     "type": "function",
+     "desc": "inspect selected file"
+    },
+    {
+     "name": "prepare",
+     "sig": "function (_self, formData)\n{\n\n}",
+     "type": "function",
+     "desc": "prepare the form data"
+    },
+    {
+     "name": "process",
+     "sig": "function (_self, file)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire before process file"
+    },
+    {
+     "name": "refresh",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire after refresh the file"
+    },
+    {
+     "name": "remove",
+     "sig": "function (_self, file)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when remove the file"
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.DateField": {
+  "Roo.bootstrap.DocumentViewer": {
    "props": [
-    {
-     "name": "weekStart",
-     "type": "Number",
-     "desc": "default 0",
-     "memberOf": ""
-    },
-    {
-     "name": "viewMode",
-     "type": "String",
-     "desc": "default empty, (months|years)",
-     "memberOf": ""
-    },
-    {
-     "name": "minViewMode",
-     "type": "String",
-     "desc": "default empty, (months|years)",
-     "memberOf": ""
-    },
-    {
-     "name": "startDate",
-     "type": "Number",
-     "desc": "default -Infinity",
-     "memberOf": ""
-    },
-    {
-     "name": "endDate",
-     "type": "Number",
-     "desc": "default Infinity",
-     "memberOf": ""
-    },
-    {
-     "name": "todayHighlight",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": ""
-    },
-    {
-     "name": "todayBtn",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": ""
-    },
-    {
-     "name": "calendarWeeks",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": ""
-    },
-    {
-     "name": "daysOfWeekDisabled",
-     "type": "Object",
-     "desc": "default empty",
-     "memberOf": ""
-    },
-    {
-     "name": "singleMode",
-     "type": "Boolean",
-     "desc": "default false (true | false)",
-     "memberOf": ""
-    },
-    {
-     "name": "keyboardNavigation",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": ""
-    },
-    {
-     "name": "language",
-     "type": "String",
-     "desc": "default en",
-     "memberOf": ""
-    },
-    {
-     "name": "format",
-     "type": "String",
-     "desc": "The default date format string which can be overriden for localization support.  The format must be\nvalid according to {@link Date#parseDate} (defaults to 'm/d/y').",
-     "memberOf": ""
-    },
-    {
-     "name": "altFormats",
-     "type": "String",
-     "desc": "Multiple date formats separated by \"|\" to try when parsing a user input value and it doesn't match the defined\nformat (defaults to 'm/d/Y|m-d-y|m-d-Y|m/d|m-d|d').",
-     "memberOf": ""
-    },
-    {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "inputType",
-     "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "name",
-     "type": "String",
-     "desc": "name of the input",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "placeholder",
-     "type": "string",
-     "desc": "- placeholder to put in text.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "before",
-     "type": "string",
-     "desc": "- input group add on before",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "after",
-     "type": "string",
-     "desc": "- input group add on after",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "size",
-     "type": "string",
-     "desc": "- (lg|sm) or leave empty..",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "xs",
-     "type": "Number",
-     "desc": "colspan out of 12 for mobile-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "sm",
-     "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "md",
-     "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "lg",
-     "type": "Number",
-     "desc": "colspan out of 12 for large computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "value",
-     "type": "string",
-     "desc": "default value of the input",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "labelWidth",
-     "type": "Number",
-     "desc": "set the width of label (0-12)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "labelAlign",
-     "type": "String",
-     "desc": "",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "top",
-      "left"
-     ]
-    },
-    {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "Specifies that the field should be read-only",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "autocomplete",
-     "type": "String",
-     "desc": "- default is new-password see: https://developers.google.com/web/fundamentals/input/form/label-and-name-inputs?hl=en",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "left",
-      "center",
-      "right"
-     ]
-    },
-    {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "hasFeedback",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "invalidFeedbackIcon",
-     "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validFeedbackIcon",
-     "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "maskRe",
-     "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "blankText",
-     "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "minLengthText",
-     "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "maxLengthText",
-     "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
     {
      "name": "cls",
      "type": "String",
      "desc": "cutomer id",
      "memberOf": "Roo.bootstrap.Component"
     },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
     {
      "name": "tooltip",
      "type": "string",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "blur",
+     "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this field loses input focus."
-    },
-    {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "childrenrendered",
+     "name": "click",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the children have been rendered.."
+     "desc": "Fire after click"
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "focus",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field receives input focus."
-    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "desc": "Fires after the component is hidden."
     },
     {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
-    },
-    {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
+     "name": "initial",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the key up"
+     "desc": "Fire after initEvent"
     },
     {
      "name": "render",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "select",
-     "sig": "function (_self, date)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when select a date."
-    },
     {
      "name": "show",
-     "sig": "function (_self, date)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field show."
-    },
-    {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
+     "desc": "Fires after the component is shown."
     },
     {
-     "name": "valid",
+     "name": "trash",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
+     "desc": "Fire after trash button"
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getName",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the name of the field"
-    },
-    {
-     "name": "getRawValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
-    },
-    {
-     "name": "getValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Initialize Events for the element"
     },
-    {
-     "name": "inputEl",
-     "sig": "()",
-     "type": "function",
-     "desc": "return the real input element."
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
-    {
-     "name": "markInvalid",
-     "sig": "(String msg)",
-     "type": "function",
-     "desc": "Mark this field as invalid"
-    },
-    {
-     "name": "markValid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Mark this field as valid"
-    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
-    {
-     "name": "reset",
-     "sig": "()",
-     "type": "function",
-     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setRawValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
-    },
-    {
-     "name": "setValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "validate",
-     "sig": "()",
-     "type": "function",
-     "desc": "Validates the field value"
-    },
-    {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Form": {
+  "Roo.bootstrap.FieldLabel": {
    "props": [
     {
-     "name": "method",
+     "name": "html",
      "type": "String",
-     "desc": "GET | POST (default POST)",
+     "desc": "contents of the element",
      "memberOf": ""
     },
     {
-     "name": "labelAlign",
+     "name": "tag",
      "type": "String",
-     "desc": "top | left (default top)",
+     "desc": "tag of the element default label",
      "memberOf": ""
     },
     {
-     "name": "align",
+     "name": "cls",
      "type": "String",
-     "desc": "left  | right - for navbars",
-     "memberOf": ""
-    },
-    {
-     "name": "loadMask",
-     "type": "Boolean",
-     "desc": "load mask when submit (default true)",
+     "desc": "class of the element",
      "memberOf": ""
     },
     {
-     "name": "url",
+     "name": "target",
      "type": "String",
-     "desc": "The URL to use for form actions if one isn't supplied in the action options.",
+     "desc": "label target",
      "memberOf": ""
     },
     {
-     "name": "fileUpload",
+     "name": "allowBlank",
      "type": "Boolean",
-     "desc": "Set to true if this form is a file upload.",
-     "memberOf": ""
+     "desc": "target allowBlank default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "baseParams",
-     "type": "Object",
-     "desc": "Parameters to pass with all requests. e.g. baseParams: {id: '123', foo: 'bar'}.",
+     "name": "invalidClass",
+     "type": "String",
+     "desc": "default \"text-danger fa fa-lg fa-exclamation-triangle\"",
      "memberOf": ""
     },
     {
-     "name": "timeout",
-     "type": "Number",
-     "desc": "Timeout for form actions in seconds (default is 30 seconds).",
+     "name": "validClass",
+     "type": "String",
+     "desc": "default \"text-success fa fa-lg fa-check\"",
      "memberOf": ""
     },
     {
-     "name": "cls",
+     "name": "iconTooltip",
      "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "default \"This field is required\"",
+     "memberOf": ""
     },
     {
      "name": "style",
     }
    ],
    "events": [
-    {
-     "name": "actioncomplete",
-     "sig": "function (_self, action)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when an action is completed."
-    },
-    {
-     "name": "actionfailed",
-     "sig": "function (_self, action)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when an action fails."
-    },
-    {
-     "name": "beforeaction",
-     "sig": "function (_self, action)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before any action is performed. Return false to cancel the action."
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
-    {
-     "name": "clientvalidation",
-     "sig": "function (_self, valid)\n{\n\n}",
-     "type": "function",
-     "desc": "If the monitorValid config option is true, this event fires repetitively to notify of valid state"
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been marked as invalid."
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
+    },
+    {
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clears all invalid messages in this form."
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Disable this component."
     },
-    {
-     "name": "doAction",
-     "sig": "(String actionName, Object options)",
-     "type": "function",
-     "desc": "Performs a predefined action (submit or load) or custom actions you define on this form."
-    },
     {
      "name": "enable",
      "sig": "()",
      "type": "function",
      "desc": "Enable this component."
     },
-    {
-     "name": "findField",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Find a Roo.form.Field in this form by id, dataIndex, name or hiddenName"
-    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "type": "function",
      "desc": "Try to focus this component."
     },
+    {
+     "name": "get",
+     "sig": "(string target)",
+     "type": "function",
+     "desc": "fetch a FieldLabel Group based on the target"
+    },
     {
      "name": "getChildContainer",
      "sig": "()",
      "type": "function",
      "desc": "Returns the underlying {@link Roo.Element}."
     },
-    {
-     "name": "getFieldValues",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the fields in this form as an object with key/value pairs. \nThis differs from getValues as it calls getValue on each child item, rather than using dom data."
-    },
     {
      "name": "getId",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getValues",
-     "sig": "(Boolean asString)",
-     "type": "function",
-     "desc": "Returns the fields in this form as an object with key/value pairs. If multiple fields exist with the same name\nthey are returned as an array."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "desc": "Initialize Events for the element"
     },
     {
-     "name": "isDirty",
+     "name": "isVisible",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if any fields in this form have changed since their original load."
+     "desc": "Returns true if this component is visible."
     },
     {
-     "name": "isValid",
-     "sig": "()",
+     "name": "markInvalid",
+     "sig": "(String msg)",
      "type": "function",
-     "desc": "Returns true if client-side validation on the form is successful."
+     "desc": "Mark this field as invalid"
     },
     {
-     "name": "isVisible",
+     "name": "markValid",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this component is visible."
-    },
-    {
-     "name": "markInvalid",
-     "sig": "(Array/Object errors)",
-     "type": "function",
-     "desc": "Mark fields in this form invalid in bulk."
+     "desc": "Mark this field as valid"
     },
     {
      "name": "on",
      "type": "function",
      "desc": "Removes all listeners for this object"
     },
+    {
+     "name": "register",
+     "sig": "(Roo.bootstrap.FieldLabel the)",
+     "type": "function",
+     "desc": "register a FieldLabel Group"
+    },
     {
      "name": "releaseCapture",
      "sig": "(Observable o)",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
-    {
-     "name": "reset",
-     "sig": "()",
-     "type": "function",
-     "desc": "Resets this form."
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setValues",
-     "sig": "(Array/Object values)",
-     "type": "function",
-     "desc": "Set values for fields in this form in bulk."
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Graph": {
+  "Roo.bootstrap.Form": {
    "props": [
     {
-     "name": "graphtype",
+     "name": "method",
      "type": "String",
-     "desc": "bar | vbar | pie",
+     "desc": "GET | POST (default POST)",
      "memberOf": ""
     },
     {
-     "name": "g_x",
-     "type": "number",
-     "desc": "coodinator | centre x (pie)",
+     "name": "labelAlign",
+     "type": "String",
+     "desc": "top | left (default top)",
      "memberOf": ""
     },
     {
-     "name": "g_y",
-     "type": "number",
-     "desc": "coodinator | centre y (pie)",
+     "name": "align",
+     "type": "String",
+     "desc": "left  | right - for navbars",
      "memberOf": ""
     },
     {
-     "name": "g_r",
-     "type": "number",
-     "desc": "radius (pie)",
+     "name": "loadMask",
+     "type": "Boolean",
+     "desc": "load mask when submit (default true)",
      "memberOf": ""
     },
     {
-     "name": "g_height",
-     "type": "number",
-     "desc": "height of the chart (respected by all elements in the set)",
+     "name": "url",
+     "type": "String",
+     "desc": "The URL to use for form actions if one isn't supplied in the action options.",
      "memberOf": ""
     },
     {
-     "name": "g_width",
-     "type": "number",
-     "desc": "width of the chart (respected by all elements in the set)",
+     "name": "fileUpload",
+     "type": "Boolean",
+     "desc": "Set to true if this form is a file upload.",
      "memberOf": ""
     },
     {
-     "name": "title",
+     "name": "baseParams",
      "type": "Object",
-     "desc": "The title of the chart\n    \n -{Array}  values\n -opts (object) options for the chart \n     o {\n     o type (string) type of endings of the bar. Default: 'square'. Other options are: 'round', 'sharp', 'soft'.\n     o gutter (number)(string) default '20%' (WHAT DOES IT DO?)\n     o vgutter (number)\n     o colors (array) colors be used repeatedly to plot the bars. If multicolumn bar is used each sequence of bars with use a different color.\n     o stacked (boolean) whether or not to tread values as in a stacked bar chart\n     o to\n     o stretch (boolean)\n     o }\n -opts (object) options for the pie\n     o{\n     o cut\n     o startAngle (number)\n     o endAngle (number)\n     }",
+     "desc": "Parameters to pass with all requests. e.g. baseParams: {id: '123', foo: 'bar'}.",
+     "memberOf": ""
+    },
+    {
+     "name": "timeout",
+     "type": "Number",
+     "desc": "Timeout for form actions in seconds (default is 30 seconds).",
      "memberOf": ""
     },
     {
     }
    ],
    "events": [
+    {
+     "name": "actioncomplete",
+     "sig": "function (_self, action)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when an action is completed."
+    },
+    {
+     "name": "actionfailed",
+     "sig": "function (_self, action)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when an action fails."
+    },
+    {
+     "name": "beforeaction",
+     "sig": "function (_self, action)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before any action is performed. Return false to cancel the action."
+    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "click",
-     "sig": "function (e)\n{\n\n}",
+     "name": "clientvalidation",
+     "sig": "function (_self, valid)\n{\n\n}",
      "type": "function",
-     "desc": "The img click event for the img."
+     "desc": "If the monitorValid config option is true, this event fires repetitively to notify of valid state"
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
+    {
+     "name": "clearInvalid",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears all invalid messages in this form."
+    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Disable this component."
     },
+    {
+     "name": "doAction",
+     "sig": "(String actionName, Object options)",
+     "type": "function",
+     "desc": "Performs a predefined action (submit or load) or custom actions you define on this form."
+    },
     {
      "name": "enable",
      "sig": "()",
      "type": "function",
      "desc": "Enable this component."
     },
+    {
+     "name": "findField",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Find a Roo.form.Field in this form by id, dataIndex, name or hiddenName"
+    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "type": "function",
      "desc": "Returns the underlying {@link Roo.Element}."
     },
+    {
+     "name": "getFieldValues",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the fields in this form as an object with key/value pairs. \nThis differs from getValues as it calls getValue on each child item, rather than using dom data."
+    },
     {
      "name": "getId",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
+    {
+     "name": "getValues",
+     "sig": "(Boolean asString)",
+     "type": "function",
+     "desc": "Returns the fields in this form as an object with key/value pairs. If multiple fields exist with the same name\nthey are returned as an array."
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Initialize Events for the element"
     },
+    {
+     "name": "isDirty",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if any fields in this form have changed since their original load."
+    },
+    {
+     "name": "isValid",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if client-side validation on the form is successful."
+    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
+    {
+     "name": "markInvalid",
+     "sig": "(Array/Object errors)",
+     "type": "function",
+     "desc": "Mark fields in this form invalid in bulk."
+    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
+    {
+     "name": "reset",
+     "sig": "()",
+     "type": "function",
+     "desc": "Resets this form."
+    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setValues",
+     "sig": "(Array/Object values)",
+     "type": "function",
+     "desc": "Set values for fields in this form in bulk."
+    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Header": {
+  "Roo.bootstrap.Graph": {
    "props": [
     {
-     "name": "html",
+     "name": "graphtype",
      "type": "String",
-     "desc": "content of header",
+     "desc": "bar | vbar | pie",
      "memberOf": ""
     },
     {
-     "name": "level",
-     "type": "Number",
-     "desc": "default 1",
-     "memberOf": "",
-     "optvals": [
-      "1",
-      "2",
-      "3",
-      "4",
-      "5",
-      "6"
-     ]
+     "name": "g_x",
+     "type": "number",
+     "desc": "coodinator | centre x (pie)",
+     "memberOf": ""
+    },
+    {
+     "name": "g_y",
+     "type": "number",
+     "desc": "coodinator | centre y (pie)",
+     "memberOf": ""
+    },
+    {
+     "name": "g_r",
+     "type": "number",
+     "desc": "radius (pie)",
+     "memberOf": ""
+    },
+    {
+     "name": "g_height",
+     "type": "number",
+     "desc": "height of the chart (respected by all elements in the set)",
+     "memberOf": ""
+    },
+    {
+     "name": "g_width",
+     "type": "number",
+     "desc": "width of the chart (respected by all elements in the set)",
+     "memberOf": ""
+    },
+    {
+     "name": "title",
+     "type": "Object",
+     "desc": "The title of the chart\n    \n -{Array}  values\n -opts (object) options for the chart \n     o {\n     o type (string) type of endings of the bar. Default: 'square'. Other options are: 'round', 'sharp', 'soft'.\n     o gutter (number)(string) default '20%' (WHAT DOES IT DO?)\n     o vgutter (number)\n     o colors (array) colors be used repeatedly to plot the bars. If multicolumn bar is used each sequence of bars with use a different color.\n     o stacked (boolean) whether or not to tread values as in a stacked bar chart\n     o to\n     o stretch (boolean)\n     o }\n -opts (object) options for the pie\n     o{\n     o cut\n     o startAngle (number)\n     o endAngle (number)\n     }",
+     "memberOf": ""
     },
     {
      "name": "cls",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "click",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The img click event for the img."
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
+    },
+    {
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.bootstrap.Header": {
+   "props": [
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "content of header",
+     "memberOf": ""
+    },
+    {
+     "name": "level",
+     "type": "Number",
+     "desc": "default 1",
+     "memberOf": "",
+     "optvals": [
+      "1",
+      "2",
+      "3",
+      "4",
+      "5",
+      "6"
+     ]
+    },
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "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": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+    },
+    {
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
+    },
+    {
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
+    {
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
+    {
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getChildContainer",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to add children to"
+    },
+    {
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
+    },
+    {
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide a component - adds 'hidden' class"
+    },
+    {
+     "name": "initEvents",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialize Events for the element"
+    },
+    {
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
+    },
+    {
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
+    {
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "fieldLabel",
+     "name": "name",
      "type": "String",
-     "desc": "- the label associated",
+     "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "name",
-     "type": "String",
-     "desc": "name of the input",
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
      "memberOf": "Roo.bootstrap.Input"
     },
     {
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "toggleSourceEdit",
       "_top"
      ]
     },
+    {
+     "name": "xsUrl",
+     "type": "String",
+     "desc": "xs image source",
+     "memberOf": ""
+    },
+    {
+     "name": "smUrl",
+     "type": "String",
+     "desc": "sm image source",
+     "memberOf": ""
+    },
+    {
+     "name": "mdUrl",
+     "type": "String",
+     "desc": "md image source",
+     "memberOf": ""
+    },
+    {
+     "name": "lgUrl",
+     "type": "String",
+     "desc": "lg image source",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "desc": "is it disabled",
      "memberOf": ""
     },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": ""
-    },
     {
      "name": "inputType",
      "type": "String",
      "desc": "name of the input",
      "memberOf": ""
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": ""
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "desc": "padding below box..",
      "memberOf": ""
     },
+    {
+     "name": "isAutoInitial",
+     "type": "Boolean",
+     "desc": "defalut true",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "type": "function",
      "desc": "Fires when the picker initialized."
     },
+    {
+     "name": "loadexception",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when load google lib failed."
+    },
     {
      "name": "mapClick",
      "sig": "function (_self, e)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "desc": "is it disabled",
      "memberOf": "Roo.bootstrap.Input"
     },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
     {
      "name": "inputType",
      "type": "String",
      "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     {
      "name": "align",
      "type": "String",
-     "desc": "left | right",
-     "memberOf": ""
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "left",
+      "right"
+     ]
     },
     {
      "name": "inverse",
      "type": "Boolean",
-     "desc": "false | true",
+     "desc": "",
      "memberOf": ""
     },
     {
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.NavSidebar": {
+  "Roo.bootstrap.NavProgressBar": {
    "props": [
     {
      "name": "cls",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
+    {
+     "name": "changed",
+     "sig": "function (_self, selected, prev)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the active item changes"
+    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.NavSidebarItem": {
+  "Roo.bootstrap.NavProgressItem": {
    "props": [
     {
-     "name": "href",
-     "type": "String",
-     "desc": "link to",
-     "memberOf": "Roo.bootstrap.NavItem"
-    },
-    {
-     "name": "html",
-     "type": "String",
-     "desc": "content of button",
-     "memberOf": "Roo.bootstrap.NavItem"
-    },
-    {
-     "name": "badge",
-     "type": "String",
-     "desc": "text inside badge",
-     "memberOf": "Roo.bootstrap.NavItem"
-    },
-    {
-     "name": "badgecls",
-     "type": "String",
-     "desc": "the extra classes for the badge",
-     "memberOf": "Roo.bootstrap.NavItem",
-     "optvals": [
-      "bg-green",
-      "bg-red",
-      "bg-yellow"
-     ]
-    },
-    {
-     "name": "glyphicon",
-     "type": "String",
-     "desc": "name of glyphicon",
-     "memberOf": "Roo.bootstrap.NavItem"
-    },
-    {
-     "name": "icon",
+     "name": "rid",
      "type": "String",
-     "desc": "name of font awesome icon",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "desc": "the reference id",
+     "memberOf": ""
     },
     {
      "name": "active",
      "type": "Boolean",
-     "desc": "Is item active",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "desc": "Is item active default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
      "name": "disabled",
      "type": "Boolean",
-     "desc": "Is item disabled",
-     "memberOf": "Roo.bootstrap.NavItem"
-    },
-    {
-     "name": "preventDefault",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "Roo.bootstrap.NavItem",
+     "desc": "Is item active default false",
+     "memberOf": "",
      "optvals": [
       "true",
       "false"
      ]
     },
     {
-     "name": "tabId",
+     "name": "html",
      "type": "String",
-     "desc": "the tab that this item activates.",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "tagtype",
+     "name": "position",
      "type": "String",
-     "desc": "render as a href or span?",
-     "memberOf": "Roo.bootstrap.NavItem",
+     "desc": "text position default bottom",
+     "memberOf": "",
      "optvals": [
-      "a",
-      "span"
+      "top",
+      "bottom"
      ]
     },
     {
-     "name": "animateRef",
-     "type": "Boolean",
-     "desc": "link to element default false",
-     "memberOf": "Roo.bootstrap.NavItem",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "icon",
+     "type": "String",
+     "desc": "show icon instead of number",
+     "memberOf": ""
     },
     {
      "name": "cls",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "changed",
-     "sig": "function (_self, state)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the active item active state changes"
-    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
     },
     {
      "name": "click",
-     "sig": "function (e)\n{\n\n}",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
      "desc": "The raw click event for the entire grid."
     },
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "scrollto",
-     "sig": "function (_self, options, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when scroll to element"
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.NavSimplebar": {
+  "Roo.bootstrap.NavSidebar": {
    "props": [
-    {
-     "name": "inverse",
-     "type": "Boolean",
-     "desc": "is inverted color",
-     "memberOf": ""
-    },
-    {
-     "name": "type",
-     "type": "String",
-     "desc": "",
-     "memberOf": "",
-     "optvals": [
-      "nav",
-      "pills",
-      "tabs"
-     ]
-    },
-    {
-     "name": "arrangement",
-     "type": "Boolean",
-     "desc": "stacked | justified",
-     "memberOf": ""
-    },
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "alignment",
-     "memberOf": "",
-     "optvals": [
-      "left",
-      "right"
-     ]
-    },
-    {
-     "name": "main",
-     "type": "Boolean",
-     "desc": "main nav bar? default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "loadMask",
-     "type": "Boolean",
-     "desc": "loadMask on the bar",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "tag",
-     "type": "String",
-     "desc": "default is nav",
-     "memberOf": "",
-     "optvals": [
-      "header",
-      "footer",
-      "nav",
-      "div"
-     ]
-    },
     {
      "name": "cls",
      "type": "String",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Navbar": {
+  "Roo.bootstrap.NavSidebarItem": {
    "props": [
+    {
+     "name": "href",
+     "type": "String",
+     "desc": "link to",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "content of button",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "badge",
+     "type": "String",
+     "desc": "text inside badge",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "badgecls",
+     "type": "String",
+     "desc": "the extra classes for the badge",
+     "memberOf": "Roo.bootstrap.NavItem",
+     "optvals": [
+      "bg-green",
+      "bg-red",
+      "bg-yellow"
+     ]
+    },
+    {
+     "name": "glyphicon",
+     "type": "String",
+     "desc": "name of glyphicon",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "icon",
+     "type": "String",
+     "desc": "name of font awesome icon",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "active",
+     "type": "Boolean",
+     "desc": "Is item active",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "Is item disabled",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "preventDefault",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "Roo.bootstrap.NavItem",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "tabId",
+     "type": "String",
+     "desc": "the tab that this item activates.",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "tagtype",
+     "type": "String",
+     "desc": "render as a href or span?",
+     "memberOf": "Roo.bootstrap.NavItem",
+     "optvals": [
+      "a",
+      "span"
+     ]
+    },
+    {
+     "name": "animateRef",
+     "type": "Boolean",
+     "desc": "link to element default false",
+     "memberOf": "Roo.bootstrap.NavItem",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "cls",
      "type": "String",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
+    {
+     "name": "changed",
+     "sig": "function (_self, state)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the active item active state changes"
+    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "click",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw click event for the entire grid."
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
+    {
+     "name": "scrollto",
+     "sig": "function (_self, options, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when scroll to element"
+    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Pagination": {
+  "Roo.bootstrap.NavSimplebar": {
    "props": [
     {
-     "name": "size",
-     "type": "String",
-     "desc": "xs | sm | md | lg",
+     "name": "inverse",
+     "type": "Boolean",
+     "desc": "is inverted color",
      "memberOf": ""
     },
     {
-     "name": "inverse",
+     "name": "type",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "nav",
+      "pills",
+      "tabs"
+     ]
+    },
+    {
+     "name": "arrangement",
      "type": "Boolean",
-     "desc": "false | true",
+     "desc": "stacked | justified",
      "memberOf": ""
     },
+    {
+     "name": "align",
+     "type": "String",
+     "desc": "alignment",
+     "memberOf": "",
+     "optvals": [
+      "left",
+      "right"
+     ]
+    },
+    {
+     "name": "main",
+     "type": "Boolean",
+     "desc": "main nav bar? default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "loadMask",
+     "type": "Boolean",
+     "desc": "loadMask on the bar",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "tag",
+     "type": "String",
+     "desc": "default is nav",
+     "memberOf": "",
+     "optvals": [
+      "header",
+      "footer",
+      "nav",
+      "div"
+     ]
+    },
     {
      "name": "cls",
      "type": "String",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.PaginationItem": {
+  "Roo.bootstrap.Navbar": {
    "props": [
-    {
-     "name": "html",
-     "type": "String",
-     "desc": "text",
-     "memberOf": ""
-    },
-    {
-     "name": "href",
-     "type": "String",
-     "desc": "the link",
-     "memberOf": ""
-    },
-    {
-     "name": "preventDefault",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "active",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": ""
-    },
     {
      "name": "cls",
      "type": "String",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
-    {
-     "name": "click",
-     "sig": "function (e)\n{\n\n}",
-     "type": "function",
-     "desc": "The raw click event for the entire grid."
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.PagingToolbar": {
-   "props": [
-    {
-     "name": "dataSource",
-     "type": "Roo.data.Store",
-     "desc": "The underlying data store providing the paged data",
-     "memberOf": ""
-    },
-    {
-     "name": "container",
-     "type": "String/HTMLElement/Element",
-     "desc": "container The id or element that will contain the toolbar",
-     "memberOf": ""
-    },
-    {
-     "name": "displayInfo",
-     "type": "Boolean",
-     "desc": "True to display the displayMsg (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "pageSize",
-     "type": "Number",
-     "desc": "The number of records to display per page (defaults to 20)",
-     "memberOf": ""
-    },
-    {
-     "name": "displayMsg",
-     "type": "String",
-     "desc": "The paging status message to display (defaults to \"Displaying {start} - {end} of {total}\")",
-     "memberOf": ""
-    },
-    {
-     "name": "emptyMsg",
-     "type": "String",
-     "desc": "The message to display when no records are found (defaults to \"No data to display\")",
-     "memberOf": ""
-    }
-   ],
-   "events": [],
-   "methods": [
-    {
-     "name": "bind",
-     "sig": "(Roo.data.Store store)",
-     "type": "function",
-     "desc": "Binds the paging toolbar to the specified {@link Roo.data.Store}"
-    },
-    {
-     "name": "unbind",
-     "sig": "(Roo.data.Store store)",
-     "type": "function",
-     "desc": "Unbinds the paging toolbar from the specified {@link Roo.data.Store}"
-    }
-   ]
-  },
-  "Roo.bootstrap.Popover": {
+  "Roo.bootstrap.Pagination": {
    "props": [
     {
-     "name": "html",
-     "type": "String",
-     "desc": "contents of the popover   (or false to use children..)",
-     "memberOf": ""
-    },
-    {
-     "name": "title",
-     "type": "String",
-     "desc": "of popover (or false to hide)",
-     "memberOf": ""
-    },
-    {
-     "name": "placement",
-     "type": "String",
-     "desc": "how it is placed",
-     "memberOf": ""
-    },
-    {
-     "name": "trigger",
-     "type": "String",
-     "desc": "click || hover (or false to trigger manually)",
-     "memberOf": ""
-    },
-    {
-     "name": "over",
+     "name": "size",
      "type": "String",
-     "desc": "what (parent or false to trigger manually.)",
+     "desc": "xs | sm | md | lg",
      "memberOf": ""
     },
     {
-     "name": "delay",
-     "type": "Number",
-     "desc": "- delay before showing",
+     "name": "inverse",
+     "type": "Boolean",
+     "desc": "false | true",
      "memberOf": ""
     },
     {
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Progress": {
+  "Roo.bootstrap.PaginationItem": {
    "props": [
     {
-     "name": "striped",
-     "type": "Boolean",
-     "desc": "striped of the progress bar",
+     "name": "html",
+     "type": "String",
+     "desc": "text",
+     "memberOf": ""
+    },
+    {
+     "name": "href",
+     "type": "String",
+     "desc": "the link",
      "memberOf": ""
     },
+    {
+     "name": "preventDefault",
+     "type": "Boolean",
+     "desc": "default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "active",
      "type": "Boolean",
-     "desc": "animated of the progress bar",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "default false",
      "memberOf": ""
     },
     {
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "click",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw click event for the entire grid."
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.ProgressBar": {
+  "Roo.bootstrap.PagingToolbar": {
    "props": [
     {
-     "name": "aria_valuenow",
-     "type": "Number",
-     "desc": "aria-value now",
+     "name": "dataSource",
+     "type": "Roo.data.Store",
+     "desc": "The underlying data store providing the paged data",
      "memberOf": ""
     },
     {
-     "name": "aria_valuemin",
-     "type": "Number",
-     "desc": "aria-value min",
+     "name": "container",
+     "type": "String/HTMLElement/Element",
+     "desc": "container The id or element that will contain the toolbar",
      "memberOf": ""
     },
     {
-     "name": "aria_valuemax",
+     "name": "displayInfo",
+     "type": "Boolean",
+     "desc": "True to display the displayMsg (defaults to false)",
+     "memberOf": ""
+    },
+    {
+     "name": "pageSize",
      "type": "Number",
-     "desc": "aria-value max",
+     "desc": "The number of records to display per page (defaults to 20)",
      "memberOf": ""
     },
     {
-     "name": "label",
+     "name": "displayMsg",
      "type": "String",
-     "desc": "label for the progress bar",
+     "desc": "The paging status message to display (defaults to \"Displaying {start} - {end} of {total}\")",
      "memberOf": ""
     },
     {
-     "name": "panel",
+     "name": "emptyMsg",
+     "type": "String",
+     "desc": "The message to display when no records are found (defaults to \"No data to display\")",
+     "memberOf": ""
+    },
+    {
+     "name": "inverse",
+     "type": "Boolean",
+     "desc": "is inverted color",
+     "memberOf": "Roo.bootstrap.NavSimplebar"
+    },
+    {
+     "name": "type",
      "type": "String",
      "desc": "",
-     "memberOf": "",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
      "optvals": [
-      "success",
-      "info",
-      "warning",
-      "danger"
+      "nav",
+      "pills",
+      "tabs"
      ]
     },
     {
-     "name": "role",
+     "name": "arrangement",
+     "type": "Boolean",
+     "desc": "stacked | justified",
+     "memberOf": "Roo.bootstrap.NavSimplebar"
+    },
+    {
+     "name": "align",
      "type": "String",
-     "desc": "role of the progress bar",
-     "memberOf": ""
+     "desc": "alignment",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "left",
+      "right"
+     ]
     },
     {
-     "name": "sr_only",
+     "name": "main",
+     "type": "Boolean",
+     "desc": "main nav bar? default false",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "loadMask",
+     "type": "Boolean",
+     "desc": "loadMask on the bar",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "tag",
      "type": "String",
-     "desc": "text",
-     "memberOf": ""
+     "desc": "default is nav",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "header",
+      "footer",
+      "nav",
+      "div"
+     ]
     },
     {
      "name": "cls",
      "type": "function",
      "desc": "Appends an event handler to this component"
     },
+    {
+     "name": "bind",
+     "sig": "(Roo.data.Store store)",
+     "type": "function",
+     "desc": "Binds the paging toolbar to the specified {@link Roo.data.Store}"
+    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unbind",
+     "sig": "(Roo.data.Store store)",
+     "type": "function",
+     "desc": "Unbinds the paging toolbar from the specified {@link Roo.data.Store}"
     }
    ]
   },
-  "Roo.bootstrap.Radio": {
+  "Roo.bootstrap.Popover": {
    "props": [
     {
-     "name": "valueOff",
-     "type": "String",
-     "desc": "The value that should go into the generated input element's value when unchecked.",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "inputValue",
-     "type": "String",
-     "desc": "The value that should go into the generated input element's value when checked.",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "boxLabel",
-     "type": "String",
-     "desc": "The text that appears beside the checkbox",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "weight",
-     "type": "String",
-     "desc": "The text that appears beside the checkbox",
-     "memberOf": "Roo.bootstrap.CheckBox",
-     "optvals": [
-      "primary",
-      "warning",
-      "info",
-      "danger",
-      "success"
-     ]
-    },
-    {
-     "name": "checked",
-     "type": "Boolean",
-     "desc": "initnal the element",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "inline",
-     "type": "Boolean",
-     "desc": "inline the element (default false)",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "groupId",
-     "type": "String",
-     "desc": "the checkbox group id // normal just use for checkbox",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "inputType",
-     "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "name",
-     "type": "String",
-     "desc": "name of the input",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "placeholder",
-     "type": "string",
-     "desc": "- placeholder to put in text.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "before",
-     "type": "string",
-     "desc": "- input group add on before",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "after",
-     "type": "string",
-     "desc": "- input group add on after",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "size",
-     "type": "string",
-     "desc": "- (lg|sm) or leave empty..",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "xs",
-     "type": "Number",
-     "desc": "colspan out of 12 for mobile-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "sm",
-     "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "md",
-     "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "lg",
-     "type": "Number",
-     "desc": "colspan out of 12 for large computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "value",
-     "type": "string",
-     "desc": "default value of the input",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "labelWidth",
-     "type": "Number",
-     "desc": "set the width of label (0-12)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "labelAlign",
-     "type": "String",
-     "desc": "",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "top",
-      "left"
-     ]
-    },
-    {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "Specifies that the field should be read-only",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "autocomplete",
-     "type": "String",
-     "desc": "- default is new-password see: https://developers.google.com/web/fundamentals/input/form/label-and-name-inputs?hl=en",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "left",
-      "center",
-      "right"
-     ]
-    },
-    {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "hasFeedback",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "invalidFeedbackIcon",
+     "name": "html",
      "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "contents of the popover   (or false to use children..)",
+     "memberOf": ""
     },
     {
-     "name": "validFeedbackIcon",
+     "name": "title",
      "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "of popover (or false to hide)",
+     "memberOf": ""
     },
     {
-     "name": "maskRe",
+     "name": "placement",
      "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "how it is placed",
+     "memberOf": ""
     },
     {
-     "name": "vtype",
+     "name": "trigger",
      "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "click || hover (or false to trigger manually)",
+     "memberOf": ""
     },
     {
-     "name": "blankText",
+     "name": "over",
      "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "what (parent or false to trigger manually.)",
+     "memberOf": ""
     },
     {
-     "name": "maxLength",
+     "name": "delay",
      "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "minLengthText",
-     "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "maxLengthText",
-     "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "- delay before showing",
+     "memberOf": ""
     },
     {
      "name": "cls",
      "desc": "cutomer id",
      "memberOf": "Roo.bootstrap.Component"
     },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
     {
      "name": "tooltip",
      "type": "string",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "blur",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field loses input focus."
-    },
-    {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
-    },
-    {
-     "name": "check",
-     "sig": "function (_self, checked)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the element is checked or unchecked."
-    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "focus",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field receives input focus."
-    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
-    },
-    {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the key up"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
-    },
-    {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
-    },
-    {
-     "name": "valid",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Try to focus this component."
     },
-    {
-     "name": "get",
-     "sig": "(string the)",
-     "type": "function",
-     "desc": "fetch a CheckBox Group based on the group ID"
-    },
     {
      "name": "getChildContainer",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getName",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the name of the field"
-    },
-    {
-     "name": "getRawValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
-    },
-    {
-     "name": "getValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Initialize Events for the element"
     },
-    {
-     "name": "inputEl",
-     "sig": "()",
-     "type": "function",
-     "desc": "return the real input element."
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
-    {
-     "name": "markInvalid",
-     "sig": "(String msg)",
-     "type": "function",
-     "desc": "Mark this field as invalid"
-    },
-    {
-     "name": "markValid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Mark this field as valid"
-    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "Removes all listeners for this object"
     },
-    {
-     "name": "register",
-     "sig": "(Roo.bootstrap.CheckBox the)",
-     "type": "function",
-     "desc": "register a CheckBox Group"
-    },
     {
      "name": "releaseCapture",
      "sig": "(Observable o)",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
-    {
-     "name": "reset",
-     "sig": "()",
-     "type": "function",
-     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setRawValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
-    },
-    {
-     "name": "setValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "validate",
-     "sig": "()",
-     "type": "function",
-     "desc": "Validates the field value"
-    },
-    {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.bootstrap.Row": {
+  "Roo.bootstrap.Progress": {
    "props": [
+    {
+     "name": "striped",
+     "type": "Boolean",
+     "desc": "striped of the progress bar",
+     "memberOf": ""
+    },
+    {
+     "name": "active",
+     "type": "Boolean",
+     "desc": "animated of the progress bar",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Slider": {
+  "Roo.bootstrap.ProgressBar": {
    "props": [
+    {
+     "name": "aria_valuenow",
+     "type": "Number",
+     "desc": "aria-value now",
+     "memberOf": ""
+    },
+    {
+     "name": "aria_valuemin",
+     "type": "Number",
+     "desc": "aria-value min",
+     "memberOf": ""
+    },
+    {
+     "name": "aria_valuemax",
+     "type": "Number",
+     "desc": "aria-value max",
+     "memberOf": ""
+    },
+    {
+     "name": "label",
+     "type": "String",
+     "desc": "label for the progress bar",
+     "memberOf": ""
+    },
+    {
+     "name": "panel",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "success",
+      "info",
+      "warning",
+      "danger"
+     ]
+    },
+    {
+     "name": "role",
+     "type": "String",
+     "desc": "role of the progress bar",
+     "memberOf": ""
+    },
+    {
+     "name": "sr_only",
+     "type": "String",
+     "desc": "text",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.TabGroup": {
+  "Roo.bootstrap.Radio": {
    "props": [
     {
-     "name": "navId",
+     "name": "valueOff",
      "type": "String",
-     "desc": "the navigation id (for use with navbars) - will be auto generated if it does not exist..",
-     "memberOf": ""
+     "desc": "The value that should go into the generated input element's value when unchecked.",
+     "memberOf": "Roo.bootstrap.CheckBox"
     },
     {
-     "name": "carousel",
-     "type": "Boolean",
-     "desc": "true to make the group behave like a carousel",
-     "memberOf": ""
+     "name": "inputValue",
+     "type": "String",
+     "desc": "The value that should go into the generated input element's value when checked.",
+     "memberOf": "Roo.bootstrap.CheckBox"
     },
     {
-     "name": "bullets",
-     "type": "Number",
-     "desc": "show the panel pointer.. default 0",
-     "memberOf": ""
+     "name": "boxLabel",
+     "type": "String",
+     "desc": "The text that appears beside the checkbox",
+     "memberOf": "Roo.bootstrap.CheckBox"
     },
     {
-     "name": "autoslide",
-     "type": "Boolean",
-     "desc": "auto slide .. default false",
-     "memberOf": "",
+     "name": "weight",
+     "type": "String",
+     "desc": "The text that appears beside the checkbox",
+     "memberOf": "Roo.bootstrap.CheckBox",
      "optvals": [
-      "true",
-      "false"
+      "primary",
+      "warning",
+      "info",
+      "danger",
+      "success"
      ]
     },
     {
-     "name": "slideOnTouch",
+     "name": "checked",
      "type": "Boolean",
-     "desc": "slide on touch .. default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "desc": "initnal the element",
+     "memberOf": "Roo.bootstrap.CheckBox"
     },
     {
-     "name": "timer",
-     "type": "Number",
-     "desc": "auto slide timer .. default 0 millisecond",
-     "memberOf": ""
+     "name": "inline",
+     "type": "Boolean",
+     "desc": "inline the element (default false)",
+     "memberOf": "Roo.bootstrap.CheckBox"
+    },
+    {
+     "name": "groupId",
+     "type": "String",
+     "desc": "the checkbox group id // normal just use for checkbox",
+     "memberOf": "Roo.bootstrap.CheckBox"
+    },
+    {
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "is it disabled",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "inputType",
+     "type": "String",
+     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "name",
+     "type": "String",
+     "desc": "name of the input",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "placeholder",
+     "type": "string",
+     "desc": "- placeholder to put in text.",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "before",
+     "type": "string",
+     "desc": "- input group add on before",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "after",
+     "type": "string",
+     "desc": "- input group add on after",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "size",
+     "type": "string",
+     "desc": "- (lg|sm) or leave empty..",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "xs",
      "type": "Number",
-     "desc": "colspan out of 12 for mobile-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "colspan out of 12 for mobile-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "sm",
      "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "colspan out of 12 for tablet-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "md",
      "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "colspan out of 12 for computer-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "lg",
      "type": "Number",
-     "desc": "colspan out of 12 for large computer-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
-    },
-    {
-     "name": "xsoff",
-     "type": "Number",
-     "desc": "colspan offset out of 12 for mobile-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "colspan out of 12 for large computer-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "smoff",
-     "type": "Number",
-     "desc": "colspan offset out of 12 for tablet-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "name": "value",
+     "type": "string",
+     "desc": "default value of the input",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "mdoff",
+     "name": "labelWidth",
      "type": "Number",
-     "desc": "colspan offset out of 12 for computer-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "set the width of label (0-12)",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "lgoff",
-     "type": "Number",
-     "desc": "colspan offset out of 12 for large computer-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "name": "labelAlign",
+     "type": "String",
+     "desc": "",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "top",
+      "left"
+     ]
     },
     {
-     "name": "hidden",
+     "name": "readOnly",
      "type": "Boolean",
-     "desc": "hide the element",
-     "memberOf": "Roo.bootstrap.Column",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "desc": "Specifies that the field should be read-only",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "alert",
+     "name": "autocomplete",
      "type": "String",
-     "desc": "type alert (changes background / border...)",
-     "memberOf": "Roo.bootstrap.Column",
-     "optvals": [
-      "success",
-      "info",
-      "warning",
-      "danger"
-     ]
+     "desc": "- default is new-password see: https://developers.google.com/web/fundamentals/input/form/label-and-name-inputs?hl=en",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "fa",
+     "name": "align",
      "type": "String",
-     "desc": "font awesome icon",
-     "memberOf": "Roo.bootstrap.Column",
+     "desc": "Default left",
+     "memberOf": "Roo.bootstrap.Input",
      "optvals": [
-      "ban",
-      "check",
-      "..."
+      "left",
+      "center",
+      "right"
      ]
     },
     {
-     "name": "fasize",
-     "type": "Number",
-     "desc": "font awsome size",
-     "memberOf": "Roo.bootstrap.Column",
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
      "optvals": [
-      "1",
-      "2",
-      "...."
+      "true",
+      "false"
      ]
     },
     {
-     "name": "icon",
-     "type": "String",
-     "desc": "glyphicon name",
-     "memberOf": "Roo.bootstrap.Column",
-     "optvals": [
-      "info-sign",
-      "check",
-      "..."
-     ]
+     "name": "validationEvent",
+     "type": "String/Boolean",
+     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "html",
-     "type": "String",
-     "desc": "content of column.",
-     "memberOf": "Roo.bootstrap.Column"
+     "name": "validateOnBlur",
+     "type": "Boolean",
+     "desc": "Whether the field should validate when it loses focus (defaults to true).",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "cls",
+     "name": "validationDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "focusClass",
      "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "style",
+     "name": "invalidClass",
      "type": "String",
-     "desc": "any extra css",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "xattr",
-     "type": "Object",
-     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
-     "memberOf": "Roo.bootstrap.Component"
+     "name": "validClass",
+     "type": "String",
+     "desc": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "can_build_overlaid",
+     "name": "hasFeedback",
      "type": "Boolean",
-     "desc": "True if element can be rebuild from a HTML page",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "default true",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "dataId",
-     "type": "string",
-     "desc": "cutomer id",
-     "memberOf": "Roo.bootstrap.Component"
+     "name": "invalidFeedbackIcon",
+     "type": "String",
+     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "name",
-     "type": "string",
-     "desc": "Specifies name attribute",
-     "memberOf": "Roo.bootstrap.Component"
+     "name": "validFeedbackIcon",
+     "type": "String",
+     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "tooltip",
-     "type": "string",
-     "desc": "Text for the tooltip",
-     "memberOf": "Roo.bootstrap.Component"
+     "name": "selectOnFocus",
+     "type": "Boolean",
+     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "container_method",
-     "type": "string",
-     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
-     "memberOf": "Roo.bootstrap.Component"
+     "name": "maskRe",
+     "type": "String",
+     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "disableClass",
+     "name": "vtype",
      "type": "String",
-     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
-     "memberOf": "Roo.Component"
+     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "allowDomMove",
+     "name": "disableKeyFilter",
      "type": "Boolean",
-     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
-     "memberOf": "Roo.Component"
+     "desc": "True to disable input keystroke filtering (defaults to false)",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "hideMode",
-     "type": "String",
-     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
-     "memberOf": "Roo.Component",
-     "optvals": [
+     "name": "allowBlank",
+     "type": "Boolean",
+     "desc": "False to validate that the value length > 0 (defaults to true)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "blankText",
+     "type": "String",
+     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "minLength",
+     "type": "Number",
+     "desc": "Minimum input field length required (defaults to 0)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "maxLength",
+     "type": "Number",
+     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "minLengthText",
+     "type": "String",
+     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "maxLengthText",
+     "type": "String",
+     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "validator",
+     "type": "Function",
+     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "regex",
+     "type": "RegExp",
+     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "regexText",
+     "type": "String",
+     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
       "display",
       "visibility"
      ]
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
+    {
+     "name": "blur",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this field loses input focus."
+    },
+    {
+     "name": "change",
+     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires just before the field blurs if the field value has changed."
+    },
+    {
+     "name": "check",
+     "sig": "function (_self, checked)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the element is checked or unchecked."
+    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
+    {
+     "name": "focus",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this field receives input focus."
+    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been marked as invalid."
+    },
+    {
+     "name": "keyup",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the key up"
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
+    },
+    {
+     "name": "specialkey",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
+    },
+    {
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
+    {
+     "name": "clearInvalid",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clear any invalid styles/messages for this field"
+    },
     {
      "name": "destroy",
      "sig": "()",
      "name": "get",
      "sig": "(string the)",
      "type": "function",
-     "desc": "fetch a Navigation Group based on the navigation ID\nif one does not exist , it will get created."
+     "desc": "fetch a CheckBox Group based on the group ID"
     },
     {
      "name": "getChildContainer",
      "type": "function",
      "desc": "Returns the id of this component."
     },
+    {
+     "name": "getName",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the name of the field"
+    },
+    {
+     "name": "getRawValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
+    },
+    {
+     "name": "getValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Initialize Events for the element"
     },
+    {
+     "name": "inputEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "return the real input element."
+    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
+    {
+     "name": "markInvalid",
+     "sig": "(String msg)",
+     "type": "function",
+     "desc": "Mark this field as invalid"
+    },
+    {
+     "name": "markValid",
+     "sig": "()",
+     "type": "function",
+     "desc": "Mark this field as valid"
+    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
     },
     {
      "name": "register",
-     "sig": "(Roo.bootstrap.NavItem the)",
-     "type": "function",
-     "desc": "register a Navigation item"
-    },
-    {
-     "name": "register",
-     "sig": "(Roo.bootstrap.NavGroup the)",
+     "sig": "(Roo.bootstrap.CheckBox the)",
      "type": "function",
-     "desc": "register a Navigation Group"
+     "desc": "register a CheckBox Group"
     },
     {
      "name": "releaseCapture",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
+    {
+     "name": "reset",
+     "sig": "()",
+     "type": "function",
+     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
+    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setRawValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
+    },
+    {
+     "name": "setValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
+    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
-    },
-    {
-     "name": "showPanel",
-     "sig": "(Roo.bootstrap.TabPanel|number|string panel)",
-     "type": "function",
-     "desc": "show a specific panel"
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    }
-   ]
-  },
-  "Roo.bootstrap.TabPanel": {
-   "props": [
-    {
-     "name": "active",
-     "type": "Boolean",
-     "desc": "panel active",
-     "memberOf": ""
     },
     {
-     "name": "html",
-     "type": "String",
-     "desc": "panel content",
-     "memberOf": ""
-    },
-    {
-     "name": "tabId",
-     "type": "String",
-     "desc": "unique tab ID (will be autogenerated if not set. - used to match TabItem to Panel)",
-     "memberOf": ""
+     "name": "validate",
+     "sig": "()",
+     "type": "function",
+     "desc": "Validates the field value"
     },
     {
-     "name": "navId",
-     "type": "String",
-     "desc": "The Roo.bootstrap.NavGroup which triggers show hide ()",
-     "memberOf": ""
-    },
+     "name": "validateValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
+    }
+   ]
+  },
+  "Roo.bootstrap.Row": {
+   "props": [
     {
      "name": "cls",
      "type": "String",
     }
    ],
    "events": [
-    {
-     "name": "beforedeactivate",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a tab is de-activated - can be used to do validation on a form."
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "changed",
-     "sig": "function (_self, state)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the active status changes"
-    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Table": {
+  "Roo.bootstrap.Slider": {
    "props": [
     {
      "name": "cls",
      "type": "String",
-     "desc": "table class",
-     "memberOf": ""
-    },
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "Specifies the alignment of a table according to surrounding text",
-     "memberOf": "",
-     "optvals": [
-      "left",
-      "center",
-      "right"
-     ]
-    },
-    {
-     "name": "bgcolor",
-     "type": "String",
-     "desc": "Specifies the background color for a table",
-     "memberOf": ""
-    },
-    {
-     "name": "border",
-     "type": "Number",
-     "desc": "Specifies whether the table cells should have borders or not",
-     "memberOf": ""
-    },
-    {
-     "name": "cellpadding",
-     "type": "Number",
-     "desc": "Specifies the space between the cell wall and the cell content",
-     "memberOf": ""
-    },
-    {
-     "name": "cellspacing",
-     "type": "Number",
-     "desc": "Specifies the space between cells",
-     "memberOf": ""
-    },
-    {
-     "name": "frame",
-     "type": "String",
-     "desc": "Specifies which parts of the outside borders that should be visible",
-     "memberOf": ""
-    },
-    {
-     "name": "rules",
-     "type": "String",
-     "desc": "Specifies which parts of the inside borders that should be visible",
-     "memberOf": ""
-    },
-    {
-     "name": "sortable",
-     "type": "String",
-     "desc": "Specifies that the table should be sortable",
-     "memberOf": ""
-    },
-    {
-     "name": "summary",
-     "type": "String",
-     "desc": "Specifies a summary of the content of a table",
-     "memberOf": ""
-    },
-    {
-     "name": "width",
-     "type": "Number",
-     "desc": "Specifies the width of a table",
-     "memberOf": ""
-    },
-    {
-     "name": "layout",
-     "type": "String",
-     "desc": "table layout (auto | fixed | initial | inherit)",
-     "memberOf": ""
-    },
-    {
-     "name": "striped",
-     "type": "boolean",
-     "desc": "Should the rows be alternative striped",
-     "memberOf": ""
-    },
-    {
-     "name": "bordered",
-     "type": "boolean",
-     "desc": "Add borders to the table",
-     "memberOf": ""
-    },
-    {
-     "name": "hover",
-     "type": "boolean",
-     "desc": "Add hover highlighting",
-     "memberOf": ""
-    },
-    {
-     "name": "condensed",
-     "type": "boolean",
-     "desc": "Format condensed",
-     "memberOf": ""
-    },
-    {
-     "name": "responsive",
-     "type": "boolean",
-     "desc": "Format condensed",
-     "memberOf": ""
-    },
-    {
-     "name": "loadMask",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "tfoot",
-     "type": "Boolean",
-     "desc": "generate tfoot, default true",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "thead",
-     "type": "Boolean",
-     "desc": "generate thead, default true",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "RowSelection",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "CellSelection",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "footer",
-     "type": "Roo.bootstrap.PagingToolbar",
-     "desc": "a paging toolbar",
-     "memberOf": ""
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "style",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "cellclick",
-     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a cell is clicked"
-    },
-    {
-     "name": "celldblclick",
-     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a cell is double clicked"
-    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "mouseout",
-     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a mouseout occur"
-    },
-    {
-     "name": "mouseover",
-     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a mouseover occur"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "rowclass",
-     "sig": "function (_self, 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, el, rowIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a row is clicked"
-    },
-    {
-     "name": "rowdblclick",
-     "sig": "function (_self, el, rowIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a row is double clicked"
-    },
-    {
-     "name": "rowsrendered",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when all the  rows have been rendered"
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clear",
-     "sig": "()",
-     "type": "function",
-     "desc": "Remove all rows"
-    },
     {
      "name": "destroy",
      "sig": "()",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setRowVisibility",
-     "sig": "(Number rowIndex, Boolean state)",
-     "type": "function",
-     "desc": "Show or hide a row."
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Table.AbstractSelectionModel": {
+  "Roo.bootstrap.TabGroup": {
    "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": [],
-   "methods": [
+     "name": "navId",
+     "type": "String",
+     "desc": "the navigation id (for use with navbars) - will be auto generated if it does not exist..",
+     "memberOf": ""
+    },
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
-     "type": "function",
-     "desc": "Used to define events on this Observable"
+     "name": "carousel",
+     "type": "Boolean",
+     "desc": "true to make the group behave like a carousel",
+     "memberOf": ""
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this component"
+     "name": "bullets",
+     "type": "Boolean",
+     "desc": "show bullets for the panels",
+     "memberOf": ""
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
-     "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "name": "autoslide",
+     "type": "Boolean",
+     "desc": "auto slide .. default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
-     "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "name": "slideOnTouch",
+     "type": "Boolean",
+     "desc": "slide on touch .. default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "name": "timer",
+     "type": "Number",
+     "desc": "auto slide timer .. default 0 millisecond",
+     "memberOf": ""
     },
     {
-     "name": "isLocked",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the selections are locked."
+     "name": "xs",
+     "type": "Number",
+     "desc": "colspan out of 12 for mobile-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "lock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Locks the selections."
+     "name": "sm",
+     "type": "Number",
+     "desc": "colspan out of 12 for tablet-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "name": "md",
+     "type": "Number",
+     "desc": "colspan out of 12 for computer-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
+     "name": "lg",
+     "type": "Number",
+     "desc": "colspan out of 12 for large computer-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
-     "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "name": "xsoff",
+     "type": "Number",
+     "desc": "colspan offset out of 12 for mobile-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener"
+     "name": "smoff",
+     "type": "Number",
+     "desc": "colspan offset out of 12 for tablet-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
+     "name": "mdoff",
+     "type": "Number",
+     "desc": "colspan offset out of 12 for computer-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "unlock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Unlocks the selections."
-    }
-   ]
-  },
-  "Roo.bootstrap.Table.RowSelectionModel": {
-   "props": [
+     "name": "lgoff",
+     "type": "Number",
+     "desc": "colspan offset out of 12 for large computer-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
+    },
     {
-     "name": "singleSelect",
+     "name": "hidden",
      "type": "Boolean",
-     "desc": "True to allow selection of only one row at a time (defaults to false)",
-     "memberOf": ""
+     "desc": "hide the element",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "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": "afterselectionchange",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the selection changes (eg. by key press or clicking)"
+     "name": "alert",
+     "type": "String",
+     "desc": "type alert (changes background / border...)",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "success",
+      "info",
+      "warning",
+      "danger"
+     ]
     },
     {
-     "name": "beforerowselect",
-     "sig": "function (_self, rowIndex, keepExisting)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a row is selected being selected, return false to cancel."
+     "name": "fa",
+     "type": "String",
+     "desc": "font awesome icon",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "ban",
+      "check",
+      "..."
+     ]
     },
     {
-     "name": "rowdeselect",
-     "sig": "function (_self, rowIndex)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a row is deselected."
+     "name": "fasize",
+     "type": "Number",
+     "desc": "font awsome size",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "1",
+      "2",
+      "...."
+     ]
     },
     {
-     "name": "rowselect",
-     "sig": "function (_self, rowIndex, r)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a row is selected."
+     "name": "icon",
+     "type": "String",
+     "desc": "glyphicon name",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "info-sign",
+      "check",
+      "..."
+     ]
     },
     {
-     "name": "selectionchange",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the selection changes"
-    }
-   ],
-   "methods": [
+     "name": "html",
+     "type": "String",
+     "desc": "content of column.",
+     "memberOf": "Roo.bootstrap.Column"
+    },
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
-     "type": "function",
-     "desc": "Used to define events on this Observable"
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this component"
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
-     "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "clearSelections",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clears all selections."
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "deselectRange",
-     "sig": "(Number startRow, Number endRow)",
-     "type": "function",
-     "desc": "Deselects a range of rows. All rows in between startRow and endRow are also deselected."
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "deselectRow",
-     "sig": "(Number row)",
-     "type": "function",
-     "desc": "Deselects a row."
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
-     "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "getCount",
-     "sig": "()",
-     "type": "function",
-     "desc": "Gets the number of selected rows."
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "getSelected",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the first selected record."
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "getSelections",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the selected records"
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "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": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "hasSelection",
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
+    },
+    {
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
+    {
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
+    {
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
      "sig": "()",
      "type": "function",
-     "desc": "Returns True if there is a selection."
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
     },
     {
-     "name": "isIdSelected",
-     "sig": "(String id)",
+     "name": "disable",
+     "sig": "()",
      "type": "function",
-     "desc": "Returns True if the specified record id is selected."
+     "desc": "Disable this component."
     },
     {
-     "name": "isLocked",
+     "name": "enable",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if the selections are locked."
+     "desc": "Enable this component."
     },
     {
-     "name": "isSelected",
-     "sig": "(Number/Record record)",
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
      "type": "function",
-     "desc": "Returns True if the specified row is selected."
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "lock",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "get",
+     "sig": "(string the)",
+     "type": "function",
+     "desc": "fetch a Navigation Group based on the navigation ID\nif one does not exist , it will get created."
+    },
+    {
+     "name": "getChildContainer",
      "sig": "()",
      "type": "function",
-     "desc": "Locks the selections."
+     "desc": "Fetch the element to add children to"
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "getEl",
+     "sig": "()",
      "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "purgeListeners",
+     "name": "getId",
      "sig": "()",
      "type": "function",
-     "desc": "Removes all listeners for this object"
+     "desc": "Returns the id of this component."
     },
     {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
+     "name": "hasListener",
+     "sig": "(String eventName)",
      "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "hide",
+     "sig": "()",
      "type": "function",
-     "desc": "Removes a listener"
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
-     "name": "selectAll",
+     "name": "initEvents",
      "sig": "()",
      "type": "function",
-     "desc": "Selects all rows."
+     "desc": "Initialize Events for the element"
     },
     {
-     "name": "selectFirstRow",
+     "name": "isVisible",
      "sig": "()",
      "type": "function",
-     "desc": "Selects the first row in the grid."
+     "desc": "Returns true if this component is visible."
     },
     {
-     "name": "selectLastRow",
-     "sig": "(Boolean keepExisting)",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Select the last row."
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "selectNext",
-     "sig": "(Boolean keepExisting)",
+     "name": "purgeListeners",
+     "sig": "()",
      "type": "function",
-     "desc": "Selects the row immediately following the last selected row."
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "selectPrevious",
-     "sig": "(Boolean keepExisting)",
+     "name": "register",
+     "sig": "(Roo.bootstrap.NavItem the)",
      "type": "function",
-     "desc": "Selects the row that precedes the last selected row."
+     "desc": "register a Navigation item"
     },
     {
-     "name": "selectRange",
-     "sig": "(Number startRow, Number endRow, Boolean keepExisting)",
+     "name": "register",
+     "sig": "(Roo.bootstrap.NavGroup the)",
      "type": "function",
-     "desc": "Selects a range of rows. All rows in between startRow and endRow are also selected."
+     "desc": "register a Navigation Group"
     },
     {
-     "name": "selectRecords",
-     "sig": "(Array records, Boolean keepExisting)",
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
      "type": "function",
-     "desc": "Select records."
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "selectRow",
-     "sig": "(Number row, Boolean keepExisting)",
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "Selects a row."
+     "desc": "Removes a listener"
     },
     {
-     "name": "selectRows",
-     "sig": "(Array rows, Boolean keepExisting)",
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
      "type": "function",
-     "desc": "Selects multiple rows."
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "unlock",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Unlocks the selections."
+     "desc": "Show a component - removes 'hidden' class"
+    },
+    {
+     "name": "showPanel",
+     "sig": "(Roo.bootstrap.TabPanel|number|string panel)",
+     "type": "function",
+     "desc": "show a specific panel"
+    },
+    {
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
     }
    ]
   },
-  "Roo.bootstrap.TableBody": {
+  "Roo.bootstrap.TabPanel": {
    "props": [
     {
-     "name": "cls",
-     "type": "String",
-     "desc": "element class",
+     "name": "active",
+     "type": "Boolean",
+     "desc": "panel active",
      "memberOf": ""
     },
     {
-     "name": "tag",
+     "name": "html",
      "type": "String",
-     "desc": "element tag (thead|tbody|tfoot) default tbody",
+     "desc": "panel content",
      "memberOf": ""
     },
     {
-     "name": "align",
+     "name": "tabId",
      "type": "String",
-     "desc": "Aligns the content inside the element",
+     "desc": "unique tab ID (will be autogenerated if not set. - used to match TabItem to Panel)",
      "memberOf": ""
     },
     {
-     "name": "charoff",
-     "type": "Number",
-     "desc": "Sets the number of characters the content inside the element will be aligned from the character specified by the char attribute",
+     "name": "navId",
+     "type": "String",
+     "desc": "The Roo.bootstrap.NavGroup which triggers show hide ()",
      "memberOf": ""
     },
     {
-     "name": "valign",
+     "name": "cls",
      "type": "String",
-     "desc": "Vertical aligns the content inside the <tbody> element",
-     "memberOf": ""
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "style",
     }
    ],
    "events": [
+    {
+     "name": "beforedeactivate",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before a tab is de-activated - can be used to do validation on a form."
+    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
+    {
+     "name": "changed",
+     "sig": "function (_self, state)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the active status changes"
+    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.TableCell": {
+  "Roo.bootstrap.Table": {
    "props": [
     {
-     "name": "html",
+     "name": "cls",
      "type": "String",
-     "desc": "cell contain text",
+     "desc": "table class",
      "memberOf": ""
     },
     {
-     "name": "cls",
+     "name": "align",
      "type": "String",
-     "desc": "cell class",
-     "memberOf": ""
+     "desc": "Specifies the alignment of a table according to surrounding text",
+     "memberOf": "",
+     "optvals": [
+      "left",
+      "center",
+      "right"
+     ]
     },
     {
-     "name": "tag",
+     "name": "bgcolor",
      "type": "String",
-     "desc": "cell tag (td|th) default td",
+     "desc": "Specifies the background color for a table",
      "memberOf": ""
     },
     {
-     "name": "abbr",
-     "type": "String",
-     "desc": "Specifies an abbreviated version of the content in a cell",
+     "name": "border",
+     "type": "Number",
+     "desc": "Specifies whether the table cells should have borders or not",
      "memberOf": ""
     },
     {
-     "name": "align",
+     "name": "cellpadding",
+     "type": "Number",
+     "desc": "Specifies the space between the cell wall and the cell content",
+     "memberOf": ""
+    },
+    {
+     "name": "cellspacing",
+     "type": "Number",
+     "desc": "Specifies the space between cells",
+     "memberOf": ""
+    },
+    {
+     "name": "frame",
      "type": "String",
-     "desc": "Aligns the content in a cell",
+     "desc": "Specifies which parts of the outside borders that should be visible",
      "memberOf": ""
     },
     {
-     "name": "axis",
+     "name": "rules",
      "type": "String",
-     "desc": "Categorizes cells",
+     "desc": "Specifies which parts of the inside borders that should be visible",
      "memberOf": ""
     },
     {
-     "name": "bgcolor",
+     "name": "sortable",
      "type": "String",
-     "desc": "Specifies the background color of a cell",
+     "desc": "Specifies that the table should be sortable",
      "memberOf": ""
     },
     {
-     "name": "charoff",
-     "type": "Number",
-     "desc": "Sets the number of characters the content will be aligned from the character specified by the char attribute",
+     "name": "summary",
+     "type": "String",
+     "desc": "Specifies a summary of the content of a table",
      "memberOf": ""
     },
     {
-     "name": "colspan",
+     "name": "width",
      "type": "Number",
-     "desc": "Specifies the number of columns a cell should span",
+     "desc": "Specifies the width of a table",
      "memberOf": ""
     },
     {
-     "name": "headers",
+     "name": "layout",
      "type": "String",
-     "desc": "Specifies one or more header cells a cell is related to",
+     "desc": "table layout (auto | fixed | initial | inherit)",
      "memberOf": ""
     },
     {
-     "name": "height",
-     "type": "Number",
-     "desc": "Sets the height of a cell",
+     "name": "striped",
+     "type": "boolean",
+     "desc": "Should the rows be alternative striped",
      "memberOf": ""
     },
     {
-     "name": "nowrap",
-     "type": "String",
-     "desc": "Specifies that the content inside a cell should not wrap",
+     "name": "bordered",
+     "type": "boolean",
+     "desc": "Add borders to the table",
      "memberOf": ""
     },
     {
-     "name": "rowspan",
-     "type": "Number",
-     "desc": "Sets the number of rows a cell should span",
+     "name": "hover",
+     "type": "boolean",
+     "desc": "Add hover highlighting",
      "memberOf": ""
     },
     {
-     "name": "scope",
-     "type": "String",
-     "desc": "Defines a way to associate header cells and data cells in a table",
+     "name": "condensed",
+     "type": "boolean",
+     "desc": "Format condensed",
      "memberOf": ""
     },
     {
-     "name": "valign",
-     "type": "String",
-     "desc": "Vertical aligns the content in a cell",
+     "name": "responsive",
+     "type": "boolean",
+     "desc": "Format condensed",
      "memberOf": ""
     },
     {
-     "name": "width",
-     "type": "Number",
-     "desc": "Specifies the width of a cell",
+     "name": "loadMask",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "footerShow",
+     "type": "Boolean",
+     "desc": "generate tfoot, default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "headerShow",
+     "type": "Boolean",
+     "desc": "generate thead, default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "rowSelection",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "cellSelection",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "footer",
+     "type": "Roo.bootstrap.PagingToolbar",
+     "desc": "a paging toolbar",
      "memberOf": ""
     },
     {
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
+    {
+     "name": "cellclick",
+     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is clicked"
+    },
+    {
+     "name": "celldblclick",
+     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is double clicked"
+    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "mouseout",
+     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a mouseout occur"
+    },
+    {
+     "name": "mouseover",
+     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a mouseover occur"
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
+    {
+     "name": "rowclass",
+     "sig": "function (_self, 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, el, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is clicked"
+    },
+    {
+     "name": "rowdblclick",
+     "sig": "function (_self, el, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is double clicked"
+    },
+    {
+     "name": "rowsrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when all the  rows have been rendered"
+    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
+    {
+     "name": "clear",
+     "sig": "()",
+     "type": "function",
+     "desc": "Remove all rows"
+    },
     {
      "name": "destroy",
      "sig": "()",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setRowVisibility",
+     "sig": "(Number rowIndex, Boolean state)",
+     "type": "function",
+     "desc": "Show or hide a row."
+    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.TableRow": {
+  "Roo.bootstrap.Table.AbstractSelectionModel": {
    "props": [
     {
-     "name": "cls",
-     "type": "String",
-     "desc": "row class",
-     "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": [],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "align",
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "isLocked",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the selections are locked."
+    },
+    {
+     "name": "lock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Locks the selections."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unlock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Unlocks the selections."
+    }
+   ]
+  },
+  "Roo.bootstrap.Table.RowSelectionModel": {
+   "props": [
+    {
+     "name": "singleSelect",
+     "type": "Boolean",
+     "desc": "True to allow selection of only one row at a time (defaults to false)",
+     "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": "afterselectionchange",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the selection changes (eg. by key press or clicking)"
+    },
+    {
+     "name": "beforerowselect",
+     "sig": "function (_self, rowIndex, keepExisting)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is selected being selected, return false to cancel."
+    },
+    {
+     "name": "rowdeselect",
+     "sig": "function (_self, rowIndex)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is deselected."
+    },
+    {
+     "name": "rowselect",
+     "sig": "function (_self, rowIndex, r)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is selected."
+    },
+    {
+     "name": "selectionchange",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the selection changes"
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "clearSelections",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears all selections."
+    },
+    {
+     "name": "deselectRange",
+     "sig": "(Number startRow, Number endRow)",
+     "type": "function",
+     "desc": "Deselects a range of rows. All rows in between startRow and endRow are also deselected."
+    },
+    {
+     "name": "deselectRow",
+     "sig": "(Number row)",
+     "type": "function",
+     "desc": "Deselects a row."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "getCount",
+     "sig": "()",
+     "type": "function",
+     "desc": "Gets the number of selected rows."
+    },
+    {
+     "name": "getSelected",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the first selected record."
+    },
+    {
+     "name": "getSelections",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the selected records"
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hasSelection",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns True if there is a selection."
+    },
+    {
+     "name": "isIdSelected",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Returns True if the specified record id is selected."
+    },
+    {
+     "name": "isLocked",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the selections are locked."
+    },
+    {
+     "name": "isSelected",
+     "sig": "(Number/Record record)",
+     "type": "function",
+     "desc": "Returns True if the specified row is selected."
+    },
+    {
+     "name": "lock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Locks the selections."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "selectAll",
+     "sig": "()",
+     "type": "function",
+     "desc": "Selects all rows."
+    },
+    {
+     "name": "selectFirstRow",
+     "sig": "()",
+     "type": "function",
+     "desc": "Selects the first row in the grid."
+    },
+    {
+     "name": "selectLastRow",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Select the last row."
+    },
+    {
+     "name": "selectNext",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects the row immediately following the last selected row."
+    },
+    {
+     "name": "selectPrevious",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects the row that precedes the last selected row."
+    },
+    {
+     "name": "selectRange",
+     "sig": "(Number startRow, Number endRow, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects a range of rows. All rows in between startRow and endRow are also selected."
+    },
+    {
+     "name": "selectRecords",
+     "sig": "(Array records, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Select records."
+    },
+    {
+     "name": "selectRow",
+     "sig": "(Number row, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects a row."
+    },
+    {
+     "name": "selectRows",
+     "sig": "(Array rows, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects multiple rows."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unlock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Unlocks the selections."
+    }
+   ]
+  },
+  "Roo.bootstrap.TableBody": {
+   "props": [
+    {
+     "name": "cls",
      "type": "String",
-     "desc": "Aligns the content in a table row",
+     "desc": "element class",
      "memberOf": ""
     },
     {
-     "name": "bgcolor",
+     "name": "tag",
      "type": "String",
-     "desc": "Specifies a background color for a table row",
+     "desc": "element tag (thead|tbody|tfoot) default tbody",
+     "memberOf": ""
+    },
+    {
+     "name": "align",
+     "type": "String",
+     "desc": "Aligns the content inside the element",
      "memberOf": ""
     },
     {
      "name": "charoff",
      "type": "Number",
-     "desc": "Sets the number of characters the content will be aligned from the character specified by the char attribute",
+     "desc": "Sets the number of characters the content inside the element will be aligned from the character specified by the char attribute",
      "memberOf": ""
     },
     {
      "name": "valign",
      "type": "String",
-     "desc": "Vertical aligns the content in a table row",
+     "desc": "Vertical aligns the content inside the <tbody> element",
      "memberOf": ""
     },
     {
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.TextArea": {
+  "Roo.bootstrap.TableCell": {
    "props": [
     {
-     "name": "cols",
-     "type": "Number",
-     "desc": "Specifies the visible width of a text area",
+     "name": "html",
+     "type": "String",
+     "desc": "cell contain text",
      "memberOf": ""
     },
     {
-     "name": "rows",
-     "type": "Number",
-     "desc": "Specifies the visible number of lines in a text area",
+     "name": "cls",
+     "type": "String",
+     "desc": "cell class",
      "memberOf": ""
     },
     {
-     "name": "wrap",
-     "type": "string",
-     "desc": "Specifies how the text in a text area is to be wrapped when submitted in a form",
-     "memberOf": "",
-     "optvals": [
-      "soft",
-      "hard"
-     ]
-    },
-    {
-     "name": "resize",
-     "type": "string",
-     "desc": "",
-     "memberOf": "",
-     "optvals": [
-      "none",
-      "both",
-      "horizontal",
-      "vertical",
-      "inherit",
-      "initial"
-     ]
-    },
-    {
-     "name": "html",
-     "type": "string",
-     "desc": "text",
+     "name": "tag",
+     "type": "String",
+     "desc": "cell tag (td|th) default td",
      "memberOf": ""
     },
     {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "fieldLabel",
+     "name": "abbr",
      "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Specifies an abbreviated version of the content in a cell",
+     "memberOf": ""
     },
     {
-     "name": "inputType",
+     "name": "align",
      "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Aligns the content in a cell",
+     "memberOf": ""
     },
     {
-     "name": "name",
+     "name": "axis",
      "type": "String",
-     "desc": "name of the input",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Categorizes cells",
+     "memberOf": ""
     },
     {
-     "name": "placeholder",
-     "type": "string",
-     "desc": "- placeholder to put in text.",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "bgcolor",
+     "type": "String",
+     "desc": "Specifies the background color of a cell",
+     "memberOf": ""
     },
     {
-     "name": "before",
-     "type": "string",
-     "desc": "- input group add on before",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "charoff",
+     "type": "Number",
+     "desc": "Sets the number of characters the content will be aligned from the character specified by the char attribute",
+     "memberOf": ""
     },
     {
-     "name": "after",
-     "type": "string",
-     "desc": "- input group add on after",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "colspan",
+     "type": "Number",
+     "desc": "Specifies the number of columns a cell should span",
+     "memberOf": ""
     },
     {
-     "name": "size",
-     "type": "string",
-     "desc": "- (lg|sm) or leave empty..",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "headers",
+     "type": "String",
+     "desc": "Specifies one or more header cells a cell is related to",
+     "memberOf": ""
     },
     {
-     "name": "xs",
+     "name": "height",
      "type": "Number",
-     "desc": "colspan out of 12 for mobile-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Sets the height of a cell",
+     "memberOf": ""
     },
     {
-     "name": "sm",
-     "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "nowrap",
+     "type": "String",
+     "desc": "Specifies that the content inside a cell should not wrap",
+     "memberOf": ""
     },
     {
-     "name": "md",
+     "name": "rowspan",
      "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Sets the number of rows a cell should span",
+     "memberOf": ""
     },
     {
-     "name": "lg",
-     "type": "Number",
-     "desc": "colspan out of 12 for large computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "scope",
+     "type": "String",
+     "desc": "Defines a way to associate header cells and data cells in a table",
+     "memberOf": ""
     },
     {
-     "name": "value",
-     "type": "string",
-     "desc": "default value of the input",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "valign",
+     "type": "String",
+     "desc": "Vertical aligns the content in a cell",
+     "memberOf": ""
     },
     {
-     "name": "labelWidth",
+     "name": "width",
      "type": "Number",
-     "desc": "set the width of label (0-12)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Specifies the width of a cell",
+     "memberOf": ""
     },
     {
-     "name": "labelAlign",
+     "name": "style",
      "type": "String",
-     "desc": "",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "top",
-      "left"
-     ]
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "readOnly",
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
      "type": "Boolean",
-     "desc": "Specifies that the field should be read-only",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "autocomplete",
-     "type": "String",
-     "desc": "- default is new-password see: https://developers.google.com/web/fundamentals/input/form/label-and-name-inputs?hl=en",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "align",
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
      "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
      "optvals": [
-      "left",
-      "center",
-      "right"
+      "display",
+      "visibility"
      ]
     },
     {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.bootstrap.Input"
+     "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": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "validClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "hasFeedback",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
     },
     {
-     "name": "invalidFeedbackIcon",
-     "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
     },
     {
-     "name": "validFeedbackIcon",
-     "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
     },
     {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
     },
     {
-     "name": "maskRe",
-     "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "blankText",
-     "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
     },
     {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
     },
     {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
     },
     {
-     "name": "minLengthText",
-     "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "maxLengthText",
-     "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
     },
     {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "getChildContainer",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to add children to"
     },
     {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide a component - adds 'hidden' class"
+    },
+    {
+     "name": "initEvents",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialize Events for the element"
+    },
+    {
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
+    },
+    {
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
+    {
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show a component - removes 'hidden' class"
     },
+    {
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.bootstrap.TableRow": {
+   "props": [
     {
      "name": "cls",
      "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "row class",
+     "memberOf": ""
+    },
+    {
+     "name": "align",
+     "type": "String",
+     "desc": "Aligns the content in a table row",
+     "memberOf": ""
+    },
+    {
+     "name": "bgcolor",
+     "type": "String",
+     "desc": "Specifies a background color for a table row",
+     "memberOf": ""
+    },
+    {
+     "name": "charoff",
+     "type": "Number",
+     "desc": "Sets the number of characters the content will be aligned from the character specified by the char attribute",
+     "memberOf": ""
+    },
+    {
+     "name": "valign",
+     "type": "String",
+     "desc": "Vertical aligns the content in a table row",
+     "memberOf": ""
     },
     {
      "name": "style",
      "desc": "cutomer id",
      "memberOf": "Roo.bootstrap.Component"
     },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
     {
      "name": "tooltip",
      "type": "string",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "blur",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field loses input focus."
-    },
-    {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
-    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "focus",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field receives input focus."
-    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
-    },
-    {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the key up"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
-    },
-    {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
-    },
-    {
-     "name": "valid",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getName",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the name of the field"
-    },
-    {
-     "name": "getRawValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
-    },
-    {
-     "name": "getValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Initialize Events for the element"
     },
-    {
-     "name": "inputEl",
-     "sig": "()",
-     "type": "function",
-     "desc": "return the real textarea element."
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
-    {
-     "name": "markInvalid",
-     "sig": "(String msg)",
-     "type": "function",
-     "desc": "Mark this field as invalid"
-    },
-    {
-     "name": "markValid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Mark this field as valid"
-    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
-    {
-     "name": "reset",
-     "sig": "()",
-     "type": "function",
-     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setRawValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
-    },
-    {
-     "name": "setValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "validate",
-     "sig": "()",
-     "type": "function",
-     "desc": "Validates the field value"
-    },
-    {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.bootstrap.TimeField": {
+  "Roo.bootstrap.TextArea": {
    "props": [
     {
-     "name": "format",
-     "type": "String",
-     "desc": "The default time format string which can be overriden for localization support.  The format must be\nvalid according to {@link Date#parseDate} (defaults to 'H:i').",
+     "name": "cols",
+     "type": "Number",
+     "desc": "Specifies the visible width of a text area",
      "memberOf": ""
     },
     {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "rows",
+     "type": "Number",
+     "desc": "Specifies the visible number of lines in a text area",
+     "memberOf": ""
     },
     {
-     "name": "inputType",
-     "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "wrap",
+     "type": "string",
+     "desc": "Specifies how the text in a text area is to be wrapped when submitted in a form",
+     "memberOf": "",
+     "optvals": [
+      "soft",
+      "hard"
+     ]
+    },
+    {
+     "name": "resize",
+     "type": "string",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "none",
+      "both",
+      "horizontal",
+      "vertical",
+      "inherit",
+      "initial"
+     ]
+    },
+    {
+     "name": "html",
+     "type": "string",
+     "desc": "text",
+     "memberOf": ""
+    },
+    {
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "is it disabled",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "inputType",
+     "type": "String",
+     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "name",
      "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "select",
-     "sig": "function (_self, date)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when select a date."
-    },
     {
      "name": "show",
-     "sig": "function (thisthis, date)\n{\n\n}",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this field show."
+     "desc": "Fires after the component is shown."
     },
     {
      "name": "specialkey",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "inputEl",
      "sig": "()",
      "type": "function",
-     "desc": "return the real input element."
+     "desc": "return the real textarea element."
     },
     {
      "name": "isVisible",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.Tooltip": {
-   "props": [],
-   "events": [],
-   "methods": [
-    {
-     "name": "currentEl",
-     "sig": "()",
-     "type": "function",
-     "desc": ""
-    }
-   ]
-  },
-  "Roo.bootstrap.TriggerField": {
+  "Roo.bootstrap.TimeField": {
    "props": [
     {
-     "name": "triggerClass",
-     "type": "String",
-     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' by default and triggerClass will be <b>appended</b> if specified.",
-     "memberOf": ""
-    },
-    {
-     "name": "caret",
+     "name": "format",
      "type": "String",
-     "desc": "a fontawesome for the trigger icon see http://fortawesome.github.io/Font-Awesome/icons/",
-     "memberOf": "",
-     "optvals": [
-      "search",
-      "calendar"
-     ]
-    },
-    {
-     "name": "hideTrigger",
-     "type": "Boolean",
-     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
+     "desc": "The default time format string which can be overriden for localization support.  The format must be\nvalid according to {@link Date#parseDate} (defaults to 'H:i').",
      "memberOf": ""
     },
     {
      "desc": "is it disabled",
      "memberOf": "Roo.bootstrap.Input"
     },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
     {
      "name": "inputType",
      "type": "String",
      "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
+    {
+     "name": "select",
+     "sig": "function (_self, date)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when select a date."
+    },
     {
      "name": "show",
-     "sig": "function (_self)\n{\n\n}",
+     "sig": "function (thisthis, date)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is shown."
+     "desc": "Fires when this field show."
     },
     {
      "name": "specialkey",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
-    {
-     "name": "onTriggerClick",
-     "sig": "(EventObject e)",
-     "type": "function",
-     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
-    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.dash": {
+  "Roo.bootstrap.Tooltip": {
    "props": [],
    "events": [],
-   "methods": []
+   "methods": [
+    {
+     "name": "currentEl",
+     "sig": "()",
+     "type": "function",
+     "desc": ""
+    }
+   ]
   },
-  "Roo.bootstrap.dash.NumberBox": {
+  "Roo.bootstrap.TriggerField": {
    "props": [
     {
-     "name": "headline",
+     "name": "triggerClass",
      "type": "String",
-     "desc": "Box headline",
+     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' by default and triggerClass will be <b>appended</b> if specified.",
      "memberOf": ""
     },
     {
-     "name": "content",
+     "name": "caret",
      "type": "String",
-     "desc": "Box content",
+     "desc": "a fontawesome for the trigger icon see http://fortawesome.github.io/Font-Awesome/icons/",
+     "memberOf": "",
+     "optvals": [
+      "search",
+      "calendar"
+     ]
+    },
+    {
+     "name": "hideTrigger",
+     "type": "Boolean",
+     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
      "memberOf": ""
     },
     {
-     "name": "icon",
+     "name": "removable",
+     "type": "Boolean",
+     "desc": "special filter default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "is it disabled",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "inputType",
      "type": "String",
-     "desc": "Box icon",
-     "memberOf": ""
+     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "footer",
+     "name": "name",
      "type": "String",
-     "desc": "Footer text",
-     "memberOf": ""
+     "desc": "name of the input",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "fhref",
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "placeholder",
+     "type": "string",
+     "desc": "- placeholder to put in text.",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "before",
+     "type": "string",
+     "desc": "- input group add on before",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "after",
+     "type": "string",
+     "desc": "- input group add on after",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "size",
+     "type": "string",
+     "desc": "- (lg|sm) or leave empty..",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "xs",
+     "type": "Number",
+     "desc": "colspan out of 12 for mobile-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "sm",
+     "type": "Number",
+     "desc": "colspan out of 12 for tablet-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "md",
+     "type": "Number",
+     "desc": "colspan out of 12 for computer-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "lg",
+     "type": "Number",
+     "desc": "colspan out of 12 for large computer-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "value",
+     "type": "string",
+     "desc": "default value of the input",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "labelWidth",
+     "type": "Number",
+     "desc": "set the width of label (0-12)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "labelAlign",
      "type": "String",
-     "desc": "Footer href",
-     "memberOf": ""
+     "desc": "",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "top",
+      "left"
+     ]
+    },
+    {
+     "name": "readOnly",
+     "type": "Boolean",
+     "desc": "Specifies that the field should be read-only",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "autocomplete",
+     "type": "String",
+     "desc": "- default is new-password see: https://developers.google.com/web/fundamentals/input/form/label-and-name-inputs?hl=en",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "align",
+     "type": "String",
+     "desc": "Default left",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "left",
+      "center",
+      "right"
+     ]
+    },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "validationEvent",
+     "type": "String/Boolean",
+     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "validateOnBlur",
+     "type": "Boolean",
+     "desc": "Whether the field should validate when it loses focus (defaults to true).",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "validationDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "focusClass",
+     "type": "String",
+     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "invalidClass",
+     "type": "String",
+     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "validClass",
+     "type": "String",
+     "desc": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "hasFeedback",
+     "type": "Boolean",
+     "desc": "default true",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "invalidFeedbackIcon",
+     "type": "String",
+     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "validFeedbackIcon",
+     "type": "String",
+     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "selectOnFocus",
+     "type": "Boolean",
+     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "maskRe",
+     "type": "String",
+     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "vtype",
+     "type": "String",
+     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "disableKeyFilter",
+     "type": "Boolean",
+     "desc": "True to disable input keystroke filtering (defaults to false)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "allowBlank",
+     "type": "Boolean",
+     "desc": "False to validate that the value length > 0 (defaults to true)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "blankText",
+     "type": "String",
+     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "minLength",
+     "type": "Number",
+     "desc": "Minimum input field length required (defaults to 0)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "maxLength",
+     "type": "Number",
+     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "minLengthText",
+     "type": "String",
+     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "maxLengthText",
+     "type": "String",
+     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "validator",
+     "type": "Function",
+     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "regex",
+     "type": "RegExp",
+     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "regexText",
+     "type": "String",
+     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "cls",
      "desc": "cutomer id",
      "memberOf": "Roo.bootstrap.Component"
     },
-    {
-     "name": "name",
-     "type": "string",
-     "desc": "Specifies name attribute",
-     "memberOf": "Roo.bootstrap.Component"
-    },
     {
      "name": "tooltip",
      "type": "string",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
+    {
+     "name": "blur",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this field loses input focus."
+    },
+    {
+     "name": "change",
+     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires just before the field blurs if the field value has changed."
+    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
+    {
+     "name": "focus",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this field receives input focus."
+    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been marked as invalid."
+    },
+    {
+     "name": "keyup",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the key up"
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
+    },
+    {
+     "name": "specialkey",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
+    },
+    {
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
+    {
+     "name": "clearInvalid",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clear any invalid styles/messages for this field"
+    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
+    {
+     "name": "getName",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the name of the field"
+    },
+    {
+     "name": "getRawValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
+    },
+    {
+     "name": "getValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Initialize Events for the element"
     },
+    {
+     "name": "inputEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "return the real input element."
+    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
+    {
+     "name": "markInvalid",
+     "sig": "(String msg)",
+     "type": "function",
+     "desc": "Mark this field as invalid"
+    },
+    {
+     "name": "markValid",
+     "sig": "()",
+     "type": "function",
+     "desc": "Mark this field as valid"
+    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
+    {
+     "name": "onTriggerClick",
+     "sig": "(EventObject e)",
+     "type": "function",
+     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
+    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
+    {
+     "name": "reset",
+     "sig": "()",
+     "type": "function",
+     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
+    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setRawValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
+    },
+    {
+     "name": "setValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
+    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "validate",
+     "sig": "()",
+     "type": "function",
+     "desc": "Validates the field value"
+    },
+    {
+     "name": "validateValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.bootstrap.dash.TabBox": {
+  "Roo.bootstrap.UploadCropbox": {
    "props": [
     {
-     "name": "title",
+     "name": "emptyText",
      "type": "String",
-     "desc": "Title of the TabBox",
+     "desc": "show when image has been loaded",
      "memberOf": ""
     },
     {
-     "name": "icon",
+     "name": "rotateNotify",
      "type": "String",
-     "desc": "Icon of the TabBox",
+     "desc": "show when image too small to rotate",
      "memberOf": ""
     },
     {
-     "name": "showtabs",
+     "name": "errorTimeout",
+     "type": "Number",
+     "desc": "default 3000",
+     "memberOf": ""
+    },
+    {
+     "name": "minWidth",
+     "type": "Number",
+     "desc": "default 300",
+     "memberOf": ""
+    },
+    {
+     "name": "minHeight",
+     "type": "Number",
+     "desc": "default 300",
+     "memberOf": ""
+    },
+    {
+     "name": "buttons",
+     "type": "Array",
+     "desc": "default ['rotateLeft', 'pictureBtn', 'rotateRight']",
+     "memberOf": ""
+    },
+    {
+     "name": "isDocument",
      "type": "Boolean",
-     "desc": "show the tabs default true",
+     "desc": "default false",
      "memberOf": "",
      "optvals": [
       "true",
      ]
     },
     {
-     "name": "tabScrollable",
+     "name": "url",
+     "type": "String",
+     "desc": "action url",
+     "memberOf": ""
+    },
+    {
+     "name": "paramName",
+     "type": "String",
+     "desc": "default 'imageUpload'",
+     "memberOf": ""
+    },
+    {
+     "name": "method",
+     "type": "String",
+     "desc": "default POST",
+     "memberOf": ""
+    },
+    {
+     "name": "loadMask",
      "type": "Boolean",
-     "desc": "tab scrollable when mobile view default false",
+     "desc": "default true",
      "memberOf": "",
      "optvals": [
       "true",
       "false"
      ]
     },
+    {
+     "name": "loadingText",
+     "type": "Boolean",
+     "desc": "default 'Loading...'",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
    ],
    "events": [
     {
-     "name": "activatepane",
-     "sig": "function (pane)\n{\n\n}",
+     "name": "arrange",
+     "sig": "function (_self, formData)\n{\n\n}",
      "type": "function",
-     "desc": "When a pane is activated"
-    },
-    {
-     "name": "addpane",
-     "sig": "function (pane)\n{\n\n}",
-     "type": "function",
-     "desc": "When a pane is added"
+     "desc": "Fire when arrange the file data"
     },
     {
      "name": "beforedestroy",
      "type": "function",
      "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
+    {
+     "name": "beforeloadcanvas",
+     "sig": "function (_self, src)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire before load the canvas"
+    },
     {
      "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is rendered. Return false to stop the render."
     },
+    {
+     "name": "beforeselectfile",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire before select file"
+    },
     {
      "name": "beforeshow",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "crop",
+     "sig": "function (_self, data)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire after initEvent"
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is disabled."
     },
+    {
+     "name": "download",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when download the image"
+    },
     {
      "name": "enable",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
+    {
+     "name": "exception",
+     "sig": "function (_self, xhr)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when get exception"
+    },
+    {
+     "name": "footerbuttonclick",
+     "sig": "function (_self, type)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when footerbuttonclick"
+    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "initial",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire after initEvent"
+    },
+    {
+     "name": "inspect",
+     "sig": "function (_self, file)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when inspect the file"
+    },
+    {
+     "name": "prepare",
+     "sig": "function (_self, file)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when preparing the file data"
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
+    {
+     "name": "resize",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when resize"
+    },
+    {
+     "name": "rotate",
+     "sig": "function (_self, pos)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when rotate the image"
+    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
+    },
+    {
+     "name": "trash",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when trash image"
+    },
+    {
+     "name": "upload",
+     "sig": "function (_self, data)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when xhr upload the file"
     }
    ],
    "methods": [
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setTitle",
-     "sig": "(String html)",
-     "type": "function",
-     "desc": "Updates the box title"
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.dash.TabPane": {
+  "Roo.bootstrap.dash": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.bootstrap.dash.NumberBox": {
    "props": [
     {
-     "name": "active",
-     "type": "Boolean",
-     "desc": "Default false",
-     "memberOf": "",
-     "optvals": [
-      "false",
-      "true"
-     ]
+     "name": "headline",
+     "type": "String",
+     "desc": "Box headline",
+     "memberOf": ""
     },
     {
-     "name": "title",
+     "name": "content",
      "type": "String",
-     "desc": "title of panel",
+     "desc": "Box content",
+     "memberOf": ""
+    },
+    {
+     "name": "icon",
+     "type": "String",
+     "desc": "Box icon",
+     "memberOf": ""
+    },
+    {
+     "name": "footer",
+     "type": "String",
+     "desc": "Footer text",
+     "memberOf": ""
+    },
+    {
+     "name": "fhref",
+     "type": "String",
+     "desc": "Footer href",
      "memberOf": ""
     },
     {
     }
    ],
    "events": [
-    {
-     "name": "activate",
-     "sig": "function (pane)\n{\n\n}",
-     "type": "function",
-     "desc": "When a pane is activated"
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setTitle",
-     "sig": "(String html)",
-     "type": "function",
-     "desc": "Updates the tab title"
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.htmleditor": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.bootstrap.htmleditor.ToolbarStandard": {
-   "props": [
-    {
-     "name": "disable",
-     "type": "Object",
-     "desc": "List of elements to disable..",
-     "memberOf": ""
-    },
-    {
-     "name": "btns",
-     "type": "Array",
-     "desc": "List of additional buttons.\n\n\nNEEDS Extra CSS? \n.x-html-editor-tb .x-edit-none .x-btn-text { background: none; }",
-     "memberOf": ""
-    }
-   ],
-   "events": [],
-   "methods": [
-    {
-     "name": "updateToolbar",
-     "sig": "()",
-     "type": "function",
-     "desc": "Protected method that will not generally be called directly. It triggers\na toolbar update by reading the markup state of the current selection in the editor."
-    }
-   ]
-  },
-  "Roo.bootstrap.menu": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.bootstrap.menu.Item": {
+  "Roo.bootstrap.dash.TabBox": {
    "props": [
     {
-     "name": "submenu",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "html",
+     "name": "title",
      "type": "String",
-     "desc": "text of the item",
+     "desc": "Title of the TabBox",
      "memberOf": ""
     },
     {
-     "name": "href",
+     "name": "icon",
      "type": "String",
-     "desc": "the link",
+     "desc": "Icon of the TabBox",
      "memberOf": ""
     },
     {
-     "name": "disable",
+     "name": "showtabs",
      "type": "Boolean",
-     "desc": "default false",
+     "desc": "show the tabs default true",
      "memberOf": "",
      "optvals": [
       "true",
      ]
     },
     {
-     "name": "preventDefault",
+     "name": "tabScrollable",
      "type": "Boolean",
-     "desc": "default true",
+     "desc": "tab scrollable when mobile view default false",
      "memberOf": "",
      "optvals": [
       "true",
       "false"
      ]
     },
-    {
-     "name": "icon",
-     "type": "String",
-     "desc": "Font awesome icon",
-     "memberOf": ""
-    },
-    {
-     "name": "pos",
-     "type": "String",
-     "desc": "Submenu align to (left | right) default right",
-     "memberOf": ""
-    },
     {
      "name": "cls",
      "type": "String",
     }
    ],
    "events": [
+    {
+     "name": "activatepane",
+     "sig": "function (pane)\n{\n\n}",
+     "type": "function",
+     "desc": "When a pane is activated"
+    },
+    {
+     "name": "addpane",
+     "sig": "function (pane)\n{\n\n}",
+     "type": "function",
+     "desc": "When a pane is added"
+    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
-    {
-     "name": "click",
-     "sig": "function (e)\n{\n\n}",
-     "type": "function",
-     "desc": "The raw click event for the entire grid."
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "mouseout",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the mouse exits this menu"
-    },
-    {
-     "name": "mouseover",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the mouse is hovering over this menu"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setTitle",
+     "sig": "(String html)",
+     "type": "function",
+     "desc": "Updates the box title"
+    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.menu.Menu": {
+  "Roo.bootstrap.dash.TabPane": {
    "props": [
     {
-     "name": "html",
-     "type": "String",
-     "desc": "Text of the menu",
-     "memberOf": ""
-    },
-    {
-     "name": "weight",
-     "type": "String",
-     "desc": "",
+     "name": "active",
+     "type": "Boolean",
+     "desc": "Default false",
      "memberOf": "",
      "optvals": [
-      "default",
-      "primary",
-      "success",
-      "info",
-      "warning",
-      "danger",
-      "inverse"
+      "false",
+      "true"
      ]
     },
     {
-     "name": "icon",
-     "type": "String",
-     "desc": "Font awesome icon",
-     "memberOf": ""
-    },
-    {
-     "name": "pos",
+     "name": "title",
      "type": "String",
-     "desc": "Menu align to (top | bottom) default bottom",
+     "desc": "title of panel",
      "memberOf": ""
     },
     {
     }
    ],
    "events": [
+    {
+     "name": "activate",
+     "sig": "function (pane)\n{\n\n}",
+     "type": "function",
+     "desc": "When a pane is activated"
+    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "name": "beforehide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before this menu is hidden"
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
      "name": "beforerender",
      "name": "beforeshow",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before this menu is displayed"
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
      "name": "childrenrendered",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
-    {
-     "name": "click",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this menu is clicked (or when the enter key is pressed while it is active)"
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after this menu is hidden"
+     "desc": "Fires after the component is hidden."
     },
     {
      "name": "render",
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after this menu is displayed"
+     "desc": "Fires after the component is shown."
     }
    ],
    "methods": [
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setTitle",
+     "sig": "(String html)",
+     "type": "function",
+     "desc": "Updates the tab title"
+    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.menu.Separator": {
+  "Roo.bootstrap.htmleditor": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.bootstrap.htmleditor.ToolbarStandard": {
    "props": [
+    {
+     "name": "disable",
+     "type": "Object",
+     "desc": "List of elements to disable..",
+     "memberOf": ""
+    },
+    {
+     "name": "btns",
+     "type": "Array",
+     "desc": "List of additional buttons.\n\n\nNEEDS Extra CSS? \n.x-html-editor-tb .x-edit-none .x-btn-text { background: none; }",
+     "memberOf": ""
+    }
+   ],
+   "events": [],
+   "methods": [
+    {
+     "name": "updateToolbar",
+     "sig": "()",
+     "type": "function",
+     "desc": "Protected method that will not generally be called directly. It triggers\na toolbar update by reading the markup state of the current selection in the editor."
+    }
+   ]
+  },
+  "Roo.bootstrap.menu": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.bootstrap.menu.Item": {
+   "props": [
+    {
+     "name": "submenu",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "text of the item",
+     "memberOf": ""
+    },
+    {
+     "name": "href",
+     "type": "String",
+     "desc": "the link",
+     "memberOf": ""
+    },
+    {
+     "name": "disable",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "preventDefault",
+     "type": "Boolean",
+     "desc": "default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "icon",
+     "type": "String",
+     "desc": "Font awesome icon",
+     "memberOf": ""
+    },
+    {
+     "name": "pos",
+     "type": "String",
+     "desc": "Submenu align to (left | right) default right",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "click",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw click event for the entire grid."
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "mouseout",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the mouse exits this menu"
+    },
+    {
+     "name": "mouseover",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the mouse is hovering over this menu"
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.data": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.data.ArrayReader": {
+  "Roo.bootstrap.menu.Menu": {
    "props": [
     {
-     "name": "id",
+     "name": "html",
      "type": "String",
-     "desc": "(optional) The subscript within row Array that provides an ID for the Record",
+     "desc": "Text of the menu",
      "memberOf": ""
-    }
-   ],
-   "events": [],
-   "methods": [
-    {
-     "name": "newRow",
-     "sig": "(Object data)",
-     "type": "function",
-     "desc": "Create an empty record"
     },
     {
-     "name": "readRecords",
-     "sig": "(Object o)",
-     "type": "function",
-     "desc": "Create a data block containing Roo.data.Records from an XML document."
-    }
-   ]
-  },
-  "Roo.data.Connection": {
-   "props": [
+     "name": "weight",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "default",
+      "primary",
+      "success",
+      "info",
+      "warning",
+      "danger",
+      "inverse"
+     ]
+    },
     {
-     "name": "url",
+     "name": "icon",
      "type": "String",
-     "desc": "(Optional) The default URL to be used for requests to the server. (defaults to undefined)",
+     "desc": "Font awesome icon",
      "memberOf": ""
     },
     {
-     "name": "extraParams",
-     "type": "Object",
-     "desc": "(Optional) An object containing properties which are used as\nextra parameters to each request made by this object. (defaults to undefined)",
+     "name": "pos",
+     "type": "String",
+     "desc": "Menu align to (top | bottom) default bottom",
      "memberOf": ""
     },
     {
-     "name": "defaultHeaders",
-     "type": "Object",
-     "desc": "(Optional) An object containing request headers which are added\n to each request made by this object. (defaults to undefined)",
-     "memberOf": ""
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "method",
+     "name": "style",
      "type": "String",
-     "desc": "(Optional) The default HTTP method to be used for requests. (defaults to undefined; if not set but parms are present will use POST, otherwise GET)",
-     "memberOf": ""
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "timeout",
-     "type": "Number",
-     "desc": "(Optional) The timeout in milliseconds to be used for requests. (defaults to 30000)",
-     "memberOf": ""
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "autoAbort",
+     "name": "can_build_overlaid",
      "type": "Boolean",
-     "desc": "(Optional) Whether this request should abort any pending requests. (defaults to false)",
-     "memberOf": ""
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "disableCaching",
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
      "type": "Boolean",
-     "desc": "(Optional) True to add a unique cache-buster param to GET requests. (defaults to true)",
-     "memberOf": ""
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
     },
     {
      "name": "listeners",
    ],
    "events": [
     {
-     "name": "beforerequest",
-     "sig": "function (conn, options)\n{\n\n}",
+     "name": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before a network request is made to retrieve a data object."
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "requestcomplete",
-     "sig": "function (conn, response, options)\n{\n\n}",
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires if the request was successfully completed."
+     "desc": "Fires before this menu is hidden"
     },
     {
-     "name": "requestexception",
-     "sig": "function (conn, response, options)\n{\n\n}",
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires if an error HTTP status was returned from the server.\nSee {@link http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html} for details of HTTP status codes."
-    }
-   ],
-   "methods": [
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
     {
-     "name": "abort",
-     "sig": "(Number transactionId)",
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Aborts any outstanding request."
+     "desc": "Fires before this menu is displayed"
+    },
+    {
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "click",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this menu is clicked (or when the enter key is pressed while it is active)"
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after this menu is hidden"
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
     },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after this menu is displayed"
+    }
+   ],
+   "methods": [
     {
      "name": "addEvents",
      "sig": "(Object object)",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
+    {
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
+    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "type": "function",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
+    {
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getChildContainer",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to add children to"
+    },
+    {
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
+    },
+    {
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "isLoading",
-     "sig": "(Number transactionId)",
+     "name": "hide",
+     "sig": "()",
      "type": "function",
-     "desc": "Determine whether this object has a request outstanding."
+     "desc": "Hide a component - adds 'hidden' class"
+    },
+    {
+     "name": "initEvents",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialize Events for the element"
+    },
+    {
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
     },
     {
      "name": "on",
      "desc": "Removes a listener"
     },
     {
-     "name": "request",
-     "sig": "(Object options)",
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
      "type": "function",
-     "desc": "Sends an HTTP request to a remote server."
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
-    }
-   ]
-  },
-  "Roo.data.DataProxy": {
-   "props": [],
-   "events": [
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
     {
-     "name": "beforeload",
-     "sig": "function (This, params)\n{\n\n}",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Fires before a network request is made to retrieve a data object."
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "load",
-     "sig": "function (This, o, arg)\n{\n\n}",
+     "name": "show",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires before the load method's callback is called."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
-     "name": "loadexception",
-     "sig": "function (This, o, arg, e)\n{\n\n}",
+     "name": "tooltipEl",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires if an Exception occurs during data retrieval."
-    }
-   ],
-   "methods": []
-  },
-  "Roo.data.DataReader": {
-   "props": [],
-   "events": [],
-   "methods": [
+     "desc": "Fetch the element to display the tooltip on."
+    },
     {
-     "name": "newRow",
-     "sig": "(Object data)",
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "Create an empty record"
+     "desc": "Removes a listener (shorthand for removeListener)"
     }
    ]
   },
-  "Roo.data.HttpProxy": {
+  "Roo.bootstrap.menu.Separator": {
    "props": [
     {
-     "name": "url",
+     "name": "cls",
      "type": "String",
-     "desc": "(Optional) The default URL to be used for requests to the server. (defaults to undefined)",
-     "memberOf": ""
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "extraParams",
-     "type": "Object",
-     "desc": "(Optional) An object containing properties which are used as\nextra parameters to each request made by this object. (defaults to undefined)",
-     "memberOf": ""
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "defaultHeaders",
+     "name": "xattr",
      "type": "Object",
-     "desc": "(Optional) An object containing request headers which are added\n to each request made by this object. (defaults to undefined)",
-     "memberOf": ""
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "method",
-     "type": "String",
-     "desc": "(Optional) The default HTTP method to be used for requests. (defaults to undefined; if not set but parms are present will use POST, otherwise GET)",
-     "memberOf": ""
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "timeout",
-     "type": "Number",
-     "desc": "(Optional) The timeout in milliseconds to be used for requests. (defaults to 30000)",
-     "memberOf": ""
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "autoAbort",
-     "type": "Boolean",
-     "desc": "(Optional) Whether this request should abort any pending requests. (defaults to false)",
-     "memberOf": ""
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "disableCaching",
-     "type": "Boolean",
-     "desc": "(Optional) True to add a unique cache-buster param to GET requests. (defaults to true)",
-     "memberOf": ""
-    }
-   ],
-   "events": [
-    {
-     "name": "beforeload",
-     "sig": "function (This, params)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a network request is made to retrieve a data object."
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "load",
-     "sig": "function (This, o, arg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the load method's callback is called."
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "loadexception",
-     "sig": "function (This, o, arg, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires if an Exception occurs during data retrieval."
-    }
-   ],
-   "methods": [
-    {
-     "name": "getConnection",
-     "sig": "()",
-     "type": "function",
-     "desc": "Return the {@link Roo.data.Connection} object being used by this Proxy."
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "load",
-     "sig": "(Object params, Roo.data.DataReader reader, Function callback, Object scope, Object arg)",
-     "type": "function",
-     "desc": "Load data from the configured {@link Roo.data.Connection}, read the data object into\na block of Roo.data.Records using the passed {@link Roo.data.DataReader} implementation, and\nprocess that block using the passed callback."
-    }
-   ]
-  },
-  "Roo.data.JsonReader": {
-   "props": [
-    {
-     "name": "totalProperty",
-     "type": "String",
-     "desc": "Name of the property from which to retrieve the total number of records\nin the dataset. This is only needed if the whole dataset is not passed in one go, but is being\npaged from the remote server.",
-     "memberOf": ""
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "successProperty",
+     "name": "hideMode",
      "type": "String",
-     "desc": "Name of the property from which to retrieve the success attribute used by forms.",
-     "memberOf": ""
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
     },
     {
-     "name": "root",
+     "name": "actionMode",
      "type": "String",
-     "desc": "name of the property which contains the Array of row objects.",
-     "memberOf": ""
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "id",
-     "type": "String",
-     "desc": "Name of the property within a row object that contains a record identifier value.",
-     "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": [],
-   "methods": [
+   "events": [
     {
-     "name": "newRow",
-     "sig": "(Object data)",
+     "name": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Create an empty record"
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "read",
-     "sig": "(Object response)",
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "This method is only used by a DataProxy which has retrieved data from a remote server."
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "readRecords",
-     "sig": "(Object o)",
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Create a data block containing Roo.data.Records from an XML document."
-    }
-   ]
-  },
-  "Roo.data.JsonStore": {
-   "props": [
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
     {
-     "name": "fields",
-     "type": "Array",
-     "desc": "An array of field definition objects, or field name strings.",
-     "memberOf": ""
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "isLocal",
-     "type": "boolean",
-     "desc": "flag if data is locally available (and can be always looked up\nwithout a remote query - used by combo/forms at present.",
-     "memberOf": "Roo.data.Store"
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "proxy",
-     "type": "Roo.data.DataProxy",
-     "desc": "The Proxy object which provides access to a data object.",
-     "memberOf": "Roo.data.Store"
-    },
-    {
-     "name": "data",
-     "type": "Array",
-     "desc": "Inline data to be loaded when the store is initialized.",
-     "memberOf": "Roo.data.Store"
-    },
-    {
-     "name": "reader",
-     "type": "Roo.data.Reader",
-     "desc": "The Reader object which processes the data object and returns\nan Array of Roo.data.record objects which are cached keyed by their <em>id</em> property.",
-     "memberOf": "Roo.data.Store"
-    },
-    {
-     "name": "baseParams",
-     "type": "Object",
-     "desc": "An object containing properties which are to be sent as parameters\non any HTTP request",
-     "memberOf": "Roo.data.Store"
-    },
-    {
-     "name": "sortInfo",
-     "type": "Object",
-     "desc": "A config object in the format: {field: \"fieldName\", direction: \"ASC|DESC\"}",
-     "memberOf": "Roo.data.Store"
-    },
-    {
-     "name": "multiSort",
-     "type": "Boolean",
-     "desc": "enable multi column sorting (sort is based on the order of columns, remote only at present)",
-     "memberOf": "Roo.data.Store"
-    },
-    {
-     "name": "remoteSort",
-     "type": "boolean",
-     "desc": "True if sorting is to be handled by requesting the Proxy to provide a refreshed\nversion of the data object in sorted order, as opposed to sorting the Record cache in place (defaults to false).",
-     "memberOf": "Roo.data.Store"
-    },
-    {
-     "name": "pruneModifiedRecords",
-     "type": "boolean",
-     "desc": "True to clear all modified record information each time the store is\nloaded or when a record is removed. (defaults to false).",
-     "memberOf": "Roo.data.Store"
-    },
-    {
-     "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": "add",
-     "sig": "function (_self, records, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when Records have been added to the Store"
-    },
-    {
-     "name": "beforeload",
-     "sig": "function (_self, options)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a request is made for a new data object.  If the beforeload handler returns false\nthe load action will be canceled."
-    },
-    {
-     "name": "beforeloadadd",
-     "sig": "function (_self, records, options)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after a new set of Records has been loaded."
-    },
-    {
-     "name": "clear",
+     "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the data cache has been cleared."
+     "desc": "Fires after the component is destroyed."
     },
     {
-     "name": "datachanged",
+     "name": "disable",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the data cache has changed, and a widget which is using this Store\nas a Record cache should refresh its view."
-    },
-    {
-     "name": "load",
-     "sig": "function (_self, records, options)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after a new set of Records has been loaded, before they are added to the store."
+     "desc": "Fires after the component is disabled."
     },
     {
-     "name": "loadexception",
-     "sig": "function (, return, load, jsonData)\n{\n\n}",
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires if an exception occurs in the Proxy during loading.\nCalled with the signature of the Proxy's \"loadexception\" event.\nIf you return Json { data: [] , success: false, .... } then this will be thrown with the following args"
+     "desc": "Fires after the component is enabled."
     },
     {
-     "name": "metachange",
-     "sig": "function (_self, meta)\n{\n\n}",
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this store's reader provides new metadata (fields). This is currently only support for JsonReaders."
+     "desc": "Fires after the component is hidden."
     },
     {
-     "name": "remove",
-     "sig": "function (_self, record, index)\n{\n\n}",
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a Record has been removed from the Store"
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "update",
-     "sig": "function (_self, record, operation)\n{\n\n}",
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a Record has been updated"
+     "desc": "Fires after the component is shown."
     }
    ],
    "methods": [
-    {
-     "name": "add",
-     "sig": "(Roo.data.Record[] records)",
-     "type": "function",
-     "desc": "Add Records to the Store and fires the add event."
-    },
     {
      "name": "addEvents",
      "sig": "(Object object)",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "clearFilter",
-     "sig": "(Boolean suppressEvent)",
-     "type": "function",
-     "desc": "Revert to a view of the Record cache with no filtering applied."
-    },
-    {
-     "name": "collect",
-     "sig": "(String dataIndex, Boolean allowNull, Boolean bypassFilter)",
-     "type": "function",
-     "desc": "Collects unique values for a particular dataIndex from this store."
-    },
-    {
-     "name": "commitChanges",
+     "name": "destroy",
      "sig": "()",
      "type": "function",
-     "desc": "Commit all Records with outstanding changes. To handle updates for changes, subscribe to the\nStore's \"update\" event, and perform updating when the third parameter is Roo.data.Record.COMMIT."
-    },
-    {
-     "name": "each",
-     "sig": "(Function fn, Object scope)",
-     "type": "function",
-     "desc": "Calls the specified function for each of the Records in the cache."
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
     },
     {
-     "name": "filter",
-     "sig": "(String field, String/RegExp value, Boolean anyMatch)",
+     "name": "disable",
+     "sig": "()",
      "type": "function",
-     "desc": "Filter the records by a specified property."
+     "desc": "Disable this component."
     },
     {
-     "name": "filterBy",
-     "sig": "(Function fn, Object scope)",
+     "name": "enable",
+     "sig": "()",
      "type": "function",
-     "desc": "Filter by a function. The specified function will be called with each\nrecord in this data source. If the function returns true the record is included,\notherwise it is filtered."
+     "desc": "Enable this component."
     },
     {
      "name": "fireEvent",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "getAt",
-     "sig": "(Number index)",
-     "type": "function",
-     "desc": "Get the Record at the specified index."
-    },
-    {
-     "name": "getById",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Get the Record with the specified id."
-    },
-    {
-     "name": "getCount",
-     "sig": "()",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
      "type": "function",
-     "desc": "Gets the number of cached records.\n<p>\n<em>If using paging, this may not be the total size of the dataset. If the data object\nused by the Reader contains the dataset size, then the getTotalCount() function returns\nthe data set size</em>"
+     "desc": "Try to focus this component."
     },
     {
-     "name": "getModifiedRecords",
+     "name": "getChildContainer",
      "sig": "()",
      "type": "function",
-     "desc": "Gets all records modified since the last commit.  Modified records are persisted across load operations\n(e.g., during paging)."
-    },
-    {
-     "name": "getRange",
-     "sig": "(Number startIndex, Number endIndex)",
-     "type": "function",
-     "desc": "Returns a range of Records between specified indices."
+     "desc": "Fetch the element to add children to"
     },
     {
-     "name": "getSortState",
+     "name": "getEl",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the sort state of the Store as an object with two properties:\n<pre><code>\n field {String} The name of the field by which the Records are sorted\n direction {String} The sort order, \"ASC\" or \"DESC\"\n</code></pre>"
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "getTotalCount",
+     "name": "getId",
      "sig": "()",
      "type": "function",
-     "desc": "Gets the total number of records in the dataset as returned by the server.\n<p>\n<em>If using paging, for this to be accurate, the data object used by the Reader must contain\nthe dataset size</em>"
+     "desc": "Returns the id of this component."
     },
     {
      "name": "hasListener",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "indexOf",
-     "sig": "(Roo.data.Record record)",
-     "type": "function",
-     "desc": "Get the index within the cache of the passed Record."
-    },
-    {
-     "name": "indexOfId",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Get the index within the cache of the Record with the passed id."
-    },
-    {
-     "name": "insert",
-     "sig": "(Number index, Roo.data.Record[] records)",
+     "name": "hide",
+     "sig": "()",
      "type": "function",
-     "desc": "Inserts Records to the Store at the given index and fires the add event."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
-     "name": "load",
-     "sig": "(Object options)",
+     "name": "initEvents",
+     "sig": "()",
      "type": "function",
-     "desc": "Loads the Record cache from the configured Proxy using the configured Reader.\n<p>\nIf using remote paging, then the first load call must specify the <em>start</em>\nand <em>limit</em> properties in the options.params property to establish the initial\nposition within the dataset, and the number of Records to cache on each read from the Proxy.\n<p>\n<strong>It is important to note that for remote data sources, loading is asynchronous,\nand this call will return before the new data has been loaded. Perform any post-processing\nin a callback function, or in a \"load\" event handler.</strong>\n<p>"
+     "desc": "Initialize Events for the element"
     },
     {
-     "name": "loadData",
-     "sig": "(Object data, Boolean append)",
+     "name": "isVisible",
+     "sig": "()",
      "type": "function",
-     "desc": "Loads data from a passed data block. A Reader which understands the format of the data\nmust have been configured in the constructor."
+     "desc": "Returns true if this component is visible."
     },
     {
      "name": "on",
      "type": "function",
      "desc": "Removes all listeners for this object"
     },
-    {
-     "name": "query",
-     "sig": "(String field, String/RegExp value, Boolean anyMatch)",
-     "type": "function",
-     "desc": "Query the records by a specified property."
-    },
-    {
-     "name": "queryBy",
-     "sig": "(Function fn, Object scope)",
-     "type": "function",
-     "desc": "Query by a function. The specified function will be called with each\nrecord in this data source. If the function returns true the record is included\nin the results."
-    },
-    {
-     "name": "rejectChanges",
-     "sig": "()",
-     "type": "function",
-     "desc": "Cancel outstanding changes on all changed records."
-    },
     {
      "name": "releaseCapture",
      "sig": "(Observable o)",
      "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "reload",
-     "sig": "(Object options)",
-     "type": "function",
-     "desc": "Reloads the Record cache from the configured Proxy using the configured Reader and\nthe options from the last load operation performed."
-    },
-    {
-     "name": "remove",
-     "sig": "(Ext.data.Record record)",
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "Remove a Record from the Store and fires the remove event."
+     "desc": "Removes a listener"
     },
     {
-     "name": "removeAll",
-     "sig": "()",
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
      "type": "function",
-     "desc": "Remove all Records from the Store and fires the clear event."
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "type": "function",
-     "desc": "Removes a listener"
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "setDefaultSort",
-     "sig": "(String fieldName, String dir)",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Sets the default sort column and order to be used by the next load operation."
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "sort",
-     "sig": "(String fieldName, String dir)",
+     "name": "show",
+     "sig": "()",
      "type": "function",
-     "desc": "Sort the Records.\nIf remote sorting is used, the sort is performed on the server, and the cache is\nreloaded. If local sorting is used, the cache is sorted internally."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
-     "name": "sum",
-     "sig": "(String property, Number start, Number end)",
+     "name": "tooltipEl",
+     "sig": "()",
      "type": "function",
-     "desc": "Sums the value of <i>property</i> for each record between start and end and returns the result."
+     "desc": "Fetch the element to display the tooltip on."
     },
     {
      "name": "un",
     }
    ]
   },
-  "Roo.data.MemoryProxy": {
+  "Roo.data": {
    "props": [],
    "events": [],
+   "methods": []
+  },
+  "Roo.data.ArrayReader": {
+   "props": [
+    {
+     "name": "id",
+     "type": "String",
+     "desc": "(optional) The subscript within row Array that provides an ID for the Record",
+     "memberOf": ""
+    }
+   ],
+   "events": [],
    "methods": [
     {
-     "name": "load",
-     "sig": "(Object params, Roo.data.DataReader reader, Function callback, Object scope, Object arg)",
+     "name": "newRow",
+     "sig": "(Object data)",
      "type": "function",
-     "desc": "Load data from the requested source (in this case an in-memory\ndata object passed to the constructor), read the data object into\na block of Roo.data.Records using the passed Roo.data.DataReader implementation, and\nprocess that block using the passed callback."
+     "desc": "Create an empty record"
+    },
+    {
+     "name": "readRecords",
+     "sig": "(Object o)",
+     "type": "function",
+     "desc": "Create a data block containing Roo.data.Records from an XML document."
     }
    ]
   },
-  "Roo.data.Node": {
+  "Roo.data.Connection": {
    "props": [
     {
-     "name": "leaf",
-     "type": "Boolean",
-     "desc": "true if this node is a leaf and does not have children",
+     "name": "url",
+     "type": "String",
+     "desc": "(Optional) The default URL to be used for requests to the server. (defaults to undefined)",
      "memberOf": ""
     },
     {
-     "name": "id",
-     "type": "String",
-     "desc": "The id for this node. If one is not specified, one is generated.",
+     "name": "extraParams",
+     "type": "Object",
+     "desc": "(Optional) An object containing properties which are used as\nextra parameters to each request made by this object. (defaults to undefined)",
      "memberOf": ""
     },
     {
-     "name": "listeners",
+     "name": "defaultHeaders",
      "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": "append",
-     "sig": "function (tree, _self, node, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a new child node is appended"
+     "desc": "(Optional) An object containing request headers which are added\n to each request made by this object. (defaults to undefined)",
+     "memberOf": ""
     },
     {
-     "name": "beforeappend",
-     "sig": "function (tree, _self, node)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a new child is appended, return false to cancel the append."
+     "name": "method",
+     "type": "String",
+     "desc": "(Optional) The default HTTP method to be used for requests. (defaults to undefined; if not set but parms are present will use POST, otherwise GET)",
+     "memberOf": ""
     },
     {
-     "name": "beforeinsert",
-     "sig": "function (tree, _self, node, refNode)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a new child is inserted, return false to cancel the insert."
+     "name": "timeout",
+     "type": "Number",
+     "desc": "(Optional) The timeout in milliseconds to be used for requests. (defaults to 30000)",
+     "memberOf": ""
     },
     {
-     "name": "beforemove",
-     "sig": "function (tree, _self, oldParent, newParent, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before this node is moved to a new location in the tree. Return false to cancel the move."
+     "name": "autoAbort",
+     "type": "Boolean",
+     "desc": "(Optional) Whether this request should abort any pending requests. (defaults to false)",
+     "memberOf": ""
     },
     {
-     "name": "beforeremove",
-     "sig": "function (tree, _self, node)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a child is removed, return false to cancel the remove."
+     "name": "disableCaching",
+     "type": "Boolean",
+     "desc": "(Optional) True to add a unique cache-buster param to GET requests. (defaults to true)",
+     "memberOf": ""
     },
     {
-     "name": "insert",
-     "sig": "function (tree, _self, node, refNode)\n{\n\n}",
+     "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": "beforerequest",
+     "sig": "function (conn, options)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a new child node is inserted."
+     "desc": "Fires before a network request is made to retrieve a data object."
     },
     {
-     "name": "move",
-     "sig": "function (tree, _self, oldParent, newParent, index)\n{\n\n}",
+     "name": "requestcomplete",
+     "sig": "function (conn, response, options)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this node is moved to a new location in the tree"
+     "desc": "Fires if the request was successfully completed."
     },
     {
-     "name": "remove",
-     "sig": "function (tree, _self, node)\n{\n\n}",
+     "name": "requestexception",
+     "sig": "function (conn, response, options)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a child node is removed"
+     "desc": "Fires if an error HTTP status was returned from the server.\nSee {@link http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html} for details of HTTP status codes."
     }
    ],
    "methods": [
+    {
+     "name": "abort",
+     "sig": "(Number transactionId)",
+     "type": "function",
+     "desc": "Aborts any outstanding request."
+    },
     {
      "name": "addEvents",
      "sig": "(Object object)",
      "type": "function",
      "desc": "Appends an event handler to this component"
     },
-    {
-     "name": "appendChild",
-     "sig": "(Node/Array node)",
-     "type": "function",
-     "desc": "Insert node(s) as the last child node of this node."
-    },
-    {
-     "name": "bubble",
-     "sig": "(Function fn, Object scope, Array args)",
-     "type": "function",
-     "desc": "Bubbles up the tree from this node, calling the specified function with each node. The scope (<i>this</i>) of\nfunction call will be the scope provided or the current node. The arguments to the function\nwill be the args provided or the current node. If the function returns false at any point,\nthe bubble is stopped."
-    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "cascade",
-     "sig": "(Function fn, Object scope, Array args)",
-     "type": "function",
-     "desc": "Cascades down the tree from this node, calling the specified function with each node. The scope (<i>this</i>) of\nfunction call will be the scope provided or the current node. The arguments to the function\nwill be the args provided or the current node. If the function returns false at any point,\nthe cascade is stopped on that branch."
-    },
-    {
-     "name": "contains",
-     "sig": "(Node node)",
-     "type": "function",
-     "desc": "Returns true if this node is an ancestor (at any point) of the passed node."
-    },
-    {
-     "name": "eachChild",
-     "sig": "(Function fn, Object scope, Array args)",
-     "type": "function",
-     "desc": "Interates the child nodes of this node, calling the specified function with each node. The scope (<i>this</i>) of\nfunction call will be the scope provided or the current node. The arguments to the function\nwill be the args provided or the current node. If the function returns false at any point,\nthe iteration stops."
-    },
-    {
-     "name": "findChild",
-     "sig": "(String attribute, Mixed value)",
-     "type": "function",
-     "desc": "Finds the first child that has the attribute with the specified value."
-    },
-    {
-     "name": "findChildBy",
-     "sig": "(Function fn, Object scope)",
-     "type": "function",
-     "desc": "Finds the first child by a custom function. The child matches if the function passed\nreturns true."
-    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "type": "function",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
-    {
-     "name": "getDepth",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns depth of this node (the root node has a depth of 0)"
-    },
-    {
-     "name": "getOwnerTree",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the tree this node is in."
-    },
-    {
-     "name": "getPath",
-     "sig": "(String attr)",
-     "type": "function",
-     "desc": "Returns the path for this node. The path can be used to expand or select this node programmatically."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "indexOf",
-     "sig": "(Node node)",
-     "type": "function",
-     "desc": "Returns the index of a child node"
-    },
-    {
-     "name": "insertBefore",
-     "sig": "(Node node, Node refNode)",
-     "type": "function",
-     "desc": "Inserts the first node before the second node in this nodes childNodes collection."
-    },
-    {
-     "name": "isAncestor",
-     "sig": "(Node node)",
-     "type": "function",
-     "desc": "Returns true if the passed node is an ancestor (at any point) of this node."
-    },
-    {
-     "name": "isFirst",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if this node is the first child of its parent"
-    },
-    {
-     "name": "isLast",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if this node is the last child of its parent"
-    },
-    {
-     "name": "isLeaf",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if this node is a leaf"
-    },
-    {
-     "name": "item",
-     "sig": "(Number index)",
+     "name": "isLoading",
+     "sig": "(Number transactionId)",
      "type": "function",
-     "desc": "Returns the child node at the specified index."
+     "desc": "Determine whether this object has a request outstanding."
     },
     {
      "name": "on",
      "type": "function",
      "desc": "Removes <b>all</b> added captures from the Observable."
     },
-    {
-     "name": "removeChild",
-     "sig": "(Node node)",
-     "type": "function",
-     "desc": "Removes a child node from this node."
-    },
     {
      "name": "removeListener",
      "sig": "(String eventName, Function handler, Object scope)",
      "desc": "Removes a listener"
     },
     {
-     "name": "replaceChild",
-     "sig": "(Node newChild, Node oldChild)",
+     "name": "request",
+     "sig": "(Object options)",
      "type": "function",
-     "desc": "Replaces one child node in this node with another."
+     "desc": "Sends an HTTP request to a remote server."
     },
     {
-     "name": "sort",
-     "sig": "(Function fn, Object scope)",
-     "type": "function",
-     "desc": "Sorts this nodes children using the supplied sort function"
-    },
-    {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
     }
    ]
   },
-  "Roo.data.Record": {
+  "Roo.data.DataProxy": {
    "props": [],
-   "events": [],
-   "methods": [
-    {
-     "name": "commit",
-     "sig": "()",
-     "type": "function",
-     "desc": "Usually called by the {@link Roo.data.Store} which owns the Record.\nCommits all changes made to the Record since either creation, or the last commit operation.\n<p>\nDevelopers should subscribe to the {@link Roo.data.Store#update} event to have their code notified\nof commit operations."
-    },
-    {
-     "name": "copy",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Creates a copy of this record."
-    },
+   "events": [
     {
-     "name": "create",
-     "sig": "(Array o)",
+     "name": "beforeload",
+     "sig": "function (This, params)\n{\n\n}",
      "type": "function",
-     "desc": "Generate a constructor for a specific record layout."
+     "desc": "Fires before a network request is made to retrieve a data object."
     },
     {
-     "name": "get",
-     "sig": "(String name)",
+     "name": "load",
+     "sig": "function (This, o, arg)\n{\n\n}",
      "type": "function",
-     "desc": "Get the value of the named field."
+     "desc": "Fires before the load method's callback is called."
     },
     {
-     "name": "reject",
-     "sig": "()",
+     "name": "loadexception",
+     "sig": "function (This, o, arg, e)\n{\n\n}",
      "type": "function",
-     "desc": "Usually called by the {@link Roo.data.Store} which owns the Record.\nRejects all changes made to the Record since either creation, or the last commit operation.\nModified fields are reverted to their original values.\n<p>\nDevelopers should subscribe to the {@link Roo.data.Store#update} event to have their code notified\nof reject operations."
-    },
+     "desc": "Fires if an Exception occurs during data retrieval."
+    }
+   ],
+   "methods": []
+  },
+  "Roo.data.DataReader": {
+   "props": [],
+   "events": [],
+   "methods": [
     {
-     "name": "set",
-     "sig": "(String name, Object value)",
+     "name": "newRow",
+     "sig": "(Object data)",
      "type": "function",
-     "desc": "Set the named field to the specified value."
+     "desc": "Create an empty record"
     }
    ]
   },
-  "Roo.data.ScriptTagProxy": {
+  "Roo.data.HttpProxy": {
    "props": [
     {
      "name": "url",
      "type": "String",
-     "desc": "The URL from which to request the data object.",
+     "desc": "(Optional) The default URL to be used for requests to the server. (defaults to undefined)",
+     "memberOf": ""
+    },
+    {
+     "name": "extraParams",
+     "type": "Object",
+     "desc": "(Optional) An object containing properties which are used as\nextra parameters to each request made by this object. (defaults to undefined)",
+     "memberOf": ""
+    },
+    {
+     "name": "defaultHeaders",
+     "type": "Object",
+     "desc": "(Optional) An object containing request headers which are added\n to each request made by this object. (defaults to undefined)",
+     "memberOf": ""
+    },
+    {
+     "name": "method",
+     "type": "String",
+     "desc": "(Optional) The default HTTP method to be used for requests. (defaults to undefined; if not set but parms are present will use POST, otherwise GET)",
      "memberOf": ""
     },
     {
      "name": "timeout",
      "type": "Number",
-     "desc": "(Optional) The number of milliseconds to wait for a response. Defaults to 30 seconds.",
+     "desc": "(Optional) The timeout in milliseconds to be used for requests. (defaults to 30000)",
      "memberOf": ""
     },
     {
-     "name": "callbackParam",
-     "type": "String",
-     "desc": "(Optional) The name of the parameter to pass to the server which tells\nthe server the name of the callback function set up by the load call to process the returned data object.\nDefaults to \"callback\".<p>The server-side processing must read this parameter value, and generate\njavascript output which calls this named function passing the data object as its only parameter.",
+     "name": "autoAbort",
+     "type": "Boolean",
+     "desc": "(Optional) Whether this request should abort any pending requests. (defaults to false)",
      "memberOf": ""
     },
     {
-     "name": "nocache",
+     "name": "disableCaching",
      "type": "Boolean",
-     "desc": "(Optional) Defaults to true. Disable cacheing by adding a unique parameter\nname to the request.",
+     "desc": "(Optional) True to add a unique cache-buster param to GET requests. (defaults to true)",
      "memberOf": ""
     }
    ],
-   "events": [],
+   "events": [
+    {
+     "name": "beforeload",
+     "sig": "function (This, params)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before a network request is made to retrieve a data object."
+    },
+    {
+     "name": "load",
+     "sig": "function (This, o, arg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the load method's callback is called."
+    },
+    {
+     "name": "loadexception",
+     "sig": "function (This, o, arg, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires if an Exception occurs during data retrieval."
+    }
+   ],
    "methods": [
     {
-     "name": "abort",
+     "name": "getConnection",
      "sig": "()",
      "type": "function",
-     "desc": "Abort the current server request."
+     "desc": "Return the {@link Roo.data.Connection} object being used by this Proxy."
     },
     {
      "name": "load",
      "sig": "(Object params, Roo.data.DataReader reader, Function callback, Object scope, Object arg)",
      "type": "function",
-     "desc": "Load data from the configured URL, read the data object into\na block of Roo.data.Records using the passed Roo.data.DataReader implementation, and\nprocess that block using the passed callback."
+     "desc": "Load data from the configured {@link Roo.data.Connection}, read the data object into\na block of Roo.data.Records using the passed {@link Roo.data.DataReader} implementation, and\nprocess that block using the passed callback."
     }
    ]
   },
-  "Roo.data.SimpleStore": {
+  "Roo.data.JsonReader": {
    "props": [
+    {
+     "name": "totalProperty",
+     "type": "String",
+     "desc": "Name of the property from which to retrieve the total number of records\nin the dataset. This is only needed if the whole dataset is not passed in one go, but is being\npaged from the remote server.",
+     "memberOf": ""
+    },
+    {
+     "name": "successProperty",
+     "type": "String",
+     "desc": "Name of the property from which to retrieve the success attribute used by forms.",
+     "memberOf": ""
+    },
+    {
+     "name": "root",
+     "type": "String",
+     "desc": "name of the property which contains the Array of row objects.",
+     "memberOf": ""
+    },
     {
      "name": "id",
-     "type": "Number",
-     "desc": "The array index of the record id. Leave blank to auto generate ids.",
+     "type": "String",
+     "desc": "Name of the property within a row object that contains a record identifier value.",
      "memberOf": ""
     },
     {
      "name": "fields",
      "type": "Array",
-     "desc": "An array of field definition objects, or field name strings.",
+     "desc": "Array of field definition objects",
      "memberOf": ""
+    }
+   ],
+   "events": [],
+   "methods": [
+    {
+     "name": "newRow",
+     "sig": "(Object data)",
+     "type": "function",
+     "desc": "Create an empty record"
     },
     {
-     "name": "data",
+     "name": "read",
+     "sig": "(Object response)",
+     "type": "function",
+     "desc": "This method is only used by a DataProxy which has retrieved data from a remote server."
+    },
+    {
+     "name": "readRecords",
+     "sig": "(Object o)",
+     "type": "function",
+     "desc": "Create a data block containing Roo.data.Records from an XML document."
+    }
+   ]
+  },
+  "Roo.data.JsonStore": {
+   "props": [
+    {
+     "name": "fields",
      "type": "Array",
-     "desc": "The multi-dimensional array of data",
+     "desc": "An array of field definition objects, or field name strings.",
      "memberOf": ""
     },
     {
      "desc": "The Proxy object which provides access to a data object.",
      "memberOf": "Roo.data.Store"
     },
+    {
+     "name": "data",
+     "type": "Array",
+     "desc": "Inline data to be loaded when the store is initialized.",
+     "memberOf": "Roo.data.Store"
+    },
     {
      "name": "reader",
      "type": "Roo.data.Reader",
     }
    ]
   },
-  "Roo.data.SortTypes": {
+  "Roo.data.MemoryProxy": {
    "props": [],
    "events": [],
    "methods": [
     {
-     "name": "asDate",
-     "sig": "(Mixed s)",
-     "type": "function",
-     "desc": "Date sorting"
-    },
-    {
-     "name": "asFloat",
-     "sig": "(Mixed s)",
-     "type": "function",
-     "desc": "Float sorting"
-    },
-    {
-     "name": "asInt",
-     "sig": "(Mixed s)",
-     "type": "function",
-     "desc": "Integer sorting"
-    },
-    {
-     "name": "asText",
-     "sig": "(Mixed s)",
-     "type": "function",
-     "desc": "Strips all HTML tags to sort on text only"
-    },
-    {
-     "name": "asUCString",
-     "sig": "(Mixed s)",
-     "type": "function",
-     "desc": "Case insensitive string"
-    },
-    {
-     "name": "asUCText",
-     "sig": "(Mixed s)",
-     "type": "function",
-     "desc": "Strips all HTML tags to sort on text only - Case insensitive"
-    },
-    {
-     "name": "none",
-     "sig": "(Mixed s)",
+     "name": "load",
+     "sig": "(Object params, Roo.data.DataReader reader, Function callback, Object scope, Object arg)",
      "type": "function",
-     "desc": "Default sort that does nothing"
+     "desc": "Load data from the requested source (in this case an in-memory\ndata object passed to the constructor), read the data object into\na block of Roo.data.Records using the passed Roo.data.DataReader implementation, and\nprocess that block using the passed callback."
     }
    ]
   },
-  "Roo.data.Store": {
+  "Roo.data.Node": {
    "props": [
     {
-     "name": "isLocal",
-     "type": "boolean",
-     "desc": "flag if data is locally available (and can be always looked up\nwithout a remote query - used by combo/forms at present.",
-     "memberOf": ""
-    },
-    {
-     "name": "proxy",
-     "type": "Roo.data.DataProxy",
-     "desc": "The Proxy object which provides access to a data object.",
-     "memberOf": ""
-    },
-    {
-     "name": "data",
-     "type": "Array",
-     "desc": "Inline data to be loaded when the store is initialized.",
-     "memberOf": ""
-    },
-    {
-     "name": "reader",
-     "type": "Roo.data.Reader",
-     "desc": "The Reader object which processes the data object and returns\nan Array of Roo.data.record objects which are cached keyed by their <em>id</em> property.",
-     "memberOf": ""
-    },
-    {
-     "name": "baseParams",
-     "type": "Object",
-     "desc": "An object containing properties which are to be sent as parameters\non any HTTP request",
-     "memberOf": ""
-    },
-    {
-     "name": "sortInfo",
-     "type": "Object",
-     "desc": "A config object in the format: {field: \"fieldName\", direction: \"ASC|DESC\"}",
-     "memberOf": ""
-    },
-    {
-     "name": "multiSort",
+     "name": "leaf",
      "type": "Boolean",
-     "desc": "enable multi column sorting (sort is based on the order of columns, remote only at present)",
-     "memberOf": ""
-    },
-    {
-     "name": "remoteSort",
-     "type": "boolean",
-     "desc": "True if sorting is to be handled by requesting the Proxy to provide a refreshed\nversion of the data object in sorted order, as opposed to sorting the Record cache in place (defaults to false).",
+     "desc": "true if this node is a leaf and does not have children",
      "memberOf": ""
     },
     {
-     "name": "pruneModifiedRecords",
-     "type": "boolean",
-     "desc": "True to clear all modified record information each time the store is\nloaded or when a record is removed. (defaults to false).",
+     "name": "id",
+     "type": "String",
+     "desc": "The id for this node. If one is not specified, one is generated.",
      "memberOf": ""
     },
     {
    ],
    "events": [
     {
-     "name": "add",
-     "sig": "function (_self, records, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when Records have been added to the Store"
-    },
-    {
-     "name": "beforeload",
-     "sig": "function (_self, options)\n{\n\n}",
+     "name": "append",
+     "sig": "function (tree, _self, node, index)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before a request is made for a new data object.  If the beforeload handler returns false\nthe load action will be canceled."
+     "desc": "Fires when a new child node is appended"
     },
     {
-     "name": "beforeloadadd",
-     "sig": "function (_self, records, options)\n{\n\n}",
+     "name": "beforeappend",
+     "sig": "function (tree, _self, node)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after a new set of Records has been loaded."
+     "desc": "Fires before a new child is appended, return false to cancel the append."
     },
     {
-     "name": "clear",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "beforeinsert",
+     "sig": "function (tree, _self, node, refNode)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the data cache has been cleared."
+     "desc": "Fires before a new child is inserted, return false to cancel the insert."
     },
     {
-     "name": "datachanged",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "beforemove",
+     "sig": "function (tree, _self, oldParent, newParent, index)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the data cache has changed, and a widget which is using this Store\nas a Record cache should refresh its view."
+     "desc": "Fires before this node is moved to a new location in the tree. Return false to cancel the move."
     },
     {
-     "name": "load",
-     "sig": "function (_self, records, options)\n{\n\n}",
+     "name": "beforeremove",
+     "sig": "function (tree, _self, node)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after a new set of Records has been loaded, before they are added to the store."
+     "desc": "Fires before a child is removed, return false to cancel the remove."
     },
     {
-     "name": "loadexception",
-     "sig": "function (, return, load, jsonData)\n{\n\n}",
+     "name": "insert",
+     "sig": "function (tree, _self, node, refNode)\n{\n\n}",
      "type": "function",
-     "desc": "Fires if an exception occurs in the Proxy during loading.\nCalled with the signature of the Proxy's \"loadexception\" event.\nIf you return Json { data: [] , success: false, .... } then this will be thrown with the following args"
+     "desc": "Fires when a new child node is inserted."
     },
     {
-     "name": "metachange",
-     "sig": "function (_self, meta)\n{\n\n}",
+     "name": "move",
+     "sig": "function (tree, _self, oldParent, newParent, index)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this store's reader provides new metadata (fields). This is currently only support for JsonReaders."
+     "desc": "Fires when this node is moved to a new location in the tree"
     },
     {
      "name": "remove",
-     "sig": "function (_self, record, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a Record has been removed from the Store"
-    },
-    {
-     "name": "update",
-     "sig": "function (_self, record, operation)\n{\n\n}",
+     "sig": "function (tree, _self, node)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a Record has been updated"
+     "desc": "Fires when a child node is removed"
     }
    ],
    "methods": [
-    {
-     "name": "add",
-     "sig": "(Roo.data.Record[] records)",
-     "type": "function",
-     "desc": "Add Records to the Store and fires the add event."
-    },
     {
      "name": "addEvents",
      "sig": "(Object object)",
      "desc": "Appends an event handler to this component"
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
+     "name": "appendChild",
+     "sig": "(Node/Array node)",
      "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "desc": "Insert node(s) as the last child node of this node."
     },
     {
-     "name": "clearFilter",
-     "sig": "(Boolean suppressEvent)",
+     "name": "bubble",
+     "sig": "(Function fn, Object scope, Array args)",
      "type": "function",
-     "desc": "Revert to a view of the Record cache with no filtering applied."
+     "desc": "Bubbles up the tree from this node, calling the specified function with each node. The scope (<i>this</i>) of\nfunction call will be the scope provided or the current node. The arguments to the function\nwill be the args provided or the current node. If the function returns false at any point,\nthe bubble is stopped."
     },
     {
-     "name": "collect",
-     "sig": "(String dataIndex, Boolean allowNull, Boolean bypassFilter)",
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
-     "desc": "Collects unique values for a particular dataIndex from this store."
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "commitChanges",
-     "sig": "()",
+     "name": "cascade",
+     "sig": "(Function fn, Object scope, Array args)",
      "type": "function",
-     "desc": "Commit all Records with outstanding changes. To handle updates for changes, subscribe to the\nStore's \"update\" event, and perform updating when the third parameter is Roo.data.Record.COMMIT."
+     "desc": "Cascades down the tree from this node, calling the specified function with each node. The scope (<i>this</i>) of\nfunction call will be the scope provided or the current node. The arguments to the function\nwill be the args provided or the current node. If the function returns false at any point,\nthe cascade is stopped on that branch."
     },
     {
-     "name": "each",
-     "sig": "(Function fn, Object scope)",
+     "name": "contains",
+     "sig": "(Node node)",
      "type": "function",
-     "desc": "Calls the specified function for each of the Records in the cache."
+     "desc": "Returns true if this node is an ancestor (at any point) of the passed node."
     },
     {
-     "name": "filter",
-     "sig": "(String field, String/RegExp value, Boolean anyMatch)",
+     "name": "eachChild",
+     "sig": "(Function fn, Object scope, Array args)",
      "type": "function",
-     "desc": "Filter the records by a specified property."
+     "desc": "Interates the child nodes of this node, calling the specified function with each node. The scope (<i>this</i>) of\nfunction call will be the scope provided or the current node. The arguments to the function\nwill be the args provided or the current node. If the function returns false at any point,\nthe iteration stops."
     },
     {
-     "name": "filterBy",
+     "name": "findChild",
+     "sig": "(String attribute, Mixed value)",
+     "type": "function",
+     "desc": "Finds the first child that has the attribute with the specified value."
+    },
+    {
+     "name": "findChildBy",
      "sig": "(Function fn, Object scope)",
      "type": "function",
-     "desc": "Filter by a function. The specified function will be called with each\nrecord in this data source. If the function returns true the record is included,\notherwise it is filtered."
+     "desc": "Finds the first child by a custom function. The child matches if the function passed\nreturns true."
     },
     {
      "name": "fireEvent",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "getAt",
-     "sig": "(Number index)",
-     "type": "function",
-     "desc": "Get the Record at the specified index."
-    },
-    {
-     "name": "getById",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Get the Record with the specified id."
-    },
-    {
-     "name": "getCount",
-     "sig": "()",
-     "type": "function",
-     "desc": "Gets the number of cached records.\n<p>\n<em>If using paging, this may not be the total size of the dataset. If the data object\nused by the Reader contains the dataset size, then the getTotalCount() function returns\nthe data set size</em>"
-    },
-    {
-     "name": "getModifiedRecords",
+     "name": "getDepth",
      "sig": "()",
      "type": "function",
-     "desc": "Gets all records modified since the last commit.  Modified records are persisted across load operations\n(e.g., during paging)."
-    },
-    {
-     "name": "getRange",
-     "sig": "(Number startIndex, Number endIndex)",
-     "type": "function",
-     "desc": "Returns a range of Records between specified indices."
+     "desc": "Returns depth of this node (the root node has a depth of 0)"
     },
     {
-     "name": "getSortState",
+     "name": "getOwnerTree",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the sort state of the Store as an object with two properties:\n<pre><code>\n field {String} The name of the field by which the Records are sorted\n direction {String} The sort order, \"ASC\" or \"DESC\"\n</code></pre>"
+     "desc": "Returns the tree this node is in."
     },
     {
-     "name": "getTotalCount",
-     "sig": "()",
+     "name": "getPath",
+     "sig": "(String attr)",
      "type": "function",
-     "desc": "Gets the total number of records in the dataset as returned by the server.\n<p>\n<em>If using paging, for this to be accurate, the data object used by the Reader must contain\nthe dataset size</em>"
+     "desc": "Returns the path for this node. The path can be used to expand or select this node programmatically."
     },
     {
      "name": "hasListener",
     },
     {
      "name": "indexOf",
-     "sig": "(Roo.data.Record record)",
-     "type": "function",
-     "desc": "Get the index within the cache of the passed Record."
-    },
-    {
-     "name": "indexOfId",
-     "sig": "(String id)",
+     "sig": "(Node node)",
      "type": "function",
-     "desc": "Get the index within the cache of the Record with the passed id."
+     "desc": "Returns the index of a child node"
     },
     {
-     "name": "insert",
-     "sig": "(Number index, Roo.data.Record[] records)",
+     "name": "insertBefore",
+     "sig": "(Node node, Node refNode)",
      "type": "function",
-     "desc": "Inserts Records to the Store at the given index and fires the add event."
+     "desc": "Inserts the first node before the second node in this nodes childNodes collection."
     },
     {
-     "name": "load",
-     "sig": "(Object options)",
+     "name": "isAncestor",
+     "sig": "(Node node)",
      "type": "function",
-     "desc": "Loads the Record cache from the configured Proxy using the configured Reader.\n<p>\nIf using remote paging, then the first load call must specify the <em>start</em>\nand <em>limit</em> properties in the options.params property to establish the initial\nposition within the dataset, and the number of Records to cache on each read from the Proxy.\n<p>\n<strong>It is important to note that for remote data sources, loading is asynchronous,\nand this call will return before the new data has been loaded. Perform any post-processing\nin a callback function, or in a \"load\" event handler.</strong>\n<p>"
+     "desc": "Returns true if the passed node is an ancestor (at any point) of this node."
     },
     {
-     "name": "loadData",
-     "sig": "(Object data, Boolean append)",
+     "name": "isFirst",
+     "sig": "()",
      "type": "function",
-     "desc": "Loads data from a passed data block. A Reader which understands the format of the data\nmust have been configured in the constructor."
+     "desc": "Returns true if this node is the first child of its parent"
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "isLast",
+     "sig": "()",
      "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "desc": "Returns true if this node is the last child of its parent"
     },
     {
-     "name": "purgeListeners",
+     "name": "isLeaf",
      "sig": "()",
      "type": "function",
-     "desc": "Removes all listeners for this object"
+     "desc": "Returns true if this node is a leaf"
     },
     {
-     "name": "query",
-     "sig": "(String field, String/RegExp value, Boolean anyMatch)",
+     "name": "item",
+     "sig": "(Number index)",
      "type": "function",
-     "desc": "Query the records by a specified property."
+     "desc": "Returns the child node at the specified index."
     },
     {
-     "name": "queryBy",
-     "sig": "(Function fn, Object scope)",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Query by a function. The specified function will be called with each\nrecord in this data source. If the function returns true the record is included\nin the results."
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "rejectChanges",
+     "name": "purgeListeners",
      "sig": "()",
      "type": "function",
-     "desc": "Cancel outstanding changes on all changed records."
+     "desc": "Removes all listeners for this object"
     },
     {
      "name": "releaseCapture",
      "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "reload",
-     "sig": "(Object options)",
-     "type": "function",
-     "desc": "Reloads the Record cache from the configured Proxy using the configured Reader and\nthe options from the last load operation performed."
-    },
-    {
-     "name": "remove",
-     "sig": "(Ext.data.Record record)",
-     "type": "function",
-     "desc": "Remove a Record from the Store and fires the remove event."
-    },
-    {
-     "name": "removeAll",
-     "sig": "()",
+     "name": "removeChild",
+     "sig": "(Node node)",
      "type": "function",
-     "desc": "Remove all Records from the Store and fires the clear event."
+     "desc": "Removes a child node from this node."
     },
     {
      "name": "removeListener",
      "desc": "Removes a listener"
     },
     {
-     "name": "setDefaultSort",
-     "sig": "(String fieldName, String dir)",
+     "name": "replaceChild",
+     "sig": "(Node newChild, Node oldChild)",
      "type": "function",
-     "desc": "Sets the default sort column and order to be used by the next load operation."
+     "desc": "Replaces one child node in this node with another."
     },
     {
      "name": "sort",
-     "sig": "(String fieldName, String dir)",
-     "type": "function",
-     "desc": "Sort the Records.\nIf remote sorting is used, the sort is performed on the server, and the cache is\nreloaded. If local sorting is used, the cache is sorted internally."
-    },
-    {
-     "name": "sum",
-     "sig": "(String property, Number start, Number end)",
+     "sig": "(Function fn, Object scope)",
      "type": "function",
-     "desc": "Sums the value of <i>property</i> for each record between start and end and returns the result."
+     "desc": "Sorts this nodes children using the supplied sort function"
     },
     {
      "name": "un",
     }
    ]
   },
-  "Roo.data.Tree": {
-   "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.data.Record": {
+   "props": [],
+   "events": [],
+   "methods": [
     {
-     "name": "append",
-     "sig": "function (tree, parent, node, index)\n{\n\n}",
+     "name": "commit",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when a new child node is appended to a node in this tree."
+     "desc": "Usually called by the {@link Roo.data.Store} which owns the Record.\nCommits all changes made to the Record since either creation, or the last commit operation.\n<p>\nDevelopers should subscribe to the {@link Roo.data.Store#update} event to have their code notified\nof commit operations."
     },
     {
-     "name": "beforeappend",
-     "sig": "function (tree, parent, node)\n{\n\n}",
+     "name": "copy",
+     "sig": "(String id)",
      "type": "function",
-     "desc": "Fires before a new child is appended to a node in this tree, return false to cancel the append."
+     "desc": "Creates a copy of this record."
     },
     {
-     "name": "beforeinsert",
-     "sig": "function (tree, parent, node, refNode)\n{\n\n}",
+     "name": "create",
+     "sig": "(Array o)",
      "type": "function",
-     "desc": "Fires before a new child is inserted in a node in this tree, return false to cancel the insert."
+     "desc": "Generate a constructor for a specific record layout."
     },
     {
-     "name": "beforemove",
-     "sig": "function (tree, node, oldParent, newParent, index)\n{\n\n}",
+     "name": "get",
+     "sig": "(String name)",
      "type": "function",
-     "desc": "Fires before a node is moved to a new location in the tree. Return false to cancel the move."
+     "desc": "Get the value of the named field."
     },
     {
-     "name": "beforeremove",
-     "sig": "function (tree, parent, node)\n{\n\n}",
+     "name": "reject",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires before a child is removed from a node in this tree, return false to cancel the remove."
+     "desc": "Usually called by the {@link Roo.data.Store} which owns the Record.\nRejects all changes made to the Record since either creation, or the last commit operation.\nModified fields are reverted to their original values.\n<p>\nDevelopers should subscribe to the {@link Roo.data.Store#update} event to have their code notified\nof reject operations."
     },
     {
-     "name": "insert",
-     "sig": "function (tree, parent, node, refNode)\n{\n\n}",
+     "name": "set",
+     "sig": "(String name, Object value)",
      "type": "function",
-     "desc": "Fires when a new child node is inserted in a node in this tree."
+     "desc": "Set the named field to the specified value."
+    }
+   ]
+  },
+  "Roo.data.ScriptTagProxy": {
+   "props": [
+    {
+     "name": "url",
+     "type": "String",
+     "desc": "The URL from which to request the data object.",
+     "memberOf": ""
     },
     {
-     "name": "move",
-     "sig": "function (tree, node, oldParent, newParent, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a node is moved to a new location in the tree"
+     "name": "timeout",
+     "type": "Number",
+     "desc": "(Optional) The number of milliseconds to wait for a response. Defaults to 30 seconds.",
+     "memberOf": ""
     },
     {
-     "name": "remove",
-     "sig": "function (tree, parent, node)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a child node is removed from a node in this tree."
+     "name": "callbackParam",
+     "type": "String",
+     "desc": "(Optional) The name of the parameter to pass to the server which tells\nthe server the name of the callback function set up by the load call to process the returned data object.\nDefaults to \"callback\".<p>The server-side processing must read this parameter value, and generate\njavascript output which calls this named function passing the data object as its only parameter.",
+     "memberOf": ""
+    },
+    {
+     "name": "nocache",
+     "type": "Boolean",
+     "desc": "(Optional) Defaults to true. Disable cacheing by adding a unique parameter\nname to the request.",
+     "memberOf": ""
     }
    ],
+   "events": [],
    "methods": [
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
-     "type": "function",
-     "desc": "Used to define events on this Observable"
-    },
-    {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this component"
-    },
-    {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
+     "name": "abort",
+     "sig": "()",
      "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "desc": "Abort the current server request."
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
+     "name": "load",
+     "sig": "(Object params, Roo.data.DataReader reader, Function callback, Object scope, Object arg)",
      "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
-    },
+     "desc": "Load data from the configured URL, read the data object into\na block of Roo.data.Records using the passed Roo.data.DataReader implementation, and\nprocess that block using the passed callback."
+    }
+   ]
+  },
+  "Roo.data.SimpleStore": {
+   "props": [
     {
-     "name": "getNodeById",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Gets a node in this tree by its id."
+     "name": "id",
+     "type": "Number",
+     "desc": "The array index of the record id. Leave blank to auto generate ids.",
+     "memberOf": ""
     },
     {
-     "name": "getRootNode",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the root node for this tree."
+     "name": "fields",
+     "type": "Array",
+     "desc": "An array of field definition objects, or field name strings.",
+     "memberOf": ""
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "name": "data",
+     "type": "Array",
+     "desc": "The multi-dimensional array of data",
+     "memberOf": ""
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "name": "isLocal",
+     "type": "boolean",
+     "desc": "flag if data is locally available (and can be always looked up\nwithout a remote query - used by combo/forms at present.",
+     "memberOf": "Roo.data.Store"
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
+     "name": "proxy",
+     "type": "Roo.data.DataProxy",
+     "desc": "The Proxy object which provides access to a data object.",
+     "memberOf": "Roo.data.Store"
     },
     {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
-     "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "name": "reader",
+     "type": "Roo.data.Reader",
+     "desc": "The Reader object which processes the data object and returns\nan Array of Roo.data.record objects which are cached keyed by their <em>id</em> property.",
+     "memberOf": "Roo.data.Store"
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener"
+     "name": "baseParams",
+     "type": "Object",
+     "desc": "An object containing properties which are to be sent as parameters\non any HTTP request",
+     "memberOf": "Roo.data.Store"
     },
     {
-     "name": "setRootNode",
-     "sig": "(Node node)",
-     "type": "function",
-     "desc": "Sets the root node for this tree."
+     "name": "sortInfo",
+     "type": "Object",
+     "desc": "A config object in the format: {field: \"fieldName\", direction: \"ASC|DESC\"}",
+     "memberOf": "Roo.data.Store"
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
-    }
-   ]
-  },
-  "Roo.data.XmlReader": {
-   "props": [
-    {
-     "name": "totalRecords",
-     "type": "String",
-     "desc": "The DomQuery path from which to retrieve the total number of records\nin the dataset. This is only needed if the whole dataset is not passed in one go, but is being\npaged from the remote server.",
-     "memberOf": ""
+     "name": "multiSort",
+     "type": "Boolean",
+     "desc": "enable multi column sorting (sort is based on the order of columns, remote only at present)",
+     "memberOf": "Roo.data.Store"
     },
     {
-     "name": "record",
-     "type": "String",
-     "desc": "The DomQuery path to the repeated element which contains record information.",
-     "memberOf": ""
+     "name": "remoteSort",
+     "type": "boolean",
+     "desc": "True if sorting is to be handled by requesting the Proxy to provide a refreshed\nversion of the data object in sorted order, as opposed to sorting the Record cache in place (defaults to false).",
+     "memberOf": "Roo.data.Store"
     },
     {
-     "name": "success",
-     "type": "String",
-     "desc": "The DomQuery path to the success attribute used by forms.",
-     "memberOf": ""
+     "name": "pruneModifiedRecords",
+     "type": "boolean",
+     "desc": "True to clear all modified record information each time the store is\nloaded or when a record is removed. (defaults to false).",
+     "memberOf": "Roo.data.Store"
     },
     {
-     "name": "id",
-     "type": "String",
-     "desc": "The DomQuery path relative from the record element to the element that contains\na record identifier value.",
-     "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": [],
-   "methods": [
+   "events": [
     {
-     "name": "newRow",
-     "sig": "(Object data)",
+     "name": "add",
+     "sig": "function (_self, records, index)\n{\n\n}",
      "type": "function",
-     "desc": "Create an empty record"
+     "desc": "Fires when Records have been added to the Store"
     },
     {
-     "name": "read",
-     "sig": "(Object response)",
+     "name": "beforeload",
+     "sig": "function (_self, options)\n{\n\n}",
      "type": "function",
-     "desc": "This method is only used by a DataProxy which has retrieved data from a remote server."
+     "desc": "Fires before a request is made for a new data object.  If the beforeload handler returns false\nthe load action will be canceled."
     },
     {
-     "name": "readRecords",
-     "sig": "(Object doc)",
+     "name": "beforeloadadd",
+     "sig": "function (_self, records, options)\n{\n\n}",
      "type": "function",
-     "desc": "Create a data block containing Roo.data.Records from an XML document."
-    }
-   ]
-  },
-  "Roo.dd": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.dd.DD": {
-   "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": [],
-   "methods": [
+     "desc": "Fires after a new set of Records has been loaded."
+    },
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
+     "name": "clear",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Used to define events on this Observable"
+     "desc": "Fires when the data cache has been cleared."
     },
     {
-     "name": "addInvalidHandleClass",
-     "sig": "(string cssClass)",
+     "name": "datachanged",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Lets you specify a css class of elements that will not initiate a drag"
+     "desc": "Fires when the data cache has changed, and a widget which is using this Store\nas a Record cache should refresh its view."
     },
     {
-     "name": "addInvalidHandleId",
-     "sig": "(string id)",
+     "name": "load",
+     "sig": "function (_self, records, options)\n{\n\n}",
      "type": "function",
-     "desc": "Lets you to specify an element id for a child of a drag handle\nthat should not initiate a drag"
+     "desc": "Fires after a new set of Records has been loaded, before they are added to the store."
     },
     {
-     "name": "addInvalidHandleType",
-     "sig": "(string tagName)",
+     "name": "loadexception",
+     "sig": "function (, return, load, jsonData)\n{\n\n}",
      "type": "function",
-     "desc": "Allows you to specify a tag name that should not start a drag operation\nwhen clicked.  This is designed to facilitate embedding links within a\ndrag handle that do something other than start the drag."
+     "desc": "Fires if an exception occurs in the Proxy during loading.\nCalled with the signature of the Proxy's \"loadexception\" event.\nIf you return Json { data: [] , success: false, .... } then this will be thrown with the following args"
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "metachange",
+     "sig": "function (_self, meta)\n{\n\n}",
      "type": "function",
-     "desc": "Appends an event handler to this component"
+     "desc": "Fires when this store's reader provides new metadata (fields). This is currently only support for JsonReaders."
     },
     {
-     "name": "addToGroup",
-     "sig": "( sGroup)",
+     "name": "remove",
+     "sig": "function (_self, record, index)\n{\n\n}",
      "type": "function",
-     "desc": "Add this instance to a group of related drag/drop objects.  All\ninstances belong to at least one group, and can belong to as many\ngroups as needed."
+     "desc": "Fires when a Record has been removed from the Store"
     },
     {
-     "name": "alignElWithMouse",
-     "sig": "(HTMLElement el, int iPageX, int iPageY)",
+     "name": "update",
+     "sig": "function (_self, record, operation)\n{\n\n}",
      "type": "function",
-     "desc": "Sets the element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
-    },
+     "desc": "Fires when a Record has been updated"
+    }
+   ],
+   "methods": [
     {
-     "name": "applyConfig",
-     "sig": "()",
+     "name": "add",
+     "sig": "(Roo.data.Record[] records)",
      "type": "function",
-     "desc": "Applies the configuration parameters that were passed into the constructor.\nThis is supposed to happen at each level through the inheritance chain.  So\na DDProxy implentation will execute apply config on DDProxy, DD, and\nDragDrop in order to get all of the parameters that are available in\neach object."
+     "desc": "Add Records to the Store and fires the add event."
     },
     {
-     "name": "autoOffset",
-     "sig": "(int iPageX, int iPageY)",
+     "name": "addEvents",
+     "sig": "(Object object)",
      "type": "function",
-     "desc": "Sets the pointer offset to the distance between the linked element's top\nleft corner and the location the element was clicked"
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "cachePosition",
-     "sig": "( iPageX,  iPageY)",
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Saves the most recent position so that we can reset the constraints and\ntick marks on-demand.  We need to know this so that we can calculate the\nnumber of pixels the element is offset from its original position."
+     "desc": "Appends an event handler to this component"
     },
     {
      "name": "capture",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "clearConstraints",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clears any constraints applied to this instance.  Also clears ticks\nsince they can't exist independent of a constraint at this time."
-    },
-    {
-     "name": "clearTicks",
-     "sig": "()",
+     "name": "clearFilter",
+     "sig": "(Boolean suppressEvent)",
      "type": "function",
-     "desc": "Clears any tick interval defined for this instance"
+     "desc": "Revert to a view of the Record cache with no filtering applied."
     },
     {
-     "name": "endDrag",
-     "sig": "(Event e)",
+     "name": "collect",
+     "sig": "(String dataIndex, Boolean allowNull, Boolean bypassFilter)",
      "type": "function",
-     "desc": "Fired when we are done dragging the object"
+     "desc": "Collects unique values for a particular dataIndex from this store."
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
+     "name": "commitChanges",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "desc": "Commit all Records with outstanding changes. To handle updates for changes, subscribe to the\nStore's \"update\" event, and perform updating when the third parameter is Roo.data.Record.COMMIT."
     },
     {
-     "name": "function toString() {\n    [native code]\n}",
-     "sig": "()",
+     "name": "each",
+     "sig": "(Function fn, Object scope)",
      "type": "function",
-     "desc": "toString method"
+     "desc": "Calls the specified function for each of the Records in the cache."
     },
     {
-     "name": "getDragEl",
-     "sig": "()",
+     "name": "filter",
+     "sig": "(String field, String/RegExp value, Boolean anyMatch)",
      "type": "function",
-     "desc": "Returns a reference to the actual element to drag.  By default this is\nthe same as the html element, but it can be assigned to another\nelement. An example of this can be found in Roo.dd.DDProxy"
+     "desc": "Filter the records by a specified property."
     },
     {
-     "name": "getEl",
-     "sig": "()",
+     "name": "filterBy",
+     "sig": "(Function fn, Object scope)",
      "type": "function",
-     "desc": "Returns a reference to the linked element"
+     "desc": "Filter by a function. The specified function will be called with each\nrecord in this data source. If the function returns true the record is included,\notherwise it is filtered."
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
      "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "init",
-     "sig": "( id, String sGroup, object config)",
+     "name": "getAt",
+     "sig": "(Number index)",
      "type": "function",
-     "desc": "Sets up the DragDrop object.  Must be called in the constructor of any\nRoo.dd.DragDrop subclass"
+     "desc": "Get the Record at the specified index."
     },
     {
-     "name": "initTarget",
-     "sig": "( id, String sGroup, object config)",
+     "name": "getById",
+     "sig": "(String id)",
      "type": "function",
-     "desc": "Initializes Targeting functionality only... the object does not\nget a mousedown handler."
+     "desc": "Get the Record with the specified id."
     },
     {
-     "name": "isLocked",
+     "name": "getCount",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this instance is locked, or the drag drop mgr is locked\n(meaning that all drag/drop is disabled on the page.)"
+     "desc": "Gets the number of cached records.\n<p>\n<em>If using paging, this may not be the total size of the dataset. If the data object\nused by the Reader contains the dataset size, then the getTotalCount() function returns\nthe data set size</em>"
     },
     {
-     "name": "isTarget",
+     "name": "getModifiedRecords",
      "sig": "()",
      "type": "function",
-     "desc": "By default, all insances can be a drop target.  This can be disabled by\nsetting isTarget to false."
+     "desc": "Gets all records modified since the last commit.  Modified records are persisted across load operations\n(e.g., during paging)."
     },
     {
-     "name": "isValidHandleChild",
-     "sig": "(HTMLElement node)",
+     "name": "getRange",
+     "sig": "(Number startIndex, Number endIndex)",
      "type": "function",
-     "desc": "Checks the tag exclusion list to see if this click should be ignored"
+     "desc": "Returns a range of Records between specified indices."
     },
     {
-     "name": "lock",
+     "name": "getSortState",
      "sig": "()",
      "type": "function",
-     "desc": "Lock this instance"
+     "desc": "Returns the sort state of the Store as an object with two properties:\n<pre><code>\n field {String} The name of the field by which the Records are sorted\n direction {String} The sort order, \"ASC\" or \"DESC\"\n</code></pre>"
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "getTotalCount",
+     "sig": "()",
      "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "desc": "Gets the total number of records in the dataset as returned by the server.\n<p>\n<em>If using paging, for this to be accurate, the data object used by the Reader must contain\nthe dataset size</em>"
     },
     {
-     "name": "onAvailable",
-     "sig": "()",
+     "name": "hasListener",
+     "sig": "(String eventName)",
      "type": "function",
-     "desc": "Override the onAvailable method to do what is needed after the initial\nposition was determined."
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "onDrag",
-     "sig": "(Event e)",
+     "name": "indexOf",
+     "sig": "(Roo.data.Record record)",
      "type": "function",
-     "desc": "Abstract method called during the onMouseMove event while dragging an\nobject."
+     "desc": "Get the index within the cache of the passed Record."
     },
     {
-     "name": "onDragDrop",
-     "sig": "(Event e, String|DragDrop[] id)",
+     "name": "indexOfId",
+     "sig": "(String id)",
      "type": "function",
-     "desc": "Abstract method called when this item is dropped on another DragDrop\nobj"
+     "desc": "Get the index within the cache of the Record with the passed id."
     },
     {
-     "name": "onDragEnter",
-     "sig": "(Event e, String|DragDrop[] id)",
+     "name": "insert",
+     "sig": "(Number index, Roo.data.Record[] records)",
      "type": "function",
-     "desc": "Abstract method called when this element fist begins hovering over\nanother DragDrop obj"
+     "desc": "Inserts Records to the Store at the given index and fires the add event."
     },
     {
-     "name": "onDragOut",
-     "sig": "(Event e, String|DragDrop[] id)",
+     "name": "load",
+     "sig": "(Object options)",
      "type": "function",
-     "desc": "Abstract method called when we are no longer hovering over an element"
+     "desc": "Loads the Record cache from the configured Proxy using the configured Reader.\n<p>\nIf using remote paging, then the first load call must specify the <em>start</em>\nand <em>limit</em> properties in the options.params property to establish the initial\nposition within the dataset, and the number of Records to cache on each read from the Proxy.\n<p>\n<strong>It is important to note that for remote data sources, loading is asynchronous,\nand this call will return before the new data has been loaded. Perform any post-processing\nin a callback function, or in a \"load\" event handler.</strong>\n<p>"
     },
     {
-     "name": "onDragOver",
-     "sig": "(Event e, String|DragDrop[] id)",
+     "name": "loadData",
+     "sig": "(Object data, Boolean append)",
      "type": "function",
-     "desc": "Abstract method called when this element is hovering over another\nDragDrop obj"
+     "desc": "Loads data from a passed data block. A Reader which understands the format of the data\nmust have been configured in the constructor."
     },
     {
-     "name": "onInvalidDrop",
-     "sig": "(Event e)",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Abstract method called when this item is dropped on an area with no\ndrop target"
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "onMouseDown",
-     "sig": "(Event e)",
+     "name": "purgeListeners",
+     "sig": "()",
      "type": "function",
-     "desc": "Event handler that fires when a drag/drop obj gets a mousedown"
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "onMouseUp",
-     "sig": "(Event e)",
+     "name": "query",
+     "sig": "(String field, String/RegExp value, Boolean anyMatch)",
      "type": "function",
-     "desc": "Event handler that fires when a drag/drop obj gets a mouseup"
+     "desc": "Query the records by a specified property."
     },
     {
-     "name": "padding",
-     "sig": "()",
+     "name": "queryBy",
+     "sig": "(Function fn, Object scope)",
      "type": "function",
-     "desc": "The padding configured for this drag and drop object for calculating\nthe drop zone intersection with this object."
+     "desc": "Query by a function. The specified function will be called with each\nrecord in this data source. If the function returns true the record is included\nin the results."
     },
     {
-     "name": "purgeListeners",
+     "name": "rejectChanges",
      "sig": "()",
      "type": "function",
-     "desc": "Removes all listeners for this object"
+     "desc": "Cancel outstanding changes on all changed records."
     },
     {
      "name": "releaseCapture",
      "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "removeFromGroup",
-     "sig": "(string sGroup)",
-     "type": "function",
-     "desc": "Remove's this instance from the supplied interaction group"
-    },
-    {
-     "name": "removeInvalidHandleClass",
-     "sig": "(string cssClass)",
+     "name": "reload",
+     "sig": "(Object options)",
      "type": "function",
-     "desc": "Unsets an invalid css class"
+     "desc": "Reloads the Record cache from the configured Proxy using the configured Reader and\nthe options from the last load operation performed."
     },
     {
-     "name": "removeInvalidHandleId",
-     "sig": "(string id)",
+     "name": "remove",
+     "sig": "(Ext.data.Record record)",
      "type": "function",
-     "desc": "Unsets an invalid handle id"
+     "desc": "Remove a Record from the Store and fires the remove event."
     },
     {
-     "name": "removeInvalidHandleType",
-     "sig": "(string tagName)",
+     "name": "removeAll",
+     "sig": "()",
      "type": "function",
-     "desc": "Unsets an excluded tag name set by addInvalidHandleType"
+     "desc": "Remove all Records from the Store and fires the clear event."
     },
     {
      "name": "removeListener",
      "desc": "Removes a listener"
     },
     {
-     "name": "resetConstraints",
-     "sig": "(boolean maintainOffset)",
+     "name": "setDefaultSort",
+     "sig": "(String fieldName, String dir)",
      "type": "function",
-     "desc": "resetConstraints must be called if you manually reposition a dd element."
+     "desc": "Sets the default sort column and order to be used by the next load operation."
     },
     {
-     "name": "setDelta",
-     "sig": "(int iDeltaX, int iDeltaY)",
+     "name": "sort",
+     "sig": "(String fieldName, String dir)",
      "type": "function",
-     "desc": "Sets the pointer offset.  You can call this directly to force the\noffset to be in a particular location (e.g., pass in 0,0 to set it\nto the center of the object)"
+     "desc": "Sort the Records.\nIf remote sorting is used, the sort is performed on the server, and the cache is\nreloaded. If local sorting is used, the cache is sorted internally."
     },
     {
-     "name": "setDragElId",
-     "sig": "( id)",
+     "name": "sum",
+     "sig": "(String property, Number start, Number end)",
      "type": "function",
-     "desc": "Allows you to specify that an element other than the linked element\nwill be moved with the cursor during a drag"
+     "desc": "Sums the value of <i>property</i> for each record between start and end and returns the result."
     },
     {
-     "name": "setDragElPos",
-     "sig": "(int iPageX, int iPageY)",
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "Sets the drag element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
-    },
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.data.SortTypes": {
+   "props": [],
+   "events": [],
+   "methods": [
     {
-     "name": "setHandleElId",
-     "sig": "( id)",
+     "name": "asDate",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Allows you to specify a child of the linked element that should be\nused to initiate the drag operation.  An example of this would be if\nyou have a content div with text and links.  Clicking anywhere in the\ncontent area would normally start the drag operation.  Use this method\nto specify that an element inside of the content div is the element\nthat starts the drag operation."
+     "desc": "Date sorting"
     },
     {
-     "name": "setInitPosition",
-     "sig": "(int diffX, int diffY)",
+     "name": "asFloat",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Stores the initial placement of the linked element."
+     "desc": "Float sorting"
     },
     {
-     "name": "setOuterHandleElId",
-     "sig": "( id)",
+     "name": "asInt",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Allows you to set an element outside of the linked element as a drag\nhandle"
+     "desc": "Integer sorting"
     },
     {
-     "name": "setPadding",
-     "sig": "(int iTop, int iRight, int iBot, int iLeft)",
+     "name": "asText",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Configures the padding for the target zone in px.  Effectively expands\n(or reduces) the virtual object size for targeting calculations.\nSupports css-style shorthand; if only one parameter is passed, all sides\nwill have that padding, and if only two are passed, the top and bottom\nwill have the first param, the left and right the second."
+     "desc": "Strips all HTML tags to sort on text only"
     },
     {
-     "name": "setXConstraint",
-     "sig": "(int iLeft, int iRight, int iTickSize)",
+     "name": "asUCString",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "By default, the element can be dragged any place on the screen.  Use\nthis method to limit the horizontal travel of the element.  Pass in\n0,0 for the parameters if you want to lock the drag to the y axis."
+     "desc": "Case insensitive string"
     },
     {
-     "name": "setYConstraint",
-     "sig": "(int iUp, int iDown, int iTickSize)",
+     "name": "asUCText",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "By default, the element can be dragged any place on the screen.  Set\nthis to limit the vertical travel of the element.  Pass in 0,0 for the\nparameters if you want to lock the drag to the x axis."
+     "desc": "Strips all HTML tags to sort on text only - Case insensitive"
     },
     {
-     "name": "startDrag",
-     "sig": "(int X, int Y)",
+     "name": "none",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Abstract method called after a drag/drop object is clicked\nand the drag or mousedown time thresholds have beeen met."
+     "desc": "Default sort that does nothing"
+    }
+   ]
+  },
+  "Roo.data.Store": {
+   "props": [
+    {
+     "name": "isLocal",
+     "type": "boolean",
+     "desc": "flag if data is locally available (and can be always looked up\nwithout a remote query - used by combo/forms at present.",
+     "memberOf": ""
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
+     "name": "proxy",
+     "type": "Roo.data.DataProxy",
+     "desc": "The Proxy object which provides access to a data object.",
+     "memberOf": ""
     },
     {
-     "name": "unlock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Unlock this instace"
+     "name": "data",
+     "type": "Array",
+     "desc": "Inline data to be loaded when the store is initialized.",
+     "memberOf": ""
     },
     {
-     "name": "unreg",
-     "sig": "()",
-     "type": "function",
-     "desc": "Remove all drag and drop hooks for this element"
-    }
-   ]
-  },
-  "Roo.dd.DDProxy": {
-   "props": [
+     "name": "reader",
+     "type": "Roo.data.Reader",
+     "desc": "The Reader object which processes the data object and returns\nan Array of Roo.data.record objects which are cached keyed by their <em>id</em> property.",
+     "memberOf": ""
+    },
+    {
+     "name": "baseParams",
+     "type": "Object",
+     "desc": "An object containing properties which are to be sent as parameters\non any HTTP request",
+     "memberOf": ""
+    },
+    {
+     "name": "sortInfo",
+     "type": "Object",
+     "desc": "A config object in the format: {field: \"fieldName\", direction: \"ASC|DESC\"}",
+     "memberOf": ""
+    },
+    {
+     "name": "multiSort",
+     "type": "Boolean",
+     "desc": "enable multi column sorting (sort is based on the order of columns, remote only at present)",
+     "memberOf": ""
+    },
+    {
+     "name": "remoteSort",
+     "type": "boolean",
+     "desc": "True if sorting is to be handled by requesting the Proxy to provide a refreshed\nversion of the data object in sorted order, as opposed to sorting the Record cache in place (defaults to false).",
+     "memberOf": ""
+    },
+    {
+     "name": "pruneModifiedRecords",
+     "type": "boolean",
+     "desc": "True to clear all modified record information each time the store is\nloaded or when a record is removed. (defaults to false).",
+     "memberOf": ""
+    },
     {
      "name": "listeners",
      "type": "Object",
      "memberOf": "Roo.util.Observable"
     }
    ],
-   "events": [],
-   "methods": [
+   "events": [
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
+     "name": "add",
+     "sig": "function (_self, records, index)\n{\n\n}",
      "type": "function",
-     "desc": "Used to define events on this Observable"
+     "desc": "Fires when Records have been added to the Store"
     },
     {
-     "name": "addInvalidHandleClass",
-     "sig": "(string cssClass)",
+     "name": "beforeload",
+     "sig": "function (_self, options)\n{\n\n}",
      "type": "function",
-     "desc": "Lets you specify a css class of elements that will not initiate a drag"
+     "desc": "Fires before a request is made for a new data object.  If the beforeload handler returns false\nthe load action will be canceled."
     },
     {
-     "name": "addInvalidHandleId",
-     "sig": "(string id)",
+     "name": "beforeloadadd",
+     "sig": "function (_self, records, options)\n{\n\n}",
      "type": "function",
-     "desc": "Lets you to specify an element id for a child of a drag handle\nthat should not initiate a drag"
+     "desc": "Fires after a new set of Records has been loaded."
     },
     {
-     "name": "addInvalidHandleType",
-     "sig": "(string tagName)",
+     "name": "clear",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Allows you to specify a tag name that should not start a drag operation\nwhen clicked.  This is designed to facilitate embedding links within a\ndrag handle that do something other than start the drag."
+     "desc": "Fires when the data cache has been cleared."
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "datachanged",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Appends an event handler to this component"
+     "desc": "Fires when the data cache has changed, and a widget which is using this Store\nas a Record cache should refresh its view."
     },
     {
-     "name": "addToGroup",
-     "sig": "( sGroup)",
+     "name": "load",
+     "sig": "function (_self, records, options)\n{\n\n}",
      "type": "function",
-     "desc": "Add this instance to a group of related drag/drop objects.  All\ninstances belong to at least one group, and can belong to as many\ngroups as needed."
+     "desc": "Fires after a new set of Records has been loaded, before they are added to the store."
     },
     {
-     "name": "alignElWithMouse",
-     "sig": "(HTMLElement el, int iPageX, int iPageY)",
+     "name": "loadexception",
+     "sig": "function (, return, load, jsonData)\n{\n\n}",
      "type": "function",
-     "desc": "Sets the element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
+     "desc": "Fires if an exception occurs in the Proxy during loading.\nCalled with the signature of the Proxy's \"loadexception\" event.\nIf you return Json { data: [] , success: false, .... } then this will be thrown with the following args"
     },
     {
-     "name": "applyConfig",
-     "sig": "()",
+     "name": "metachange",
+     "sig": "function (_self, meta)\n{\n\n}",
      "type": "function",
-     "desc": "Applies the configuration parameters that were passed into the constructor.\nThis is supposed to happen at each level through the inheritance chain.  So\na DDProxy implentation will execute apply config on DDProxy, DD, and\nDragDrop in order to get all of the parameters that are available in\neach object."
+     "desc": "Fires when this store's reader provides new metadata (fields). This is currently only support for JsonReaders."
     },
     {
-     "name": "autoOffset",
-     "sig": "(int iPageX, int iPageY)",
+     "name": "remove",
+     "sig": "function (_self, record, index)\n{\n\n}",
      "type": "function",
-     "desc": "Sets the pointer offset to the distance between the linked element's top\nleft corner and the location the element was clicked"
+     "desc": "Fires when a Record has been removed from the Store"
     },
     {
-     "name": "cachePosition",
-     "sig": "( iPageX,  iPageY)",
+     "name": "update",
+     "sig": "function (_self, record, operation)\n{\n\n}",
      "type": "function",
-     "desc": "Saves the most recent position so that we can reset the constraints and\ntick marks on-demand.  We need to know this so that we can calculate the\nnumber of pixels the element is offset from its original position."
-    },
+     "desc": "Fires when a Record has been updated"
+    }
+   ],
+   "methods": [
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
+     "name": "add",
+     "sig": "(Roo.data.Record[] records)",
      "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "desc": "Add Records to the Store and fires the add event."
     },
     {
-     "name": "clearConstraints",
-     "sig": "()",
+     "name": "addEvents",
+     "sig": "(Object object)",
      "type": "function",
-     "desc": "Clears any constraints applied to this instance.  Also clears ticks\nsince they can't exist independent of a constraint at this time."
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "clearTicks",
-     "sig": "()",
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Clears any tick interval defined for this instance"
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "createFrame",
-     "sig": "()",
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
-     "desc": "Creates the proxy element if it does not yet exist"
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "endDrag",
-     "sig": "(Event e)",
+     "name": "clearFilter",
+     "sig": "(Boolean suppressEvent)",
      "type": "function",
-     "desc": "Fired when we are done dragging the object"
+     "desc": "Revert to a view of the Record cache with no filtering applied."
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
+     "name": "collect",
+     "sig": "(String dataIndex, Boolean allowNull, Boolean bypassFilter)",
      "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "desc": "Collects unique values for a particular dataIndex from this store."
     },
     {
-     "name": "function toString() {\n    [native code]\n}",
+     "name": "commitChanges",
      "sig": "()",
      "type": "function",
-     "desc": "toString method"
+     "desc": "Commit all Records with outstanding changes. To handle updates for changes, subscribe to the\nStore's \"update\" event, and perform updating when the third parameter is Roo.data.Record.COMMIT."
     },
     {
-     "name": "getDragEl",
-     "sig": "()",
+     "name": "each",
+     "sig": "(Function fn, Object scope)",
      "type": "function",
-     "desc": "Returns a reference to the actual element to drag.  By default this is\nthe same as the html element, but it can be assigned to another\nelement. An example of this can be found in Roo.dd.DDProxy"
+     "desc": "Calls the specified function for each of the Records in the cache."
     },
     {
-     "name": "getEl",
-     "sig": "()",
+     "name": "filter",
+     "sig": "(String field, String/RegExp value, Boolean anyMatch)",
      "type": "function",
-     "desc": "Returns a reference to the linked element"
+     "desc": "Filter the records by a specified property."
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
+     "name": "filterBy",
+     "sig": "(Function fn, Object scope)",
      "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "desc": "Filter by a function. The specified function will be called with each\nrecord in this data source. If the function returns true the record is included,\notherwise it is filtered."
     },
     {
-     "name": "init",
-     "sig": "( id, String sGroup, object config)",
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
      "type": "function",
-     "desc": "Sets up the DragDrop object.  Must be called in the constructor of any\nRoo.dd.DragDrop subclass"
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "initFrame",
-     "sig": "()",
+     "name": "getAt",
+     "sig": "(Number index)",
      "type": "function",
-     "desc": "Initialization for the drag frame element.  Must be called in the\nconstructor of all subclasses"
+     "desc": "Get the Record at the specified index."
     },
     {
-     "name": "initTarget",
-     "sig": "( id, String sGroup, object config)",
+     "name": "getById",
+     "sig": "(String id)",
      "type": "function",
-     "desc": "Initializes Targeting functionality only... the object does not\nget a mousedown handler."
+     "desc": "Get the Record with the specified id."
     },
     {
-     "name": "isLocked",
+     "name": "getCount",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this instance is locked, or the drag drop mgr is locked\n(meaning that all drag/drop is disabled on the page.)"
+     "desc": "Gets the number of cached records.\n<p>\n<em>If using paging, this may not be the total size of the dataset. If the data object\nused by the Reader contains the dataset size, then the getTotalCount() function returns\nthe data set size</em>"
     },
     {
-     "name": "isTarget",
+     "name": "getModifiedRecords",
      "sig": "()",
      "type": "function",
-     "desc": "By default, all insances can be a drop target.  This can be disabled by\nsetting isTarget to false."
+     "desc": "Gets all records modified since the last commit.  Modified records are persisted across load operations\n(e.g., during paging)."
     },
     {
-     "name": "isValidHandleChild",
-     "sig": "(HTMLElement node)",
+     "name": "getRange",
+     "sig": "(Number startIndex, Number endIndex)",
      "type": "function",
-     "desc": "Checks the tag exclusion list to see if this click should be ignored"
+     "desc": "Returns a range of Records between specified indices."
     },
     {
-     "name": "lock",
+     "name": "getSortState",
      "sig": "()",
      "type": "function",
-     "desc": "Lock this instance"
+     "desc": "Returns the sort state of the Store as an object with two properties:\n<pre><code>\n field {String} The name of the field by which the Records are sorted\n direction {String} The sort order, \"ASC\" or \"DESC\"\n</code></pre>"
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "getTotalCount",
+     "sig": "()",
      "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "desc": "Gets the total number of records in the dataset as returned by the server.\n<p>\n<em>If using paging, for this to be accurate, the data object used by the Reader must contain\nthe dataset size</em>"
     },
     {
-     "name": "onAvailable",
-     "sig": "()",
+     "name": "hasListener",
+     "sig": "(String eventName)",
      "type": "function",
-     "desc": "Override the onAvailable method to do what is needed after the initial\nposition was determined."
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "onDrag",
-     "sig": "(Event e)",
+     "name": "indexOf",
+     "sig": "(Roo.data.Record record)",
      "type": "function",
-     "desc": "Abstract method called during the onMouseMove event while dragging an\nobject."
+     "desc": "Get the index within the cache of the passed Record."
     },
     {
-     "name": "onDragDrop",
-     "sig": "(Event e, String|DragDrop[] id)",
+     "name": "indexOfId",
+     "sig": "(String id)",
      "type": "function",
-     "desc": "Abstract method called when this item is dropped on another DragDrop\nobj"
+     "desc": "Get the index within the cache of the Record with the passed id."
     },
     {
-     "name": "onDragEnter",
-     "sig": "(Event e, String|DragDrop[] id)",
+     "name": "insert",
+     "sig": "(Number index, Roo.data.Record[] records)",
      "type": "function",
-     "desc": "Abstract method called when this element fist begins hovering over\nanother DragDrop obj"
+     "desc": "Inserts Records to the Store at the given index and fires the add event."
     },
     {
-     "name": "onDragOut",
-     "sig": "(Event e, String|DragDrop[] id)",
+     "name": "load",
+     "sig": "(Object options)",
      "type": "function",
-     "desc": "Abstract method called when we are no longer hovering over an element"
+     "desc": "Loads the Record cache from the configured Proxy using the configured Reader.\n<p>\nIf using remote paging, then the first load call must specify the <em>start</em>\nand <em>limit</em> properties in the options.params property to establish the initial\nposition within the dataset, and the number of Records to cache on each read from the Proxy.\n<p>\n<strong>It is important to note that for remote data sources, loading is asynchronous,\nand this call will return before the new data has been loaded. Perform any post-processing\nin a callback function, or in a \"load\" event handler.</strong>\n<p>"
     },
     {
-     "name": "onDragOver",
-     "sig": "(Event e, String|DragDrop[] id)",
+     "name": "loadData",
+     "sig": "(Object data, Boolean append)",
      "type": "function",
-     "desc": "Abstract method called when this element is hovering over another\nDragDrop obj"
+     "desc": "Loads data from a passed data block. A Reader which understands the format of the data\nmust have been configured in the constructor."
     },
     {
-     "name": "onInvalidDrop",
-     "sig": "(Event e)",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Abstract method called when this item is dropped on an area with no\ndrop target"
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "onMouseDown",
-     "sig": "(Event e)",
+     "name": "purgeListeners",
+     "sig": "()",
      "type": "function",
-     "desc": "Event handler that fires when a drag/drop obj gets a mousedown"
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "onMouseUp",
-     "sig": "(Event e)",
+     "name": "query",
+     "sig": "(String field, String/RegExp value, Boolean anyMatch)",
      "type": "function",
-     "desc": "Event handler that fires when a drag/drop obj gets a mouseup"
+     "desc": "Query the records by a specified property."
     },
     {
-     "name": "padding",
-     "sig": "()",
+     "name": "queryBy",
+     "sig": "(Function fn, Object scope)",
      "type": "function",
-     "desc": "The padding configured for this drag and drop object for calculating\nthe drop zone intersection with this object."
+     "desc": "Query by a function. The specified function will be called with each\nrecord in this data source. If the function returns true the record is included\nin the results."
     },
     {
-     "name": "purgeListeners",
+     "name": "rejectChanges",
      "sig": "()",
      "type": "function",
-     "desc": "Removes all listeners for this object"
+     "desc": "Cancel outstanding changes on all changed records."
     },
     {
      "name": "releaseCapture",
      "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "removeFromGroup",
-     "sig": "(string sGroup)",
-     "type": "function",
-     "desc": "Remove's this instance from the supplied interaction group"
-    },
-    {
-     "name": "removeInvalidHandleClass",
-     "sig": "(string cssClass)",
+     "name": "reload",
+     "sig": "(Object options)",
      "type": "function",
-     "desc": "Unsets an invalid css class"
+     "desc": "Reloads the Record cache from the configured Proxy using the configured Reader and\nthe options from the last load operation performed."
     },
     {
-     "name": "removeInvalidHandleId",
-     "sig": "(string id)",
+     "name": "remove",
+     "sig": "(Ext.data.Record record)",
      "type": "function",
-     "desc": "Unsets an invalid handle id"
+     "desc": "Remove a Record from the Store and fires the remove event."
     },
     {
-     "name": "removeInvalidHandleType",
-     "sig": "(string tagName)",
+     "name": "removeAll",
+     "sig": "()",
      "type": "function",
-     "desc": "Unsets an excluded tag name set by addInvalidHandleType"
+     "desc": "Remove all Records from the Store and fires the clear event."
     },
     {
      "name": "removeListener",
      "desc": "Removes a listener"
     },
     {
-     "name": "resetConstraints",
-     "sig": "(boolean maintainOffset)",
-     "type": "function",
-     "desc": "resetConstraints must be called if you manually reposition a dd element."
-    },
-    {
-     "name": "setDelta",
-     "sig": "(int iDeltaX, int iDeltaY)",
+     "name": "setDefaultSort",
+     "sig": "(String fieldName, String dir)",
      "type": "function",
-     "desc": "Sets the pointer offset.  You can call this directly to force the\noffset to be in a particular location (e.g., pass in 0,0 to set it\nto the center of the object)"
+     "desc": "Sets the default sort column and order to be used by the next load operation."
     },
     {
-     "name": "setDragElId",
-     "sig": "( id)",
+     "name": "sort",
+     "sig": "(String fieldName, String dir)",
      "type": "function",
-     "desc": "Allows you to specify that an element other than the linked element\nwill be moved with the cursor during a drag"
+     "desc": "Sort the Records.\nIf remote sorting is used, the sort is performed on the server, and the cache is\nreloaded. If local sorting is used, the cache is sorted internally."
     },
     {
-     "name": "setDragElPos",
-     "sig": "(int iPageX, int iPageY)",
+     "name": "sum",
+     "sig": "(String property, Number start, Number end)",
      "type": "function",
-     "desc": "Sets the drag element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
+     "desc": "Sums the value of <i>property</i> for each record between start and end and returns the result."
     },
     {
-     "name": "setHandleElId",
-     "sig": "( id)",
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "Allows you to specify a child of the linked element that should be\nused to initiate the drag operation.  An example of this would be if\nyou have a content div with text and links.  Clicking anywhere in the\ncontent area would normally start the drag operation.  Use this method\nto specify that an element inside of the content div is the element\nthat starts the drag operation."
-    },
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.data.Tree": {
+   "props": [
     {
-     "name": "setInitPosition",
-     "sig": "(int diffX, int diffY)",
-     "type": "function",
-     "desc": "Stores the initial placement of the linked element."
-    },
+     "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": "setOuterHandleElId",
-     "sig": "( id)",
+     "name": "append",
+     "sig": "function (tree, parent, node, index)\n{\n\n}",
      "type": "function",
-     "desc": "Allows you to set an element outside of the linked element as a drag\nhandle"
+     "desc": "Fires when a new child node is appended to a node in this tree."
     },
     {
-     "name": "setPadding",
-     "sig": "(int iTop, int iRight, int iBot, int iLeft)",
+     "name": "beforeappend",
+     "sig": "function (tree, parent, node)\n{\n\n}",
      "type": "function",
-     "desc": "Configures the padding for the target zone in px.  Effectively expands\n(or reduces) the virtual object size for targeting calculations.\nSupports css-style shorthand; if only one parameter is passed, all sides\nwill have that padding, and if only two are passed, the top and bottom\nwill have the first param, the left and right the second."
+     "desc": "Fires before a new child is appended to a node in this tree, return false to cancel the append."
     },
     {
-     "name": "setXConstraint",
-     "sig": "(int iLeft, int iRight, int iTickSize)",
+     "name": "beforeinsert",
+     "sig": "function (tree, parent, node, refNode)\n{\n\n}",
      "type": "function",
-     "desc": "By default, the element can be dragged any place on the screen.  Use\nthis method to limit the horizontal travel of the element.  Pass in\n0,0 for the parameters if you want to lock the drag to the y axis."
+     "desc": "Fires before a new child is inserted in a node in this tree, return false to cancel the insert."
     },
     {
-     "name": "setYConstraint",
-     "sig": "(int iUp, int iDown, int iTickSize)",
+     "name": "beforemove",
+     "sig": "function (tree, node, oldParent, newParent, index)\n{\n\n}",
      "type": "function",
-     "desc": "By default, the element can be dragged any place on the screen.  Set\nthis to limit the vertical travel of the element.  Pass in 0,0 for the\nparameters if you want to lock the drag to the x axis."
+     "desc": "Fires before a node is moved to a new location in the tree. Return false to cancel the move."
     },
     {
-     "name": "startDrag",
-     "sig": "(int X, int Y)",
+     "name": "beforeremove",
+     "sig": "function (tree, parent, node)\n{\n\n}",
      "type": "function",
-     "desc": "Abstract method called after a drag/drop object is clicked\nand the drag or mousedown time thresholds have beeen met."
+     "desc": "Fires before a child is removed from a node in this tree, return false to cancel the remove."
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "insert",
+     "sig": "function (tree, parent, node, refNode)\n{\n\n}",
      "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
+     "desc": "Fires when a new child node is inserted in a node in this tree."
     },
     {
-     "name": "unlock",
-     "sig": "()",
+     "name": "move",
+     "sig": "function (tree, node, oldParent, newParent, index)\n{\n\n}",
      "type": "function",
-     "desc": "Unlock this instace"
+     "desc": "Fires when a node is moved to a new location in the tree"
     },
     {
-     "name": "unreg",
-     "sig": "()",
+     "name": "remove",
+     "sig": "function (tree, parent, node)\n{\n\n}",
      "type": "function",
-     "desc": "Remove all drag and drop hooks for this element"
-    }
-   ]
-  },
-  "Roo.dd.DDTarget": {
-   "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"
+     "desc": "Fires when a child node is removed from a node in this tree."
     }
    ],
-   "events": [],
    "methods": [
     {
      "name": "addEvents",
      "desc": "Used to define events on this Observable"
     },
     {
-     "name": "addInvalidHandleClass",
-     "sig": "(string cssClass)",
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Lets you specify a css class of elements that will not initiate a drag"
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "addInvalidHandleId",
-     "sig": "(string id)",
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
-     "desc": "Lets you to specify an element id for a child of a drag handle\nthat should not initiate a drag"
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "addInvalidHandleType",
-     "sig": "(string tagName)",
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
      "type": "function",
-     "desc": "Allows you to specify a tag name that should not start a drag operation\nwhen clicked.  This is designed to facilitate embedding links within a\ndrag handle that do something other than start the drag."
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "getNodeById",
+     "sig": "(String id)",
      "type": "function",
-     "desc": "Appends an event handler to this component"
+     "desc": "Gets a node in this tree by its id."
+    },
+    {
+     "name": "getRootNode",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the root node for this tree."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "setRootNode",
+     "sig": "(Node node)",
+     "type": "function",
+     "desc": "Sets the root node for this tree."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.data.XmlReader": {
+   "props": [
+    {
+     "name": "totalRecords",
+     "type": "String",
+     "desc": "The DomQuery path from which to retrieve the total number of records\nin the dataset. This is only needed if the whole dataset is not passed in one go, but is being\npaged from the remote server.",
+     "memberOf": ""
+    },
+    {
+     "name": "record",
+     "type": "String",
+     "desc": "The DomQuery path to the repeated element which contains record information.",
+     "memberOf": ""
+    },
+    {
+     "name": "success",
+     "type": "String",
+     "desc": "The DomQuery path to the success attribute used by forms.",
+     "memberOf": ""
+    },
+    {
+     "name": "id",
+     "type": "String",
+     "desc": "The DomQuery path relative from the record element to the element that contains\na record identifier value.",
+     "memberOf": ""
+    }
+   ],
+   "events": [],
+   "methods": [
+    {
+     "name": "newRow",
+     "sig": "(Object data)",
+     "type": "function",
+     "desc": "Create an empty record"
+    },
+    {
+     "name": "read",
+     "sig": "(Object response)",
+     "type": "function",
+     "desc": "This method is only used by a DataProxy which has retrieved data from a remote server."
+    },
+    {
+     "name": "readRecords",
+     "sig": "(Object doc)",
+     "type": "function",
+     "desc": "Create a data block containing Roo.data.Records from an XML document."
+    }
+   ]
+  },
+  "Roo.dd": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.dd.DD": {
+   "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": [],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addInvalidHandleClass",
+     "sig": "(string cssClass)",
+     "type": "function",
+     "desc": "Lets you specify a css class of elements that will not initiate a drag"
+    },
+    {
+     "name": "addInvalidHandleId",
+     "sig": "(string id)",
+     "type": "function",
+     "desc": "Lets you to specify an element id for a child of a drag handle\nthat should not initiate a drag"
+    },
+    {
+     "name": "addInvalidHandleType",
+     "sig": "(string tagName)",
+     "type": "function",
+     "desc": "Allows you to specify a tag name that should not start a drag operation\nwhen clicked.  This is designed to facilitate embedding links within a\ndrag handle that do something other than start the drag."
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
     },
     {
      "name": "addToGroup",
      "type": "function",
      "desc": "Add this instance to a group of related drag/drop objects.  All\ninstances belong to at least one group, and can belong to as many\ngroups as needed."
     },
+    {
+     "name": "alignElWithMouse",
+     "sig": "(HTMLElement el, int iPageX, int iPageY)",
+     "type": "function",
+     "desc": "Sets the element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
+    },
     {
      "name": "applyConfig",
      "sig": "()",
      "type": "function",
      "desc": "Applies the configuration parameters that were passed into the constructor.\nThis is supposed to happen at each level through the inheritance chain.  So\na DDProxy implentation will execute apply config on DDProxy, DD, and\nDragDrop in order to get all of the parameters that are available in\neach object."
     },
+    {
+     "name": "autoOffset",
+     "sig": "(int iPageX, int iPageY)",
+     "type": "function",
+     "desc": "Sets the pointer offset to the distance between the linked element's top\nleft corner and the location the element was clicked"
+    },
+    {
+     "name": "cachePosition",
+     "sig": "( iPageX,  iPageY)",
+     "type": "function",
+     "desc": "Saves the most recent position so that we can reset the constraints and\ntick marks on-demand.  We need to know this so that we can calculate the\nnumber of pixels the element is offset from its original position."
+    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "resetConstraints must be called if you manually reposition a dd element."
     },
+    {
+     "name": "setDelta",
+     "sig": "(int iDeltaX, int iDeltaY)",
+     "type": "function",
+     "desc": "Sets the pointer offset.  You can call this directly to force the\noffset to be in a particular location (e.g., pass in 0,0 to set it\nto the center of the object)"
+    },
     {
      "name": "setDragElId",
      "sig": "( id)",
      "type": "function",
      "desc": "Allows you to specify that an element other than the linked element\nwill be moved with the cursor during a drag"
     },
+    {
+     "name": "setDragElPos",
+     "sig": "(int iPageX, int iPageY)",
+     "type": "function",
+     "desc": "Sets the drag element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
+    },
     {
      "name": "setHandleElId",
      "sig": "( id)",
     }
    ]
   },
-  "Roo.dd.DragDrop": {
+  "Roo.dd.DDProxy": {
    "props": [
     {
      "name": "listeners",
      "type": "function",
      "desc": "Add this instance to a group of related drag/drop objects.  All\ninstances belong to at least one group, and can belong to as many\ngroups as needed."
     },
+    {
+     "name": "alignElWithMouse",
+     "sig": "(HTMLElement el, int iPageX, int iPageY)",
+     "type": "function",
+     "desc": "Sets the element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
+    },
     {
      "name": "applyConfig",
      "sig": "()",
      "type": "function",
      "desc": "Applies the configuration parameters that were passed into the constructor.\nThis is supposed to happen at each level through the inheritance chain.  So\na DDProxy implentation will execute apply config on DDProxy, DD, and\nDragDrop in order to get all of the parameters that are available in\neach object."
     },
+    {
+     "name": "autoOffset",
+     "sig": "(int iPageX, int iPageY)",
+     "type": "function",
+     "desc": "Sets the pointer offset to the distance between the linked element's top\nleft corner and the location the element was clicked"
+    },
+    {
+     "name": "cachePosition",
+     "sig": "( iPageX,  iPageY)",
+     "type": "function",
+     "desc": "Saves the most recent position so that we can reset the constraints and\ntick marks on-demand.  We need to know this so that we can calculate the\nnumber of pixels the element is offset from its original position."
+    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "Clears any tick interval defined for this instance"
     },
+    {
+     "name": "createFrame",
+     "sig": "()",
+     "type": "function",
+     "desc": "Creates the proxy element if it does not yet exist"
+    },
     {
      "name": "endDrag",
      "sig": "(Event e)",
      "type": "function",
      "desc": "Sets up the DragDrop object.  Must be called in the constructor of any\nRoo.dd.DragDrop subclass"
     },
+    {
+     "name": "initFrame",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialization for the drag frame element.  Must be called in the\nconstructor of all subclasses"
+    },
     {
      "name": "initTarget",
      "sig": "( id, String sGroup, object config)",
      "type": "function",
      "desc": "resetConstraints must be called if you manually reposition a dd element."
     },
+    {
+     "name": "setDelta",
+     "sig": "(int iDeltaX, int iDeltaY)",
+     "type": "function",
+     "desc": "Sets the pointer offset.  You can call this directly to force the\noffset to be in a particular location (e.g., pass in 0,0 to set it\nto the center of the object)"
+    },
     {
      "name": "setDragElId",
      "sig": "( id)",
      "type": "function",
      "desc": "Allows you to specify that an element other than the linked element\nwill be moved with the cursor during a drag"
     },
+    {
+     "name": "setDragElPos",
+     "sig": "(int iPageX, int iPageY)",
+     "type": "function",
+     "desc": "Sets the drag element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
+    },
     {
      "name": "setHandleElId",
      "sig": "( id)",
     }
    ]
   },
-  "Roo.dd.DragDropMgr": {
-   "props": [],
-   "events": [],
-   "methods": [
-    {
-     "name": "getBestMatch",
-     "sig": "(DragDrop[] dds)",
-     "type": "function",
-     "desc": "Helper function for getting the best match from the list of drag\nand drop objects returned by the drag and drop events when we are\nin INTERSECT mode.  It returns either the first object that the\ncursor is over, or the object that has the greatest overlap with\nthe dragged element."
-    },
-    {
-     "name": "getCss",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Returns the style property for the DOM element (i.e.,\ndocument.getElById(id).style)"
-    },
-    {
-     "name": "getDDById",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Returns the DragDrop instance for a given id"
-    },
-    {
-     "name": "getElement",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Returns the actual DOM element"
-    },
-    {
-     "name": "getLocation",
-     "sig": "(DragDrop oDD)",
-     "type": "function",
-     "desc": "Returns a Region object containing the drag and drop element's position\nand size, including the padding configured for it"
-    },
-    {
-     "name": "getPosX",
-     "sig": "( el)",
-     "type": "function",
-     "desc": "Returns the X position of an html element"
-    },
-    {
-     "name": "getPosY",
-     "sig": "( el)",
-     "type": "function",
-     "desc": "Returns the Y position of an html element"
-    },
-    {
-     "name": "getRelated",
-     "sig": "(DragDrop p_oDD, boolean bTargetsOnly)",
-     "type": "function",
-     "desc": "Returns the drag and drop instances that are in all groups the\npassed in instance belongs to."
-    },
-    {
-     "name": "getScrollLeft",
-     "sig": "()",
-     "type": "function",
-     "desc": "Gets the scrollLeft"
-    },
-    {
-     "name": "getScrollTop",
-     "sig": "()",
-     "type": "function",
-     "desc": "Gets the scrollTop"
-    },
-    {
-     "name": "getStyle",
-     "sig": "(HTMLElement el, string styleProp)",
-     "type": "function",
-     "desc": "Returns the specified element style property"
-    },
-    {
-     "name": "handleWasClicked",
-     "sig": "( node)",
-     "type": "function",
-     "desc": "Recursively searches the immediate parent and all child nodes for\nthe handle element in order to determine wheter or not it was\nclicked."
-    },
-    {
-     "name": "isDragDrop",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Utility function to determine if a given element has been\nregistered as a drag drop item."
-    },
-    {
-     "name": "isHandle",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Utility function to determine if a given element has been\nregistered as a drag drop handle for the given Drag Drop object."
-    },
-    {
-     "name": "isLegalTarget",
-     "sig": "(DragDrop the, DragDrop the)",
-     "type": "function",
-     "desc": "Returns true if the specified dd target is a legal target for\nthe specifice drag obj"
-    },
-    {
-     "name": "isLocked",
-     "sig": "()",
-     "type": "function",
-     "desc": "Is drag and drop locked?"
-    },
-    {
-     "name": "isTypeOfDD",
-     "sig": "(Object the)",
-     "type": "function",
-     "desc": "My goal is to be able to transparently determine if an object is\ntypeof DragDrop, and the exact subclass of DragDrop.  typeof\nreturns \"object\", oDD.constructor.toString() always returns\n\"DragDrop\" and not the name of the subclass.  So for now it just\nevaluates a well-known variable in DragDrop."
-    },
-    {
-     "name": "lock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Lock all drag and drop functionality"
-    },
-    {
-     "name": "moveToEl",
-     "sig": "(HTMLElement moveEl, HTMLElement targetEl)",
-     "type": "function",
-     "desc": "Sets the x/y position of an element to the location of the\ntarget element."
-    },
-    {
-     "name": "numericSort",
-     "sig": "()",
-     "type": "function",
-     "desc": "Numeric array sort function"
-    },
-    {
-     "name": "refreshCache",
-     "sig": "(Object groups)",
-     "type": "function",
-     "desc": "Refreshes the cache of the top-left and bottom-right points of the\ndrag and drop objects in the specified group(s).  This is in the\nformat that is stored in the drag and drop instance, so typical\nusage is:\n<code>\nRoo.dd.DragDropMgr.refreshCache(ddinstance.groups);\n</code>\nAlternatively:\n<code>\nRoo.dd.DragDropMgr.refreshCache({group1:true, group2:true});\n</code>"
-    },
-    {
-     "name": "regDragDrop",
-     "sig": "(DragDrop oDD, String sGroup)",
-     "type": "function",
-     "desc": "Each DragDrop instance must be registered with the DragDropMgr.\nThis is executed in DragDrop.init()"
-    },
-    {
-     "name": "regHandle",
-     "sig": "(String sDDId, String sHandleId)",
-     "type": "function",
-     "desc": "Each DragDrop handle element must be registered.  This is done\nautomatically when executing DragDrop.setHandleElId()"
-    },
-    {
-     "name": "startDrag",
-     "sig": "( x,  y)",
-     "type": "function",
-     "desc": "Fired when either the drag pixel threshol or the mousedown hold\ntime threshold has been met."
-    },
-    {
-     "name": "stopEvent",
-     "sig": "(Event e)",
-     "type": "function",
-     "desc": "Utility to stop event propagation and event default, if these\nfeatures are turned on."
-    },
-    {
-     "name": "swapNode",
-     "sig": "( n1,  n2)",
-     "type": "function",
-     "desc": "Swap two nodes.  In IE, we use the native method, for others we\nemulate the IE behavior"
-    },
-    {
-     "name": "unlock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Unlock all drag and drop functionality"
-    },
-    {
-     "name": "verifyEl",
-     "sig": "(HTMLElement el)",
-     "type": "function",
-     "desc": "This checks to make sure an element exists and is in the DOM.  The\nmain purpose is to handle cases where innerHTML is used to remove\ndrag and drop objects from the DOM.  IE provides an 'unspecified\nerror' when trying to access the offsetParent of such an element"
-    }
-   ]
-  },
-  "Roo.dd.DragSource": {
+  "Roo.dd.DDTarget": {
    "props": [
-    {
-     "name": "dropAllowed",
-     "type": "String",
-     "desc": "The CSS class returned to the drag source when drop is allowed (defaults to \"x-dd-drop-ok\").",
-     "memberOf": ""
-    },
-    {
-     "name": "dropNotAllowed",
-     "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",
      "type": "function",
      "desc": "Add this instance to a group of related drag/drop objects.  All\ninstances belong to at least one group, and can belong to as many\ngroups as needed."
     },
-    {
-     "name": "alignElWithMouse",
-     "sig": "(HTMLElement el, int iPageX, int iPageY)",
-     "type": "function",
-     "desc": "Sets the element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
-    },
     {
      "name": "applyConfig",
      "sig": "()",
      "type": "function",
      "desc": "Applies the configuration parameters that were passed into the constructor.\nThis is supposed to happen at each level through the inheritance chain.  So\na DDProxy implentation will execute apply config on DDProxy, DD, and\nDragDrop in order to get all of the parameters that are available in\neach object."
     },
-    {
-     "name": "autoOffset",
-     "sig": "(int iPageX, int iPageY)",
-     "type": "function",
-     "desc": "Sets the pointer offset to the distance between the linked element's top\nleft corner and the location the element was clicked"
-    },
-    {
-     "name": "beforeDragDrop",
-     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action before the dragged\nitem is dropped onto the target and optionally cancel the onDragDrop."
-    },
-    {
-     "name": "beforeDragEnter",
-     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action\nbefore the dragged item enters the drop target and optionally cancel the onDragEnter."
-    },
-    {
-     "name": "beforeDragOut",
-     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action before the dragged\nitem is dragged out of the target without dropping, and optionally cancel the onDragOut."
-    },
-    {
-     "name": "beforeDragOver",
-     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action\nwhile the dragged item is over the drop target and optionally cancel the onDragOver."
-    },
-    {
-     "name": "beforeInvalidDrop",
-     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action after an invalid\ndrop has occurred."
-    },
-    {
-     "name": "cachePosition",
-     "sig": "( iPageX,  iPageY)",
-     "type": "function",
-     "desc": "Saves the most recent position so that we can reset the constraints and\ntick marks on-demand.  We need to know this so that we can calculate the\nnumber of pixels the element is offset from its original position."
-    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "Clears any tick interval defined for this instance"
     },
-    {
-     "name": "createFrame",
-     "sig": "()",
-     "type": "function",
-     "desc": "Creates the proxy element if it does not yet exist"
-    },
     {
      "name": "endDrag",
      "sig": "(Event e)",
      "type": "function",
      "desc": "toString method"
     },
-    {
-     "name": "getDragData",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the data object associated with this drag source"
-    },
     {
      "name": "getDragEl",
      "sig": "()",
      "type": "function",
      "desc": "Returns a reference to the linked element"
     },
-    {
-     "name": "getProxy",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the drag source's underlying {@link Roo.dd.StatusProxy}"
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "type": "function",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
-    {
-     "name": "hideProxy",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hides the drag source's {@link Roo.dd.StatusProxy}"
-    },
     {
      "name": "init",
      "sig": "( id, String sGroup, object config)",
      "type": "function",
      "desc": "Sets up the DragDrop object.  Must be called in the constructor of any\nRoo.dd.DragDrop subclass"
     },
-    {
-     "name": "initFrame",
-     "sig": "()",
-     "type": "function",
-     "desc": "Initialization for the drag frame element.  Must be called in the\nconstructor of all subclasses"
-    },
     {
      "name": "initTarget",
      "sig": "( id, String sGroup, object config)",
      "type": "function",
      "desc": "Override the onAvailable method to do what is needed after the initial\nposition was determined."
     },
-    {
-     "name": "onBeforeDrag",
-     "sig": "(Object data, Event e)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action before the initial\ndrag event begins and optionally cancel it."
-    },
     {
      "name": "onDrag",
      "sig": "(Event e)",
      "type": "function",
      "desc": "Event handler that fires when a drag/drop obj gets a mouseup"
     },
-    {
-     "name": "onStartDrag",
-     "sig": "(Number x, Number y)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action once the initial\ndrag event has begun.  The drag cannot be canceled from this function."
-    },
     {
      "name": "padding",
      "sig": "()",
      "type": "function",
      "desc": "resetConstraints must be called if you manually reposition a dd element."
     },
-    {
-     "name": "setDelta",
-     "sig": "(int iDeltaX, int iDeltaY)",
-     "type": "function",
-     "desc": "Sets the pointer offset.  You can call this directly to force the\noffset to be in a particular location (e.g., pass in 0,0 to set it\nto the center of the object)"
-    },
     {
      "name": "setDragElId",
      "sig": "( id)",
      "type": "function",
      "desc": "Allows you to specify that an element other than the linked element\nwill be moved with the cursor during a drag"
     },
-    {
-     "name": "setDragElPos",
-     "sig": "(int iPageX, int iPageY)",
-     "type": "function",
-     "desc": "Sets the drag element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
-    },
     {
      "name": "setHandleElId",
      "sig": "( id)",
     }
    ]
   },
-  "Roo.dd.DragZone": {
+  "Roo.dd.DragDrop": {
    "props": [
-    {
-     "name": "containerScroll",
-     "type": "Boolean",
-     "desc": "True to register this container with the Scrollmanager\nfor auto scrolling during drag operations.",
-     "memberOf": ""
-    },
-    {
-     "name": "hlColor",
-     "type": "String",
-     "desc": "The color to use when visually highlighting the drag source in the afterRepair\nmethod after a failed drop (defaults to \"c3daf9\" - light blue)",
-     "memberOf": ""
-    },
-    {
-     "name": "dropAllowed",
-     "type": "String",
-     "desc": "The CSS class returned to the drag source when drop is allowed (defaults to \"x-dd-drop-ok\").",
-     "memberOf": "Roo.dd.DragSource"
-    },
-    {
-     "name": "dropNotAllowed",
-     "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",
      "type": "function",
      "desc": "Add this instance to a group of related drag/drop objects.  All\ninstances belong to at least one group, and can belong to as many\ngroups as needed."
     },
-    {
-     "name": "afterRepair",
-     "sig": "()",
-     "type": "function",
-     "desc": "Called after a repair of an invalid drop. By default, highlights this.dragData.ddel"
-    },
-    {
-     "name": "alignElWithMouse",
-     "sig": "(HTMLElement el, int iPageX, int iPageY)",
-     "type": "function",
-     "desc": "Sets the element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
-    },
     {
      "name": "applyConfig",
      "sig": "()",
      "type": "function",
      "desc": "Applies the configuration parameters that were passed into the constructor.\nThis is supposed to happen at each level through the inheritance chain.  So\na DDProxy implentation will execute apply config on DDProxy, DD, and\nDragDrop in order to get all of the parameters that are available in\neach object."
     },
-    {
-     "name": "autoOffset",
-     "sig": "(int iPageX, int iPageY)",
-     "type": "function",
-     "desc": "Sets the pointer offset to the distance between the linked element's top\nleft corner and the location the element was clicked"
-    },
-    {
-     "name": "beforeDragDrop",
-     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action before the dragged\nitem is dropped onto the target and optionally cancel the onDragDrop."
-    },
-    {
-     "name": "beforeDragEnter",
-     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action\nbefore the dragged item enters the drop target and optionally cancel the onDragEnter."
-    },
-    {
-     "name": "beforeDragOut",
-     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action before the dragged\nitem is dragged out of the target without dropping, and optionally cancel the onDragOut."
-    },
-    {
-     "name": "beforeDragOver",
-     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action\nwhile the dragged item is over the drop target and optionally cancel the onDragOver."
-    },
-    {
-     "name": "beforeInvalidDrop",
-     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action after an invalid\ndrop has occurred."
-    },
-    {
-     "name": "cachePosition",
-     "sig": "( iPageX,  iPageY)",
-     "type": "function",
-     "desc": "Saves the most recent position so that we can reset the constraints and\ntick marks on-demand.  We need to know this so that we can calculate the\nnumber of pixels the element is offset from its original position."
-    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "Clears any tick interval defined for this instance"
     },
-    {
-     "name": "createFrame",
-     "sig": "()",
-     "type": "function",
-     "desc": "Creates the proxy element if it does not yet exist"
-    },
     {
      "name": "endDrag",
      "sig": "(Event e)",
      "type": "function",
      "desc": "toString method"
     },
-    {
-     "name": "getDragData",
-     "sig": "(EventObject e)",
-     "type": "function",
-     "desc": "Called when a mousedown occurs in this container. Looks in {@link Roo.dd.Registry}\nfor a valid target to drag based on the mouse down. Override this method\nto provide your own lookup logic (e.g. finding a child by class name). Make sure your returned\nobject has a \"ddel\" attribute (with an HTML Element) for other functions to work."
-    },
     {
      "name": "getDragEl",
      "sig": "()",
      "type": "function",
      "desc": "Returns a reference to the linked element"
     },
-    {
-     "name": "getProxy",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the drag source's underlying {@link Roo.dd.StatusProxy}"
-    },
-    {
-     "name": "getRepairXY",
-     "sig": "(EventObject e)",
-     "type": "function",
-     "desc": "Called before a repair of an invalid drop to get the XY to animate to. By default returns\nthe XY of this.dragData.ddel"
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "type": "function",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
-    {
-     "name": "hideProxy",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hides the drag source's {@link Roo.dd.StatusProxy}"
-    },
     {
      "name": "init",
      "sig": "( id, String sGroup, object config)",
      "type": "function",
      "desc": "Sets up the DragDrop object.  Must be called in the constructor of any\nRoo.dd.DragDrop subclass"
     },
-    {
-     "name": "initFrame",
-     "sig": "()",
-     "type": "function",
-     "desc": "Initialization for the drag frame element.  Must be called in the\nconstructor of all subclasses"
-    },
     {
      "name": "initTarget",
      "sig": "( id, String sGroup, object config)",
      "type": "function",
      "desc": "Override the onAvailable method to do what is needed after the initial\nposition was determined."
     },
-    {
-     "name": "onBeforeDrag",
-     "sig": "(Object data, Event e)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action before the initial\ndrag event begins and optionally cancel it."
-    },
     {
      "name": "onDrag",
      "sig": "(Event e)",
      "type": "function",
      "desc": "Abstract method called when this element is hovering over another\nDragDrop obj"
     },
-    {
-     "name": "onInitDrag",
-     "sig": "(Number x, Number y)",
-     "type": "function",
-     "desc": "Called once drag threshold has been reached to initialize the proxy element. By default, it clones the\nthis.dragData.ddel"
-    },
     {
      "name": "onInvalidDrop",
      "sig": "(Event e)",
      "type": "function",
      "desc": "Event handler that fires when a drag/drop obj gets a mouseup"
     },
-    {
-     "name": "onStartDrag",
-     "sig": "(Number x, Number y)",
-     "type": "function",
-     "desc": "An empty function by default, but provided so that you can perform a custom action once the initial\ndrag event has begun.  The drag cannot be canceled from this function."
-    },
     {
      "name": "padding",
      "sig": "()",
      "type": "function",
      "desc": "resetConstraints must be called if you manually reposition a dd element."
     },
-    {
-     "name": "setDelta",
-     "sig": "(int iDeltaX, int iDeltaY)",
-     "type": "function",
-     "desc": "Sets the pointer offset.  You can call this directly to force the\noffset to be in a particular location (e.g., pass in 0,0 to set it\nto the center of the object)"
-    },
     {
      "name": "setDragElId",
      "sig": "( id)",
      "type": "function",
      "desc": "Allows you to specify that an element other than the linked element\nwill be moved with the cursor during a drag"
     },
-    {
-     "name": "setDragElPos",
-     "sig": "(int iPageX, int iPageY)",
-     "type": "function",
-     "desc": "Sets the drag element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
-    },
     {
      "name": "setHandleElId",
      "sig": "( id)",
     }
    ]
   },
-  "Roo.dd.DropTarget": {
-   "props": [
+  "Roo.dd.DragDropMgr": {
+   "props": [],
+   "events": [],
+   "methods": [
     {
-     "name": "overClass",
-     "type": "String",
-     "desc": "The CSS class applied to the drop target element while the drag source is over it (defaults to \"\").",
-     "memberOf": ""
+     "name": "getBestMatch",
+     "sig": "(DragDrop[] dds)",
+     "type": "function",
+     "desc": "Helper function for getting the best match from the list of drag\nand drop objects returned by the drag and drop events when we are\nin INTERSECT mode.  It returns either the first object that the\ncursor is over, or the object that has the greatest overlap with\nthe dragged element."
     },
     {
-     "name": "ddGroup",
-     "type": "String",
-     "desc": "The drag drop group to handle drop events for",
-     "memberOf": ""
+     "name": "getCss",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Returns the style property for the DOM element (i.e.,\ndocument.getElById(id).style)"
     },
     {
-     "name": "dropAllowed",
-     "type": "String",
-     "desc": "The CSS class returned to the drag source when drop is allowed (defaults to \"x-dd-drop-ok\").",
-     "memberOf": ""
+     "name": "getDDById",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Returns the DragDrop instance for a given id"
     },
     {
-     "name": "dropNotAllowed",
-     "type": "String",
-     "desc": "The CSS class returned to the drag source when drop is not allowed (defaults to \"x-dd-drop-nodrop\").",
-     "memberOf": ""
+     "name": "getElement",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Returns the actual DOM element"
     },
     {
-     "name": "success",
-     "type": "boolean",
-     "desc": "set this after drop listener..",
-     "memberOf": ""
+     "name": "getLocation",
+     "sig": "(DragDrop oDD)",
+     "type": "function",
+     "desc": "Returns a Region object containing the drag and drop element's position\nand size, including the padding configured for it"
     },
     {
-     "name": "valid",
-     "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": "getPosX",
+     "sig": "( el)",
+     "type": "function",
+     "desc": "Returns the X position of an html element"
     },
     {
-     "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": "getPosY",
+     "sig": "( el)",
+     "type": "function",
+     "desc": "Returns the Y position of an html element"
+    },
     {
-     "name": "drop",
-     "sig": "function (source, e, data)\n{\n\n}",
+     "name": "getRelated",
+     "sig": "(DragDrop p_oDD, boolean bTargetsOnly)",
      "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the dragged item has\nbeen dropped on it.  This method has no default implementation and returns false, so you must provide an\nimplementation that does something to process the drop event and returns true so that the drag source's\nrepair action does not run.\n\nIMPORTANT : it should set this.success"
+     "desc": "Returns the drag and drop instances that are in all groups the\npassed in instance belongs to."
     },
     {
-     "name": "enter",
-     "sig": "function (source, e, data)\n{\n\n}",
+     "name": "getScrollLeft",
+     "sig": "()",
      "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source is now over the\ntarget.  This default implementation adds the CSS class specified by overClass (if any) to the drop element\nand returns the dropAllowed config value.  This method should be overridden if drop validation is required.\n\nIMPORTANT : it should set this.overClass and this.dropAllowed"
+     "desc": "Gets the scrollLeft"
     },
     {
-     "name": "out",
-     "sig": "function (source, e, data)\n{\n\n}",
+     "name": "getScrollTop",
+     "sig": "()",
      "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source has been dragged\nout of the target without dropping.  This default implementation simply removes the CSS class specified by\noverClass (if any) from the drop element."
+     "desc": "Gets the scrollTop"
     },
     {
-     "name": "over",
-     "sig": "function (source, e, data)\n{\n\n}",
+     "name": "getStyle",
+     "sig": "(HTMLElement el, string styleProp)",
      "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls continuously while it is being dragged over the target.\nThis method will be called on every mouse movement while the drag source is over the drop target.\nThis default implementation simply returns the dropAllowed config value.\n\nIMPORTANT : it should set this.dropAllowed"
-    }
-   ],
-   "methods": [
+     "desc": "Returns the specified element style property"
+    },
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
+     "name": "handleWasClicked",
+     "sig": "( node)",
      "type": "function",
-     "desc": "Used to define events on this Observable"
+     "desc": "Recursively searches the immediate parent and all child nodes for\nthe handle element in order to determine wheter or not it was\nclicked."
     },
     {
-     "name": "addInvalidHandleClass",
-     "sig": "(string cssClass)",
+     "name": "isDragDrop",
+     "sig": "(String id)",
      "type": "function",
-     "desc": "Lets you specify a css class of elements that will not initiate a drag"
+     "desc": "Utility function to determine if a given element has been\nregistered as a drag drop item."
     },
     {
-     "name": "addInvalidHandleId",
-     "sig": "(string id)",
+     "name": "isHandle",
+     "sig": "(String id)",
      "type": "function",
-     "desc": "Lets you to specify an element id for a child of a drag handle\nthat should not initiate a drag"
+     "desc": "Utility function to determine if a given element has been\nregistered as a drag drop handle for the given Drag Drop object."
     },
     {
-     "name": "addInvalidHandleType",
-     "sig": "(string tagName)",
+     "name": "isLegalTarget",
+     "sig": "(DragDrop the, DragDrop the)",
      "type": "function",
-     "desc": "Allows you to specify a tag name that should not start a drag operation\nwhen clicked.  This is designed to facilitate embedding links within a\ndrag handle that do something other than start the drag."
+     "desc": "Returns true if the specified dd target is a legal target for\nthe specifice drag obj"
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "isLocked",
+     "sig": "()",
      "type": "function",
-     "desc": "Appends an event handler to this component"
+     "desc": "Is drag and drop locked?"
     },
     {
-     "name": "addToGroup",
-     "sig": "( sGroup)",
+     "name": "isTypeOfDD",
+     "sig": "(Object the)",
      "type": "function",
-     "desc": "Add this instance to a group of related drag/drop objects.  All\ninstances belong to at least one group, and can belong to as many\ngroups as needed."
+     "desc": "My goal is to be able to transparently determine if an object is\ntypeof DragDrop, and the exact subclass of DragDrop.  typeof\nreturns \"object\", oDD.constructor.toString() always returns\n\"DragDrop\" and not the name of the subclass.  So for now it just\nevaluates a well-known variable in DragDrop."
     },
     {
-     "name": "applyConfig",
+     "name": "lock",
      "sig": "()",
      "type": "function",
-     "desc": "Applies the configuration parameters that were passed into the constructor.\nThis is supposed to happen at each level through the inheritance chain.  So\na DDProxy implentation will execute apply config on DDProxy, DD, and\nDragDrop in order to get all of the parameters that are available in\neach object."
+     "desc": "Lock all drag and drop functionality"
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
+     "name": "moveToEl",
+     "sig": "(HTMLElement moveEl, HTMLElement targetEl)",
      "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "desc": "Sets the x/y position of an element to the location of the\ntarget element."
     },
     {
-     "name": "clearConstraints",
+     "name": "numericSort",
      "sig": "()",
      "type": "function",
-     "desc": "Clears any constraints applied to this instance.  Also clears ticks\nsince they can't exist independent of a constraint at this time."
+     "desc": "Numeric array sort function"
     },
     {
-     "name": "clearTicks",
-     "sig": "()",
+     "name": "refreshCache",
+     "sig": "(Object groups)",
      "type": "function",
-     "desc": "Clears any tick interval defined for this instance"
+     "desc": "Refreshes the cache of the top-left and bottom-right points of the\ndrag and drop objects in the specified group(s).  This is in the\nformat that is stored in the drag and drop instance, so typical\nusage is:\n<code>\nRoo.dd.DragDropMgr.refreshCache(ddinstance.groups);\n</code>\nAlternatively:\n<code>\nRoo.dd.DragDropMgr.refreshCache({group1:true, group2:true});\n</code>"
     },
     {
-     "name": "endDrag",
-     "sig": "(Event e)",
+     "name": "regDragDrop",
+     "sig": "(DragDrop oDD, String sGroup)",
      "type": "function",
-     "desc": "Fired when we are done dragging the object"
+     "desc": "Each DragDrop instance must be registered with the DragDropMgr.\nThis is executed in DragDrop.init()"
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
+     "name": "regHandle",
+     "sig": "(String sDDId, String sHandleId)",
      "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "desc": "Each DragDrop handle element must be registered.  This is done\nautomatically when executing DragDrop.setHandleElId()"
     },
     {
-     "name": "function toString() {\n    [native code]\n}",
-     "sig": "()",
+     "name": "startDrag",
+     "sig": "( x,  y)",
      "type": "function",
-     "desc": "toString method"
+     "desc": "Fired when either the drag pixel threshol or the mousedown hold\ntime threshold has been met."
     },
     {
-     "name": "getDragEl",
-     "sig": "()",
+     "name": "stopEvent",
+     "sig": "(Event e)",
      "type": "function",
-     "desc": "Returns a reference to the actual element to drag.  By default this is\nthe same as the html element, but it can be assigned to another\nelement. An example of this can be found in Roo.dd.DDProxy"
+     "desc": "Utility to stop event propagation and event default, if these\nfeatures are turned on."
     },
     {
-     "name": "getEl",
-     "sig": "()",
+     "name": "swapNode",
+     "sig": "( n1,  n2)",
      "type": "function",
-     "desc": "Returns a reference to the linked element"
+     "desc": "Swap two nodes.  In IE, we use the native method, for others we\nemulate the IE behavior"
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
+     "name": "unlock",
+     "sig": "()",
      "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "desc": "Unlock all drag and drop functionality"
     },
     {
-     "name": "init",
-     "sig": "( id, String sGroup, object config)",
+     "name": "verifyEl",
+     "sig": "(HTMLElement el)",
      "type": "function",
-     "desc": "Sets up the DragDrop object.  Must be called in the constructor of any\nRoo.dd.DragDrop subclass"
+     "desc": "This checks to make sure an element exists and is in the DOM.  The\nmain purpose is to handle cases where innerHTML is used to remove\ndrag and drop objects from the DOM.  IE provides an 'unspecified\nerror' when trying to access the offsetParent of such an element"
+    }
+   ]
+  },
+  "Roo.dd.DragSource": {
+   "props": [
+    {
+     "name": "dropAllowed",
+     "type": "String",
+     "desc": "The CSS class returned to the drag source when drop is allowed (defaults to \"x-dd-drop-ok\").",
+     "memberOf": ""
     },
     {
-     "name": "initTarget",
-     "sig": "( id, String sGroup, object config)",
-     "type": "function",
-     "desc": "Initializes Targeting functionality only... the object does not\nget a mousedown handler."
+     "name": "dropNotAllowed",
+     "type": "String",
+     "desc": "The CSS class returned to the drag source when drop is not allowed (defaults to \"x-dd-drop-nodrop\").",
+     "memberOf": ""
     },
     {
-     "name": "isLocked",
-     "sig": "()",
+     "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": [],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
      "type": "function",
-     "desc": "Returns true if this instance is locked, or the drag drop mgr is locked\n(meaning that all drag/drop is disabled on the page.)"
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "isTarget",
-     "sig": "()",
+     "name": "addInvalidHandleClass",
+     "sig": "(string cssClass)",
      "type": "function",
-     "desc": "By default, all insances can be a drop target.  This can be disabled by\nsetting isTarget to false."
+     "desc": "Lets you specify a css class of elements that will not initiate a drag"
     },
     {
-     "name": "isValidHandleChild",
-     "sig": "(HTMLElement node)",
+     "name": "addInvalidHandleId",
+     "sig": "(string id)",
      "type": "function",
-     "desc": "Checks the tag exclusion list to see if this click should be ignored"
+     "desc": "Lets you to specify an element id for a child of a drag handle\nthat should not initiate a drag"
     },
     {
-     "name": "lock",
-     "sig": "()",
+     "name": "addInvalidHandleType",
+     "sig": "(string tagName)",
      "type": "function",
-     "desc": "Lock this instance"
+     "desc": "Allows you to specify a tag name that should not start a drag operation\nwhen clicked.  This is designed to facilitate embedding links within a\ndrag handle that do something other than start the drag."
     },
     {
-     "name": "on",
+     "name": "addListener",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "onAvailable",
-     "sig": "()",
+     "name": "addToGroup",
+     "sig": "( sGroup)",
      "type": "function",
-     "desc": "Override the onAvailable method to do what is needed after the initial\nposition was determined."
+     "desc": "Add this instance to a group of related drag/drop objects.  All\ninstances belong to at least one group, and can belong to as many\ngroups as needed."
     },
     {
-     "name": "onDrag",
-     "sig": "(Event e)",
+     "name": "alignElWithMouse",
+     "sig": "(HTMLElement el, int iPageX, int iPageY)",
      "type": "function",
-     "desc": "Abstract method called during the onMouseMove event while dragging an\nobject."
+     "desc": "Sets the element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
     },
     {
-     "name": "onDragDrop",
-     "sig": "(Event e, String|DragDrop[] id)",
+     "name": "applyConfig",
+     "sig": "()",
      "type": "function",
-     "desc": "Abstract method called when this item is dropped on another DragDrop\nobj"
+     "desc": "Applies the configuration parameters that were passed into the constructor.\nThis is supposed to happen at each level through the inheritance chain.  So\na DDProxy implentation will execute apply config on DDProxy, DD, and\nDragDrop in order to get all of the parameters that are available in\neach object."
+    },
+    {
+     "name": "autoOffset",
+     "sig": "(int iPageX, int iPageY)",
+     "type": "function",
+     "desc": "Sets the pointer offset to the distance between the linked element's top\nleft corner and the location the element was clicked"
+    },
+    {
+     "name": "beforeDragDrop",
+     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action before the dragged\nitem is dropped onto the target and optionally cancel the onDragDrop."
+    },
+    {
+     "name": "beforeDragEnter",
+     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action\nbefore the dragged item enters the drop target and optionally cancel the onDragEnter."
+    },
+    {
+     "name": "beforeDragOut",
+     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action before the dragged\nitem is dragged out of the target without dropping, and optionally cancel the onDragOut."
+    },
+    {
+     "name": "beforeDragOver",
+     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action\nwhile the dragged item is over the drop target and optionally cancel the onDragOver."
+    },
+    {
+     "name": "beforeInvalidDrop",
+     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action after an invalid\ndrop has occurred."
+    },
+    {
+     "name": "cachePosition",
+     "sig": "( iPageX,  iPageY)",
+     "type": "function",
+     "desc": "Saves the most recent position so that we can reset the constraints and\ntick marks on-demand.  We need to know this so that we can calculate the\nnumber of pixels the element is offset from its original position."
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "clearConstraints",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears any constraints applied to this instance.  Also clears ticks\nsince they can't exist independent of a constraint at this time."
+    },
+    {
+     "name": "clearTicks",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears any tick interval defined for this instance"
+    },
+    {
+     "name": "createFrame",
+     "sig": "()",
+     "type": "function",
+     "desc": "Creates the proxy element if it does not yet exist"
+    },
+    {
+     "name": "endDrag",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Fired when we are done dragging the object"
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "function toString() {\n    [native code]\n}",
+     "sig": "()",
+     "type": "function",
+     "desc": "toString method"
+    },
+    {
+     "name": "getDragData",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the data object associated with this drag source"
+    },
+    {
+     "name": "getDragEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns a reference to the actual element to drag.  By default this is\nthe same as the html element, but it can be assigned to another\nelement. An example of this can be found in Roo.dd.DDProxy"
+    },
+    {
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns a reference to the linked element"
+    },
+    {
+     "name": "getProxy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the drag source's underlying {@link Roo.dd.StatusProxy}"
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hideProxy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hides the drag source's {@link Roo.dd.StatusProxy}"
+    },
+    {
+     "name": "init",
+     "sig": "( id, String sGroup, object config)",
+     "type": "function",
+     "desc": "Sets up the DragDrop object.  Must be called in the constructor of any\nRoo.dd.DragDrop subclass"
+    },
+    {
+     "name": "initFrame",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialization for the drag frame element.  Must be called in the\nconstructor of all subclasses"
+    },
+    {
+     "name": "initTarget",
+     "sig": "( id, String sGroup, object config)",
+     "type": "function",
+     "desc": "Initializes Targeting functionality only... the object does not\nget a mousedown handler."
+    },
+    {
+     "name": "isLocked",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this instance is locked, or the drag drop mgr is locked\n(meaning that all drag/drop is disabled on the page.)"
+    },
+    {
+     "name": "isTarget",
+     "sig": "()",
+     "type": "function",
+     "desc": "By default, all insances can be a drop target.  This can be disabled by\nsetting isTarget to false."
+    },
+    {
+     "name": "isValidHandleChild",
+     "sig": "(HTMLElement node)",
+     "type": "function",
+     "desc": "Checks the tag exclusion list to see if this click should be ignored"
+    },
+    {
+     "name": "lock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Lock this instance"
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "onAvailable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Override the onAvailable method to do what is needed after the initial\nposition was determined."
+    },
+    {
+     "name": "onBeforeDrag",
+     "sig": "(Object data, Event e)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action before the initial\ndrag event begins and optionally cancel it."
+    },
+    {
+     "name": "onDrag",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Abstract method called during the onMouseMove event while dragging an\nobject."
+    },
+    {
+     "name": "onDragDrop",
+     "sig": "(Event e, String|DragDrop[] id)",
+     "type": "function",
+     "desc": "Abstract method called when this item is dropped on another DragDrop\nobj"
     },
     {
      "name": "onDragEnter",
      "type": "function",
      "desc": "Event handler that fires when a drag/drop obj gets a mouseup"
     },
+    {
+     "name": "onStartDrag",
+     "sig": "(Number x, Number y)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action once the initial\ndrag event has begun.  The drag cannot be canceled from this function."
+    },
     {
      "name": "padding",
      "sig": "()",
      "type": "function",
      "desc": "resetConstraints must be called if you manually reposition a dd element."
     },
+    {
+     "name": "setDelta",
+     "sig": "(int iDeltaX, int iDeltaY)",
+     "type": "function",
+     "desc": "Sets the pointer offset.  You can call this directly to force the\noffset to be in a particular location (e.g., pass in 0,0 to set it\nto the center of the object)"
+    },
     {
      "name": "setDragElId",
      "sig": "( id)",
      "type": "function",
      "desc": "Allows you to specify that an element other than the linked element\nwill be moved with the cursor during a drag"
     },
+    {
+     "name": "setDragElPos",
+     "sig": "(int iPageX, int iPageY)",
+     "type": "function",
+     "desc": "Sets the drag element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
+    },
     {
      "name": "setHandleElId",
      "sig": "( id)",
     }
    ]
   },
-  "Roo.dd.DropZone": {
+  "Roo.dd.DragZone": {
    "props": [
     {
-     "name": "overClass",
-     "type": "String",
-     "desc": "The CSS class applied to the drop target element while the drag source is over it (defaults to \"\").",
-     "memberOf": "Roo.dd.DropTarget"
+     "name": "containerScroll",
+     "type": "Boolean",
+     "desc": "True to register this container with the Scrollmanager\nfor auto scrolling during drag operations.",
+     "memberOf": ""
     },
     {
-     "name": "ddGroup",
+     "name": "hlColor",
      "type": "String",
-     "desc": "The drag drop group to handle drop events for",
-     "memberOf": "Roo.dd.DropTarget"
+     "desc": "The color to use when visually highlighting the drag source in the afterRepair\nmethod after a failed drop (defaults to \"c3daf9\" - light blue)",
+     "memberOf": ""
     },
     {
      "name": "dropAllowed",
      "type": "String",
      "desc": "The CSS class returned to the drag source when drop is allowed (defaults to \"x-dd-drop-ok\").",
-     "memberOf": "Roo.dd.DropTarget"
+     "memberOf": "Roo.dd.DragSource"
     },
     {
      "name": "dropNotAllowed",
      "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.DropTarget"
-    },
-    {
-     "name": "success",
-     "type": "boolean",
-     "desc": "set this after drop listener..",
-     "memberOf": "Roo.dd.DropTarget"
-    },
-    {
-     "name": "valid",
-     "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"
+     "memberOf": "Roo.dd.DragSource"
     },
     {
      "name": "listeners",
      "memberOf": "Roo.util.Observable"
     }
    ],
-   "events": [
-    {
-     "name": "drop",
-     "sig": "function (source, e, data)\n{\n\n}",
-     "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the dragged item has\nbeen dropped on it.  This method has no default implementation and returns false, so you must provide an\nimplementation that does something to process the drop event and returns true so that the drag source's\nrepair action does not run.\n\nIMPORTANT : it should set this.success"
-    },
-    {
-     "name": "enter",
-     "sig": "function (source, e, data)\n{\n\n}",
-     "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source is now over the\ntarget.  This default implementation adds the CSS class specified by overClass (if any) to the drop element\nand returns the dropAllowed config value.  This method should be overridden if drop validation is required.\n\nIMPORTANT : it should set this.overClass and this.dropAllowed"
-    },
-    {
-     "name": "out",
-     "sig": "function (source, e, data)\n{\n\n}",
-     "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source has been dragged\nout of the target without dropping.  This default implementation simply removes the CSS class specified by\noverClass (if any) from the drop element."
-    },
-    {
-     "name": "over",
-     "sig": "function (source, e, data)\n{\n\n}",
-     "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls continuously while it is being dragged over the target.\nThis method will be called on every mouse movement while the drag source is over the drop target.\nThis default implementation simply returns the dropAllowed config value.\n\nIMPORTANT : it should set this.dropAllowed"
-    }
-   ],
+   "events": [],
    "methods": [
     {
      "name": "addEvents",
      "type": "function",
      "desc": "Add this instance to a group of related drag/drop objects.  All\ninstances belong to at least one group, and can belong to as many\ngroups as needed."
     },
+    {
+     "name": "afterRepair",
+     "sig": "()",
+     "type": "function",
+     "desc": "Called after a repair of an invalid drop. By default, highlights this.dragData.ddel"
+    },
+    {
+     "name": "alignElWithMouse",
+     "sig": "(HTMLElement el, int iPageX, int iPageY)",
+     "type": "function",
+     "desc": "Sets the element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
+    },
     {
      "name": "applyConfig",
      "sig": "()",
      "type": "function",
      "desc": "Applies the configuration parameters that were passed into the constructor.\nThis is supposed to happen at each level through the inheritance chain.  So\na DDProxy implentation will execute apply config on DDProxy, DD, and\nDragDrop in order to get all of the parameters that are available in\neach object."
     },
+    {
+     "name": "autoOffset",
+     "sig": "(int iPageX, int iPageY)",
+     "type": "function",
+     "desc": "Sets the pointer offset to the distance between the linked element's top\nleft corner and the location the element was clicked"
+    },
+    {
+     "name": "beforeDragDrop",
+     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action before the dragged\nitem is dropped onto the target and optionally cancel the onDragDrop."
+    },
+    {
+     "name": "beforeDragEnter",
+     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action\nbefore the dragged item enters the drop target and optionally cancel the onDragEnter."
+    },
+    {
+     "name": "beforeDragOut",
+     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action before the dragged\nitem is dragged out of the target without dropping, and optionally cancel the onDragOut."
+    },
+    {
+     "name": "beforeDragOver",
+     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action\nwhile the dragged item is over the drop target and optionally cancel the onDragOver."
+    },
+    {
+     "name": "beforeInvalidDrop",
+     "sig": "(Roo.dd.DragDrop target, Event e, String id)",
+     "type": "function",
+     "desc": "An empty function by default, but provided so that you can perform a custom action after an invalid\ndrop has occurred."
+    },
+    {
+     "name": "cachePosition",
+     "sig": "( iPageX,  iPageY)",
+     "type": "function",
+     "desc": "Saves the most recent position so that we can reset the constraints and\ntick marks on-demand.  We need to know this so that we can calculate the\nnumber of pixels the element is offset from its original position."
+    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "Clears any tick interval defined for this instance"
     },
+    {
+     "name": "createFrame",
+     "sig": "()",
+     "type": "function",
+     "desc": "Creates the proxy element if it does not yet exist"
+    },
     {
      "name": "endDrag",
      "sig": "(Event e)",
      "type": "function",
      "desc": "toString method"
     },
+    {
+     "name": "getDragData",
+     "sig": "(EventObject e)",
+     "type": "function",
+     "desc": "Called when a mousedown occurs in this container. Looks in {@link Roo.dd.Registry}\nfor a valid target to drag based on the mouse down. Override this method\nto provide your own lookup logic (e.g. finding a child by class name). Make sure your returned\nobject has a \"ddel\" attribute (with an HTML Element) for other functions to work."
+    },
     {
      "name": "getDragEl",
      "sig": "()",
      "desc": "Returns a reference to the linked element"
     },
     {
-     "name": "getTargetFromEvent",
-     "sig": "(Event e)",
+     "name": "getProxy",
+     "sig": "()",
      "type": "function",
-     "desc": "Returns a custom data object associated with the DOM node that is the target of the event.  By default\nthis looks up the event target in the {@link Roo.dd.Registry}, although you can override this method to\nprovide your own custom lookup."
+     "desc": "Returns the drag source's underlying {@link Roo.dd.StatusProxy}"
+    },
+    {
+     "name": "getRepairXY",
+     "sig": "(EventObject e)",
+     "type": "function",
+     "desc": "Called before a repair of an invalid drop to get the XY to animate to. By default returns\nthe XY of this.dragData.ddel"
     },
     {
      "name": "hasListener",
      "type": "function",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
+    {
+     "name": "hideProxy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hides the drag source's {@link Roo.dd.StatusProxy}"
+    },
     {
      "name": "init",
      "sig": "( id, String sGroup, object config)",
      "type": "function",
      "desc": "Sets up the DragDrop object.  Must be called in the constructor of any\nRoo.dd.DragDrop subclass"
     },
+    {
+     "name": "initFrame",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialization for the drag frame element.  Must be called in the\nconstructor of all subclasses"
+    },
     {
      "name": "initTarget",
      "sig": "( id, String sGroup, object config)",
      "type": "function",
      "desc": "Lock this instance"
     },
-    {
-     "name": "notifyDrop",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
-     "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop zone that the dragged item has\nbeen dropped on it.  The drag zone will look up the target node based on the event passed in, and if there\nis a node registered for that event, it will delegate to {@link #onNodeDrop} for node-specific handling,\notherwise it will call {@link #onContainerDrop}."
-    },
-    {
-     "name": "notifyEnter",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
-     "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop zone that the source is now over\nthe zone.  The default implementation returns this.dropNotAllowed and expects that only registered drop\nnodes can process drag drop operations, so if you need the drop zone itself to be able to process drops\nyou should override this method and provide a custom implementation."
-    },
-    {
-     "name": "notifyOut",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
-     "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop zone that the source has been dragged\nout of the zone without dropping.  If the drag source is currently over a registered node, the notification\nwill be delegated to {@link #onNodeOut} for node-specific handling, otherwise it will be ignored."
-    },
-    {
-     "name": "notifyOver",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
-     "type": "function",
-     "desc": "The function a {@link Roo.dd.DragSource} calls continuously while it is being dragged over the drop zone.\nThis method will be called on every mouse movement while the drag source is over the drop zone.\nIt will call {@link #onNodeOver} while the drag source is over a registered node, and will also automatically\ndelegate to the appropriate node-specific methods as necessary when the drag source enters and exits\nregistered nodes ({@link #onNodeEnter}, {@link #onNodeOut}). If the drag source is not currently over a\nregistered node, it will call {@link #onContainerOver}."
-    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "desc": "Override the onAvailable method to do what is needed after the initial\nposition was determined."
     },
     {
-     "name": "onContainerDrop",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
-     "type": "function",
-     "desc": "Called internally when the DropZone determines that a {@link Roo.dd.DragSource} has been dropped on it,\nbut not on any of its registered drop nodes.  The default implementation returns false, so it should be\noverridden to provide the appropriate processing of the drop event if you need the drop zone itself to\nbe able to accept drops.  It should return true when valid so that the drag source's repair action does not run."
-    },
-    {
-     "name": "onContainerOver",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
+     "name": "onBeforeDrag",
+     "sig": "(Object data, Event e)",
      "type": "function",
-     "desc": "Called internally while the DropZone determines that a {@link Roo.dd.DragSource} is being dragged over it,\nbut not over any of its registered drop nodes.  The default implementation returns this.dropNotAllowed, so\nit should be overridden to provide the proper feedback if necessary."
+     "desc": "An empty function by default, but provided so that you can perform a custom action before the initial\ndrag event begins and optionally cancel it."
     },
     {
      "name": "onDrag",
      "type": "function",
      "desc": "Abstract method called when this element is hovering over another\nDragDrop obj"
     },
+    {
+     "name": "onInitDrag",
+     "sig": "(Number x, Number y)",
+     "type": "function",
+     "desc": "Called once drag threshold has been reached to initialize the proxy element. By default, it clones the\nthis.dragData.ddel"
+    },
     {
      "name": "onInvalidDrop",
      "sig": "(Event e)",
      "desc": "Event handler that fires when a drag/drop obj gets a mouseup"
     },
     {
-     "name": "onNodeDrop",
-     "sig": "(Object nodeData, Roo.dd.DragSource source, Event e, Object data)",
-     "type": "function",
-     "desc": "Called internally when the DropZone determines that a {@link Roo.dd.DragSource} has been dropped onto\nthe drop node.  The default implementation returns false, so it should be overridden to provide the\nappropriate processing of the drop event and return true so that the drag source's repair action does not run."
-    },
-    {
-     "name": "onNodeEnter",
-     "sig": "(Object nodeData, Roo.dd.DragSource source, Event e, Object data)",
-     "type": "function",
-     "desc": "Called internally when the DropZone determines that a {@link Roo.dd.DragSource} has entered a drop node\nthat it has registered.  This method has no default implementation and should be overridden to provide\nnode-specific processing if necessary."
-    },
-    {
-     "name": "onNodeOut",
-     "sig": "(Object nodeData, Roo.dd.DragSource source, Event e, Object data)",
-     "type": "function",
-     "desc": "Called internally when the DropZone determines that a {@link Roo.dd.DragSource} has been dragged out of\nthe drop node without dropping.  This method has no default implementation and should be overridden to provide\nnode-specific processing if necessary."
-    },
-    {
-     "name": "onNodeOver",
-     "sig": "(Object nodeData, Roo.dd.DragSource source, Event e, Object data)",
+     "name": "onStartDrag",
+     "sig": "(Number x, Number y)",
      "type": "function",
-     "desc": "Called internally while the DropZone determines that a {@link Roo.dd.DragSource} is over a drop node\nthat it has registered.  The default implementation returns this.dropNotAllowed, so it should be\noverridden to provide the proper feedback."
+     "desc": "An empty function by default, but provided so that you can perform a custom action once the initial\ndrag event has begun.  The drag cannot be canceled from this function."
     },
     {
      "name": "padding",
      "type": "function",
      "desc": "resetConstraints must be called if you manually reposition a dd element."
     },
+    {
+     "name": "setDelta",
+     "sig": "(int iDeltaX, int iDeltaY)",
+     "type": "function",
+     "desc": "Sets the pointer offset.  You can call this directly to force the\noffset to be in a particular location (e.g., pass in 0,0 to set it\nto the center of the object)"
+    },
     {
      "name": "setDragElId",
      "sig": "( id)",
      "type": "function",
      "desc": "Allows you to specify that an element other than the linked element\nwill be moved with the cursor during a drag"
     },
+    {
+     "name": "setDragElPos",
+     "sig": "(int iPageX, int iPageY)",
+     "type": "function",
+     "desc": "Sets the drag element to the location of the mousedown or click event,\nmaintaining the cursor location relative to the location on the element\nthat was clicked.  Override this if you want to place the element in a\nlocation other than where the cursor is."
+    },
     {
      "name": "setHandleElId",
      "sig": "( id)",
     }
    ]
   },
-  "Roo.dd.Registry": {
-   "props": [],
-   "events": [],
-   "methods": [
+  "Roo.dd.DropTarget": {
+   "props": [
     {
-     "name": "getHandle",
-     "sig": "(String|HTMLElement id)",
-     "type": "function",
-     "desc": "Returns the handle registered for a DOM Node by id"
+     "name": "overClass",
+     "type": "String",
+     "desc": "The CSS class applied to the drop target element while the drag source is over it (defaults to \"\").",
+     "memberOf": ""
     },
     {
-     "name": "getHandleFromEvent",
-     "sig": "(Event e)",
-     "type": "function",
-     "desc": "Returns the handle that is registered for the DOM node that is the target of the event"
+     "name": "ddGroup",
+     "type": "String",
+     "desc": "The drag drop group to handle drop events for",
+     "memberOf": ""
     },
     {
-     "name": "getTarget",
-     "sig": "(String|HTMLElement id)",
-     "type": "function",
-     "desc": "Returns a custom data object that is registered for a DOM node by id"
+     "name": "dropAllowed",
+     "type": "String",
+     "desc": "The CSS class returned to the drag source when drop is allowed (defaults to \"x-dd-drop-ok\").",
+     "memberOf": ""
     },
     {
-     "name": "getTargetFromEvent",
-     "sig": "(Event e)",
-     "type": "function",
-     "desc": "Returns a custom data object that is registered for the DOM node that is the target of the event"
+     "name": "dropNotAllowed",
+     "type": "String",
+     "desc": "The CSS class returned to the drag source when drop is not allowed (defaults to \"x-dd-drop-nodrop\").",
+     "memberOf": ""
     },
     {
-     "name": "register",
-     "sig": "(String|HTMLElement element, Object data)",
-     "type": "function",
-     "desc": "Register a drag drop element"
+     "name": "success",
+     "type": "boolean",
+     "desc": "set this after drop listener..",
+     "memberOf": ""
     },
     {
-     "name": "unregister",
-     "sig": "(String|HTMLElement element)",
-     "type": "function",
-     "desc": "Unregister a drag drop element"
+     "name": "valid",
+     "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"
     }
-   ]
-  },
-  "Roo.dd.ScrollManager": {
-   "props": [],
-   "events": [],
-   "methods": [
+   ],
+   "events": [
     {
-     "name": "refreshCache",
-     "sig": "()",
+     "name": "drop",
+     "sig": "function (source, e, data)\n{\n\n}",
      "type": "function",
-     "desc": "Manually trigger a cache refresh."
+     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the dragged item has\nbeen dropped on it.  This method has no default implementation and returns false, so you must provide an\nimplementation that does something to process the drop event and returns true so that the drag source's\nrepair action does not run.\n\nIMPORTANT : it should set this.success"
     },
     {
-     "name": "register",
-     "sig": "(String/HTMLElement/Element/Array el)",
+     "name": "enter",
+     "sig": "function (source, e, data)\n{\n\n}",
      "type": "function",
-     "desc": "Registers new overflow element(s) to auto scroll"
+     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source is now over the\ntarget.  This default implementation adds the CSS class specified by overClass (if any) to the drop element\nand returns the dropAllowed config value.  This method should be overridden if drop validation is required.\n\nIMPORTANT : it should set this.overClass and this.dropAllowed"
     },
     {
-     "name": "unregister",
-     "sig": "(String/HTMLElement/Element/Array el)",
+     "name": "out",
+     "sig": "function (source, e, data)\n{\n\n}",
      "type": "function",
-     "desc": "Unregisters overflow element(s) so they are no longer scrolled"
-    }
-   ]
-  },
-  "Roo.dd.StatusProxy": {
-   "props": [
-    {
-     "name": "dropAllowed",
-     "type": "String",
-     "desc": "The CSS class to apply to the status element when drop is allowed (defaults to \"x-dd-drop-ok\").",
-     "memberOf": ""
+     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source has been dragged\nout of the target without dropping.  This default implementation simply removes the CSS class specified by\noverClass (if any) from the drop element."
     },
     {
-     "name": "dropNotAllowed",
-     "type": "String",
-     "desc": "The CSS class to apply to the status element when drop is not allowed (defaults to \"x-dd-drop-nodrop\").",
-     "memberOf": ""
+     "name": "over",
+     "sig": "function (source, e, data)\n{\n\n}",
+     "type": "function",
+     "desc": "The function a {@link Roo.dd.DragSource} calls continuously while it is being dragged over the target.\nThis method will be called on every mouse movement while the drag source is over the drop target.\nThis default implementation simply returns the dropAllowed config value.\n\nIMPORTANT : it should set this.dropAllowed"
     }
    ],
-   "events": [],
    "methods": [
     {
-     "name": "getEl",
-     "sig": "()",
+     "name": "addEvents",
+     "sig": "(Object object)",
      "type": "function",
-     "desc": "Returns the underlying proxy {@link Roo.Layer}"
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "getGhost",
-     "sig": "()",
+     "name": "addInvalidHandleClass",
+     "sig": "(string cssClass)",
      "type": "function",
-     "desc": "Returns the ghost element"
+     "desc": "Lets you specify a css class of elements that will not initiate a drag"
     },
     {
-     "name": "hide",
-     "sig": "(Boolean clear)",
+     "name": "addInvalidHandleId",
+     "sig": "(string id)",
      "type": "function",
-     "desc": "Hides the proxy"
+     "desc": "Lets you to specify an element id for a child of a drag handle\nthat should not initiate a drag"
     },
     {
-     "name": "repair",
-     "sig": "(Array xy, Function callback, Object scope)",
+     "name": "addInvalidHandleType",
+     "sig": "(string tagName)",
      "type": "function",
-     "desc": "Causes the proxy to return to its position of origin via an animation.  Should be called after an\ninvalid drop operation by the item being dragged."
+     "desc": "Allows you to specify a tag name that should not start a drag operation\nwhen clicked.  This is designed to facilitate embedding links within a\ndrag handle that do something other than start the drag."
     },
     {
-     "name": "reset",
-     "sig": "(Boolean clearGhost)",
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Resets the status indicator to the default dropNotAllowed value"
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "setStatus",
-     "sig": "(String cssClass)",
+     "name": "addToGroup",
+     "sig": "( sGroup)",
      "type": "function",
-     "desc": "Updates the proxy's visual element to indicate the status of whether or not drop is allowed\nover the current target element."
+     "desc": "Add this instance to a group of related drag/drop objects.  All\ninstances belong to at least one group, and can belong to as many\ngroups as needed."
     },
     {
-     "name": "show",
+     "name": "applyConfig",
      "sig": "()",
      "type": "function",
-     "desc": "Displays this proxy"
+     "desc": "Applies the configuration parameters that were passed into the constructor.\nThis is supposed to happen at each level through the inheritance chain.  So\na DDProxy implentation will execute apply config on DDProxy, DD, and\nDragDrop in order to get all of the parameters that are available in\neach object."
     },
     {
-     "name": "stop",
-     "sig": "()",
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
-     "desc": "Stops the repair animation if it's currently running"
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "sync",
+     "name": "clearConstraints",
      "sig": "()",
      "type": "function",
-     "desc": "Force the Layer to sync its shadow and shim positions to the element"
+     "desc": "Clears any constraints applied to this instance.  Also clears ticks\nsince they can't exist independent of a constraint at this time."
     },
     {
-     "name": "update",
-     "sig": "(String html)",
+     "name": "clearTicks",
+     "sig": "()",
      "type": "function",
-     "desc": "Updates the contents of the ghost element"
-    }
-   ]
-  },
-  "Roo.form": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.form.Action": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.form.BasicForm": {
-   "props": [
-    {
-     "name": "method",
-     "type": "String",
-     "desc": "The request method to use (GET or POST) for form actions if one isn't supplied in the action options.",
-     "memberOf": ""
+     "desc": "Clears any tick interval defined for this instance"
     },
     {
-     "name": "reader",
-     "type": "DataReader",
-     "desc": "An Roo.data.DataReader (e.g. {@link Roo.data.XmlReader}) to be used to read data when executing \"load\" actions.\nThis is optional as there is built-in support for processing JSON.",
-     "memberOf": ""
+     "name": "endDrag",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Fired when we are done dragging the object"
     },
     {
-     "name": "errorReader",
-     "type": "DataReader",
-     "desc": "An Roo.data.DataReader (e.g. {@link Roo.data.XmlReader}) to be used to read data when reading validation errors on \"submit\" actions.\nThis is completely optional as there is built-in support for processing JSON.",
-     "memberOf": ""
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "url",
-     "type": "String",
-     "desc": "The URL to use for form actions if one isn't supplied in the action options.",
-     "memberOf": ""
+     "name": "function toString() {\n    [native code]\n}",
+     "sig": "()",
+     "type": "function",
+     "desc": "toString method"
     },
     {
-     "name": "fileUpload",
-     "type": "Boolean",
-     "desc": "Set to true if this form is a file upload.",
-     "memberOf": ""
+     "name": "getDragEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns a reference to the actual element to drag.  By default this is\nthe same as the html element, but it can be assigned to another\nelement. An example of this can be found in Roo.dd.DDProxy"
     },
     {
-     "name": "baseParams",
-     "type": "Object",
-     "desc": "Parameters to pass with all requests. e.g. baseParams: {id: '123', foo: 'bar'}.",
-     "memberOf": ""
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns a reference to the linked element"
     },
     {
-     "name": "timeout",
-     "type": "Number",
-     "desc": "Timeout for form actions in seconds (default is 30 seconds).",
-     "memberOf": ""
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "trackResetOnLoad",
-     "type": "Boolean",
-     "desc": "If set to true, form.reset() resets to the last loaded\nor setValues() data instead of when the form was first created.",
-     "memberOf": ""
+     "name": "init",
+     "sig": "( id, String sGroup, object config)",
+     "type": "function",
+     "desc": "Sets up the DragDrop object.  Must be called in the constructor of any\nRoo.dd.DragDrop subclass"
     },
     {
-     "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": "initTarget",
+     "sig": "( id, String sGroup, object config)",
+     "type": "function",
+     "desc": "Initializes Targeting functionality only... the object does not\nget a mousedown handler."
+    },
     {
-     "name": "actioncomplete",
-     "sig": "function (_self, action)\n{\n\n}",
+     "name": "isLocked",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when an action is completed."
+     "desc": "Returns true if this instance is locked, or the drag drop mgr is locked\n(meaning that all drag/drop is disabled on the page.)"
     },
     {
-     "name": "actionfailed",
-     "sig": "function (_self, action)\n{\n\n}",
+     "name": "isTarget",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when an action fails."
+     "desc": "By default, all insances can be a drop target.  This can be disabled by\nsetting isTarget to false."
     },
     {
-     "name": "beforeaction",
-     "sig": "function (_self, action)\n{\n\n}",
+     "name": "isValidHandleChild",
+     "sig": "(HTMLElement node)",
      "type": "function",
-     "desc": "Fires before any action is performed. Return false to cancel the action."
-    }
-   ],
-   "methods": [
+     "desc": "Checks the tag exclusion list to see if this click should be ignored"
+    },
     {
-     "name": "add",
-     "sig": "(Field field1, Field field2, Field etc)",
+     "name": "lock",
+     "sig": "()",
      "type": "function",
-     "desc": "Add Roo.form components to this form."
+     "desc": "Lock this instance"
     },
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Used to define events on this Observable"
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "addForm",
-     "sig": "(Roo.form.Form form)",
+     "name": "onAvailable",
+     "sig": "()",
      "type": "function",
-     "desc": "Add a secondary form to this one, \nUsed to provide tabbed forms. One form is primary, with hidden values \nwhich mirror the elements from the other forms."
+     "desc": "Override the onAvailable method to do what is needed after the initial\nposition was determined."
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "onDrag",
+     "sig": "(Event e)",
      "type": "function",
-     "desc": "Appends an event handler to this component"
+     "desc": "Abstract method called during the onMouseMove event while dragging an\nobject."
     },
     {
-     "name": "applyIfToFields",
-     "sig": "(Object values)",
+     "name": "onDragDrop",
+     "sig": "(Event e, String|DragDrop[] id)",
      "type": "function",
-     "desc": "Calls {@link Ext#applyIf} for all field in this form with the passed object."
+     "desc": "Abstract method called when this item is dropped on another DragDrop\nobj"
     },
     {
-     "name": "applyToFields",
-     "sig": "(Object values)",
+     "name": "onDragEnter",
+     "sig": "(Event e, String|DragDrop[] id)",
      "type": "function",
-     "desc": "Calls {@link Ext#apply} for all fields in this form with the passed object."
+     "desc": "Abstract method called when this element fist begins hovering over\nanother DragDrop obj"
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
+     "name": "onDragOut",
+     "sig": "(Event e, String|DragDrop[] id)",
      "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "desc": "Abstract method called when we are no longer hovering over an element"
     },
     {
-     "name": "clearInvalid",
-     "sig": "()",
+     "name": "onDragOver",
+     "sig": "(Event e, String|DragDrop[] id)",
      "type": "function",
-     "desc": "Clears all invalid messages in this form."
+     "desc": "Abstract method called when this element is hovering over another\nDragDrop obj"
     },
     {
-     "name": "doAction",
-     "sig": "(String actionName, Object options)",
+     "name": "onInvalidDrop",
+     "sig": "(Event e)",
      "type": "function",
-     "desc": "Performs a predefined action (submit or load) or custom actions you define on this form."
+     "desc": "Abstract method called when this item is dropped on an area with no\ndrop target"
     },
     {
-     "name": "findField",
-     "sig": "(String id)",
+     "name": "onMouseDown",
+     "sig": "(Event e)",
      "type": "function",
-     "desc": "Find a Roo.form.Field in this form by id, dataIndex, name or hiddenName"
+     "desc": "Event handler that fires when a drag/drop obj gets a mousedown"
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
+     "name": "onMouseUp",
+     "sig": "(Event e)",
      "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "desc": "Event handler that fires when a drag/drop obj gets a mouseup"
     },
     {
-     "name": "getFieldValues",
+     "name": "padding",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the fields in this form as an object with key/value pairs. \nThis differs from getValues as it calls getValue on each child item, rather than using dom data."
+     "desc": "The padding configured for this drag and drop object for calculating\nthe drop zone intersection with this object."
     },
     {
-     "name": "getValues",
-     "sig": "(Boolean asString)",
+     "name": "purgeListeners",
+     "sig": "()",
      "type": "function",
-     "desc": "Returns the fields in this form as an object with key/value pairs. If multiple fields exist with the same name\nthey are returned as an array."
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
      "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "isDirty",
-     "sig": "()",
+     "name": "removeFromGroup",
+     "sig": "(string sGroup)",
      "type": "function",
-     "desc": "Returns true if any fields in this form have changed since their original load."
+     "desc": "Remove's this instance from the supplied interaction group"
     },
     {
-     "name": "isValid",
-     "sig": "()",
+     "name": "removeInvalidHandleClass",
+     "sig": "(string cssClass)",
      "type": "function",
-     "desc": "Returns true if client-side validation on the form is successful."
+     "desc": "Unsets an invalid css class"
     },
     {
-     "name": "load",
-     "sig": "(Object options)",
+     "name": "removeInvalidHandleId",
+     "sig": "(string id)",
      "type": "function",
-     "desc": "Shortcut to do a load action."
+     "desc": "Unsets an invalid handle id"
     },
     {
-     "name": "loadRecord",
-     "sig": "(Record record)",
+     "name": "removeInvalidHandleType",
+     "sig": "(string tagName)",
      "type": "function",
-     "desc": "Loads an Roo.data.Record into this form."
+     "desc": "Unsets an excluded tag name set by addInvalidHandleType"
     },
     {
-     "name": "markInvalid",
-     "sig": "(Array/Object errors)",
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "Mark fields in this form invalid in bulk."
+     "desc": "Removes a listener"
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "resetConstraints",
+     "sig": "(boolean maintainOffset)",
      "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "desc": "resetConstraints must be called if you manually reposition a dd element."
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
+     "name": "setDragElId",
+     "sig": "( id)",
      "type": "function",
-     "desc": "Removes all listeners for this object"
+     "desc": "Allows you to specify that an element other than the linked element\nwill be moved with the cursor during a drag"
     },
     {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
+     "name": "setHandleElId",
+     "sig": "( id)",
      "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "desc": "Allows you to specify a child of the linked element that should be\nused to initiate the drag operation.  An example of this would be if\nyou have a content div with text and links.  Clicking anywhere in the\ncontent area would normally start the drag operation.  Use this method\nto specify that an element inside of the content div is the element\nthat starts the drag operation."
     },
     {
-     "name": "remove",
-     "sig": "(Field field)",
+     "name": "setInitPosition",
+     "sig": "(int diffX, int diffY)",
      "type": "function",
-     "desc": "Removes a field from the items collection (does NOT remove its markup)."
+     "desc": "Stores the initial placement of the linked element."
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "setOuterHandleElId",
+     "sig": "( id)",
      "type": "function",
-     "desc": "Removes a listener"
+     "desc": "Allows you to set an element outside of the linked element as a drag\nhandle"
     },
     {
-     "name": "render",
-     "sig": "()",
+     "name": "setPadding",
+     "sig": "(int iTop, int iRight, int iBot, int iLeft)",
      "type": "function",
-     "desc": "Looks at the fields in this form, checks them for an id attribute,\nand calls applyTo on the existing dom element with that id."
+     "desc": "Configures the padding for the target zone in px.  Effectively expands\n(or reduces) the virtual object size for targeting calculations.\nSupports css-style shorthand; if only one parameter is passed, all sides\nwill have that padding, and if only two are passed, the top and bottom\nwill have the first param, the left and right the second."
     },
     {
-     "name": "reset",
-     "sig": "()",
+     "name": "setXConstraint",
+     "sig": "(int iLeft, int iRight, int iTickSize)",
      "type": "function",
-     "desc": "Resets this form."
+     "desc": "By default, the element can be dragged any place on the screen.  Use\nthis method to limit the horizontal travel of the element.  Pass in\n0,0 for the parameters if you want to lock the drag to the y axis."
     },
     {
-     "name": "setValues",
-     "sig": "(Array/Object values)",
+     "name": "setYConstraint",
+     "sig": "(int iUp, int iDown, int iTickSize)",
      "type": "function",
-     "desc": "Set values for fields in this form in bulk."
+     "desc": "By default, the element can be dragged any place on the screen.  Set\nthis to limit the vertical travel of the element.  Pass in 0,0 for the\nparameters if you want to lock the drag to the x axis."
     },
     {
-     "name": "submit",
-     "sig": "(Object options)",
+     "name": "startDrag",
+     "sig": "(int X, int Y)",
      "type": "function",
-     "desc": "Shortcut to do a submit action."
+     "desc": "Abstract method called after a drag/drop object is clicked\nand the drag or mousedown time thresholds have beeen met."
     },
     {
      "name": "un",
      "desc": "Removes a listener (shorthand for removeListener)"
     },
     {
-     "name": "updateRecord",
-     "sig": "(Record record)",
+     "name": "unlock",
+     "sig": "()",
      "type": "function",
-     "desc": "Persists the values in this form into the passed Roo.data.Record object in a beginEdit/endEdit block."
+     "desc": "Unlock this instace"
+    },
+    {
+     "name": "unreg",
+     "sig": "()",
+     "type": "function",
+     "desc": "Remove all drag and drop hooks for this element"
     }
    ]
   },
-  "Roo.form.Checkbox": {
+  "Roo.dd.DropZone": {
    "props": [
     {
-     "name": "focusClass",
+     "name": "overClass",
      "type": "String",
-     "desc": "The CSS class to use when the checkbox receives focus (defaults to undefined)",
-     "memberOf": ""
+     "desc": "The CSS class applied to the drop target element while the drag source is over it (defaults to \"\").",
+     "memberOf": "Roo.dd.DropTarget"
     },
     {
-     "name": "fieldClass",
+     "name": "ddGroup",
      "type": "String",
-     "desc": "The default CSS class for the checkbox (defaults to \"x-form-field\")",
-     "memberOf": ""
-    },
-    {
-     "name": "checked",
-     "type": "Boolean",
-     "desc": "True if the the checkbox should render already checked (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"checkbox\", autocomplete: \"off\"})",
-     "memberOf": ""
+     "desc": "The drag drop group to handle drop events for",
+     "memberOf": "Roo.dd.DropTarget"
     },
     {
-     "name": "boxLabel",
+     "name": "dropAllowed",
      "type": "String",
-     "desc": "The text that appears beside the checkbox",
-     "memberOf": ""
+     "desc": "The CSS class returned to the drag source when drop is allowed (defaults to \"x-dd-drop-ok\").",
+     "memberOf": "Roo.dd.DropTarget"
     },
     {
-     "name": "inputValue",
+     "name": "dropNotAllowed",
      "type": "String",
-     "desc": "The value that should go into the generated input element's value attribute",
-     "memberOf": ""
+     "desc": "The CSS class returned to the drag source when drop is not allowed (defaults to \"x-dd-drop-nodrop\").",
+     "memberOf": "Roo.dd.DropTarget"
     },
     {
-     "name": "valueOff",
-     "type": "String",
-     "desc": "The value that should go into the generated input element's value when unchecked.",
-     "memberOf": ""
+     "name": "success",
+     "type": "boolean",
+     "desc": "set this after drop listener..",
+     "memberOf": "Roo.dd.DropTarget"
     },
     {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "Label to use when rendering a form.",
-     "memberOf": "Roo.form.Field"
+     "name": "valid",
+     "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": "qtip",
-     "type": "String",
-     "desc": "Mouse over tip",
-     "memberOf": "Roo.form.Field"
-    },
+     "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": "name",
-     "type": "String",
-     "desc": "The field's HTML name attribute.",
-     "memberOf": "Roo.form.Field"
+     "name": "drop",
+     "sig": "function (source, e, data)\n{\n\n}",
+     "type": "function",
+     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the dragged item has\nbeen dropped on it.  This method has no default implementation and returns false, so you must provide an\nimplementation that does something to process the drop event and returns true so that the drag source's\nrepair action does not run.\n\nIMPORTANT : it should set this.success"
     },
     {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.form.Field"
+     "name": "enter",
+     "sig": "function (source, e, data)\n{\n\n}",
+     "type": "function",
+     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source is now over the\ntarget.  This default implementation adds the CSS class specified by overClass (if any) to the drop element\nand returns the dropAllowed config value.  This method should be overridden if drop validation is required.\n\nIMPORTANT : it should set this.overClass and this.dropAllowed"
     },
     {
-     "name": "invalidText",
-     "type": "String",
-     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
-     "memberOf": "Roo.form.Field"
+     "name": "out",
+     "sig": "function (source, e, data)\n{\n\n}",
+     "type": "function",
+     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop target that the source has been dragged\nout of the target without dropping.  This default implementation simply removes the CSS class specified by\noverClass (if any) from the drop element."
     },
     {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.form.Field"
-    },
+     "name": "over",
+     "sig": "function (source, e, data)\n{\n\n}",
+     "type": "function",
+     "desc": "The function a {@link Roo.dd.DragSource} calls continuously while it is being dragged over the target.\nThis method will be called on every mouse movement while the drag source is over the drop target.\nThis default implementation simply returns the dropAllowed config value.\n\nIMPORTANT : it should set this.dropAllowed"
+    }
+   ],
+   "methods": [
     {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.form.Field"
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.form.Field"
+     "name": "addInvalidHandleClass",
+     "sig": "(string cssClass)",
+     "type": "function",
+     "desc": "Lets you specify a css class of elements that will not initiate a drag"
     },
     {
-     "name": "msgTarget",
-     "type": "String",
-     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
-     "memberOf": "Roo.form.Field"
+     "name": "addInvalidHandleId",
+     "sig": "(string id)",
+     "type": "function",
+     "desc": "Lets you to specify an element id for a child of a drag handle\nthat should not initiate a drag"
     },
     {
-     "name": "msgFx",
-     "type": "String",
-     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
-     "memberOf": "Roo.form.Field"
+     "name": "addInvalidHandleType",
+     "sig": "(string tagName)",
+     "type": "function",
+     "desc": "Allows you to specify a tag name that should not start a drag operation\nwhen clicked.  This is designed to facilitate embedding links within a\ndrag handle that do something other than start the drag."
     },
     {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
-     "memberOf": "Roo.form.Field"
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "True to disable the field (defaults to false).",
-     "memberOf": "Roo.form.Field"
+     "name": "addToGroup",
+     "sig": "( sGroup)",
+     "type": "function",
+     "desc": "Add this instance to a group of related drag/drop objects.  All\ninstances belong to at least one group, and can belong to as many\ngroups as needed."
     },
     {
-     "name": "inputType",
-     "type": "String",
-     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
-     "memberOf": "Roo.form.Field"
+     "name": "applyConfig",
+     "sig": "()",
+     "type": "function",
+     "desc": "Applies the configuration parameters that were passed into the constructor.\nThis is supposed to happen at each level through the inheritance chain.  So\na DDProxy implentation will execute apply config on DDProxy, DD, and\nDragDrop in order to get all of the parameters that are available in\neach object."
     },
     {
-     "name": "tabIndex",
-     "type": "Number",
-     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
-     "memberOf": "Roo.form.Field"
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "value",
-     "type": "Mixed",
-     "desc": "A value to initialize this field with.",
-     "memberOf": "Roo.form.Field"
+     "name": "clearConstraints",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears any constraints applied to this instance.  Also clears ticks\nsince they can't exist independent of a constraint at this time."
     },
     {
-     "name": "cls",
-     "type": "String",
-     "desc": "A CSS class to apply to the field's underlying element.",
-     "memberOf": "Roo.form.Field"
+     "name": "clearTicks",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears any tick interval defined for this instance"
     },
     {
-     "name": "width",
-     "type": "Number",
-     "desc": "width (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
+     "name": "endDrag",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Fired when we are done dragging the object"
     },
     {
-     "name": "height",
-     "type": "Number",
-     "desc": "height (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "disableClass",
-     "type": "String",
-     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
-     "memberOf": "Roo.Component"
+     "name": "function toString() {\n    [native code]\n}",
+     "sig": "()",
+     "type": "function",
+     "desc": "toString method"
     },
     {
-     "name": "allowDomMove",
-     "type": "Boolean",
-     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
-     "memberOf": "Roo.Component"
+     "name": "getDragEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns a reference to the actual element to drag.  By default this is\nthe same as the html element, but it can be assigned to another\nelement. An example of this can be found in Roo.dd.DDProxy"
     },
     {
-     "name": "hideMode",
-     "type": "String",
-     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
-     "memberOf": "Roo.Component",
-     "optvals": [
-      "display",
-      "visibility"
-     ]
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns a reference to the linked element"
     },
     {
-     "name": "actionMode",
-     "type": "String",
-     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
-     "memberOf": "Roo.Component"
+     "name": "getTargetFromEvent",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Returns a custom data object associated with the DOM node that is the target of the event.  By default\nthis looks up the event target in the {@link Roo.dd.Registry}, although you can override this method to\nprovide your own custom lookup."
     },
     {
-     "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": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
     {
-     "name": "beforedestroy",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "init",
+     "sig": "( id, String sGroup, object config)",
      "type": "function",
-     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+     "desc": "Sets up the DragDrop object.  Must be called in the constructor of any\nRoo.dd.DragDrop subclass"
     },
     {
-     "name": "beforehide",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "initTarget",
+     "sig": "( id, String sGroup, object config)",
      "type": "function",
-     "desc": "Fires before the component is hidden. Return false to stop the hide."
+     "desc": "Initializes Targeting functionality only... the object does not\nget a mousedown handler."
     },
     {
-     "name": "beforerender",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "isLocked",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires before the component is rendered. Return false to stop the render."
+     "desc": "Returns true if this instance is locked, or the drag drop mgr is locked\n(meaning that all drag/drop is disabled on the page.)"
     },
     {
-     "name": "beforeshow",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "isTarget",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires before the component is shown.  Return false to stop the show."
+     "desc": "By default, all insances can be a drop target.  This can be disabled by\nsetting isTarget to false."
     },
     {
-     "name": "blur",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "isValidHandleChild",
+     "sig": "(HTMLElement node)",
      "type": "function",
-     "desc": "Fires when this field loses input focus."
+     "desc": "Checks the tag exclusion list to see if this click should be ignored"
     },
     {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
+     "name": "lock",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
+     "desc": "Lock this instance"
     },
     {
-     "name": "check",
-     "sig": "function (_self, checked)\n{\n\n}",
+     "name": "notifyDrop",
+     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
      "type": "function",
-     "desc": "Fires when the checkbox is checked or unchecked."
+     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop zone that the dragged item has\nbeen dropped on it.  The drag zone will look up the target node based on the event passed in, and if there\nis a node registered for that event, it will delegate to {@link #onNodeDrop} for node-specific handling,\notherwise it will call {@link #onContainerDrop}."
     },
     {
-     "name": "destroy",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "notifyEnter",
+     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
      "type": "function",
-     "desc": "Fires after the component is destroyed."
+     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop zone that the source is now over\nthe zone.  The default implementation returns this.dropNotAllowed and expects that only registered drop\nnodes can process drag drop operations, so if you need the drop zone itself to be able to process drops\nyou should override this method and provide a custom implementation."
     },
     {
-     "name": "disable",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "notifyOut",
+     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
      "type": "function",
-     "desc": "Fires after the component is disabled."
+     "desc": "The function a {@link Roo.dd.DragSource} calls once to notify this drop zone that the source has been dragged\nout of the zone without dropping.  If the drag source is currently over a registered node, the notification\nwill be delegated to {@link #onNodeOut} for node-specific handling, otherwise it will be ignored."
     },
     {
-     "name": "enable",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "notifyOver",
+     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
      "type": "function",
-     "desc": "Fires after the component is enabled."
+     "desc": "The function a {@link Roo.dd.DragSource} calls continuously while it is being dragged over the drop zone.\nThis method will be called on every mouse movement while the drag source is over the drop zone.\nIt will call {@link #onNodeOver} while the drag source is over a registered node, and will also automatically\ndelegate to the appropriate node-specific methods as necessary when the drag source enters and exits\nregistered nodes ({@link #onNodeEnter}, {@link #onNodeOut}). If the drag source is not currently over a\nregistered node, it will call {@link #onContainerOver}."
     },
     {
-     "name": "focus",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Fires when this field receives input focus."
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "hide",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "onAvailable",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires after the component is hidden."
+     "desc": "Override the onAvailable method to do what is needed after the initial\nposition was determined."
     },
     {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
+     "name": "onContainerDrop",
+     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
      "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
+     "desc": "Called internally when the DropZone determines that a {@link Roo.dd.DragSource} has been dropped on it,\nbut not on any of its registered drop nodes.  The default implementation returns false, so it should be\noverridden to provide the appropriate processing of the drop event if you need the drop zone itself to\nbe able to accept drops.  It should return true when valid so that the drag source's repair action does not run."
     },
     {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
+     "name": "onContainerOver",
+     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
      "type": "function",
-     "desc": "Fires after the key up"
+     "desc": "Called internally while the DropZone determines that a {@link Roo.dd.DragSource} is being dragged over it,\nbut not over any of its registered drop nodes.  The default implementation returns this.dropNotAllowed, so\nit should be overridden to provide the proper feedback if necessary."
     },
     {
-     "name": "move",
-     "sig": "function (_self, x, y)\n{\n\n}",
+     "name": "onDrag",
+     "sig": "(Event e)",
      "type": "function",
-     "desc": "Fires after the component is moved."
+     "desc": "Abstract method called during the onMouseMove event while dragging an\nobject."
     },
     {
-     "name": "render",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "onDragDrop",
+     "sig": "(Event e, String|DragDrop[] id)",
      "type": "function",
-     "desc": "Fires after the component is rendered."
+     "desc": "Abstract method called when this item is dropped on another DragDrop\nobj"
     },
     {
-     "name": "resize",
-     "sig": "function (_self, adjWidth, adjHeight, rawWidth, rawHeight)\n{\n\n}",
+     "name": "onDragEnter",
+     "sig": "(Event e, String|DragDrop[] id)",
      "type": "function",
-     "desc": "Fires after the component is resized."
+     "desc": "Abstract method called when this element fist begins hovering over\nanother DragDrop obj"
     },
     {
-     "name": "show",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "onDragOut",
+     "sig": "(Event e, String|DragDrop[] id)",
      "type": "function",
-     "desc": "Fires after the component is shown."
+     "desc": "Abstract method called when we are no longer hovering over an element"
     },
     {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
+     "name": "onDragOver",
+     "sig": "(Event e, String|DragDrop[] id)",
      "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
+     "desc": "Abstract method called when this element is hovering over another\nDragDrop obj"
     },
     {
-     "name": "valid",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "onInvalidDrop",
+     "sig": "(Event e)",
      "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
-    }
-   ],
-   "methods": [
+     "desc": "Abstract method called when this item is dropped on an area with no\ndrop target"
+    },
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
+     "name": "onMouseDown",
+     "sig": "(Event e)",
      "type": "function",
-     "desc": "Used to define events on this Observable"
+     "desc": "Event handler that fires when a drag/drop obj gets a mousedown"
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "onMouseUp",
+     "sig": "(Event e)",
      "type": "function",
-     "desc": "Appends an event handler to this component"
+     "desc": "Event handler that fires when a drag/drop obj gets a mouseup"
     },
     {
-     "name": "applyTo",
-     "sig": "(String/HTMLElement/Element el)",
+     "name": "onNodeDrop",
+     "sig": "(Object nodeData, Roo.dd.DragSource source, Event e, Object data)",
      "type": "function",
-     "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
+     "desc": "Called internally when the DropZone determines that a {@link Roo.dd.DragSource} has been dropped onto\nthe drop node.  The default implementation returns false, so it should be overridden to provide the\nappropriate processing of the drop event and return true so that the drag source's repair action does not run."
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
+     "name": "onNodeEnter",
+     "sig": "(Object nodeData, Roo.dd.DragSource source, Event e, Object data)",
      "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "desc": "Called internally when the DropZone determines that a {@link Roo.dd.DragSource} has entered a drop node\nthat it has registered.  This method has no default implementation and should be overridden to provide\nnode-specific processing if necessary."
     },
     {
-     "name": "clearInvalid",
-     "sig": "()",
+     "name": "onNodeOut",
+     "sig": "(Object nodeData, Roo.dd.DragSource source, Event e, Object data)",
      "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
+     "desc": "Called internally when the DropZone determines that a {@link Roo.dd.DragSource} has been dragged out of\nthe drop node without dropping.  This method has no default implementation and should be overridden to provide\nnode-specific processing if necessary."
     },
     {
-     "name": "destroy",
-     "sig": "()",
+     "name": "onNodeOver",
+     "sig": "(Object nodeData, Roo.dd.DragSource source, Event e, Object data)",
      "type": "function",
-     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+     "desc": "Called internally while the DropZone determines that a {@link Roo.dd.DragSource} is over a drop node\nthat it has registered.  The default implementation returns this.dropNotAllowed, so it should be\noverridden to provide the proper feedback."
     },
     {
-     "name": "disable",
+     "name": "padding",
      "sig": "()",
      "type": "function",
-     "desc": "Disable this component."
+     "desc": "The padding configured for this drag and drop object for calculating\nthe drop zone intersection with this object."
     },
     {
-     "name": "enable",
+     "name": "purgeListeners",
      "sig": "()",
      "type": "function",
-     "desc": "Enable this component."
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
      "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "focus",
-     "sig": "(Boolean selectText)",
+     "name": "removeFromGroup",
+     "sig": "(string sGroup)",
      "type": "function",
-     "desc": "Try to focus this component."
+     "desc": "Remove's this instance from the supplied interaction group"
     },
     {
-     "name": "getBox",
-     "sig": "(Boolean local)",
+     "name": "removeInvalidHandleClass",
+     "sig": "(string cssClass)",
      "type": "function",
-     "desc": "Gets the current box measurements of the component's underlying element."
+     "desc": "Unsets an invalid css class"
     },
     {
-     "name": "getEl",
-     "sig": "()",
+     "name": "removeInvalidHandleId",
+     "sig": "(string id)",
      "type": "function",
-     "desc": "Returns the underlying {@link Roo.Element}."
+     "desc": "Unsets an invalid handle id"
     },
     {
-     "name": "getId",
-     "sig": "()",
+     "name": "removeInvalidHandleType",
+     "sig": "(string tagName)",
      "type": "function",
-     "desc": "Returns the id of this component."
+     "desc": "Unsets an excluded tag name set by addInvalidHandleType"
     },
     {
-     "name": "getName",
-     "sig": "()",
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "Returns the name attribute of the field if available"
+     "desc": "Removes a listener"
     },
     {
-     "name": "getPosition",
-     "sig": "(Boolean local)",
+     "name": "resetConstraints",
+     "sig": "(boolean maintainOffset)",
      "type": "function",
-     "desc": "Gets the current XY position of the component's underlying element."
+     "desc": "resetConstraints must be called if you manually reposition a dd element."
     },
     {
-     "name": "getRawValue",
-     "sig": "()",
+     "name": "setDragElId",
+     "sig": "( id)",
      "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
+     "desc": "Allows you to specify that an element other than the linked element\nwill be moved with the cursor during a drag"
     },
     {
-     "name": "getSize",
-     "sig": "()",
+     "name": "setHandleElId",
+     "sig": "( id)",
      "type": "function",
-     "desc": "Gets the current size of the component's underlying element."
+     "desc": "Allows you to specify a child of the linked element that should be\nused to initiate the drag operation.  An example of this would be if\nyou have a content div with text and links.  Clicking anywhere in the\ncontent area would normally start the drag operation.  Use this method\nto specify that an element inside of the content div is the element\nthat starts the drag operation."
     },
     {
-     "name": "getValue",
-     "sig": "()",
+     "name": "setInitPosition",
+     "sig": "(int diffX, int diffY)",
      "type": "function",
-     "desc": "Returns the checked state of the checkbox."
+     "desc": "Stores the initial placement of the linked element."
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
+     "name": "setOuterHandleElId",
+     "sig": "( id)",
      "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "desc": "Allows you to set an element outside of the linked element as a drag\nhandle"
     },
     {
-     "name": "hide",
-     "sig": "()",
+     "name": "setPadding",
+     "sig": "(int iTop, int iRight, int iBot, int iLeft)",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Configures the padding for the target zone in px.  Effectively expands\n(or reduces) the virtual object size for targeting calculations.\nSupports css-style shorthand; if only one parameter is passed, all sides\nwill have that padding, and if only two are passed, the top and bottom\nwill have the first param, the left and right the second."
     },
     {
-     "name": "isDirty",
-     "sig": "()",
+     "name": "setXConstraint",
+     "sig": "(int iLeft, int iRight, int iTickSize)",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "By default, the element can be dragged any place on the screen.  Use\nthis method to limit the horizontal travel of the element.  Pass in\n0,0 for the parameters if you want to lock the drag to the y axis."
     },
     {
-     "name": "isValid",
-     "sig": "(Boolean preventMark)",
+     "name": "setYConstraint",
+     "sig": "(int iUp, int iDown, int iTickSize)",
      "type": "function",
-     "desc": "Returns whether or not the field value is currently valid"
+     "desc": "By default, the element can be dragged any place on the screen.  Set\nthis to limit the vertical travel of the element.  Pass in 0,0 for the\nparameters if you want to lock the drag to the x axis."
     },
     {
-     "name": "isVisible",
-     "sig": "()",
+     "name": "startDrag",
+     "sig": "(int X, int Y)",
      "type": "function",
-     "desc": "Returns true if this component is visible."
+     "desc": "Abstract method called after a drag/drop object is clicked\nand the drag or mousedown time thresholds have beeen met."
     },
     {
-     "name": "markInvalid",
-     "sig": "(String msg)",
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "Mark this field as invalid"
+     "desc": "Removes a listener (shorthand for removeListener)"
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "unlock",
+     "sig": "()",
      "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "desc": "Unlock this instace"
     },
     {
-     "name": "onPosition",
-     "sig": "(Number x, Number y)",
+     "name": "unreg",
+     "sig": "()",
      "type": "function",
-     "desc": "Called after the component is moved, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a move occurs."
-    },
+     "desc": "Remove all drag and drop hooks for this element"
+    }
+   ]
+  },
+  "Roo.dd.Registry": {
+   "props": [],
+   "events": [],
+   "methods": [
     {
-     "name": "onResize",
-     "sig": "(Number adjWidth, Number adjHeight, Number rawWidth, Number rawHeight)",
+     "name": "getHandle",
+     "sig": "(String|HTMLElement id)",
      "type": "function",
-     "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
+     "desc": "Returns the handle registered for a DOM Node by id"
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
+     "name": "getHandleFromEvent",
+     "sig": "(Event e)",
      "type": "function",
-     "desc": "Removes all listeners for this object"
+     "desc": "Returns the handle that is registered for the DOM node that is the target of the event"
     },
     {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
+     "name": "getTarget",
+     "sig": "(String|HTMLElement id)",
      "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "desc": "Returns a custom data object that is registered for a DOM node by id"
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "getTargetFromEvent",
+     "sig": "(Event e)",
      "type": "function",
-     "desc": "Removes a listener"
+     "desc": "Returns a custom data object that is registered for the DOM node that is the target of the event"
     },
     {
-     "name": "render",
-     "sig": "(String/HTMLElement/Element container)",
+     "name": "register",
+     "sig": "(String|HTMLElement element, Object data)",
      "type": "function",
-     "desc": "If this is a lazy rendering component, render it to its container element."
+     "desc": "Register a drag drop element"
     },
     {
-     "name": "reset",
+     "name": "unregister",
+     "sig": "(String|HTMLElement element)",
+     "type": "function",
+     "desc": "Unregister a drag drop element"
+    }
+   ]
+  },
+  "Roo.dd.ScrollManager": {
+   "props": [],
+   "events": [],
+   "methods": [
+    {
+     "name": "refreshCache",
      "sig": "()",
      "type": "function",
-     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
+     "desc": "Manually trigger a cache refresh."
     },
     {
-     "name": "setDisabled",
-     "sig": "(Boolean disabled)",
+     "name": "register",
+     "sig": "(String/HTMLElement/Element/Array el)",
      "type": "function",
-     "desc": "Convenience function for setting disabled/enabled by boolean."
+     "desc": "Registers new overflow element(s) to auto scroll"
     },
     {
-     "name": "setPagePosition",
-     "sig": "(Number x, Number y)",
+     "name": "unregister",
+     "sig": "(String/HTMLElement/Element/Array el)",
      "type": "function",
-     "desc": "Sets the page XY position of the component.  To set the left and top instead, use {@link #setPosition}.\nThis method fires the move event."
+     "desc": "Unregisters overflow element(s) so they are no longer scrolled"
+    }
+   ]
+  },
+  "Roo.dd.StatusProxy": {
+   "props": [
+    {
+     "name": "dropAllowed",
+     "type": "String",
+     "desc": "The CSS class to apply to the status element when drop is allowed (defaults to \"x-dd-drop-ok\").",
+     "memberOf": ""
     },
     {
-     "name": "setPosition",
-     "sig": "(Number left, Number top)",
+     "name": "dropNotAllowed",
+     "type": "String",
+     "desc": "The CSS class to apply to the status element when drop is not allowed (defaults to \"x-dd-drop-nodrop\").",
+     "memberOf": ""
+    }
+   ],
+   "events": [],
+   "methods": [
+    {
+     "name": "getEl",
+     "sig": "()",
      "type": "function",
-     "desc": "Sets the left and top of the component.  To set the page XY position instead, use {@link #setPagePosition}.\nThis method fires the move event."
+     "desc": "Returns the underlying proxy {@link Roo.Layer}"
     },
     {
-     "name": "setRawValue",
-     "sig": "(Mixed value)",
+     "name": "getGhost",
+     "sig": "()",
      "type": "function",
-     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
+     "desc": "Returns the ghost element"
     },
     {
-     "name": "setSize",
-     "sig": "(Number/Object width, Number height)",
+     "name": "hide",
+     "sig": "(Boolean clear)",
      "type": "function",
-     "desc": "Sets the width and height of the component.  This method fires the resize event.  This method can accept\neither width and height as separate numeric arguments, or you can pass a size object like {width:10, height:20}."
+     "desc": "Hides the proxy"
     },
     {
-     "name": "setValue",
-     "sig": "(Boolean/String value, Boolean/String suppressEvent)",
+     "name": "repair",
+     "sig": "(Array xy, Function callback, Object scope)",
      "type": "function",
-     "desc": "Sets the checked state of the checkbox.\nOn is always based on a string comparison between inputValue and the param."
+     "desc": "Causes the proxy to return to its position of origin via an animation.  Should be called after an\ninvalid drop operation by the item being dragged."
     },
     {
-     "name": "setVisible",
-     "sig": "(Boolean visible)",
+     "name": "reset",
+     "sig": "(Boolean clearGhost)",
      "type": "function",
-     "desc": "Convenience function to hide or show this component by boolean."
+     "desc": "Resets the status indicator to the default dropNotAllowed value"
+    },
+    {
+     "name": "setStatus",
+     "sig": "(String cssClass)",
+     "type": "function",
+     "desc": "Updates the proxy's visual element to indicate the status of whether or not drop is allowed\nover the current target element."
     },
     {
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Displays this proxy"
     },
     {
-     "name": "syncSize",
+     "name": "stop",
      "sig": "()",
      "type": "function",
-     "desc": "Force the component's size to recalculate based on the underlying element's current height and width."
+     "desc": "Stops the repair animation if it's currently running"
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "updateBox",
-     "sig": "(Object box)",
+     "name": "sync",
+     "sig": "()",
      "type": "function",
-     "desc": "Sets the current box measurements of the component's underlying element."
+     "desc": "Force the Layer to sync its shadow and shim positions to the element"
     },
     {
-     "name": "validate",
-     "sig": "()",
+     "name": "update",
+     "sig": "(String html)",
      "type": "function",
-     "desc": "Validates the field value"
+     "desc": "Updates the contents of the ghost element"
     }
    ]
   },
-  "Roo.form.Column": {
+  "Roo.form": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.form.Action": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.form.BasicForm": {
    "props": [
     {
-     "name": "width",
-     "type": "Number/String",
-     "desc": "The fixed width of the column in pixels or CSS value (defaults to \"auto\")",
+     "name": "method",
+     "type": "String",
+     "desc": "The request method to use (GET or POST) for form actions if one isn't supplied in the action options.",
      "memberOf": ""
     },
     {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec used to autocreate the column (defaults to {tag: 'div', cls: 'x-form-ct x-form-column'})",
+     "name": "reader",
+     "type": "DataReader",
+     "desc": "An Roo.data.DataReader (e.g. {@link Roo.data.XmlReader}) to be used to read data when executing \"load\" actions.\nThis is optional as there is built-in support for processing JSON.",
      "memberOf": ""
     },
     {
-     "name": "style",
-     "type": "String/Object/Function",
-     "desc": "A style specification string, e.g. \"width:100px\", or object in the form {width:\"100px\"}, or\na function which returns such a specification.",
-     "memberOf": "Roo.form.Layout"
+     "name": "errorReader",
+     "type": "DataReader",
+     "desc": "An Roo.data.DataReader (e.g. {@link Roo.data.XmlReader}) to be used to read data when reading validation errors on \"submit\" actions.\nThis is completely optional as there is built-in support for processing JSON.",
+     "memberOf": ""
     },
     {
-     "name": "labelAlign",
+     "name": "url",
      "type": "String",
-     "desc": "Valid values are \"left,\" \"top\" and \"right\" (defaults to \"left\")",
-     "memberOf": "Roo.form.Layout"
-    },
-    {
-     "name": "labelWidth",
-     "type": "Number",
-     "desc": "Fixed width in pixels of all field labels (defaults to undefined)",
-     "memberOf": "Roo.form.Layout"
+     "desc": "The URL to use for form actions if one isn't supplied in the action options.",
+     "memberOf": ""
     },
     {
-     "name": "clear",
+     "name": "fileUpload",
      "type": "Boolean",
-     "desc": "True to add a clearing element at the end of this layout, equivalent to CSS clear: both (defaults to true)",
-     "memberOf": "Roo.form.Layout"
-    },
-    {
-     "name": "labelSeparator",
-     "type": "String",
-     "desc": "The separator to use after field labels (defaults to ':')",
-     "memberOf": "Roo.form.Layout"
+     "desc": "Set to true if this form is a file upload.",
+     "memberOf": ""
     },
     {
-     "name": "hideLabels",
-     "type": "Boolean",
-     "desc": "True to suppress the display of field labels in this layout (defaults to false)",
-     "memberOf": "Roo.form.Layout"
+     "name": "baseParams",
+     "type": "Object",
+     "desc": "Parameters to pass with all requests. e.g. baseParams: {id: '123', foo: 'bar'}.",
+     "memberOf": ""
     },
     {
-     "name": "disableClass",
-     "type": "String",
-     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
-     "memberOf": "Roo.Component"
+     "name": "timeout",
+     "type": "Number",
+     "desc": "Timeout for form actions in seconds (default is 30 seconds).",
+     "memberOf": ""
     },
     {
-     "name": "allowDomMove",
+     "name": "trackResetOnLoad",
      "type": "Boolean",
-     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
-     "memberOf": "Roo.Component"
-    },
-    {
-     "name": "hideMode",
-     "type": "String",
-     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
-     "memberOf": "Roo.Component",
-     "optvals": [
-      "display",
-      "visibility"
-     ]
-    },
-    {
-     "name": "actionMode",
-     "type": "String",
-     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
-     "memberOf": "Roo.Component"
+     "desc": "If set to true, form.reset() resets to the last loaded\nor setValues() data instead of when the form was first created.",
+     "memberOf": ""
     },
     {
      "name": "listeners",
    ],
    "events": [
     {
-     "name": "beforedestroy",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
-    },
-    {
-     "name": "beforehide",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is hidden. Return false to stop the hide."
-    },
-    {
-     "name": "beforerender",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is rendered. Return false to stop the render."
-    },
-    {
-     "name": "beforeshow",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is shown.  Return false to stop the show."
-    },
-    {
-     "name": "destroy",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is destroyed."
-    },
-    {
-     "name": "disable",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is disabled."
-    },
-    {
-     "name": "enable",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is enabled."
-    },
-    {
-     "name": "hide",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "actioncomplete",
+     "sig": "function (_self, action)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is hidden."
+     "desc": "Fires when an action is completed."
     },
     {
-     "name": "render",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "actionfailed",
+     "sig": "function (_self, action)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is rendered."
+     "desc": "Fires when an action fails."
     },
     {
-     "name": "show",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "beforeaction",
+     "sig": "function (_self, action)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is shown."
+     "desc": "Fires before any action is performed. Return false to cancel the action."
     }
    ],
    "methods": [
+    {
+     "name": "add",
+     "sig": "(Field field1, Field field2, Field etc)",
+     "type": "function",
+     "desc": "Add Roo.form components to this form."
+    },
     {
      "name": "addEvents",
      "sig": "(Object object)",
      "type": "function",
      "desc": "Used to define events on this Observable"
     },
+    {
+     "name": "addForm",
+     "sig": "(Roo.form.Form form)",
+     "type": "function",
+     "desc": "Add a secondary form to this one, \nUsed to provide tabbed forms. One form is primary, with hidden values \nwhich mirror the elements from the other forms."
+    },
     {
      "name": "addListener",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "desc": "Appends an event handler to this component"
     },
     {
-     "name": "addxtype",
-     "sig": "(Object config)",
+     "name": "applyIfToFields",
+     "sig": "(Object values)",
      "type": "function",
-     "desc": "Adds a object form elements (using the xtype property as the factory method.)\nValid xtypes are:  TextField, TextArea .... Button, Layout, FieldSet, Column"
+     "desc": "Calls {@link Ext#applyIf} for all field in this form with the passed object."
+    },
+    {
+     "name": "applyToFields",
+     "sig": "(Object values)",
+     "type": "function",
+     "desc": "Calls {@link Ext#apply} for all fields in this form with the passed object."
     },
     {
      "name": "capture",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "destroy",
+     "name": "clearInvalid",
      "sig": "()",
      "type": "function",
-     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+     "desc": "Clears all invalid messages in this form."
     },
     {
-     "name": "disable",
-     "sig": "()",
+     "name": "doAction",
+     "sig": "(String actionName, Object options)",
      "type": "function",
-     "desc": "Disable this component."
+     "desc": "Performs a predefined action (submit or load) or custom actions you define on this form."
     },
     {
-     "name": "enable",
-     "sig": "()",
+     "name": "findField",
+     "sig": "(String id)",
      "type": "function",
-     "desc": "Enable this component."
+     "desc": "Find a Roo.form.Field in this form by id, dataIndex, name or hiddenName"
     },
     {
      "name": "fireEvent",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "focus",
-     "sig": "(Boolean selectText)",
+     "name": "getFieldValues",
+     "sig": "()",
      "type": "function",
-     "desc": "Try to focus this component."
+     "desc": "Returns the fields in this form as an object with key/value pairs. \nThis differs from getValues as it calls getValue on each child item, rather than using dom data."
     },
     {
-     "name": "getEl",
-     "sig": "()",
+     "name": "getValues",
+     "sig": "(Boolean asString)",
      "type": "function",
-     "desc": "Returns the underlying {@link Roo.Element}."
+     "desc": "Returns the fields in this form as an object with key/value pairs. If multiple fields exist with the same name\nthey are returned as an array."
     },
     {
-     "name": "getId",
+     "name": "hasChanged",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the id of this component."
+     "desc": "Returns true if any fields in this form have changed since their original load. (New version)"
     },
     {
      "name": "hasListener",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "hide",
+     "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "DEPRICATED Returns true if any fields in this form have changed since their original load."
     },
     {
-     "name": "isVisible",
+     "name": "isValid",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this component is visible."
+     "desc": "Returns true if client-side validation on the form is successful."
+    },
+    {
+     "name": "load",
+     "sig": "(Object options)",
+     "type": "function",
+     "desc": "Shortcut to do a load action."
+    },
+    {
+     "name": "loadRecord",
+     "sig": "(Record record)",
+     "type": "function",
+     "desc": "Loads an Roo.data.Record into this form."
+    },
+    {
+     "name": "markInvalid",
+     "sig": "(Array/Object errors)",
+     "type": "function",
+     "desc": "Mark fields in this form invalid in bulk."
     },
     {
      "name": "on",
      "type": "function",
      "desc": "Removes <b>all</b> added captures from the Observable."
     },
+    {
+     "name": "remove",
+     "sig": "(Field field)",
+     "type": "function",
+     "desc": "Removes a field from the items collection (does NOT remove its markup)."
+    },
     {
      "name": "removeListener",
      "sig": "(String eventName, Function handler, Object scope)",
     },
     {
      "name": "render",
-     "sig": "(String/HTMLElement/Element container)",
+     "sig": "()",
      "type": "function",
-     "desc": "If this is a lazy rendering component, render it to its container element."
+     "desc": "Looks at the fields in this form, checks them for an id attribute,\nand calls applyTo on the existing dom element with that id."
     },
     {
-     "name": "setDisabled",
-     "sig": "(Boolean disabled)",
+     "name": "reset",
+     "sig": "()",
      "type": "function",
-     "desc": "Convenience function for setting disabled/enabled by boolean."
+     "desc": "Resets this form."
     },
     {
-     "name": "setVisible",
-     "sig": "(Boolean visible)",
+     "name": "resetHasChanged",
+     "sig": "()",
      "type": "function",
-     "desc": "Convenience function to hide or show this component by boolean."
+     "desc": "Resets all hasChanged to 'false' -\nThe old 'isDirty' used 'original value..' however this breaks reset() and a few other things.\nSo hasChanged storage is only to be used for this purpose"
     },
     {
-     "name": "show",
-     "sig": "()",
+     "name": "setValues",
+     "sig": "(Array/Object values)",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Set values for fields in this form in bulk."
+    },
+    {
+     "name": "submit",
+     "sig": "(Object options)",
+     "type": "function",
+     "desc": "Shortcut to do a submit action."
     },
     {
      "name": "un",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "updateRecord",
+     "sig": "(Record record)",
+     "type": "function",
+     "desc": "Persists the values in this form into the passed Roo.data.Record object in a beginEdit/endEdit block."
     }
    ]
   },
-  "Roo.form.ComboBox": {
+  "Roo.form.Checkbox": {
    "props": [
     {
-     "name": "transform",
-     "type": "String/HTMLElement/Element",
-     "desc": "The id, DOM node or element of an existing select to convert to a ComboBox",
-     "memberOf": ""
-    },
-    {
-     "name": "lazyRender",
-     "type": "Boolean",
-     "desc": "True to prevent the ComboBox from rendering until requested (should always be used when\nrendering into an Roo.Editor, defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "autoCreate",
-     "type": "Boolean/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to:\n{tag: \"input\", type: \"text\", size: \"24\", autocomplete: \"off\"})",
-     "memberOf": ""
-    },
-    {
-     "name": "store",
-     "type": "Roo.data.Store",
-     "desc": "The data store to which this combo is bound (defaults to undefined)",
+     "name": "focusClass",
+     "type": "String",
+     "desc": "The CSS class to use when the checkbox receives focus (defaults to undefined)",
      "memberOf": ""
     },
     {
-     "name": "title",
+     "name": "fieldClass",
      "type": "String",
-     "desc": "If supplied, a header element is created containing this text and added into the top of\nthe dropdown list (defaults to undefined, with no header element)",
+     "desc": "The default CSS class for the checkbox (defaults to \"x-form-field\")",
      "memberOf": ""
     },
     {
-     "name": "grow",
+     "name": "checked",
      "type": "Boolean",
-     "desc": "",
-     "memberOf": ""
-    },
-    {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "",
+     "desc": "True if the the checkbox should render already checked (defaults to false)",
      "memberOf": ""
     },
     {
-     "name": "growMax",
-     "type": "Number",
-     "desc": "",
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"checkbox\", autocomplete: \"off\"})",
      "memberOf": ""
     },
     {
-     "name": "tpl",
-     "type": "String/Roo.Template",
-     "desc": "The template to use to render the output",
+     "name": "boxLabel",
+     "type": "String",
+     "desc": "The text that appears beside the checkbox",
      "memberOf": ""
     },
     {
-     "name": "listWidth",
-     "type": "Number",
-     "desc": "The width in pixels of the dropdown list (defaults to the width of the ComboBox field)",
+     "name": "inputValue",
+     "type": "String",
+     "desc": "The value that should go into the generated input element's value attribute",
      "memberOf": ""
     },
     {
-     "name": "displayField",
+     "name": "valueOff",
      "type": "String",
-     "desc": "The underlying data field name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'text' if mode = 'local')",
+     "desc": "The value that should go into the generated input element's value when unchecked.",
      "memberOf": ""
     },
     {
-     "name": "valueField",
+     "name": "fieldLabel",
      "type": "String",
-     "desc": "The underlying data value name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'value' if mode = 'local'). \nNote: use of a valueField requires the user make a selection\nin order for a value to be mapped.",
-     "memberOf": ""
+     "desc": "Label to use when rendering a form.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "hiddenName",
+     "name": "qtip",
      "type": "String",
-     "desc": "If specified, a hidden form field with this name is dynamically generated to store the\nfield's data value (defaults to the underlying DOM element's name)",
-     "memberOf": ""
+     "desc": "Mouse over tip",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "listClass",
+     "name": "name",
      "type": "String",
-     "desc": "CSS class to apply to the dropdown list element (defaults to '')",
-     "memberOf": ""
+     "desc": "The field's HTML name attribute.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "selectedClass",
+     "name": "invalidClass",
      "type": "String",
-     "desc": "CSS class to apply to the selected item in the dropdown list (defaults to 'x-combo-selected')",
-     "memberOf": ""
+     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "triggerClass",
+     "name": "invalidText",
      "type": "String",
-     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' and triggerClass will be <b>appended</b> if specified (defaults to 'x-form-arrow-trigger'\nwhich displays a downward arrow icon).",
-     "memberOf": ""
+     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "shadow",
-     "type": "Boolean/String",
-     "desc": "True or \"sides\" for the default effect, \"frame\" for 4-way shadow, and \"drop\" for bottom-right",
-     "memberOf": ""
+     "name": "validationEvent",
+     "type": "String/Boolean",
+     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "listAlign",
-     "type": "String",
-     "desc": "A valid anchor position value. See {@link Roo.Element#alignTo} for details on supported\nanchor positions (defaults to 'tl-bl')",
-     "memberOf": ""
+     "name": "validateOnBlur",
+     "type": "Boolean",
+     "desc": "Whether the field should validate when it loses focus (defaults to true).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "maxHeight",
+     "name": "validationDelay",
      "type": "Number",
-     "desc": "The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300)",
-     "memberOf": ""
+     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "triggerAction",
+     "name": "msgTarget",
      "type": "String",
-     "desc": "The action to execute when the trigger field is activated.  Use 'all' to run the\nquery specified by the allQuery config option (defaults to 'query')",
-     "memberOf": ""
+     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "minChars",
-     "type": "Number",
-     "desc": "The minimum number of characters the user must type before autocomplete and typeahead activate\n(defaults to 4, does not apply if editable = false)",
-     "memberOf": ""
+     "name": "msgFx",
+     "type": "String",
+     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "typeAhead",
+     "name": "readOnly",
      "type": "Boolean",
-     "desc": "True to populate and autoselect the remainder of the text being typed after a configurable\ndelay (typeAheadDelay) if it matches a known value (defaults to false)",
-     "memberOf": ""
+     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "queryDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to delay between the start of typing and sending the\nquery to filter the dropdown list (defaults to 500 if mode = 'remote' or 10 if mode = 'local')",
-     "memberOf": ""
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "True to disable the field (defaults to false).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "pageSize",
-     "type": "Number",
-     "desc": "If greater than 0, a paging toolbar is displayed in the footer of the dropdown list and the\nfilter queries will execute with page start and limit parameters.  Only applies when mode = 'remote' (defaults to 0)",
-     "memberOf": ""
+     "name": "inputType",
+     "type": "String",
+     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to select any existing text in the field immediately on focus.  Only applies\nwhen editable = true (defaults to false)",
-     "memberOf": ""
+     "name": "tabIndex",
+     "type": "Number",
+     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "queryParam",
-     "type": "String",
-     "desc": "Name of the query as it will be passed on the querystring (defaults to 'query')",
-     "memberOf": ""
+     "name": "value",
+     "type": "Mixed",
+     "desc": "A value to initialize this field with.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "loadingText",
+     "name": "cls",
      "type": "String",
-     "desc": "The text to display in the dropdown list while data is loading.  Only applies\nwhen mode = 'remote' (defaults to 'Loading...')",
-     "memberOf": ""
+     "desc": "A CSS class to apply to the field's underlying element.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "resizable",
-     "type": "Boolean",
-     "desc": "True to add a resize handle to the bottom of the dropdown list (defaults to false)",
-     "memberOf": ""
+     "name": "width",
+     "type": "Number",
+     "desc": "width (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
     },
     {
-     "name": "handleHeight",
+     "name": "height",
      "type": "Number",
-     "desc": "The height in pixels of the dropdown list resize handle if resizable = true (defaults to 8)",
-     "memberOf": ""
+     "desc": "height (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
     },
     {
-     "name": "editable",
-     "type": "Boolean",
-     "desc": "False to prevent the user from typing text directly into the field, just like a\ntraditional select (defaults to true)",
-     "memberOf": ""
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "allQuery",
-     "type": "String",
-     "desc": "The text query to send to the server to return all records for the list with no filtering (defaults to '')",
-     "memberOf": ""
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "mode",
+     "name": "hideMode",
      "type": "String",
-     "desc": "Set to 'local' if the ComboBox loads local data (defaults to 'remote' which loads from the server)",
-     "memberOf": ""
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
     },
     {
-     "name": "minListWidth",
-     "type": "Number",
-     "desc": "The minimum width of the dropdown list in pixels (defaults to 70, will be ignored if\nlistWidth has a higher value)",
-     "memberOf": ""
-    },
-    {
-     "name": "forceSelection",
-     "type": "Boolean",
-     "desc": "True to restrict the selected value to one of the values in the list, false to\nallow the user to set arbitrary text into the field (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "typeAheadDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to wait until the typeahead text is displayed\nif typeAhead = true (defaults to 250)",
-     "memberOf": ""
-    },
-    {
-     "name": "valueNotFoundText",
-     "type": "String",
-     "desc": "When using a name/value combo, if the value passed to setValue is not found in\nthe store, valueNotFoundText will be displayed as the field text if defined (defaults to undefined)",
-     "memberOf": ""
-    },
-    {
-     "name": "blockFocus",
-     "type": "Boolean",
-     "desc": "Prevents all focus calls, so it can work with things like HTML edtor bar",
-     "memberOf": ""
-    },
-    {
-     "name": "disableClear",
-     "type": "Boolean",
-     "desc": "Disable showing of clear button.",
-     "memberOf": ""
-    },
-    {
-     "name": "alwaysQuery",
-     "type": "Boolean",
-     "desc": "Disable caching of results, and always send query",
-     "memberOf": ""
-    },
-    {
-     "name": "hideTrigger",
-     "type": "Boolean",
-     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
-     "memberOf": "Roo.form.TriggerField"
-    },
-    {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "maskRe",
-     "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "minLengthText",
-     "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "maxLengthText",
-     "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "blankText",
-     "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "emptyText",
-     "type": "String",
-     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "Label to use when rendering a form.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "qtip",
-     "type": "String",
-     "desc": "Mouse over tip",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "name",
-     "type": "String",
-     "desc": "The field's HTML name attribute.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "invalidText",
-     "type": "String",
-     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "fieldClass",
-     "type": "String",
-     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "msgTarget",
-     "type": "String",
-     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "msgFx",
-     "type": "String",
-     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "True to disable the field (defaults to false).",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "inputType",
-     "type": "String",
-     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "tabIndex",
-     "type": "Number",
-     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "value",
-     "type": "Mixed",
-     "desc": "A value to initialize this field with.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "cls",
-     "type": "String",
-     "desc": "A CSS class to apply to the field's underlying element.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "width",
-     "type": "Number",
-     "desc": "width (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
-    },
-    {
-     "name": "height",
-     "type": "Number",
-     "desc": "height (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
-    },
-    {
-     "name": "disableClass",
-     "type": "String",
-     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
-     "memberOf": "Roo.Component"
-    },
-    {
-     "name": "allowDomMove",
-     "type": "Boolean",
-     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
-     "memberOf": "Roo.Component"
-    },
-    {
-     "name": "hideMode",
-     "type": "String",
-     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
-     "memberOf": "Roo.Component",
-     "optvals": [
-      "display",
-      "visibility"
-     ]
-    },
-    {
-     "name": "actionMode",
-     "type": "String",
-     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
-     "memberOf": "Roo.Component"
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
     },
     {
      "name": "listeners",
     }
    ],
    "events": [
-    {
-     "name": "add",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'add' icon is pressed (add a listener to enable add button)"
-    },
-    {
-     "name": "autosize",
-     "sig": "function (_self, width)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
-    {
-     "name": "beforequery",
-     "sig": "function (combo, query, forceAll, cancel, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before all queries are processed. Return false to cancel the query or set cancel to true.\nThe event object passed has these properties:"
-    },
     {
      "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is rendered. Return false to stop the render."
     },
-    {
-     "name": "beforeselect",
-     "sig": "function (combo, record, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a list item is selected. Return false to cancel the selection."
-    },
     {
      "name": "beforeshow",
      "sig": "function (_self)\n{\n\n}",
      "desc": "Fires just before the field blurs if the field value has changed."
     },
     {
-     "name": "collapse",
-     "sig": "function (combo)\n{\n\n}",
+     "name": "check",
+     "sig": "function (_self, checked)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the dropdown list is collapsed"
+     "desc": "Fires when the checkbox is checked or unchecked."
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Fires after the component is disabled."
     },
-    {
-     "name": "edit",
-     "sig": "function (combo, record)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'edit' icon is pressed (add a listener to enable add button)"
-    },
     {
      "name": "enable",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "expand",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the dropdown list is expanded"
-    },
     {
      "name": "focus",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is resized."
     },
-    {
-     "name": "select",
-     "sig": "function (combo, record, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a list item is selected"
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Clear any invalid styles/messages for this field"
     },
-    {
-     "name": "clearValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clears any text/value currently set in the field"
-    },
-    {
-     "name": "collapse",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hides the dropdown list if it is currently expanded. Fires the 'collapse' event on completion."
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Disable this component."
     },
-    {
-     "name": "doQuery",
-     "sig": "(String query, Boolean forceAll)",
-     "type": "function",
-     "desc": "Execute a query to filter the dropdown list.  Fires the beforequery event prior to performing the\nquery allowing the query action to be canceled if needed."
-    },
     {
      "name": "enable",
      "sig": "()",
      "type": "function",
      "desc": "Enable this component."
     },
-    {
-     "name": "expand",
-     "sig": "()",
-     "type": "function",
-     "desc": "Expands the dropdown list if it is currently hidden. Fires the 'expand' event on completion."
-    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the currently selected field value or empty string if no value is set."
+     "desc": "Returns the checked state of the checkbox."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
-    },
-    {
-     "name": "isExpanded",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the dropdown list is expanded, else false."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
      "type": "function",
      "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
     },
-    {
-     "name": "onTriggerClick",
-     "sig": "(EventObject e)",
-     "type": "function",
-     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
-    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "name": "reset",
      "sig": "()",
      "type": "function",
-     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
-    },
-    {
-     "name": "select",
-     "sig": "(Number index, Boolean scrollIntoView)",
-     "type": "function",
-     "desc": "Select an item in the dropdown list by its numeric index in the list. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
-    },
-    {
-     "name": "selectByValue",
-     "sig": "(String value, Boolean scrollIntoView)",
-     "type": "function",
-     "desc": "Select an item in the dropdown list by its data value. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
+     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
     },
     {
-     "name": "selectText",
-     "sig": "(Number start, Number end)",
+     "name": "resetHasChanged",
+     "sig": "()",
      "type": "function",
-     "desc": "Selects text in this field"
+     "desc": "stores the current value in loadedValue"
     },
     {
      "name": "setDisabled",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setEditable",
-     "sig": "(Boolean value)",
-     "type": "function",
-     "desc": "Allow or prevent the user from directly editing the field text.  If false is passed,\nthe user will only be able to select from the items defined in the dropdown list.  This method\nis the runtime equivalent of setting the 'editable' config option at config time."
-    },
-    {
-     "name": "setFromData",
-     "sig": "(Object value)",
-     "type": "function",
-     "desc": "Sets the value of the field based on a object which is related to the record format for the store."
-    },
     {
      "name": "setPagePosition",
      "sig": "(Number x, Number y)",
     },
     {
      "name": "setValue",
-     "sig": "(String value)",
+     "sig": "(Boolean/String value, Boolean/String suppressEvent)",
      "type": "function",
-     "desc": "Sets the specified value into the field.  If the value finds a match, the corresponding record text\nwill be displayed in the field.  If the value does not match the data value of an existing item,\nand the valueNotFoundText config option is defined, it will be displayed as the default field text.\nOtherwise the field will be blank (although the value will still be set)."
+     "desc": "Sets the checked state of the checkbox.\nOn is always based on a string comparison between inputValue and the param."
     },
     {
      "name": "setVisible",
      "sig": "()",
      "type": "function",
      "desc": "Validates the field value"
-    },
-    {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.form.ComboBoxArray": {
+  "Roo.form.Column": {
    "props": [
-    {
-     "name": "combo",
-     "type": "Roo.form.Combo",
-     "desc": "The combo box that is wrapped",
-     "memberOf": ""
-    },
     {
      "name": "width",
-     "type": "Number",
-     "desc": "The width of the box that displays the selected element",
-     "memberOf": ""
-    },
-    {
-     "name": "name",
-     "type": "String",
-     "desc": "The name of the visable items on this form (eg. titles not ids)",
+     "type": "Number/String",
+     "desc": "The fixed width of the column in pixels or CSS value (defaults to \"auto\")",
      "memberOf": ""
     },
     {
-     "name": "hiddenName",
-     "type": "String",
-     "desc": "The hidden name of the field, often contains an comma seperated list of names",
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec used to autocreate the column (defaults to {tag: 'div', cls: 'x-form-ct x-form-column'})",
      "memberOf": ""
     },
     {
-     "name": "grow",
-     "type": "Boolean",
-     "desc": "True if this field should automatically grow and shrink to its content",
-     "memberOf": "Roo.form.TextField"
+     "name": "style",
+     "type": "String/Object/Function",
+     "desc": "A style specification string, e.g. \"width:100px\", or object in the form {width:\"100px\"}, or\na function which returns such a specification.",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "The minimum width to allow when grow = true (defaults to 30)",
-     "memberOf": "Roo.form.TextField"
+     "name": "labelAlign",
+     "type": "String",
+     "desc": "Valid values are \"left,\" \"top\" and \"right\" (defaults to \"left\")",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "growMax",
+     "name": "labelWidth",
      "type": "Number",
-     "desc": "The maximum width to allow when grow = true (defaults to 800)",
-     "memberOf": "Roo.form.TextField"
+     "desc": "Fixed width in pixels of all field labels (defaults to undefined)",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.form.TextField"
+     "name": "clear",
+     "type": "Boolean",
+     "desc": "True to add a clearing element at the end of this layout, equivalent to CSS clear: both (defaults to true)",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "maskRe",
+     "name": "labelSeparator",
      "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.form.TextField"
+     "desc": "The separator to use after field labels (defaults to ':')",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "allowBlank",
+     "name": "hideLabels",
      "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.form.TextField"
+     "desc": "True to suppress the display of field labels in this layout (defaults to false)",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.form.TextField"
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.form.TextField"
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "minLengthText",
+     "name": "hideMode",
      "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": "Roo.form.TextField"
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
     },
     {
-     "name": "maxLengthText",
+     "name": "actionMode",
      "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.form.TextField"
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "blankText",
-     "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "emptyText",
-     "type": "String",
-     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "Label to use when rendering a form.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "qtip",
-     "type": "String",
-     "desc": "Mouse over tip",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "invalidText",
-     "type": "String",
-     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"20\", autocomplete: \"off\"})",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "fieldClass",
-     "type": "String",
-     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "msgTarget",
-     "type": "String",
-     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "msgFx",
-     "type": "String",
-     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "True to disable the field (defaults to false).",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "inputType",
-     "type": "String",
-     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "tabIndex",
-     "type": "Number",
-     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "value",
-     "type": "Mixed",
-     "desc": "A value to initialize this field with.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "cls",
-     "type": "String",
-     "desc": "A CSS class to apply to the field's underlying element.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "height",
-     "type": "Number",
-     "desc": "height (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
-    },
-    {
-     "name": "disableClass",
-     "type": "String",
-     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
-     "memberOf": "Roo.Component"
-    },
-    {
-     "name": "allowDomMove",
-     "type": "Boolean",
-     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
-     "memberOf": "Roo.Component"
-    },
-    {
-     "name": "hideMode",
-     "type": "String",
-     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
-     "memberOf": "Roo.Component",
-     "optvals": [
-      "display",
-      "visibility"
-     ]
-    },
-    {
-     "name": "actionMode",
-     "type": "String",
-     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
-     "memberOf": "Roo.Component"
-    },
-    {
-     "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": "autosize",
-     "sig": "function (_self, width)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
-    },
+     "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": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
-    {
-     "name": "beforeremove",
-     "sig": "function (_self, item)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before remove the value from the list"
-    },
     {
      "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "blur",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field loses input focus."
-    },
-    {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "focus",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field receives input focus."
-    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
-    },
-    {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the key up"
-    },
-    {
-     "name": "move",
-     "sig": "function (_self, x, y)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is moved."
-    },
-    {
-     "name": "remove",
-     "sig": "function (_self, item)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when remove the value from the list"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "resize",
-     "sig": "function (_self, adjWidth, adjHeight, rawWidth, rawHeight)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is resized."
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
-    },
-    {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
-    },
-    {
-     "name": "valid",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "desc": "Appends an event handler to this component"
     },
     {
-     "name": "applyTo",
-     "sig": "(String/HTMLElement/Element el)",
-     "type": "function",
-     "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
-    },
-    {
-     "name": "autoSize",
-     "sig": "()",
+     "name": "addxtype",
+     "sig": "(Object config)",
      "type": "function",
-     "desc": "Automatically grows the field to accomodate the width of the text up to the maximum field width allowed.\nThis only takes effect if grow = true, and fires the autosize event."
+     "desc": "Adds a object form elements (using the xtype property as the factory method.)\nValid xtypes are:  TextField, TextArea .... Button, Layout, FieldSet, Column"
     },
     {
      "name": "capture",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Try to focus this component."
     },
-    {
-     "name": "getBox",
-     "sig": "(Boolean local)",
-     "type": "function",
-     "desc": "Gets the current box measurements of the component's underlying element."
-    },
     {
      "name": "getEl",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getName",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the name attribute of the field if available"
-    },
-    {
-     "name": "getPosition",
-     "sig": "(Boolean local)",
-     "type": "function",
-     "desc": "Gets the current XY position of the component's underlying element."
-    },
-    {
-     "name": "getRawValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
-    },
-    {
-     "name": "getSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Gets the current size of the component's underlying element."
-    },
-    {
-     "name": "getValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "type": "function",
      "desc": "Hide this component."
     },
-    {
-     "name": "isDirty",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
-    },
-    {
-     "name": "isValid",
-     "sig": "(Boolean preventMark)",
-     "type": "function",
-     "desc": "Returns whether or not the field value is currently valid"
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
-    {
-     "name": "markInvalid",
-     "sig": "(String msg)",
-     "type": "function",
-     "desc": "Mark this field as invalid"
-    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
-    {
-     "name": "onPosition",
-     "sig": "(Number x, Number y)",
-     "type": "function",
-     "desc": "Called after the component is moved, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a move occurs."
-    },
-    {
-     "name": "onResize",
-     "sig": "(Number adjWidth, Number adjHeight, Number rawWidth, Number rawHeight)",
-     "type": "function",
-     "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
-    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
-    {
-     "name": "reset",
-     "sig": "()",
-     "type": "function",
-     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
-    },
-    {
-     "name": "selectText",
-     "sig": "(Number start, Number end)",
-     "type": "function",
-     "desc": "Selects text in this field"
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setPagePosition",
-     "sig": "(Number x, Number y)",
-     "type": "function",
-     "desc": "Sets the page XY position of the component.  To set the left and top instead, use {@link #setPosition}.\nThis method fires the move event."
-    },
-    {
-     "name": "setPosition",
-     "sig": "(Number left, Number top)",
-     "type": "function",
-     "desc": "Sets the left and top of the component.  To set the page XY position instead, use {@link #setPagePosition}.\nThis method fires the move event."
-    },
-    {
-     "name": "setRawValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
-    },
-    {
-     "name": "setSize",
-     "sig": "(Number/Object width, Number height)",
-     "type": "function",
-     "desc": "Sets the width and height of the component.  This method fires the resize event.  This method can accept\neither width and height as separate numeric arguments, or you can pass a size object like {width:10, height:20}."
-    },
-    {
-     "name": "setValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "type": "function",
      "desc": "Show this component."
     },
-    {
-     "name": "syncSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Force the component's size to recalculate based on the underlying element's current height and width."
-    },
     {
      "name": "un",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "updateBox",
-     "sig": "(Object box)",
-     "type": "function",
-     "desc": "Sets the current box measurements of the component's underlying element."
-    },
-    {
-     "name": "validate",
-     "sig": "()",
-     "type": "function",
-     "desc": "Validates the combox array value"
-    },
-    {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.form.ComboBoxArray.Item": {
+  "Roo.form.ComboBox": {
    "props": [
     {
-     "name": "width",
-     "type": "Number",
-     "desc": "width (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
+     "name": "transform",
+     "type": "String/HTMLElement/Element",
+     "desc": "The id, DOM node or element of an existing select to convert to a ComboBox",
+     "memberOf": ""
     },
     {
-     "name": "height",
-     "type": "Number",
-     "desc": "height (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
+     "name": "lazyRender",
+     "type": "Boolean",
+     "desc": "True to prevent the ComboBox from rendering until requested (should always be used when\nrendering into an Roo.Editor, defaults to false)",
+     "memberOf": ""
     },
     {
-     "name": "disableClass",
-     "type": "String",
-     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
-     "memberOf": "Roo.Component"
+     "name": "autoCreate",
+     "type": "Boolean/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to:\n{tag: \"input\", type: \"text\", size: \"24\", autocomplete: \"off\"})",
+     "memberOf": ""
     },
     {
-     "name": "allowDomMove",
-     "type": "Boolean",
-     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
-     "memberOf": "Roo.Component"
+     "name": "store",
+     "type": "Roo.data.Store",
+     "desc": "The data store to which this combo is bound (defaults to undefined)",
+     "memberOf": ""
     },
     {
-     "name": "hideMode",
+     "name": "title",
      "type": "String",
-     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
-     "memberOf": "Roo.Component",
-     "optvals": [
-      "display",
-      "visibility"
-     ]
+     "desc": "If supplied, a header element is created containing this text and added into the top of\nthe dropdown list (defaults to undefined, with no header element)",
+     "memberOf": ""
     },
     {
-     "name": "actionMode",
-     "type": "String",
-     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
-     "memberOf": "Roo.Component"
+     "name": "grow",
+     "type": "Boolean",
+     "desc": "",
+     "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": "growMin",
+     "type": "Number",
+     "desc": "",
+     "memberOf": ""
+    },
     {
-     "name": "beforedestroy",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+     "name": "growMax",
+     "type": "Number",
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "beforehide",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is hidden. Return false to stop the hide."
+     "name": "tpl",
+     "type": "String/Roo.Template",
+     "desc": "The template to use to render the output",
+     "memberOf": ""
     },
     {
-     "name": "beforerender",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is rendered. Return false to stop the render."
+     "name": "listWidth",
+     "type": "Number",
+     "desc": "The width in pixels of the dropdown list (defaults to the width of the ComboBox field)",
+     "memberOf": ""
     },
     {
-     "name": "beforeshow",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is shown.  Return false to stop the show."
+     "name": "displayField",
+     "type": "String",
+     "desc": "The underlying data field name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'text' if mode = 'local')",
+     "memberOf": ""
     },
     {
-     "name": "destroy",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is destroyed."
+     "name": "valueField",
+     "type": "String",
+     "desc": "The underlying data value name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'value' if mode = 'local'). \nNote: use of a valueField requires the user make a selection\nin order for a value to be mapped.",
+     "memberOf": ""
     },
     {
-     "name": "disable",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is disabled."
-    },
-    {
-     "name": "enable",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is enabled."
-    },
-    {
-     "name": "hide",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is hidden."
-    },
-    {
-     "name": "move",
-     "sig": "function (_self, x, y)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is moved."
-    },
-    {
-     "name": "render",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is rendered."
-    },
-    {
-     "name": "resize",
-     "sig": "function (_self, adjWidth, adjHeight, rawWidth, rawHeight)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is resized."
-    },
-    {
-     "name": "show",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is shown."
-    }
-   ],
-   "methods": [
-    {
-     "name": "addEvents",
-     "sig": "(Object object)",
-     "type": "function",
-     "desc": "Used to define events on this Observable"
-    },
-    {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this component"
-    },
-    {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
-     "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
-    },
-    {
-     "name": "destroy",
-     "sig": "()",
-     "type": "function",
-     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
-    },
-    {
-     "name": "disable",
-     "sig": "()",
-     "type": "function",
-     "desc": "Disable this component."
-    },
-    {
-     "name": "enable",
-     "sig": "()",
-     "type": "function",
-     "desc": "Enable this component."
-    },
-    {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
-     "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
-    },
-    {
-     "name": "focus",
-     "sig": "(Boolean selectText)",
-     "type": "function",
-     "desc": "Try to focus this component."
-    },
-    {
-     "name": "getBox",
-     "sig": "(Boolean local)",
-     "type": "function",
-     "desc": "Gets the current box measurements of the component's underlying element."
-    },
-    {
-     "name": "getEl",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the underlying {@link Roo.Element}."
-    },
-    {
-     "name": "getId",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the id of this component."
-    },
-    {
-     "name": "getPosition",
-     "sig": "(Boolean local)",
-     "type": "function",
-     "desc": "Gets the current XY position of the component's underlying element."
-    },
-    {
-     "name": "getSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Gets the current size of the component's underlying element."
-    },
-    {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
-    },
-    {
-     "name": "hide",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hide this component."
-    },
-    {
-     "name": "isVisible",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if this component is visible."
-    },
-    {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
-    },
-    {
-     "name": "onPosition",
-     "sig": "(Number x, Number y)",
-     "type": "function",
-     "desc": "Called after the component is moved, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a move occurs."
-    },
-    {
-     "name": "onResize",
-     "sig": "(Number adjWidth, Number adjHeight, Number rawWidth, Number rawHeight)",
-     "type": "function",
-     "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
-    },
-    {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
-    },
-    {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
-     "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
-    },
-    {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener"
-    },
-    {
-     "name": "render",
-     "sig": "(String/HTMLElement/Element container)",
-     "type": "function",
-     "desc": "If this is a lazy rendering component, render it to its container element."
-    },
-    {
-     "name": "setDisabled",
-     "sig": "(Boolean disabled)",
-     "type": "function",
-     "desc": "Convenience function for setting disabled/enabled by boolean."
-    },
-    {
-     "name": "setPagePosition",
-     "sig": "(Number x, Number y)",
-     "type": "function",
-     "desc": "Sets the page XY position of the component.  To set the left and top instead, use {@link #setPosition}.\nThis method fires the move event."
-    },
-    {
-     "name": "setPosition",
-     "sig": "(Number left, Number top)",
-     "type": "function",
-     "desc": "Sets the left and top of the component.  To set the page XY position instead, use {@link #setPagePosition}.\nThis method fires the move event."
-    },
-    {
-     "name": "setSize",
-     "sig": "(Number/Object width, Number height)",
-     "type": "function",
-     "desc": "Sets the width and height of the component.  This method fires the resize event.  This method can accept\neither width and height as separate numeric arguments, or you can pass a size object like {width:10, height:20}."
-    },
-    {
-     "name": "setVisible",
-     "sig": "(Boolean visible)",
-     "type": "function",
-     "desc": "Convenience function to hide or show this component by boolean."
-    },
-    {
-     "name": "show",
-     "sig": "()",
-     "type": "function",
-     "desc": "Show this component."
-    },
-    {
-     "name": "syncSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Force the component's size to recalculate based on the underlying element's current height and width."
-    },
-    {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "updateBox",
-     "sig": "(Object box)",
-     "type": "function",
-     "desc": "Sets the current box measurements of the component's underlying element."
-    }
-   ]
-  },
-  "Roo.form.ComboCheck": {
-   "props": [
-    {
-     "name": "transform",
-     "type": "String/HTMLElement/Element",
-     "desc": "The id, DOM node or element of an existing select to convert to a ComboBox",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "lazyRender",
-     "type": "Boolean",
-     "desc": "True to prevent the ComboBox from rendering until requested (should always be used when\nrendering into an Roo.Editor, defaults to false)",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "autoCreate",
-     "type": "Boolean/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to:\n{tag: \"input\", type: \"text\", size: \"24\", autocomplete: \"off\"})",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "store",
-     "type": "Roo.data.Store",
-     "desc": "The data store to which this combo is bound (defaults to undefined)",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "title",
-     "type": "String",
-     "desc": "If supplied, a header element is created containing this text and added into the top of\nthe dropdown list (defaults to undefined, with no header element)",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "grow",
-     "type": "Boolean",
-     "desc": "",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "growMax",
-     "type": "Number",
-     "desc": "",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "tpl",
-     "type": "String/Roo.Template",
-     "desc": "The template to use to render the output",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "listWidth",
-     "type": "Number",
-     "desc": "The width in pixels of the dropdown list (defaults to the width of the ComboBox field)",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "displayField",
-     "type": "String",
-     "desc": "The underlying data field name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'text' if mode = 'local')",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "valueField",
-     "type": "String",
-     "desc": "The underlying data value name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'value' if mode = 'local'). \nNote: use of a valueField requires the user make a selection\nin order for a value to be mapped.",
-     "memberOf": "Roo.form.ComboBox"
-    },
-    {
-     "name": "hiddenName",
-     "type": "String",
-     "desc": "If specified, a hidden form field with this name is dynamically generated to store the\nfield's data value (defaults to the underlying DOM element's name)",
-     "memberOf": "Roo.form.ComboBox"
+     "name": "hiddenName",
+     "type": "String",
+     "desc": "If specified, a hidden form field with this name is dynamically generated to store the\nfield's data value (defaults to the underlying DOM element's name)",
+     "memberOf": ""
     },
     {
      "name": "listClass",
      "type": "String",
      "desc": "CSS class to apply to the dropdown list element (defaults to '')",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "selectedClass",
      "type": "String",
      "desc": "CSS class to apply to the selected item in the dropdown list (defaults to 'x-combo-selected')",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "triggerClass",
      "type": "String",
      "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' and triggerClass will be <b>appended</b> if specified (defaults to 'x-form-arrow-trigger'\nwhich displays a downward arrow icon).",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "shadow",
      "type": "Boolean/String",
      "desc": "True or \"sides\" for the default effect, \"frame\" for 4-way shadow, and \"drop\" for bottom-right",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "listAlign",
      "type": "String",
      "desc": "A valid anchor position value. See {@link Roo.Element#alignTo} for details on supported\nanchor positions (defaults to 'tl-bl')",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "maxHeight",
      "type": "Number",
      "desc": "The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "triggerAction",
      "type": "String",
      "desc": "The action to execute when the trigger field is activated.  Use 'all' to run the\nquery specified by the allQuery config option (defaults to 'query')",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "minChars",
      "type": "Number",
      "desc": "The minimum number of characters the user must type before autocomplete and typeahead activate\n(defaults to 4, does not apply if editable = false)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "typeAhead",
      "type": "Boolean",
      "desc": "True to populate and autoselect the remainder of the text being typed after a configurable\ndelay (typeAheadDelay) if it matches a known value (defaults to false)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "queryDelay",
      "type": "Number",
      "desc": "The length of time in milliseconds to delay between the start of typing and sending the\nquery to filter the dropdown list (defaults to 500 if mode = 'remote' or 10 if mode = 'local')",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "pageSize",
      "type": "Number",
      "desc": "If greater than 0, a paging toolbar is displayed in the footer of the dropdown list and the\nfilter queries will execute with page start and limit parameters.  Only applies when mode = 'remote' (defaults to 0)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "selectOnFocus",
      "type": "Boolean",
      "desc": "True to select any existing text in the field immediately on focus.  Only applies\nwhen editable = true (defaults to false)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "queryParam",
      "type": "String",
      "desc": "Name of the query as it will be passed on the querystring (defaults to 'query')",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "loadingText",
      "type": "String",
      "desc": "The text to display in the dropdown list while data is loading.  Only applies\nwhen mode = 'remote' (defaults to 'Loading...')",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "resizable",
      "type": "Boolean",
      "desc": "True to add a resize handle to the bottom of the dropdown list (defaults to false)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "handleHeight",
      "type": "Number",
      "desc": "The height in pixels of the dropdown list resize handle if resizable = true (defaults to 8)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "editable",
      "type": "Boolean",
      "desc": "False to prevent the user from typing text directly into the field, just like a\ntraditional select (defaults to true)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "allQuery",
      "type": "String",
      "desc": "The text query to send to the server to return all records for the list with no filtering (defaults to '')",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "mode",
      "type": "String",
      "desc": "Set to 'local' if the ComboBox loads local data (defaults to 'remote' which loads from the server)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "minListWidth",
      "type": "Number",
      "desc": "The minimum width of the dropdown list in pixels (defaults to 70, will be ignored if\nlistWidth has a higher value)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "forceSelection",
      "type": "Boolean",
      "desc": "True to restrict the selected value to one of the values in the list, false to\nallow the user to set arbitrary text into the field (defaults to false)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "typeAheadDelay",
      "type": "Number",
      "desc": "The length of time in milliseconds to wait until the typeahead text is displayed\nif typeAhead = true (defaults to 250)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "valueNotFoundText",
      "type": "String",
      "desc": "When using a name/value combo, if the value passed to setValue is not found in\nthe store, valueNotFoundText will be displayed as the field text if defined (defaults to undefined)",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "blockFocus",
      "type": "Boolean",
      "desc": "Prevents all focus calls, so it can work with things like HTML edtor bar",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "disableClear",
      "type": "Boolean",
      "desc": "Disable showing of clear button.",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "alwaysQuery",
      "type": "Boolean",
      "desc": "Disable caching of results, and always send query",
-     "memberOf": "Roo.form.ComboBox"
+     "memberOf": ""
     },
     {
      "name": "hideTrigger",
      "type": "function",
      "desc": "Returns the currently selected field value or empty string if no value is set."
     },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isExpanded",
      "type": "function",
      "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
     },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
     {
      "name": "select",
      "sig": "(Number index, Boolean scrollIntoView)",
     }
    ]
   },
-  "Roo.form.DateField": {
+  "Roo.form.ComboBoxArray": {
    "props": [
     {
-     "name": "format",
-     "type": "String",
-     "desc": "The default date format string which can be overriden for localization support.  The format must be\nvalid according to {@link Date#parseDate} (defaults to 'm/d/y').",
-     "memberOf": ""
-    },
-    {
-     "name": "altFormats",
-     "type": "String",
-     "desc": "Multiple date formats separated by \"|\" to try when parsing a user input value and it doesn't match the defined\nformat (defaults to 'm/d/Y|m-d-y|m-d-Y|m/d|m-d|d').",
-     "memberOf": ""
-    },
-    {
-     "name": "disabledDays",
-     "type": "Array",
-     "desc": "An array of days to disable, 0 based. For example, [0, 6] disables Sunday and Saturday (defaults to null).",
-     "memberOf": ""
-    },
-    {
-     "name": "disabledDaysText",
-     "type": "String",
-     "desc": "The tooltip to display when the date falls on a disabled day (defaults to 'Disabled')",
-     "memberOf": ""
-    },
-    {
-     "name": "disabledDates",
-     "type": "Array",
-     "desc": "An array of \"dates\" to disable, as strings. These strings will be used to build a dynamic regular\nexpression so they are very powerful. Some examples:\n<ul>\n<li>[\"03/08/2003\", \"09/16/2003\"] would disable those exact dates</li>\n<li>[\"03/08\", \"09/16\"] would disable those days for every year</li>\n<li>[\"^03/08\"] would only match the beginning (useful if you are using short years)</li>\n<li>[\"03/../2006\"] would disable every day in March 2006</li>\n<li>[\"^03\"] would disable every day in every March</li>\n</ul>\nIn order to support regular expressions, if you are using a date format that has \".\" in it, you will have to\nescape the dot when restricting dates. For example: [\"03\\\\.08\\\\.03\"].",
-     "memberOf": ""
-    },
-    {
-     "name": "disabledDatesText",
-     "type": "String",
-     "desc": "The tooltip text to display when the date falls on a disabled date (defaults to 'Disabled')",
-     "memberOf": ""
-    },
-    {
-     "name": "minValue",
-     "type": "Date/String",
-     "desc": "The minimum allowed date. Can be either a Javascript date object or a string date in a\nvalid format (defaults to null).",
-     "memberOf": ""
-    },
-    {
-     "name": "maxValue",
-     "type": "Date/String",
-     "desc": "The maximum allowed date. Can be either a Javascript date object or a string date in a\nvalid format (defaults to null).",
-     "memberOf": ""
-    },
-    {
-     "name": "minText",
-     "type": "String",
-     "desc": "The error text to display when the date in the cell is before minValue (defaults to\n'The date in this field must be after {minValue}').",
+     "name": "combo",
+     "type": "Roo.form.Combo",
+     "desc": "The combo box that is wrapped",
      "memberOf": ""
     },
     {
-     "name": "maxText",
-     "type": "String",
-     "desc": "The error text to display when the date in the cell is after maxValue (defaults to\n'The date in this field must be before {maxValue}').",
+     "name": "width",
+     "type": "Number",
+     "desc": "The width of the box that displays the selected element",
      "memberOf": ""
     },
     {
-     "name": "invalidText",
+     "name": "name",
      "type": "String",
-     "desc": "The error text to display when the date in the field is invalid (defaults to\n'{value} is not a valid date - it must be in the format {format}').",
+     "desc": "The name of the visable items on this form (eg. titles not ids)",
      "memberOf": ""
     },
     {
-     "name": "triggerClass",
+     "name": "hiddenName",
      "type": "String",
-     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' and triggerClass will be <b>appended</b> if specified (defaults to 'x-form-date-trigger'\nwhich displays a calendar icon).",
+     "desc": "The hidden name of the field, often contains an comma seperated list of names",
      "memberOf": ""
     },
     {
-     "name": "useIso",
+     "name": "grow",
      "type": "Boolean",
-     "desc": "if enabled, then the date field will use a hidden field to store the \nreal value as iso formated date. default (false)",
-     "memberOf": ""
+     "desc": "True if this field should automatically grow and shrink to its content",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"10\", autocomplete: \"off\"})",
-     "memberOf": ""
+     "name": "growMin",
+     "type": "Number",
+     "desc": "The minimum width to allow when grow = true (defaults to 30)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "hideTrigger",
-     "type": "Boolean",
-     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
-     "memberOf": "Roo.form.TriggerField"
+     "name": "growMax",
+     "type": "Number",
+     "desc": "The maximum width to allow when grow = true (defaults to 800)",
+     "memberOf": "Roo.form.TextField"
     },
     {
      "name": "vtype",
      "memberOf": "Roo.form.Field"
     },
     {
-     "name": "name",
+     "name": "invalidClass",
      "type": "String",
-     "desc": "The field's HTML name attribute.",
+     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
      "memberOf": "Roo.form.Field"
     },
     {
-     "name": "invalidClass",
+     "name": "invalidText",
      "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
+     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
      "memberOf": "Roo.form.Field"
     },
     {
      "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
      "memberOf": "Roo.form.Field"
     },
+    {
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"20\", autocomplete: \"off\"})",
+     "memberOf": "Roo.form.Field"
+    },
     {
      "name": "fieldClass",
      "type": "String",
      "desc": "A CSS class to apply to the field's underlying element.",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "width",
-     "type": "Number",
-     "desc": "width (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
-    },
     {
      "name": "height",
      "type": "Number",
      "type": "function",
      "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
+    {
+     "name": "beforeremove",
+     "sig": "function (_self, item)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before remove the value from the list"
+    },
     {
      "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is moved."
     },
+    {
+     "name": "remove",
+     "sig": "function (_self, item)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when remove the value from the list"
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is resized."
     },
-    {
-     "name": "select",
-     "sig": "function (combo, date)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a date is selected"
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
     },
+    {
+     "name": "autoSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Automatically grows the field to accomodate the width of the text up to the maximum field width allowed.\nThis only takes effect if grow = true, and fires the autosize event."
+    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the current date value of the date field."
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
      "type": "function",
      "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
     },
-    {
-     "name": "onTriggerClick",
-     "sig": "(EventObject e)",
-     "type": "function",
-     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
-    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "type": "function",
      "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
     },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
     {
      "name": "selectText",
      "sig": "(Number start, Number end)",
     },
     {
      "name": "setValue",
-     "sig": "(String/Date date)",
+     "sig": "(Mixed value)",
      "type": "function",
-     "desc": "Sets the value of the date field.  You can pass a date object or any string that can be parsed into a valid\ndate, using DateField.format as the date format, according to the same rules as {@link Date#parseDate}\n(the default format used is \"m/d/y\").\n<br />Usage:\n<pre><code>\n//All of these calls set the same date value (May 4, 2006)\n\n//Pass a date object:\nvar dt = new Date('5/4/06');\ndateField.setValue(dt);\n\n//Pass a date string (default format):\ndateField.setValue('5/4/06');\n\n//Pass a date string (custom format):\ndateField.format = 'Y-m-d';\ndateField.setValue('2006-5-4');\n</code></pre>"
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
     },
     {
      "name": "setVisible",
      "name": "validate",
      "sig": "()",
      "type": "function",
-     "desc": "Validates the field value"
+     "desc": "Validates the combox array value"
     },
     {
      "name": "validateValue",
     }
    ]
   },
-  "Roo.form.DayPicker": {
+  "Roo.form.ComboBoxArray.Item": {
    "props": [
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the checkbox receives focus (defaults to undefined)",
-     "memberOf": ""
-    },
-    {
-     "name": "fieldClass",
-     "type": "String",
-     "desc": "The default CSS class for the checkbox (defaults to \"x-form-field\")",
-     "memberOf": ""
-    },
-    {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"checkbox\", autocomplete: \"off\"})",
-     "memberOf": ""
-    },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "Label to use when rendering a form.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "qtip",
-     "type": "String",
-     "desc": "Mouse over tip",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "name",
-     "type": "String",
-     "desc": "The field's HTML name attribute.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "invalidText",
-     "type": "String",
-     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "msgTarget",
-     "type": "String",
-     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "msgFx",
-     "type": "String",
-     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "True to disable the field (defaults to false).",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "inputType",
-     "type": "String",
-     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "tabIndex",
-     "type": "Number",
-     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "value",
-     "type": "Mixed",
-     "desc": "A value to initialize this field with.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "cls",
-     "type": "String",
-     "desc": "A CSS class to apply to the field's underlying element.",
-     "memberOf": "Roo.form.Field"
-    },
     {
      "name": "width",
      "type": "Number",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "blur",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field loses input focus."
-    },
-    {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "focus",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field receives input focus."
-    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
-    },
-    {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the key up"
-    },
     {
      "name": "move",
      "sig": "function (_self, x, y)\n{\n\n}",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
-    },
-    {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
-    },
-    {
-     "name": "valid",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Appends an event handler to this component"
     },
-    {
-     "name": "applyTo",
-     "sig": "(String/HTMLElement/Element el)",
-     "type": "function",
-     "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
-    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getName",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the name attribute of the field if available"
-    },
     {
      "name": "getPosition",
      "sig": "(Boolean local)",
      "type": "function",
      "desc": "Gets the current XY position of the component's underlying element."
     },
-    {
-     "name": "getRawValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
-    },
     {
      "name": "getSize",
      "sig": "()",
      "type": "function",
      "desc": "Gets the current size of the component's underlying element."
     },
-    {
-     "name": "getValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the checked state of the checkbox."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "type": "function",
      "desc": "Hide this component."
     },
-    {
-     "name": "isDirty",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
-    },
-    {
-     "name": "isValid",
-     "sig": "(Boolean preventMark)",
-     "type": "function",
-     "desc": "Returns whether or not the field value is currently valid"
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
-    {
-     "name": "markInvalid",
-     "sig": "(String msg)",
-     "type": "function",
-     "desc": "Mark this field as invalid"
-    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
-    {
-     "name": "reset",
-     "sig": "()",
-     "type": "function",
-     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Sets the left and top of the component.  To set the page XY position instead, use {@link #setPagePosition}.\nThis method fires the move event."
     },
-    {
-     "name": "setRawValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
-    },
     {
      "name": "setSize",
      "sig": "(Number/Object width, Number height)",
      "type": "function",
      "desc": "Sets the width and height of the component.  This method fires the resize event.  This method can accept\neither width and height as separate numeric arguments, or you can pass a size object like {width:10, height:20}."
     },
-    {
-     "name": "setValue",
-     "sig": "(Boolean/String value, Boolean/String suppressEvent)",
-     "type": "function",
-     "desc": "Sets the checked state of the checkbox.\nOn is always based on a string comparison between inputValue and the param."
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "sig": "(Object box)",
      "type": "function",
      "desc": "Sets the current box measurements of the component's underlying element."
-    },
-    {
-     "name": "validate",
-     "sig": "()",
-     "type": "function",
-     "desc": "Validates the field value"
     }
    ]
   },
-  "Roo.form.DisplayField": {
+  "Roo.form.ComboCheck": {
    "props": [
     {
-     "name": "focusClass",
+     "name": "transform",
+     "type": "String/HTMLElement/Element",
+     "desc": "The id, DOM node or element of an existing select to convert to a ComboBox",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "lazyRender",
+     "type": "Boolean",
+     "desc": "True to prevent the ComboBox from rendering until requested (should always be used when\nrendering into an Roo.Editor, defaults to false)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "autoCreate",
+     "type": "Boolean/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to:\n{tag: \"input\", type: \"text\", size: \"24\", autocomplete: \"off\"})",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "store",
+     "type": "Roo.data.Store",
+     "desc": "The data store to which this combo is bound (defaults to undefined)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "title",
      "type": "String",
-     "desc": "The CSS class to use when the checkbox receives focus (defaults to undefined)",
-     "memberOf": ""
+     "desc": "If supplied, a header element is created containing this text and added into the top of\nthe dropdown list (defaults to undefined, with no header element)",
+     "memberOf": "Roo.form.ComboBox"
     },
     {
-     "name": "fieldClass",
+     "name": "grow",
+     "type": "Boolean",
+     "desc": "",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "growMin",
+     "type": "Number",
+     "desc": "",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "growMax",
+     "type": "Number",
+     "desc": "",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "tpl",
+     "type": "String/Roo.Template",
+     "desc": "The template to use to render the output",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "listWidth",
+     "type": "Number",
+     "desc": "The width in pixels of the dropdown list (defaults to the width of the ComboBox field)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "displayField",
      "type": "String",
-     "desc": "The default CSS class for the checkbox (defaults to \"x-form-field\")",
-     "memberOf": ""
+     "desc": "The underlying data field name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'text' if mode = 'local')",
+     "memberOf": "Roo.form.ComboBox"
     },
     {
-     "name": "valueRenderer",
+     "name": "valueField",
+     "type": "String",
+     "desc": "The underlying data value name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'value' if mode = 'local'). \nNote: use of a valueField requires the user make a selection\nin order for a value to be mapped.",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "hiddenName",
+     "type": "String",
+     "desc": "If specified, a hidden form field with this name is dynamically generated to store the\nfield's data value (defaults to the underlying DOM element's name)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "listClass",
+     "type": "String",
+     "desc": "CSS class to apply to the dropdown list element (defaults to '')",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "selectedClass",
+     "type": "String",
+     "desc": "CSS class to apply to the selected item in the dropdown list (defaults to 'x-combo-selected')",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "triggerClass",
+     "type": "String",
+     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' and triggerClass will be <b>appended</b> if specified (defaults to 'x-form-arrow-trigger'\nwhich displays a downward arrow icon).",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "shadow",
+     "type": "Boolean/String",
+     "desc": "True or \"sides\" for the default effect, \"frame\" for 4-way shadow, and \"drop\" for bottom-right",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "listAlign",
+     "type": "String",
+     "desc": "A valid anchor position value. See {@link Roo.Element#alignTo} for details on supported\nanchor positions (defaults to 'tl-bl')",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "maxHeight",
+     "type": "Number",
+     "desc": "The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "triggerAction",
+     "type": "String",
+     "desc": "The action to execute when the trigger field is activated.  Use 'all' to run the\nquery specified by the allQuery config option (defaults to 'query')",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "minChars",
+     "type": "Number",
+     "desc": "The minimum number of characters the user must type before autocomplete and typeahead activate\n(defaults to 4, does not apply if editable = false)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "typeAhead",
+     "type": "Boolean",
+     "desc": "True to populate and autoselect the remainder of the text being typed after a configurable\ndelay (typeAheadDelay) if it matches a known value (defaults to false)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "queryDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds to delay between the start of typing and sending the\nquery to filter the dropdown list (defaults to 500 if mode = 'remote' or 10 if mode = 'local')",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "pageSize",
+     "type": "Number",
+     "desc": "If greater than 0, a paging toolbar is displayed in the footer of the dropdown list and the\nfilter queries will execute with page start and limit parameters.  Only applies when mode = 'remote' (defaults to 0)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "selectOnFocus",
+     "type": "Boolean",
+     "desc": "True to select any existing text in the field immediately on focus.  Only applies\nwhen editable = true (defaults to false)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "queryParam",
+     "type": "String",
+     "desc": "Name of the query as it will be passed on the querystring (defaults to 'query')",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "loadingText",
+     "type": "String",
+     "desc": "The text to display in the dropdown list while data is loading.  Only applies\nwhen mode = 'remote' (defaults to 'Loading...')",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "resizable",
+     "type": "Boolean",
+     "desc": "True to add a resize handle to the bottom of the dropdown list (defaults to false)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "handleHeight",
+     "type": "Number",
+     "desc": "The height in pixels of the dropdown list resize handle if resizable = true (defaults to 8)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "editable",
+     "type": "Boolean",
+     "desc": "False to prevent the user from typing text directly into the field, just like a\ntraditional select (defaults to true)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "allQuery",
+     "type": "String",
+     "desc": "The text query to send to the server to return all records for the list with no filtering (defaults to '')",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "mode",
+     "type": "String",
+     "desc": "Set to 'local' if the ComboBox loads local data (defaults to 'remote' which loads from the server)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "minListWidth",
+     "type": "Number",
+     "desc": "The minimum width of the dropdown list in pixels (defaults to 70, will be ignored if\nlistWidth has a higher value)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "forceSelection",
+     "type": "Boolean",
+     "desc": "True to restrict the selected value to one of the values in the list, false to\nallow the user to set arbitrary text into the field (defaults to false)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "typeAheadDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds to wait until the typeahead text is displayed\nif typeAhead = true (defaults to 250)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "valueNotFoundText",
+     "type": "String",
+     "desc": "When using a name/value combo, if the value passed to setValue is not found in\nthe store, valueNotFoundText will be displayed as the field text if defined (defaults to undefined)",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "blockFocus",
+     "type": "Boolean",
+     "desc": "Prevents all focus calls, so it can work with things like HTML edtor bar",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "disableClear",
+     "type": "Boolean",
+     "desc": "Disable showing of clear button.",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "alwaysQuery",
+     "type": "Boolean",
+     "desc": "Disable caching of results, and always send query",
+     "memberOf": "Roo.form.ComboBox"
+    },
+    {
+     "name": "hideTrigger",
+     "type": "Boolean",
+     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
+     "memberOf": "Roo.form.TriggerField"
+    },
+    {
+     "name": "vtype",
+     "type": "String",
+     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "maskRe",
+     "type": "String",
+     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "disableKeyFilter",
+     "type": "Boolean",
+     "desc": "True to disable input keystroke filtering (defaults to false)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "allowBlank",
+     "type": "Boolean",
+     "desc": "False to validate that the value length > 0 (defaults to true)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "minLength",
+     "type": "Number",
+     "desc": "Minimum input field length required (defaults to 0)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "maxLength",
+     "type": "Number",
+     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "minLengthText",
+     "type": "String",
+     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "maxLengthText",
+     "type": "String",
+     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "blankText",
+     "type": "String",
+     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "validator",
      "type": "Function",
-     "desc": "The renderer for the field (so you can reformat output). should return raw HTML",
-     "memberOf": ""
+     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"checkbox\", autocomplete: \"off\"})",
-     "memberOf": ""
+     "name": "regex",
+     "type": "RegExp",
+     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "regexText",
+     "type": "String",
+     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "emptyText",
+     "type": "String",
+     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
+     "memberOf": "Roo.form.TextField"
     },
     {
      "name": "fieldLabel",
      "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
      "memberOf": "Roo.form.Field"
     },
+    {
+     "name": "focusClass",
+     "type": "String",
+     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
+     "memberOf": "Roo.form.Field"
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
      "memberOf": "Roo.form.Field"
     },
+    {
+     "name": "fieldClass",
+     "type": "String",
+     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
+     "memberOf": "Roo.form.Field"
+    },
     {
      "name": "msgTarget",
      "type": "String",
     }
    ],
    "events": [
+    {
+     "name": "add",
+     "sig": "function (combo)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the 'add' icon is pressed (add a listener to enable add button)"
+    },
+    {
+     "name": "autosize",
+     "sig": "function (_self, width)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
+    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
+    {
+     "name": "beforequery",
+     "sig": "function (combo, query, forceAll, cancel, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before all queries are processed. Return false to cancel the query or set cancel to true.\nThe event object passed has these properties:"
+    },
     {
      "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is rendered. Return false to stop the render."
     },
+    {
+     "name": "beforeselect",
+     "sig": "function (combo, record, index)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before a list item is selected. Return false to cancel the selection."
+    },
     {
      "name": "beforeshow",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires just before the field blurs if the field value has changed."
     },
+    {
+     "name": "collapse",
+     "sig": "function (combo)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the dropdown list is collapsed"
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is disabled."
     },
+    {
+     "name": "edit",
+     "sig": "function (combo, record)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the 'edit' icon is pressed (add a listener to enable add button)"
+    },
     {
      "name": "enable",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
+    {
+     "name": "expand",
+     "sig": "function (combo)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the dropdown list is expanded"
+    },
     {
      "name": "focus",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is resized."
     },
+    {
+     "name": "select",
+     "sig": "function (combo, record, index)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a list item is selected"
+    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "desc": "Clear any invalid styles/messages for this field"
     },
     {
-     "name": "destroy",
+     "name": "clearValue",
      "sig": "()",
      "type": "function",
-     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+     "desc": "Clears any text/value currently set in the field"
     },
     {
-     "name": "disable",
+     "name": "collapse",
      "sig": "()",
      "type": "function",
-     "desc": "Disable this component."
+     "desc": "Hides the dropdown list if it is currently expanded. Fires the 'collapse' event on completion."
     },
     {
-     "name": "enable",
+     "name": "destroy",
      "sig": "()",
      "type": "function",
-     "desc": "Enable this component."
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
+     "name": "disable",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "desc": "Disable this component."
+    },
+    {
+     "name": "doQuery",
+     "sig": "(String query, Boolean forceAll)",
+     "type": "function",
+     "desc": "Execute a query to filter the dropdown list.  Fires the beforequery event prior to performing the\nquery allowing the query action to be canceled if needed."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
+    },
+    {
+     "name": "expand",
+     "sig": "()",
+     "type": "function",
+     "desc": "Expands the dropdown list if it is currently hidden. Fires the 'expand' event on completion."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
      "name": "focus",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+     "desc": "Returns the currently selected field value or empty string if no value is set."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
+    },
+    {
+     "name": "isExpanded",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the dropdown list is expanded, else false."
     },
     {
      "name": "isValid",
      "type": "function",
      "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
     },
+    {
+     "name": "onTriggerClick",
+     "sig": "(EventObject e)",
+     "type": "function",
+     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
+    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "name": "reset",
      "sig": "()",
      "type": "function",
-     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
+     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
+    },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
+    {
+     "name": "select",
+     "sig": "(Number index, Boolean scrollIntoView)",
+     "type": "function",
+     "desc": "Select an item in the dropdown list by its numeric index in the list. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
+    },
+    {
+     "name": "selectByValue",
+     "sig": "(String value, Boolean scrollIntoView)",
+     "type": "function",
+     "desc": "Select an item in the dropdown list by its data value. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
+    },
+    {
+     "name": "selectText",
+     "sig": "(Number start, Number end)",
+     "type": "function",
+     "desc": "Selects text in this field"
     },
     {
      "name": "setDisabled",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setEditable",
+     "sig": "(Boolean value)",
+     "type": "function",
+     "desc": "Allow or prevent the user from directly editing the field text.  If false is passed,\nthe user will only be able to select from the items defined in the dropdown list.  This method\nis the runtime equivalent of setting the 'editable' config option at config time."
+    },
+    {
+     "name": "setFromData",
+     "sig": "(Object value)",
+     "type": "function",
+     "desc": "Sets the value of the field based on a object which is related to the record format for the store."
+    },
     {
      "name": "setPagePosition",
      "sig": "(Number x, Number y)",
     },
     {
      "name": "setValue",
-     "sig": "(Boolean/String checked)",
+     "sig": "(String value)",
      "type": "function",
-     "desc": "Sets the checked state of the checkbox."
+     "desc": "Sets the specified value into the field.  If the value finds a match, the corresponding record text\nwill be displayed in the field.  If the value does not match the data value of an existing item,\nand the valueNotFoundText config option is defined, it will be displayed as the default field text.\nOtherwise the field will be blank (although the value will still be set)."
     },
     {
      "name": "setVisible",
      "sig": "()",
      "type": "function",
      "desc": "Validates the field value"
+    },
+    {
+     "name": "validateValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.form.FCKeditor": {
+  "Roo.form.DateField": {
    "props": [
     {
-     "name": "fck",
-     "type": "Object",
-     "desc": "options - see fck manual for details.",
+     "name": "format",
+     "type": "String",
+     "desc": "The default date format string which can be overriden for localization support.  The format must be\nvalid according to {@link Date#parseDate} (defaults to 'm/d/y').",
      "memberOf": ""
     },
     {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "The minimum height to allow when grow = true (defaults to 60)",
-     "memberOf": "Roo.form.TextArea"
+     "name": "altFormats",
+     "type": "String",
+     "desc": "Multiple date formats separated by \"|\" to try when parsing a user input value and it doesn't match the defined\nformat (defaults to 'm/d/Y|m-d-y|m-d-Y|m/d|m-d|d').",
+     "memberOf": ""
     },
     {
-     "name": "growMax",
-     "type": "Number",
-     "desc": "The maximum height to allow when grow = true (defaults to 1000)",
-     "memberOf": "Roo.form.TextArea"
+     "name": "disabledDays",
+     "type": "Array",
+     "desc": "An array of days to disable, 0 based. For example, [0, 6] disables Sunday and Saturday (defaults to null).",
+     "memberOf": ""
     },
     {
-     "name": "preventScrollbars",
+     "name": "disabledDaysText",
+     "type": "String",
+     "desc": "The tooltip to display when the date falls on a disabled day (defaults to 'Disabled')",
+     "memberOf": ""
+    },
+    {
+     "name": "disabledDates",
+     "type": "Array",
+     "desc": "An array of \"dates\" to disable, as strings. These strings will be used to build a dynamic regular\nexpression so they are very powerful. Some examples:\n<ul>\n<li>[\"03/08/2003\", \"09/16/2003\"] would disable those exact dates</li>\n<li>[\"03/08\", \"09/16\"] would disable those days for every year</li>\n<li>[\"^03/08\"] would only match the beginning (useful if you are using short years)</li>\n<li>[\"03/../2006\"] would disable every day in March 2006</li>\n<li>[\"^03\"] would disable every day in every March</li>\n</ul>\nIn order to support regular expressions, if you are using a date format that has \".\" in it, you will have to\nescape the dot when restricting dates. For example: [\"03\\\\.08\\\\.03\"].",
+     "memberOf": ""
+    },
+    {
+     "name": "disabledDatesText",
+     "type": "String",
+     "desc": "The tooltip text to display when the date falls on a disabled date (defaults to 'Disabled')",
+     "memberOf": ""
+    },
+    {
+     "name": "minValue",
+     "type": "Date/String",
+     "desc": "The minimum allowed date. Can be either a Javascript date object or a string date in a\nvalid format (defaults to null).",
+     "memberOf": ""
+    },
+    {
+     "name": "maxValue",
+     "type": "Date/String",
+     "desc": "The maximum allowed date. Can be either a Javascript date object or a string date in a\nvalid format (defaults to null).",
+     "memberOf": ""
+    },
+    {
+     "name": "minText",
+     "type": "String",
+     "desc": "The error text to display when the date in the cell is before minValue (defaults to\n'The date in this field must be after {minValue}').",
+     "memberOf": ""
+    },
+    {
+     "name": "maxText",
+     "type": "String",
+     "desc": "The error text to display when the date in the cell is after maxValue (defaults to\n'The date in this field must be before {maxValue}').",
+     "memberOf": ""
+    },
+    {
+     "name": "invalidText",
+     "type": "String",
+     "desc": "The error text to display when the date in the field is invalid (defaults to\n'{value} is not a valid date - it must be in the format {format}').",
+     "memberOf": ""
+    },
+    {
+     "name": "triggerClass",
+     "type": "String",
+     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' and triggerClass will be <b>appended</b> if specified (defaults to 'x-form-date-trigger'\nwhich displays a calendar icon).",
+     "memberOf": ""
+    },
+    {
+     "name": "useIso",
      "type": "Boolean",
-     "desc": "True to prevent scrollbars from appearing regardless of how much text is\nin the field (equivalent to setting overflow: hidden, defaults to false)",
-     "memberOf": "Roo.form.TextArea"
+     "desc": "if enabled, then the date field will use a hidden field to store the \nreal value as iso formated date. default (false)",
+     "memberOf": ""
     },
     {
      "name": "autoCreate",
      "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"textarea\", style: \"width:300px;height:60px;\", autocomplete: \"off\"})",
-     "memberOf": "Roo.form.TextArea"
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"10\", autocomplete: \"off\"})",
+     "memberOf": ""
     },
     {
-     "name": "grow",
+     "name": "hideTrigger",
      "type": "Boolean",
-     "desc": "True if this field should automatically grow and shrink to its content",
-     "memberOf": "Roo.form.TextField"
+     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
+     "memberOf": "Roo.form.TriggerField"
     },
     {
      "name": "vtype",
      "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "invalidText",
-     "type": "String",
-     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
     {
      "name": "focusClass",
      "type": "String",
      "type": "function",
      "desc": "Fires after the component is disabled."
     },
-    {
-     "name": "editorinit",
-     "sig": "function (_self, the)\n{\n\n}",
-     "type": "function",
-     "desc": "Fired when the editor is initialized - you can add extra handlers here.."
-    },
     {
      "name": "enable",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is resized."
     },
+    {
+     "name": "select",
+     "sig": "function (combo, date)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a date is selected"
+    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
     },
-    {
-     "name": "autoSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Automatically grows the field to accomodate the height of the text up to the maximum field height allowed.\nThis only takes effect if grow = true, and fires the autosize event if the height changes."
-    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+     "desc": "Returns the current date value of the date field."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
      "type": "function",
      "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
     },
+    {
+     "name": "onTriggerClick",
+     "sig": "(EventObject e)",
+     "type": "function",
+     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
+    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "type": "function",
      "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
     },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
     {
      "name": "selectText",
      "sig": "(Number start, Number end)",
     },
     {
      "name": "setValue",
-     "sig": "(Mixed value)",
+     "sig": "(String/Date date)",
      "type": "function",
-     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
+     "desc": "Sets the value of the date field.  You can pass a date object or any string that can be parsed into a valid\ndate, using DateField.format as the date format, according to the same rules as {@link Date#parseDate}\n(the default format used is \"m/d/y\").\n<br />Usage:\n<pre><code>\n//All of these calls set the same date value (May 4, 2006)\n\n//Pass a date object:\nvar dt = new Date('5/4/06');\ndateField.setValue(dt);\n\n//Pass a date string (default format):\ndateField.setValue('5/4/06');\n\n//Pass a date string (custom format):\ndateField.format = 'Y-m-d';\ndateField.setValue('2006-5-4');\n</code></pre>"
     },
     {
      "name": "setVisible",
     }
    ]
   },
-  "Roo.form.Field": {
+  "Roo.form.DayPicker": {
    "props": [
+    {
+     "name": "focusClass",
+     "type": "String",
+     "desc": "The CSS class to use when the checkbox receives focus (defaults to undefined)",
+     "memberOf": ""
+    },
+    {
+     "name": "fieldClass",
+     "type": "String",
+     "desc": "The default CSS class for the checkbox (defaults to \"x-form-field\")",
+     "memberOf": ""
+    },
+    {
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"checkbox\", autocomplete: \"off\"})",
+     "memberOf": ""
+    },
     {
      "name": "fieldLabel",
      "type": "String",
      "desc": "Label to use when rendering a form.",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "qtip",
      "type": "String",
      "desc": "Mouse over tip",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "name",
      "type": "String",
      "desc": "The field's HTML name attribute.",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "invalidClass",
      "type": "String",
      "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "invalidText",
      "type": "String",
      "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
-     "memberOf": ""
-    },
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "validateOnBlur",
      "type": "Boolean",
      "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "validationDelay",
      "type": "Number",
      "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": ""
-    },
-    {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"20\", autocomplete: \"off\"})",
-     "memberOf": ""
-    },
-    {
-     "name": "fieldClass",
-     "type": "String",
-     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "msgTarget",
      "type": "String",
      "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "msgFx",
      "type": "String",
      "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "readOnly",
      "type": "Boolean",
      "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "disabled",
      "type": "Boolean",
      "desc": "True to disable the field (defaults to false).",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "inputType",
      "type": "String",
      "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "tabIndex",
      "type": "Number",
      "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "value",
      "type": "Mixed",
      "desc": "A value to initialize this field with.",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "cls",
      "type": "String",
      "desc": "A CSS class to apply to the field's underlying element.",
-     "memberOf": ""
+     "memberOf": "Roo.form.Field"
     },
     {
      "name": "width",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+     "desc": "Returns the checked state of the checkbox."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
      "type": "function",
      "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
     },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
     },
     {
      "name": "setValue",
-     "sig": "(Mixed value)",
+     "sig": "(Boolean/String value, Boolean/String suppressEvent)",
      "type": "function",
-     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
+     "desc": "Sets the checked state of the checkbox.\nOn is always based on a string comparison between inputValue and the param."
     },
     {
      "name": "setVisible",
     }
    ]
   },
-  "Roo.form.FieldSet": {
+  "Roo.form.DisplayField": {
    "props": [
     {
-     "name": "legend",
+     "name": "closable",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "focusClass",
      "type": "String",
-     "desc": "The text to display as the legend for the FieldSet (defaults to '')",
+     "desc": "The CSS class to use when the checkbox receives focus (defaults to undefined)",
+     "memberOf": ""
+    },
+    {
+     "name": "fieldClass",
+     "type": "String",
+     "desc": "The default CSS class for the checkbox (defaults to \"x-form-field\")",
+     "memberOf": ""
+    },
+    {
+     "name": "valueRenderer",
+     "type": "Function",
+     "desc": "The renderer for the field (so you can reformat output). should return raw HTML",
      "memberOf": ""
     },
     {
      "name": "autoCreate",
      "type": "String/Object",
-     "desc": "A DomHelper element spec used to autocreate the fieldset (defaults to {tag: 'fieldset', cn: {tag:'legend'}})",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"checkbox\", autocomplete: \"off\"})",
      "memberOf": ""
     },
     {
-     "name": "style",
-     "type": "String/Object/Function",
-     "desc": "A style specification string, e.g. \"width:100px\", or object in the form {width:\"100px\"}, or\na function which returns such a specification.",
-     "memberOf": "Roo.form.Layout"
+     "name": "fieldLabel",
+     "type": "String",
+     "desc": "Label to use when rendering a form.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "labelAlign",
+     "name": "qtip",
      "type": "String",
-     "desc": "Valid values are \"left,\" \"top\" and \"right\" (defaults to \"left\")",
-     "memberOf": "Roo.form.Layout"
+     "desc": "Mouse over tip",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "labelWidth",
-     "type": "Number",
-     "desc": "Fixed width in pixels of all field labels (defaults to undefined)",
-     "memberOf": "Roo.form.Layout"
+     "name": "name",
+     "type": "String",
+     "desc": "The field's HTML name attribute.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "clear",
+     "name": "invalidClass",
+     "type": "String",
+     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "invalidText",
+     "type": "String",
+     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "validationEvent",
+     "type": "String/Boolean",
+     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "validateOnBlur",
      "type": "Boolean",
-     "desc": "True to add a clearing element at the end of this layout, equivalent to CSS clear: both (defaults to true)",
-     "memberOf": "Roo.form.Layout"
+     "desc": "Whether the field should validate when it loses focus (defaults to true).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "labelSeparator",
+     "name": "validationDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "msgTarget",
      "type": "String",
-     "desc": "The separator to use after field labels (defaults to ':')",
-     "memberOf": "Roo.form.Layout"
+     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "hideLabels",
+     "name": "msgFx",
+     "type": "String",
+     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "readOnly",
      "type": "Boolean",
-     "desc": "True to suppress the display of field labels in this layout (defaults to false)",
-     "memberOf": "Roo.form.Layout"
+     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "True to disable the field (defaults to false).",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "inputType",
+     "type": "String",
+     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "tabIndex",
+     "type": "Number",
+     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "value",
+     "type": "Mixed",
+     "desc": "A value to initialize this field with.",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "A CSS class to apply to the field's underlying element.",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "width",
+     "type": "Number",
+     "desc": "width (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
+    },
+    {
+     "name": "height",
+     "type": "Number",
+     "desc": "height (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
     },
     {
      "name": "disableClass",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
+    {
+     "name": "blur",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this field loses input focus."
+    },
+    {
+     "name": "change",
+     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires just before the field blurs if the field value has changed."
+    },
+    {
+     "name": "close",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the click the close btn"
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
+    {
+     "name": "focus",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this field receives input focus."
+    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been marked as invalid."
+    },
+    {
+     "name": "keyup",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the key up"
+    },
+    {
+     "name": "move",
+     "sig": "function (_self, x, y)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is moved."
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
+    {
+     "name": "resize",
+     "sig": "function (_self, adjWidth, adjHeight, rawWidth, rawHeight)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is resized."
+    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
+    },
+    {
+     "name": "specialkey",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
+    },
+    {
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "desc": "Appends an event handler to this component"
     },
     {
-     "name": "addxtype",
-     "sig": "(Object config)",
+     "name": "applyTo",
+     "sig": "(String/HTMLElement/Element el)",
      "type": "function",
-     "desc": "Adds a object form elements (using the xtype property as the factory method.)\nValid xtypes are:  TextField, TextArea .... Button, Layout, FieldSet, Column"
+     "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
     },
     {
      "name": "capture",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
+    {
+     "name": "clearInvalid",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clear any invalid styles/messages for this field"
+    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Try to focus this component."
     },
+    {
+     "name": "getBox",
+     "sig": "(Boolean local)",
+     "type": "function",
+     "desc": "Gets the current box measurements of the component's underlying element."
+    },
     {
      "name": "getEl",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
+    {
+     "name": "getName",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the name attribute of the field if available"
+    },
+    {
+     "name": "getPosition",
+     "sig": "(Boolean local)",
+     "type": "function",
+     "desc": "Gets the current XY position of the component's underlying element."
+    },
+    {
+     "name": "getRawValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
+    },
+    {
+     "name": "getSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Gets the current size of the component's underlying element."
+    },
+    {
+     "name": "getValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "type": "function",
      "desc": "Hide this component."
     },
+    {
+     "name": "isDirty",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
+    },
+    {
+     "name": "isValid",
+     "sig": "(Boolean preventMark)",
+     "type": "function",
+     "desc": "Returns whether or not the field value is currently valid"
+    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
+    {
+     "name": "markInvalid",
+     "sig": "(String msg)",
+     "type": "function",
+     "desc": "Mark this field as invalid"
+    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
+    {
+     "name": "onPosition",
+     "sig": "(Number x, Number y)",
+     "type": "function",
+     "desc": "Called after the component is moved, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a move occurs."
+    },
+    {
+     "name": "onResize",
+     "sig": "(Number adjWidth, Number adjHeight, Number rawWidth, Number rawHeight)",
+     "type": "function",
+     "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
+    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
+    {
+     "name": "reset",
+     "sig": "()",
+     "type": "function",
+     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
+    },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setPagePosition",
+     "sig": "(Number x, Number y)",
+     "type": "function",
+     "desc": "Sets the page XY position of the component.  To set the left and top instead, use {@link #setPosition}.\nThis method fires the move event."
+    },
+    {
+     "name": "setPosition",
+     "sig": "(Number left, Number top)",
+     "type": "function",
+     "desc": "Sets the left and top of the component.  To set the page XY position instead, use {@link #setPagePosition}.\nThis method fires the move event."
+    },
+    {
+     "name": "setRawValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
+    },
+    {
+     "name": "setSize",
+     "sig": "(Number/Object width, Number height)",
+     "type": "function",
+     "desc": "Sets the width and height of the component.  This method fires the resize event.  This method can accept\neither width and height as separate numeric arguments, or you can pass a size object like {width:10, height:20}."
+    },
+    {
+     "name": "setValue",
+     "sig": "(Boolean/String checked)",
+     "type": "function",
+     "desc": "Sets the checked state of the checkbox."
+    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "type": "function",
      "desc": "Show this component."
     },
+    {
+     "name": "syncSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Force the component's size to recalculate based on the underlying element's current height and width."
+    },
     {
      "name": "un",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "updateBox",
+     "sig": "(Object box)",
+     "type": "function",
+     "desc": "Sets the current box measurements of the component's underlying element."
+    },
+    {
+     "name": "validate",
+     "sig": "()",
+     "type": "function",
+     "desc": "Validates the field value"
     }
    ]
   },
-  "Roo.form.Form": {
+  "Roo.form.FCKeditor": {
    "props": [
     {
-     "name": "labelWidth",
-     "type": "Number",
-     "desc": "The width of labels. This property cascades to child containers.",
-     "memberOf": ""
-    },
-    {
-     "name": "itemCls",
-     "type": "String",
-     "desc": "A css class to apply to the x-form-item of fields. This property cascades to child containers.",
+     "name": "fck",
+     "type": "Object",
+     "desc": "options - see fck manual for details.",
      "memberOf": ""
     },
     {
-     "name": "buttonAlign",
-     "type": "String",
-     "desc": "Valid values are \"left,\" \"center\" and \"right\" (defaults to \"center\")",
-     "memberOf": ""
+     "name": "growMin",
+     "type": "Number",
+     "desc": "The minimum height to allow when grow = true (defaults to 60)",
+     "memberOf": "Roo.form.TextArea"
     },
     {
-     "name": "minButtonWidth",
+     "name": "growMax",
      "type": "Number",
-     "desc": "Minimum width of all buttons in pixels (defaults to 75)",
-     "memberOf": ""
+     "desc": "The maximum height to allow when grow = true (defaults to 1000)",
+     "memberOf": "Roo.form.TextArea"
     },
     {
-     "name": "labelAlign",
-     "type": "String",
-     "desc": "Valid values are \"left,\" \"top\" and \"right\" (defaults to \"left\").\nThis property cascades to child containers if not set.",
-     "memberOf": ""
+     "name": "preventScrollbars",
+     "type": "Boolean",
+     "desc": "True to prevent scrollbars from appearing regardless of how much text is\nin the field (equivalent to setting overflow: hidden, defaults to false)",
+     "memberOf": "Roo.form.TextArea"
     },
     {
-     "name": "monitorValid",
-     "type": "Boolean",
-     "desc": "If true the form monitors its valid state <b>client-side</b> and\nfires a looping event with that state. This is required to bind buttons to the valid\nstate using the config value formBind:true on the button.",
-     "memberOf": ""
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"textarea\", style: \"width:300px;height:60px;\", autocomplete: \"off\"})",
+     "memberOf": "Roo.form.TextArea"
     },
     {
-     "name": "monitorPoll",
-     "type": "Number",
-     "desc": "The milliseconds to poll valid state, ignored if monitorValid is not true (defaults to 200)",
-     "memberOf": ""
+     "name": "grow",
+     "type": "Boolean",
+     "desc": "True if this field should automatically grow and shrink to its content",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "progressUrl",
+     "name": "vtype",
      "type": "String",
-     "desc": "- Url to return progress data",
-     "memberOf": ""
+     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "method",
+     "name": "maskRe",
      "type": "String",
-     "desc": "The request method to use (GET or POST) for form actions if one isn't supplied in the action options.",
-     "memberOf": "Roo.form.BasicForm"
+     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "reader",
-     "type": "DataReader",
-     "desc": "An Roo.data.DataReader (e.g. {@link Roo.data.XmlReader}) to be used to read data when executing \"load\" actions.\nThis is optional as there is built-in support for processing JSON.",
-     "memberOf": "Roo.form.BasicForm"
+     "name": "disableKeyFilter",
+     "type": "Boolean",
+     "desc": "True to disable input keystroke filtering (defaults to false)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "errorReader",
-     "type": "DataReader",
-     "desc": "An Roo.data.DataReader (e.g. {@link Roo.data.XmlReader}) to be used to read data when reading validation errors on \"submit\" actions.\nThis is completely optional as there is built-in support for processing JSON.",
-     "memberOf": "Roo.form.BasicForm"
+     "name": "allowBlank",
+     "type": "Boolean",
+     "desc": "False to validate that the value length > 0 (defaults to true)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "url",
-     "type": "String",
-     "desc": "The URL to use for form actions if one isn't supplied in the action options.",
-     "memberOf": "Roo.form.BasicForm"
+     "name": "minLength",
+     "type": "Number",
+     "desc": "Minimum input field length required (defaults to 0)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "fileUpload",
-     "type": "Boolean",
-     "desc": "Set to true if this form is a file upload.",
-     "memberOf": "Roo.form.BasicForm"
+     "name": "maxLength",
+     "type": "Number",
+     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "baseParams",
-     "type": "Object",
-     "desc": "Parameters to pass with all requests. e.g. baseParams: {id: '123', foo: 'bar'}.",
-     "memberOf": "Roo.form.BasicForm"
+     "name": "minLengthText",
+     "type": "String",
+     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "timeout",
-     "type": "Number",
-     "desc": "Timeout for form actions in seconds (default is 30 seconds).",
-     "memberOf": "Roo.form.BasicForm"
+     "name": "maxLengthText",
+     "type": "String",
+     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "trackResetOnLoad",
+     "name": "selectOnFocus",
      "type": "Boolean",
-     "desc": "If set to true, form.reset() resets to the last loaded\nor setValues() data instead of when the form was first created.",
-     "memberOf": "Roo.form.BasicForm"
+     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "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": "actioncomplete",
-     "sig": "function (_self, action)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when an action is completed."
+     "name": "blankText",
+     "type": "String",
+     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "actionfailed",
-     "sig": "function (_self, action)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when an action fails."
+     "name": "validator",
+     "type": "Function",
+     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "beforeaction",
-     "sig": "function (_self, action)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before any action is performed. Return false to cancel the action."
+     "name": "regex",
+     "type": "RegExp",
+     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "clientvalidation",
-     "sig": "function (_self, valid)\n{\n\n}",
-     "type": "function",
-     "desc": "If the monitorValid config option is true, this event fires repetitively to notify of valid state"
+     "name": "regexText",
+     "type": "String",
+     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "rendered",
-     "sig": "function (form)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the form is rendered"
-    }
-   ],
-   "methods": [
-    {
-     "name": "add",
-     "sig": "(Field field1, Field field2)",
-     "type": "function",
-     "desc": "Add Roo.form components to the current open container (e.g. column, fieldset, etc.).  Fields added via this method\ncan also be passed with an additional property of fieldLabel, which if supplied, will provide the text to display\nas the label of the field."
-    },
-    {
-     "name": "addButton",
-     "sig": "(String/Object config, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Adds a button to the footer of the form - this <b>must</b> be called before the form is rendered."
-    },
-    {
-     "name": "addEvents",
-     "sig": "(Object object)",
-     "type": "function",
-     "desc": "Used to define events on this Observable"
-    },
-    {
-     "name": "addForm",
-     "sig": "(Roo.form.Form form)",
-     "type": "function",
-     "desc": "Add a secondary form to this one, \nUsed to provide tabbed forms. One form is primary, with hidden values \nwhich mirror the elements from the other forms."
-    },
-    {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this component"
-    },
-    {
-     "name": "addxtype",
-     "sig": "(Object config)",
-     "type": "function",
-     "desc": "Adds a series of form elements (using the xtype property as the factory method.\nValid xtypes are:  TextField, TextArea .... Button, Layout, FieldSet, Column, (and 'end' to close a block)"
-    },
-    {
-     "name": "applyIfToFields",
-     "sig": "(Object values)",
-     "type": "function",
-     "desc": "Calls {@link Ext#applyIf} for all field in this form with the passed object."
-    },
-    {
-     "name": "applyToFields",
-     "sig": "(Object values)",
-     "type": "function",
-     "desc": "Calls {@link Ext#apply} for all fields in this form with the passed object."
-    },
-    {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
-     "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
-    },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clears all invalid messages in this form."
-    },
-    {
-     "name": "column",
-     "sig": "(Object config, Field field1, Field field2, Field etc)",
-     "type": "function",
-     "desc": "Opens a new {@link Roo.form.Column} container in the layout stack. If fields are passed after the config, the\nfields are added and the column is closed. If no fields are passed the column remains open\nuntil end() is called."
-    },
-    {
-     "name": "container",
-     "sig": "(Object config, Field field1, Field field2, Field etc)",
-     "type": "function",
-     "desc": "Opens a new {@link Roo.form.Layout} container in the layout stack. If fields are passed after the config, the\nfields are added and the container is closed. If no fields are passed the container remains open\nuntil end() is called."
-    },
-    {
-     "name": "doAction",
-     "sig": "(String actionName, Object options)",
-     "type": "function",
-     "desc": "Performs a predefined action (submit or load) or custom actions you define on this form."
-    },
-    {
-     "name": "end",
-     "sig": "()",
-     "type": "function",
-     "desc": "Closes the current open container"
-    },
-    {
-     "name": "fieldset",
-     "sig": "(Object config, Field field1, Field field2, Field etc)",
-     "type": "function",
-     "desc": "Opens a new {@link Roo.form.FieldSet} container in the layout stack. If fields are passed after the config, the\nfields are added and the fieldset is closed. If no fields are passed the fieldset remains open\nuntil end() is called."
-    },
-    {
-     "name": "findField",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Find a Roo.form.Field in this form by id, dataIndex, name or hiddenName"
-    },
-    {
-     "name": "findbyId",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Find any element that has been added to a form, using it's ID or name\nThis can include framesets, columns etc. along with regular fields.."
-    },
-    {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
-     "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
-    },
-    {
-     "name": "getFieldValues",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the fields in this form as an object with key/value pairs. \nThis differs from getValues as it calls getValue on each child item, rather than using dom data."
-    },
-    {
-     "name": "getValues",
-     "sig": "(Boolean asString)",
-     "type": "function",
-     "desc": "Returns the fields in this form as an object with key/value pairs. If multiple fields exist with the same name\nthey are returned as an array."
-    },
-    {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
-    },
-    {
-     "name": "isDirty",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if any fields in this form have changed since their original load."
-    },
-    {
-     "name": "isValid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if client-side validation on the form is successful."
-    },
-    {
-     "name": "load",
-     "sig": "(Object options)",
-     "type": "function",
-     "desc": "Shortcut to do a load action."
-    },
-    {
-     "name": "loadRecord",
-     "sig": "(Record record)",
-     "type": "function",
-     "desc": "Loads an Roo.data.Record into this form."
-    },
-    {
-     "name": "markInvalid",
-     "sig": "(Array/Object errors)",
-     "type": "function",
-     "desc": "Mark fields in this form invalid in bulk."
-    },
-    {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
-    },
-    {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
-    },
-    {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
-     "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
-    },
-    {
-     "name": "remove",
-     "sig": "(Field field)",
-     "type": "function",
-     "desc": "Removes a field from the items collection (does NOT remove its markup)."
-    },
-    {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener"
-    },
-    {
-     "name": "render",
-     "sig": "(String/HTMLElement/Element container)",
-     "type": "function",
-     "desc": "Render this form into the passed container. This should only be called once!"
-    },
-    {
-     "name": "reset",
-     "sig": "()",
-     "type": "function",
-     "desc": "Resets this form."
-    },
-    {
-     "name": "setValues",
-     "sig": "(Array/Object values)",
-     "type": "function",
-     "desc": "Set values for fields in this form in bulk."
-    },
-    {
-     "name": "start",
-     "sig": "(Object container)",
-     "type": "function",
-     "desc": "Opens the passed container in the layout stack. The container can be any {@link Roo.form.Layout} or subclass."
-    },
-    {
-     "name": "startMonitoring",
-     "sig": "()",
-     "type": "function",
-     "desc": "Starts monitoring of the valid state of this form. Usually this is done by passing the config\noption \"monitorValid\""
-    },
-    {
-     "name": "stopMonitoring",
-     "sig": "()",
-     "type": "function",
-     "desc": "Stops monitoring of the valid state of this form"
-    },
-    {
-     "name": "submit",
-     "sig": "(Object options)",
-     "type": "function",
-     "desc": "Shortcut to do a submit action."
-    },
-    {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "updateRecord",
-     "sig": "(Record record)",
-     "type": "function",
-     "desc": "Persists the values in this form into the passed Roo.data.Record object in a beginEdit/endEdit block."
-    }
-   ]
-  },
-  "Roo.form.GridField": {
-   "props": [
-    {
-     "name": "width",
-     "type": "Number",
-     "desc": "- used to restrict width of grid..",
-     "memberOf": ""
-    },
-    {
-     "name": "height",
-     "type": "Number",
-     "desc": "- used to restrict height of grid..",
-     "memberOf": ""
-    },
-    {
-     "name": "xgrid",
-     "type": "Object",
-     "desc": "(xtype'd description of grid) { xtype : 'Grid', dataSource: .... }\n\n}",
-     "memberOf": ""
-    },
-    {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"checkbox\", autocomplete: \"off\"})",
-     "memberOf": ""
-    },
-    {
-     "name": "addTitle",
+     "name": "emptyText",
      "type": "String",
-     "desc": "Text to include for adding a title.",
-     "memberOf": ""
+     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
+     "memberOf": "Roo.form.TextField"
     },
     {
      "name": "fieldLabel",
      "desc": "A CSS class to apply to the field's underlying element.",
      "memberOf": "Roo.form.Field"
     },
+    {
+     "name": "width",
+     "type": "Number",
+     "desc": "width (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
+    },
+    {
+     "name": "height",
+     "type": "Number",
+     "desc": "height (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
+    },
     {
      "name": "disableClass",
      "type": "String",
     }
    ],
    "events": [
+    {
+     "name": "autosize",
+     "sig": "function (_self, width)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
+    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is disabled."
     },
+    {
+     "name": "editorinit",
+     "sig": "function (_self, the)\n{\n\n}",
+     "type": "function",
+     "desc": "Fired when the editor is initialized - you can add extra handlers here.."
+    },
     {
      "name": "enable",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
     },
+    {
+     "name": "autoSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Automatically grows the field to accomodate the height of the text up to the maximum field height allowed.\nThis only takes effect if grow = true, and fires the autosize event if the height changes."
+    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
     },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
      "name": "reset",
      "sig": "()",
      "type": "function",
-     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
+     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
+    },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
+    {
+     "name": "selectText",
+     "sig": "(Number start, Number end)",
+     "type": "function",
+     "desc": "Selects text in this field"
     },
     {
      "name": "setDisabled",
     },
     {
      "name": "setValue",
-     "sig": "(String either)",
+     "sig": "(Mixed value)",
      "type": "function",
-     "desc": "Sets the value of the item."
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
     },
     {
      "name": "setVisible",
      "sig": "()",
      "type": "function",
      "desc": "Validates the field value"
+    },
+    {
+     "name": "validateValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.form.Hidden": {
+  "Roo.form.Field": {
    "props": [
-    {
-     "name": "grow",
-     "type": "Boolean",
-     "desc": "True if this field should automatically grow and shrink to its content",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "The minimum width to allow when grow = true (defaults to 30)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "growMax",
-     "type": "Number",
-     "desc": "The maximum width to allow when grow = true (defaults to 800)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "maskRe",
-     "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "minLengthText",
-     "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "maxLengthText",
-     "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "blankText",
-     "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "emptyText",
-     "type": "String",
-     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
-     "memberOf": "Roo.form.TextField"
-    },
     {
      "name": "fieldLabel",
      "type": "String",
      "desc": "Label to use when rendering a form.",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "qtip",
      "type": "String",
      "desc": "Mouse over tip",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "name",
      "type": "String",
      "desc": "The field's HTML name attribute.",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "invalidClass",
      "type": "String",
      "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "invalidText",
      "type": "String",
      "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "focusClass",
      "type": "String",
      "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "validateOnBlur",
      "type": "Boolean",
      "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "validationDelay",
      "type": "Number",
      "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "autoCreate",
      "type": "String/Object",
      "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"20\", autocomplete: \"off\"})",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "fieldClass",
      "type": "String",
      "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "msgTarget",
      "type": "String",
      "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "msgFx",
      "type": "String",
      "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "readOnly",
      "type": "Boolean",
      "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "disabled",
      "type": "Boolean",
      "desc": "True to disable the field (defaults to false).",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "inputType",
      "type": "String",
      "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "tabIndex",
      "type": "Number",
      "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "value",
      "type": "Mixed",
      "desc": "A value to initialize this field with.",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "cls",
      "type": "String",
      "desc": "A CSS class to apply to the field's underlying element.",
-     "memberOf": "Roo.form.Field"
+     "memberOf": ""
     },
     {
      "name": "width",
     }
    ],
    "events": [
-    {
-     "name": "autosize",
-     "sig": "function (_self, width)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
     },
-    {
-     "name": "autoSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Automatically grows the field to accomodate the width of the text up to the maximum field width allowed.\nThis only takes effect if grow = true, and fires the autosize event."
-    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
     },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
      "name": "reset",
      "sig": "()",
      "type": "function",
-     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
+     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
     },
     {
-     "name": "selectText",
-     "sig": "(Number start, Number end)",
+     "name": "resetHasChanged",
+     "sig": "()",
      "type": "function",
-     "desc": "Selects text in this field"
+     "desc": "stores the current value in loadedValue"
     },
     {
      "name": "setDisabled",
      "sig": "()",
      "type": "function",
      "desc": "Validates the field value"
-    },
-    {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.form.HtmlEditor": {
+  "Roo.form.FieldSet": {
    "props": [
     {
-     "name": "clearUp",
-     "type": "Boolean",
-     "desc": "",
-     "memberOf": ""
-    },
-    {
-     "name": "toolbars",
-     "type": "Array",
-     "desc": "Array of toolbars. - defaults to just the Standard one",
-     "memberOf": ""
-    },
-    {
-     "name": "resizable",
+     "name": "legend",
      "type": "String",
-     "desc": "'s' or 'se' or 'e' - wrapps the element in a\n                       Roo.resizable.",
-     "memberOf": ""
-    },
-    {
-     "name": "height",
-     "type": "Number",
-     "desc": "(in pixels)",
-     "memberOf": ""
-    },
-    {
-     "name": "width",
-     "type": "Number",
-     "desc": "(in pixels)",
-     "memberOf": ""
-    },
-    {
-     "name": "stylesheets",
-     "type": "Array",
-     "desc": "url of stylesheets. set to [] to disable stylesheets.",
-     "memberOf": ""
-    },
-    {
-     "name": "blacklist",
-     "type": "Array",
-     "desc": "of css styles style attributes (blacklist overrides whitelist)",
+     "desc": "The text to display as the legend for the FieldSet (defaults to '')",
      "memberOf": ""
     },
     {
-     "name": "whitelist",
-     "type": "Array",
-     "desc": "of css styles style attributes (blacklist overrides whitelist)",
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec used to autocreate the fieldset (defaults to {tag: 'fieldset', cn: {tag:'legend'}})",
      "memberOf": ""
     },
     {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "Label to use when rendering a form.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "qtip",
-     "type": "String",
-     "desc": "Mouse over tip",
-     "memberOf": "Roo.form.Field"
+     "name": "style",
+     "type": "String/Object/Function",
+     "desc": "A style specification string, e.g. \"width:100px\", or object in the form {width:\"100px\"}, or\na function which returns such a specification.",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "name",
+     "name": "labelAlign",
      "type": "String",
-     "desc": "The field's HTML name attribute.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.form.Field"
+     "desc": "Valid values are \"left,\" \"top\" and \"right\" (defaults to \"left\")",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "validationDelay",
+     "name": "labelWidth",
      "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "msgTarget",
-     "type": "String",
-     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
-     "memberOf": "Roo.form.Field"
+     "desc": "Fixed width in pixels of all field labels (defaults to undefined)",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "disabled",
+     "name": "clear",
      "type": "Boolean",
-     "desc": "True to disable the field (defaults to false).",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "tabIndex",
-     "type": "Number",
-     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
-     "memberOf": "Roo.form.Field"
+     "desc": "True to add a clearing element at the end of this layout, equivalent to CSS clear: both (defaults to true)",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "value",
-     "type": "Mixed",
-     "desc": "A value to initialize this field with.",
-     "memberOf": "Roo.form.Field"
+     "name": "labelSeparator",
+     "type": "String",
+     "desc": "The separator to use after field labels (defaults to ':')",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "cls",
-     "type": "String",
-     "desc": "A CSS class to apply to the field's underlying element.",
-     "memberOf": "Roo.form.Field"
+     "name": "hideLabels",
+     "type": "Boolean",
+     "desc": "True to suppress the display of field labels in this layout (defaults to false)",
+     "memberOf": "Roo.form.Layout"
     },
     {
      "name": "disableClass",
     }
    ],
    "events": [
-    {
-     "name": "activate",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the editor is first receives the focus. Any insertion must wait\nuntil after this event."
-    },
-    {
-     "name": "autosave",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Auto save the htmlEditor value as a file into Events"
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
-    {
-     "name": "beforepush",
-     "sig": "function (_self, html)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the iframe editor is updated with content from the textarea. Return false\nto cancel the push."
-    },
     {
      "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "beforesync",
-     "sig": "function (_self, html)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the textarea is updated with content from the editor iframe. Return false\nto cancel the sync."
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is disabled."
     },
-    {
-     "name": "editmodechange",
-     "sig": "function (_self, sourceEdit)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the editor switches edit modes"
-    },
-    {
-     "name": "editorevent",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when on any editor (mouse up/down cursor movement etc.) - used for toolbar hooks."
-    },
     {
      "name": "enable",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "firstfocus",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when on first focus - needed by toolbars.."
-    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "initialize",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the editor is fully initialized (including the iframe)"
-    },
-    {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
-    },
-    {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the key up"
-    },
-    {
-     "name": "move",
-     "sig": "function (_self, x, y)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is moved."
-    },
-    {
-     "name": "push",
-     "sig": "function (_self, html)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the iframe editor is updated with content from the textarea."
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "resize",
-     "sig": "function (_self, adjWidth, adjHeight, rawWidth, rawHeight)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is resized."
-    },
-    {
-     "name": "savedpreview",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "preview the saved version of htmlEditor"
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
-    },
-    {
-     "name": "stylesheetsclick",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when press the Sytlesheets button"
-    },
-    {
-     "name": "sync",
-     "sig": "function (_self, html)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the textarea is updated with content from the editor iframe."
-    },
-    {
-     "name": "valid",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "desc": "Appends an event handler to this component"
     },
     {
-     "name": "applyTo",
-     "sig": "(String/HTMLElement/Element el)",
+     "name": "addxtype",
+     "sig": "(Object config)",
      "type": "function",
-     "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
+     "desc": "Adds a object form elements (using the xtype property as the factory method.)\nValid xtypes are:  TextField, TextArea .... Button, Layout, FieldSet, Column"
     },
     {
      "name": "capture",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Overridden and disabled. The editor element does not support standard valid/invalid marking. @hide"
-    },
-    {
-     "name": "createToolbar",
-     "sig": "(HtmlEditor editor)",
-     "type": "function",
-     "desc": "Protected method that will not generally be called directly. It\nis called when the editor creates its toolbar. Override this method if you need to\nadd custom toolbar buttons."
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Try to focus this component."
     },
-    {
-     "name": "getBox",
-     "sig": "(Boolean local)",
-     "type": "function",
-     "desc": "Gets the current box measurements of the component's underlying element."
-    },
     {
      "name": "getEl",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getName",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the name attribute of the field if available"
-    },
-    {
-     "name": "getPosition",
-     "sig": "(Boolean local)",
-     "type": "function",
-     "desc": "Gets the current XY position of the component's underlying element."
-    },
-    {
-     "name": "getRawValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
-    },
-    {
-     "name": "getSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Gets the current size of the component's underlying element."
-    },
-    {
-     "name": "getValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "type": "function",
      "desc": "Hide this component."
     },
-    {
-     "name": "isDirty",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
-    },
-    {
-     "name": "isValid",
-     "sig": "(Boolean preventMark)",
-     "type": "function",
-     "desc": "Returns whether or not the field value is currently valid"
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
-    {
-     "name": "markInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Overridden and disabled. The editor element does not support standard valid/invalid marking. @hide"
-    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
-    {
-     "name": "onPosition",
-     "sig": "(Number x, Number y)",
-     "type": "function",
-     "desc": "Called after the component is moved, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a move occurs."
-    },
-    {
-     "name": "onResize",
-     "sig": "(Number adjWidth, Number adjHeight, Number rawWidth, Number rawHeight)",
-     "type": "function",
-     "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
-    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
-    {
-     "name": "reset",
-     "sig": "()",
-     "type": "function",
-     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setPagePosition",
-     "sig": "(Number x, Number y)",
-     "type": "function",
-     "desc": "Sets the page XY position of the component.  To set the left and top instead, use {@link #setPosition}.\nThis method fires the move event."
-    },
-    {
-     "name": "setPosition",
-     "sig": "(Number left, Number top)",
-     "type": "function",
-     "desc": "Sets the left and top of the component.  To set the page XY position instead, use {@link #setPagePosition}.\nThis method fires the move event."
-    },
-    {
-     "name": "setRawValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
-    },
-    {
-     "name": "setSize",
-     "sig": "(Number/Object width, Number height)",
-     "type": "function",
-     "desc": "Sets the width and height of the component.  This method fires the resize event.  This method can accept\neither width and height as separate numeric arguments, or you can pass a size object like {width:10, height:20}."
-    },
-    {
-     "name": "setValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "type": "function",
      "desc": "Show this component."
     },
-    {
-     "name": "syncSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Force the component's size to recalculate based on the underlying element's current height and width."
-    },
-    {
-     "name": "toggleSourceEdit",
-     "sig": "(Boolean sourceEdit)",
-     "type": "function",
-     "desc": "Toggles the editor between standard and source edit mode."
-    },
     {
      "name": "un",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "updateBox",
-     "sig": "(Object box)",
-     "type": "function",
-     "desc": "Sets the current box measurements of the component's underlying element."
-    },
-    {
-     "name": "validate",
-     "sig": "()",
-     "type": "function",
-     "desc": "Validates the field value"
     }
    ]
   },
-  "Roo.form.HtmlEditor.ToolbarContext": {
+  "Roo.form.Form": {
    "props": [
     {
-     "name": "disable",
-     "type": "Object",
-     "desc": "List of toolbar elements to disable",
+     "name": "labelWidth",
+     "type": "Number",
+     "desc": "The width of labels. This property cascades to child containers.",
      "memberOf": ""
     },
     {
-     "name": "styles",
-     "type": "Object",
-     "desc": "List of styles \n   eg. { '*' : [ 'headline' ] , 'TD' : [ 'underline', 'double-underline' ] } \n\nThese must be defined in the page, so they get rendered correctly..\n.headline { }\nTD.underline { }",
+     "name": "itemCls",
+     "type": "String",
+     "desc": "A css class to apply to the x-form-item of fields. This property cascades to child containers.",
      "memberOf": ""
-    }
-   ],
-   "events": [],
-   "methods": [
-    {
-     "name": "updateToolbar",
-     "sig": "()",
-     "type": "function",
-     "desc": "Protected method that will not generally be called directly. It triggers\na toolbar update by reading the markup state of the current selection in the editor."
-    }
-   ]
-  },
-  "Roo.form.HtmlEditor.ToolbarStandard": {
-   "props": [
+    },
     {
-     "name": "disable",
-     "type": "Object",
-     "desc": "List of elements to disable..",
+     "name": "buttonAlign",
+     "type": "String",
+     "desc": "Valid values are \"left,\" \"center\" and \"right\" (defaults to \"center\")",
      "memberOf": ""
     },
     {
-     "name": "btns",
-     "type": "Array",
-     "desc": "List of additional buttons.\n\n\nNEEDS Extra CSS? \n.x-html-editor-tb .x-edit-none .x-btn-text { background: none; }",
+     "name": "minButtonWidth",
+     "type": "Number",
+     "desc": "Minimum width of all buttons in pixels (defaults to 75)",
      "memberOf": ""
     },
     {
-     "name": "createLinkText",
+     "name": "labelAlign",
      "type": "String",
-     "desc": "The default text for the create link prompt",
+     "desc": "Valid values are \"left,\" \"top\" and \"right\" (defaults to \"left\").\nThis property cascades to child containers if not set.",
      "memberOf": ""
     },
     {
-     "name": "defaultLinkValue",
-     "type": "String",
-     "desc": "The default value for the create link prompt (defaults to http:/ /)",
+     "name": "monitorValid",
+     "type": "Boolean",
+     "desc": "If true the form monitors its valid state <b>client-side</b> and\nfires a looping event with that state. This is required to bind buttons to the valid\nstate using the config value formBind:true on the button.",
      "memberOf": ""
     },
     {
-     "name": "fontFamilies",
-     "type": "Array",
-     "desc": "An array of available font families",
+     "name": "monitorPoll",
+     "type": "Number",
+     "desc": "The milliseconds to poll valid state, ignored if monitorValid is not true (defaults to 200)",
      "memberOf": ""
     },
     {
-     "name": "defaultFont",
+     "name": "progressUrl",
      "type": "String",
-     "desc": "default font to use.",
+     "desc": "- Url to return progress data",
      "memberOf": ""
-    }
-   ],
-   "events": [],
-   "methods": [
+    },
     {
-     "name": "updateToolbar",
-     "sig": "()",
-     "type": "function",
-     "desc": "Protected method that will not generally be called directly. It triggers\na toolbar update by reading the markup state of the current selection in the editor."
-    }
-   ]
-  },
-  "Roo.form.Layout": {
-   "props": [
+     "name": "method",
+     "type": "String",
+     "desc": "The request method to use (GET or POST) for form actions if one isn't supplied in the action options.",
+     "memberOf": "Roo.form.BasicForm"
+    },
     {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec used to autocreate the layout (defaults to {tag: 'div', cls: 'x-form-ct'})",
-     "memberOf": ""
+     "name": "reader",
+     "type": "DataReader",
+     "desc": "An Roo.data.DataReader (e.g. {@link Roo.data.XmlReader}) to be used to read data when executing \"load\" actions.\nThis is optional as there is built-in support for processing JSON.",
+     "memberOf": "Roo.form.BasicForm"
     },
     {
-     "name": "style",
-     "type": "String/Object/Function",
-     "desc": "A style specification string, e.g. \"width:100px\", or object in the form {width:\"100px\"}, or\na function which returns such a specification.",
-     "memberOf": ""
+     "name": "errorReader",
+     "type": "DataReader",
+     "desc": "An Roo.data.DataReader (e.g. {@link Roo.data.XmlReader}) to be used to read data when reading validation errors on \"submit\" actions.\nThis is completely optional as there is built-in support for processing JSON.",
+     "memberOf": "Roo.form.BasicForm"
     },
     {
-     "name": "labelAlign",
+     "name": "url",
      "type": "String",
-     "desc": "Valid values are \"left,\" \"top\" and \"right\" (defaults to \"left\")",
-     "memberOf": ""
+     "desc": "The URL to use for form actions if one isn't supplied in the action options.",
+     "memberOf": "Roo.form.BasicForm"
     },
     {
-     "name": "labelWidth",
-     "type": "Number",
-     "desc": "Fixed width in pixels of all field labels (defaults to undefined)",
-     "memberOf": ""
+     "name": "fileUpload",
+     "type": "Boolean",
+     "desc": "Set to true if this form is a file upload.",
+     "memberOf": "Roo.form.BasicForm"
     },
     {
-     "name": "clear",
-     "type": "Boolean",
-     "desc": "True to add a clearing element at the end of this layout, equivalent to CSS clear: both (defaults to true)",
-     "memberOf": ""
+     "name": "baseParams",
+     "type": "Object",
+     "desc": "Parameters to pass with all requests. e.g. baseParams: {id: '123', foo: 'bar'}.",
+     "memberOf": "Roo.form.BasicForm"
     },
     {
-     "name": "labelSeparator",
-     "type": "String",
-     "desc": "The separator to use after field labels (defaults to ':')",
-     "memberOf": ""
+     "name": "timeout",
+     "type": "Number",
+     "desc": "Timeout for form actions in seconds (default is 30 seconds).",
+     "memberOf": "Roo.form.BasicForm"
     },
     {
-     "name": "hideLabels",
+     "name": "trackResetOnLoad",
      "type": "Boolean",
-     "desc": "True to suppress the display of field labels in this layout (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "disableClass",
-     "type": "String",
-     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
-     "memberOf": "Roo.Component"
-    },
-    {
-     "name": "allowDomMove",
-     "type": "Boolean",
-     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
-     "memberOf": "Roo.Component"
-    },
-    {
-     "name": "hideMode",
-     "type": "String",
-     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
-     "memberOf": "Roo.Component",
-     "optvals": [
-      "display",
-      "visibility"
-     ]
-    },
-    {
-     "name": "actionMode",
-     "type": "String",
-     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
-     "memberOf": "Roo.Component"
+     "desc": "If set to true, form.reset() resets to the last loaded\nor setValues() data instead of when the form was first created.",
+     "memberOf": "Roo.form.BasicForm"
     },
     {
      "name": "listeners",
    ],
    "events": [
     {
-     "name": "beforedestroy",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
-    },
-    {
-     "name": "beforehide",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the component is hidden. Return false to stop the hide."
-    },
-    {
-     "name": "beforerender",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "actioncomplete",
+     "sig": "function (_self, action)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before the component is rendered. Return false to stop the render."
+     "desc": "Fires when an action is completed."
     },
     {
-     "name": "beforeshow",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "actionfailed",
+     "sig": "function (_self, action)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before the component is shown.  Return false to stop the show."
+     "desc": "Fires when an action fails."
     },
     {
-     "name": "destroy",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "beforeaction",
+     "sig": "function (_self, action)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is destroyed."
+     "desc": "Fires before any action is performed. Return false to cancel the action."
     },
     {
-     "name": "disable",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "clientvalidation",
+     "sig": "function (_self, valid)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is disabled."
+     "desc": "If the monitorValid config option is true, this event fires repetitively to notify of valid state"
     },
     {
-     "name": "enable",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "rendered",
+     "sig": "function (form)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is enabled."
-    },
+     "desc": "Fires when the form is rendered"
+    }
+   ],
+   "methods": [
     {
-     "name": "hide",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "add",
+     "sig": "(Field field1, Field field2)",
      "type": "function",
-     "desc": "Fires after the component is hidden."
+     "desc": "Add Roo.form components to the current open container (e.g. column, fieldset, etc.).  Fields added via this method\ncan also be passed with an additional property of fieldLabel, which if supplied, will provide the text to display\nas the label of the field."
     },
     {
-     "name": "render",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "addButton",
+     "sig": "(String/Object config, Function handler, Object scope)",
      "type": "function",
-     "desc": "Fires after the component is rendered."
+     "desc": "Adds a button to the footer of the form - this <b>must</b> be called before the form is rendered."
     },
-    {
-     "name": "show",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is shown."
-    }
-   ],
-   "methods": [
     {
      "name": "addEvents",
      "sig": "(Object object)",
      "type": "function",
      "desc": "Used to define events on this Observable"
     },
+    {
+     "name": "addForm",
+     "sig": "(Roo.form.Form form)",
+     "type": "function",
+     "desc": "Add a secondary form to this one, \nUsed to provide tabbed forms. One form is primary, with hidden values \nwhich mirror the elements from the other forms."
+    },
     {
      "name": "addListener",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "name": "addxtype",
      "sig": "(Object config)",
      "type": "function",
-     "desc": "Adds a object form elements (using the xtype property as the factory method.)\nValid xtypes are:  TextField, TextArea .... Button, Layout, FieldSet, Column"
+     "desc": "Adds a series of form elements (using the xtype property as the factory method.\nValid xtypes are:  TextField, TextArea .... Button, Layout, FieldSet, Column, (and 'end' to close a block)"
+    },
+    {
+     "name": "applyIfToFields",
+     "sig": "(Object values)",
+     "type": "function",
+     "desc": "Calls {@link Ext#applyIf} for all field in this form with the passed object."
+    },
+    {
+     "name": "applyToFields",
+     "sig": "(Object values)",
+     "type": "function",
+     "desc": "Calls {@link Ext#apply} for all fields in this form with the passed object."
     },
     {
      "name": "capture",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "destroy",
+     "name": "clearInvalid",
      "sig": "()",
      "type": "function",
-     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+     "desc": "Clears all invalid messages in this form."
     },
     {
-     "name": "disable",
-     "sig": "()",
+     "name": "column",
+     "sig": "(Object config, Field field1, Field field2, Field etc)",
      "type": "function",
-     "desc": "Disable this component."
+     "desc": "Opens a new {@link Roo.form.Column} container in the layout stack. If fields are passed after the config, the\nfields are added and the column is closed. If no fields are passed the column remains open\nuntil end() is called."
     },
     {
-     "name": "enable",
+     "name": "container",
+     "sig": "(Object config, Field field1, Field field2, Field etc)",
+     "type": "function",
+     "desc": "Opens a new {@link Roo.form.Layout} container in the layout stack. If fields are passed after the config, the\nfields are added and the container is closed. If no fields are passed the container remains open\nuntil end() is called."
+    },
+    {
+     "name": "doAction",
+     "sig": "(String actionName, Object options)",
+     "type": "function",
+     "desc": "Performs a predefined action (submit or load) or custom actions you define on this form."
+    },
+    {
+     "name": "end",
      "sig": "()",
      "type": "function",
-     "desc": "Enable this component."
+     "desc": "Closes the current open container"
+    },
+    {
+     "name": "fieldset",
+     "sig": "(Object config, Field field1, Field field2, Field etc)",
+     "type": "function",
+     "desc": "Opens a new {@link Roo.form.FieldSet} container in the layout stack. If fields are passed after the config, the\nfields are added and the fieldset is closed. If no fields are passed the fieldset remains open\nuntil end() is called."
+    },
+    {
+     "name": "findField",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Find a Roo.form.Field in this form by id, dataIndex, name or hiddenName"
+    },
+    {
+     "name": "findbyId",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Find any element that has been added to a form, using it's ID or name\nThis can include framesets, columns etc. along with regular fields.."
     },
     {
      "name": "fireEvent",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "focus",
-     "sig": "(Boolean selectText)",
+     "name": "getFieldValues",
+     "sig": "()",
      "type": "function",
-     "desc": "Try to focus this component."
+     "desc": "Returns the fields in this form as an object with key/value pairs. \nThis differs from getValues as it calls getValue on each child item, rather than using dom data."
     },
     {
-     "name": "getEl",
-     "sig": "()",
+     "name": "getValues",
+     "sig": "(Boolean asString)",
      "type": "function",
-     "desc": "Returns the underlying {@link Roo.Element}."
+     "desc": "Returns the fields in this form as an object with key/value pairs. If multiple fields exist with the same name\nthey are returned as an array."
     },
     {
-     "name": "getId",
+     "name": "hasChanged",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the id of this component."
+     "desc": "Returns true if any fields in this form have changed since their original load. (New version)"
     },
     {
      "name": "hasListener",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "hide",
+     "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "DEPRICATED Returns true if any fields in this form have changed since their original load."
     },
     {
-     "name": "isVisible",
+     "name": "isValid",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this component is visible."
+     "desc": "Returns true if client-side validation on the form is successful."
+    },
+    {
+     "name": "load",
+     "sig": "(Object options)",
+     "type": "function",
+     "desc": "Shortcut to do a load action."
+    },
+    {
+     "name": "loadRecord",
+     "sig": "(Record record)",
+     "type": "function",
+     "desc": "Loads an Roo.data.Record into this form."
+    },
+    {
+     "name": "markInvalid",
+     "sig": "(Array/Object errors)",
+     "type": "function",
+     "desc": "Mark fields in this form invalid in bulk."
     },
     {
      "name": "on",
      "type": "function",
      "desc": "Removes <b>all</b> added captures from the Observable."
     },
+    {
+     "name": "remove",
+     "sig": "(Field field)",
+     "type": "function",
+     "desc": "Removes a field from the items collection (does NOT remove its markup)."
+    },
     {
      "name": "removeListener",
      "sig": "(String eventName, Function handler, Object scope)",
      "name": "render",
      "sig": "(String/HTMLElement/Element container)",
      "type": "function",
-     "desc": "If this is a lazy rendering component, render it to its container element."
-    },
-    {
-     "name": "setDisabled",
-     "sig": "(Boolean disabled)",
-     "type": "function",
-     "desc": "Convenience function for setting disabled/enabled by boolean."
+     "desc": "Render this form into the passed container. This should only be called once!"
     },
     {
-     "name": "setVisible",
-     "sig": "(Boolean visible)",
+     "name": "reset",
+     "sig": "()",
      "type": "function",
-     "desc": "Convenience function to hide or show this component by boolean."
+     "desc": "Resets this form."
     },
     {
-     "name": "show",
+     "name": "resetHasChanged",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Resets all hasChanged to 'false' -\nThe old 'isDirty' used 'original value..' however this breaks reset() and a few other things.\nSo hasChanged storage is only to be used for this purpose"
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "setValues",
+     "sig": "(Array/Object values)",
      "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
-    }
-   ]
-  },
-  "Roo.form.MonthField": {
-   "props": [
-    {
-     "name": "format",
-     "type": "String",
-     "desc": "The default date format string which can be overriden for localization support.  The format must be\nvalid according to {@link Date#parseDate} (defaults to 'm/d/y').",
-     "memberOf": ""
-    },
-    {
-     "name": "altFormats",
-     "type": "String",
-     "desc": "Multiple date formats separated by \"|\" to try when parsing a user input value and it doesn't match the defined\nformat (defaults to 'm/d/Y|m-d-y|m-d-Y|m/d|m-d|d').",
-     "memberOf": ""
-    },
-    {
-     "name": "disabledDays",
-     "type": "Array",
-     "desc": "An array of days to disable, 0 based. For example, [0, 6] disables Sunday and Saturday (defaults to null).",
-     "memberOf": ""
-    },
-    {
-     "name": "disabledDaysText",
-     "type": "String",
-     "desc": "The tooltip to display when the date falls on a disabled day (defaults to 'Disabled')",
-     "memberOf": ""
+     "desc": "Set values for fields in this form in bulk."
     },
     {
-     "name": "disabledDates",
-     "type": "Array",
-     "desc": "An array of \"dates\" to disable, as strings. These strings will be used to build a dynamic regular\nexpression so they are very powerful. Some examples:\n<ul>\n<li>[\"03/08/2003\", \"09/16/2003\"] would disable those exact dates</li>\n<li>[\"03/08\", \"09/16\"] would disable those days for every year</li>\n<li>[\"^03/08\"] would only match the beginning (useful if you are using short years)</li>\n<li>[\"03/../2006\"] would disable every day in March 2006</li>\n<li>[\"^03\"] would disable every day in every March</li>\n</ul>\nIn order to support regular expressions, if you are using a date format that has \".\" in it, you will have to\nescape the dot when restricting dates. For example: [\"03\\\\.08\\\\.03\"].",
-     "memberOf": ""
+     "name": "start",
+     "sig": "(Object container)",
+     "type": "function",
+     "desc": "Opens the passed container in the layout stack. The container can be any {@link Roo.form.Layout} or subclass."
     },
     {
-     "name": "disabledDatesText",
-     "type": "String",
-     "desc": "The tooltip text to display when the date falls on a disabled date (defaults to 'Disabled')",
-     "memberOf": ""
+     "name": "startMonitoring",
+     "sig": "()",
+     "type": "function",
+     "desc": "Starts monitoring of the valid state of this form. Usually this is done by passing the config\noption \"monitorValid\""
     },
     {
-     "name": "minValue",
-     "type": "Date/String",
-     "desc": "The minimum allowed date. Can be either a Javascript date object or a string date in a\nvalid format (defaults to null).",
-     "memberOf": ""
+     "name": "stopMonitoring",
+     "sig": "()",
+     "type": "function",
+     "desc": "Stops monitoring of the valid state of this form"
     },
     {
-     "name": "maxValue",
-     "type": "Date/String",
-     "desc": "The maximum allowed date. Can be either a Javascript date object or a string date in a\nvalid format (defaults to null).",
-     "memberOf": ""
+     "name": "submit",
+     "sig": "(Object options)",
+     "type": "function",
+     "desc": "Shortcut to do a submit action."
     },
     {
-     "name": "minText",
-     "type": "String",
-     "desc": "The error text to display when the date in the cell is before minValue (defaults to\n'The date in this field must be after {minValue}').",
-     "memberOf": ""
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
     },
     {
-     "name": "maxTextf",
-     "type": "String",
-     "desc": "The error text to display when the date in the cell is after maxValue (defaults to\n'The date in this field must be before {maxValue}').",
-     "memberOf": ""
-    },
+     "name": "updateRecord",
+     "sig": "(Record record)",
+     "type": "function",
+     "desc": "Persists the values in this form into the passed Roo.data.Record object in a beginEdit/endEdit block."
+    }
+   ]
+  },
+  "Roo.form.GridField": {
+   "props": [
     {
-     "name": "invalidText",
-     "type": "String",
-     "desc": "The error text to display when the date in the field is invalid (defaults to\n'{value} is not a valid date - it must be in the format {format}').",
+     "name": "width",
+     "type": "Number",
+     "desc": "- used to restrict width of grid..",
      "memberOf": ""
     },
     {
-     "name": "triggerClass",
-     "type": "String",
-     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' and triggerClass will be <b>appended</b> if specified (defaults to 'x-form-date-trigger'\nwhich displays a calendar icon).",
+     "name": "height",
+     "type": "Number",
+     "desc": "- used to restrict height of grid..",
      "memberOf": ""
     },
     {
-     "name": "useIso",
-     "type": "Boolean",
-     "desc": "if enabled, then the date field will use a hidden field to store the \nreal value as iso formated date. default (true)",
+     "name": "xgrid",
+     "type": "Object",
+     "desc": "(xtype'd description of grid) { xtype : 'Grid', dataSource: .... }\n\n}",
      "memberOf": ""
     },
     {
      "name": "autoCreate",
      "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"10\", autocomplete: \"off\"})",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"checkbox\", autocomplete: \"off\"})",
      "memberOf": ""
     },
     {
-     "name": "hideTrigger",
-     "type": "Boolean",
-     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
-     "memberOf": "Roo.form.TriggerField"
-    },
-    {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "maskRe",
-     "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "minLengthText",
-     "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "maxLengthText",
-     "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "blankText",
-     "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "emptyText",
+     "name": "addTitle",
      "type": "String",
-     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
-     "memberOf": "Roo.form.TextField"
+     "desc": "Text to include for adding a title.",
+     "memberOf": ""
     },
     {
      "name": "fieldLabel",
      "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
      "memberOf": "Roo.form.Field"
     },
+    {
+     "name": "invalidText",
+     "type": "String",
+     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
+     "memberOf": "Roo.form.Field"
+    },
     {
      "name": "focusClass",
      "type": "String",
      "desc": "A CSS class to apply to the field's underlying element.",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "width",
-     "type": "Number",
-     "desc": "width (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
-    },
-    {
-     "name": "height",
-     "type": "Number",
-     "desc": "height (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
-    },
     {
      "name": "disableClass",
      "type": "String",
     }
    ],
    "events": [
-    {
-     "name": "autosize",
-     "sig": "function (_self, width)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is resized."
     },
-    {
-     "name": "select",
-     "sig": "function (combo, date)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a date is selected"
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the current date value of the date field."
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
      "type": "function",
      "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
     },
-    {
-     "name": "onTriggerClick",
-     "sig": "(EventObject e)",
-     "type": "function",
-     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
-    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "name": "reset",
      "sig": "()",
      "type": "function",
-     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
+     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
     },
     {
-     "name": "selectText",
-     "sig": "(Number start, Number end)",
+     "name": "resetHasChanged",
+     "sig": "()",
      "type": "function",
-     "desc": "Selects text in this field"
+     "desc": "stores the current value in loadedValue"
     },
     {
      "name": "setDisabled",
     },
     {
      "name": "setValue",
-     "sig": "(String/Date date)",
+     "sig": "(String either)",
      "type": "function",
-     "desc": "Sets the value of the date field.  You can pass a date object or any string that can be parsed into a valid\ndate, using MonthField.format as the date format, according to the same rules as {@link Date#parseDate}\n(the default format used is \"m/d/y\").\n<br />Usage:\n<pre><code>\n//All of these calls set the same date value (May 4, 2006)\n\n//Pass a date object:\nvar dt = new Date('5/4/06');\nmonthField.setValue(dt);\n\n//Pass a date string (default format):\nmonthField.setValue('5/4/06');\n\n//Pass a date string (custom format):\nmonthField.format = 'Y-m-d';\nmonthField.setValue('2006-5-4');\n</code></pre>"
+     "desc": "Sets the value of the item."
     },
     {
      "name": "setVisible",
      "sig": "()",
      "type": "function",
      "desc": "Validates the field value"
-    },
-    {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.form.NumberField": {
+  "Roo.form.Hidden": {
    "props": [
     {
-     "name": "fieldClass",
-     "type": "String",
-     "desc": "The default CSS class for the field (defaults to \"x-form-field x-form-num-field\")",
-     "memberOf": ""
-    },
-    {
-     "name": "allowDecimals",
+     "name": "grow",
      "type": "Boolean",
-     "desc": "False to disallow decimal values (defaults to true)",
-     "memberOf": ""
+     "desc": "True if this field should automatically grow and shrink to its content",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "decimalSeparator",
-     "type": "String",
-     "desc": "Character(s) to allow as the decimal separator (defaults to '.')",
-     "memberOf": ""
+     "name": "growMin",
+     "type": "Number",
+     "desc": "The minimum width to allow when grow = true (defaults to 30)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "decimalPrecision",
+     "name": "growMax",
      "type": "Number",
-     "desc": "The maximum precision to display after the decimal separator (defaults to 2)",
-     "memberOf": ""
+     "desc": "The maximum width to allow when grow = true (defaults to 800)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "allowNegative",
-     "type": "Boolean",
-     "desc": "False to prevent entering a negative sign (defaults to true)",
-     "memberOf": ""
-    },
-    {
-     "name": "minValue",
-     "type": "Number",
-     "desc": "The minimum allowed value (defaults to Number.NEGATIVE_INFINITY)",
-     "memberOf": ""
-    },
-    {
-     "name": "maxValue",
-     "type": "Number",
-     "desc": "The maximum allowed value (defaults to Number.MAX_VALUE)",
-     "memberOf": ""
-    },
-    {
-     "name": "minText",
-     "type": "String",
-     "desc": "Error text to display if the minimum value validation fails (defaults to \"The minimum value for this field is {minValue}\")",
-     "memberOf": ""
-    },
-    {
-     "name": "maxText",
-     "type": "String",
-     "desc": "Error text to display if the maximum value validation fails (defaults to \"The maximum value for this field is {maxValue}\")",
-     "memberOf": ""
-    },
-    {
-     "name": "nanText",
-     "type": "String",
-     "desc": "Error text to display if the value is not a valid number.  For example, this can happen\nif a valid character like '.' or '-' is left in the field with no number (defaults to \"{value} is not a valid number\")",
-     "memberOf": ""
-    },
-    {
-     "name": "grow",
-     "type": "Boolean",
-     "desc": "True if this field should automatically grow and shrink to its content",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "The minimum width to allow when grow = true (defaults to 30)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "growMax",
-     "type": "Number",
-     "desc": "The maximum width to allow when grow = true (defaults to 800)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.form.TextField"
+     "name": "vtype",
+     "type": "String",
+     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
+     "memberOf": "Roo.form.TextField"
     },
     {
      "name": "maskRe",
      "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"20\", autocomplete: \"off\"})",
      "memberOf": "Roo.form.Field"
     },
+    {
+     "name": "fieldClass",
+     "type": "String",
+     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
+     "memberOf": "Roo.form.Field"
+    },
     {
      "name": "msgTarget",
      "type": "String",
      "type": "function",
      "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
     },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
      "type": "function",
      "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
     },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
     {
      "name": "selectText",
      "sig": "(Number start, Number end)",
     }
    ]
   },
-  "Roo.form.Radio": {
+  "Roo.form.HtmlEditor": {
    "props": [
     {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the checkbox receives focus (defaults to undefined)",
-     "memberOf": "Roo.form.Checkbox"
+     "name": "clearUp",
+     "type": "Boolean",
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "fieldClass",
+     "name": "toolbars",
+     "type": "Array",
+     "desc": "Array of toolbars. - defaults to just the Standard one",
+     "memberOf": ""
+    },
+    {
+     "name": "resizable",
      "type": "String",
-     "desc": "The default CSS class for the checkbox (defaults to \"x-form-field\")",
-     "memberOf": "Roo.form.Checkbox"
+     "desc": "'s' or 'se' or 'e' - wrapps the element in a\n                       Roo.resizable.",
+     "memberOf": ""
     },
     {
-     "name": "checked",
-     "type": "Boolean",
-     "desc": "True if the the checkbox should render already checked (defaults to false)",
-     "memberOf": "Roo.form.Checkbox"
+     "name": "height",
+     "type": "Number",
+     "desc": "(in pixels)",
+     "memberOf": ""
     },
     {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"checkbox\", autocomplete: \"off\"})",
-     "memberOf": "Roo.form.Checkbox"
+     "name": "width",
+     "type": "Number",
+     "desc": "(in pixels)",
+     "memberOf": ""
     },
     {
-     "name": "boxLabel",
-     "type": "String",
-     "desc": "The text that appears beside the checkbox",
-     "memberOf": "Roo.form.Checkbox"
+     "name": "stylesheets",
+     "type": "Array",
+     "desc": "url of stylesheets. set to [] to disable stylesheets.",
+     "memberOf": ""
     },
     {
-     "name": "inputValue",
-     "type": "String",
-     "desc": "The value that should go into the generated input element's value attribute",
-     "memberOf": "Roo.form.Checkbox"
+     "name": "blacklist",
+     "type": "Array",
+     "desc": "of css styles style attributes (blacklist overrides whitelist)",
+     "memberOf": ""
     },
     {
-     "name": "valueOff",
-     "type": "String",
-     "desc": "The value that should go into the generated input element's value when unchecked.",
-     "memberOf": "Roo.form.Checkbox"
+     "name": "whitelist",
+     "type": "Array",
+     "desc": "of css styles style attributes (blacklist overrides whitelist)",
+     "memberOf": ""
     },
     {
      "name": "fieldLabel",
      "desc": "The field's HTML name attribute.",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "invalidText",
-     "type": "String",
-     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.form.Field"
-    },
     {
      "name": "validationDelay",
      "type": "Number",
      "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "msgFx",
-     "type": "String",
-     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
-     "memberOf": "Roo.form.Field"
-    },
     {
      "name": "readOnly",
      "type": "Boolean",
      "desc": "True to disable the field (defaults to false).",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "inputType",
-     "type": "String",
-     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
-     "memberOf": "Roo.form.Field"
-    },
     {
      "name": "tabIndex",
      "type": "Number",
      "desc": "A CSS class to apply to the field's underlying element.",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "width",
-     "type": "Number",
-     "desc": "width (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
-    },
-    {
-     "name": "height",
-     "type": "Number",
-     "desc": "height (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
-    },
     {
      "name": "disableClass",
      "type": "String",
     }
    ],
    "events": [
+    {
+     "name": "activate",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the editor is first receives the focus. Any insertion must wait\nuntil after this event."
+    },
+    {
+     "name": "autosave",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Auto save the htmlEditor value as a file into Events"
+    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
+    {
+     "name": "beforepush",
+     "sig": "function (_self, html)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the iframe editor is updated with content from the textarea. Return false\nto cancel the push."
+    },
     {
      "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "blur",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "beforesync",
+     "sig": "function (_self, html)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this field loses input focus."
+     "desc": "Fires before the textarea is updated with content from the editor iframe. Return false\nto cancel the sync."
     },
     {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
+     "desc": "Fires after the component is destroyed."
     },
     {
-     "name": "check",
-     "sig": "function (_self, checked)\n{\n\n}",
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the checkbox is checked or unchecked."
+     "desc": "Fires after the component is disabled."
     },
     {
-     "name": "destroy",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "editmodechange",
+     "sig": "function (_self, sourceEdit)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is destroyed."
+     "desc": "Fires when the editor switches edit modes"
     },
     {
-     "name": "disable",
+     "name": "editorevent",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is disabled."
+     "desc": "Fires when on any editor (mouse up/down cursor movement etc.) - used for toolbar hooks."
     },
     {
      "name": "enable",
      "desc": "Fires after the component is enabled."
     },
     {
-     "name": "focus",
+     "name": "firstfocus",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this field receives input focus."
+     "desc": "Fires when on first focus - needed by toolbars.."
     },
     {
      "name": "hide",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "initialize",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the editor is fully initialized (including the iframe)"
+    },
     {
      "name": "invalid",
      "sig": "function (_self, msg)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is moved."
     },
+    {
+     "name": "push",
+     "sig": "function (_self, html)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the iframe editor is updated with content from the textarea."
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is resized."
     },
+    {
+     "name": "savedpreview",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "preview the saved version of htmlEditor"
+    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "desc": "Fires after the component is shown."
     },
     {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
+     "name": "stylesheetsclick",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
+     "desc": "Fires when press the Sytlesheets button"
+    },
+    {
+     "name": "sync",
+     "sig": "function (_self, html)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the textarea is updated with content from the editor iframe."
     },
     {
      "name": "valid",
      "name": "clearInvalid",
      "sig": "()",
      "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
+     "desc": "Overridden and disabled. The editor element does not support standard valid/invalid marking. @hide"
+    },
+    {
+     "name": "createToolbar",
+     "sig": "(HtmlEditor editor)",
+     "type": "function",
+     "desc": "Protected method that will not generally be called directly. It\nis called when the editor creates its toolbar. Override this method if you need to\nadd custom toolbar buttons."
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Returns the underlying {@link Roo.Element}."
     },
-    {
-     "name": "getGroupValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "If this radio is part of a group, it will return the selected value"
-    },
     {
      "name": "getId",
      "sig": "()",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the checked state of the checkbox."
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
     },
     {
      "name": "markInvalid",
-     "sig": "(String msg)",
+     "sig": "()",
      "type": "function",
-     "desc": "Mark this field as invalid"
+     "desc": "Overridden and disabled. The editor element does not support standard valid/invalid marking. @hide"
     },
     {
      "name": "on",
      "type": "function",
      "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
     },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
     },
     {
      "name": "setValue",
-     "sig": "(Boolean/String value, Boolean/String suppressEvent)",
+     "sig": "(Mixed value)",
      "type": "function",
-     "desc": "Sets the checked state of the checkbox.\nOn is always based on a string comparison between inputValue and the param."
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
     },
     {
      "name": "setVisible",
      "type": "function",
      "desc": "Force the component's size to recalculate based on the underlying element's current height and width."
     },
+    {
+     "name": "toggleSourceEdit",
+     "sig": "(Boolean sourceEdit)",
+     "type": "function",
+     "desc": "Toggles the editor between standard and source edit mode."
+    },
     {
      "name": "un",
      "sig": "(String eventName, Function handler, Object scope)",
     }
    ]
   },
-  "Roo.form.Row": {
+  "Roo.form.HtmlEditor.ToolbarContext": {
    "props": [
     {
-     "name": "width",
-     "type": "Number/String",
-     "desc": "The fixed width of the column in pixels or CSS value (defaults to \"auto\")",
+     "name": "disable",
+     "type": "Object",
+     "desc": "List of toolbar elements to disable",
      "memberOf": ""
     },
     {
-     "name": "height",
-     "type": "Number/String",
-     "desc": "The fixed height of the column in pixels or CSS value (defaults to \"auto\")",
+     "name": "styles",
+     "type": "Object",
+     "desc": "List of styles \n   eg. { '*' : [ 'headline' ] , 'TD' : [ 'underline', 'double-underline' ] } \n\nThese must be defined in the page, so they get rendered correctly..\n.headline { }\nTD.underline { }",
+     "memberOf": ""
+    }
+   ],
+   "events": [],
+   "methods": [
+    {
+     "name": "updateToolbar",
+     "sig": "()",
+     "type": "function",
+     "desc": "Protected method that will not generally be called directly. It triggers\na toolbar update by reading the markup state of the current selection in the editor.\n\nNote you can force an update by calling on('editorevent', scope, false)"
+    }
+   ]
+  },
+  "Roo.form.HtmlEditor.ToolbarStandard": {
+   "props": [
+    {
+     "name": "disable",
+     "type": "Object",
+     "desc": "List of elements to disable..",
      "memberOf": ""
     },
+    {
+     "name": "btns",
+     "type": "Array",
+     "desc": "List of additional buttons.\n\n\nNEEDS Extra CSS? \n.x-html-editor-tb .x-edit-none .x-btn-text { background: none; }",
+     "memberOf": ""
+    },
+    {
+     "name": "createLinkText",
+     "type": "String",
+     "desc": "The default text for the create link prompt",
+     "memberOf": ""
+    },
+    {
+     "name": "defaultLinkValue",
+     "type": "String",
+     "desc": "The default value for the create link prompt (defaults to http:/ /)",
+     "memberOf": ""
+    },
+    {
+     "name": "fontFamilies",
+     "type": "Array",
+     "desc": "An array of available font families",
+     "memberOf": ""
+    },
+    {
+     "name": "defaultFont",
+     "type": "String",
+     "desc": "default font to use.",
+     "memberOf": ""
+    }
+   ],
+   "events": [],
+   "methods": [
+    {
+     "name": "updateToolbar",
+     "sig": "()",
+     "type": "function",
+     "desc": "Protected method that will not generally be called directly. It triggers\na toolbar update by reading the markup state of the current selection in the editor."
+    }
+   ]
+  },
+  "Roo.form.Layout": {
+   "props": [
     {
      "name": "autoCreate",
      "type": "String/Object",
      "desc": "A DomHelper element spec used to autocreate the layout (defaults to {tag: 'div', cls: 'x-form-ct'})",
-     "memberOf": "Roo.form.Layout"
+     "memberOf": ""
     },
     {
      "name": "style",
      "type": "String/Object/Function",
      "desc": "A style specification string, e.g. \"width:100px\", or object in the form {width:\"100px\"}, or\na function which returns such a specification.",
-     "memberOf": "Roo.form.Layout"
+     "memberOf": ""
     },
     {
      "name": "labelAlign",
      "type": "String",
      "desc": "Valid values are \"left,\" \"top\" and \"right\" (defaults to \"left\")",
-     "memberOf": "Roo.form.Layout"
+     "memberOf": ""
     },
     {
      "name": "labelWidth",
      "type": "Number",
      "desc": "Fixed width in pixels of all field labels (defaults to undefined)",
-     "memberOf": "Roo.form.Layout"
+     "memberOf": ""
     },
     {
      "name": "clear",
      "type": "Boolean",
      "desc": "True to add a clearing element at the end of this layout, equivalent to CSS clear: both (defaults to true)",
-     "memberOf": "Roo.form.Layout"
+     "memberOf": ""
     },
     {
      "name": "labelSeparator",
      "type": "String",
      "desc": "The separator to use after field labels (defaults to ':')",
-     "memberOf": "Roo.form.Layout"
+     "memberOf": ""
     },
     {
      "name": "hideLabels",
      "type": "Boolean",
      "desc": "True to suppress the display of field labels in this layout (defaults to false)",
-     "memberOf": "Roo.form.Layout"
+     "memberOf": ""
     },
     {
      "name": "disableClass",
     }
    ]
   },
-  "Roo.form.Select": {
+  "Roo.form.MonthField": {
    "props": [
     {
-     "name": "transform",
-     "type": "String/HTMLElement/Element",
-     "desc": "The id, DOM node or element of an existing select to convert to a ComboBox",
-     "memberOf": ""
-    },
-    {
-     "name": "lazyRender",
-     "type": "Boolean",
-     "desc": "True to prevent the ComboBox from rendering until requested (should always be used when\nrendering into an Roo.Editor, defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "autoCreate",
-     "type": "Boolean/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to:\n{tag: \"input\", type: \"text\", size: \"24\", autocomplete: \"off\"})",
-     "memberOf": ""
-    },
-    {
-     "name": "store",
-     "type": "Roo.data.Store",
-     "desc": "The data store to which this combo is bound (defaults to undefined)",
-     "memberOf": ""
-    },
-    {
-     "name": "title",
-     "type": "String",
-     "desc": "If supplied, a header element is created containing this text and added into the top of\nthe dropdown list (defaults to undefined, with no header element)",
-     "memberOf": ""
-    },
-    {
-     "name": "grow",
-     "type": "Boolean",
-     "desc": "",
-     "memberOf": ""
-    },
-    {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "",
-     "memberOf": ""
-    },
-    {
-     "name": "growMax",
-     "type": "Number",
-     "desc": "",
-     "memberOf": ""
-    },
-    {
-     "name": "tpl",
-     "type": "String/Roo.Template",
-     "desc": "The template to use to render the output",
-     "memberOf": ""
-    },
-    {
-     "name": "listWidth",
-     "type": "Number",
-     "desc": "The width in pixels of the dropdown list (defaults to the width of the ComboBox field)",
-     "memberOf": ""
-    },
-    {
-     "name": "displayField",
-     "type": "String",
-     "desc": "The underlying data field name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'text' if mode = 'local')",
-     "memberOf": ""
-    },
-    {
-     "name": "valueField",
-     "type": "String",
-     "desc": "The underlying data value name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'value' if mode = 'local'). \nNote: use of a valueField requires the user make a selection\nin order for a value to be mapped.",
-     "memberOf": ""
-    },
-    {
-     "name": "hiddenName",
-     "type": "String",
-     "desc": "If specified, a hidden form field with this name is dynamically generated to store the\nfield's data value (defaults to the underlying DOM element's name)",
-     "memberOf": ""
-    },
-    {
-     "name": "listClass",
-     "type": "String",
-     "desc": "CSS class to apply to the dropdown list element (defaults to '')",
-     "memberOf": ""
-    },
-    {
-     "name": "selectedClass",
-     "type": "String",
-     "desc": "CSS class to apply to the selected item in the dropdown list (defaults to 'x-combo-selected')",
-     "memberOf": ""
-    },
-    {
-     "name": "triggerClass",
+     "name": "format",
      "type": "String",
-     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' and triggerClass will be <b>appended</b> if specified (defaults to 'x-form-arrow-trigger'\nwhich displays a downward arrow icon).",
-     "memberOf": ""
-    },
-    {
-     "name": "shadow",
-     "type": "Boolean/String",
-     "desc": "True or \"sides\" for the default effect, \"frame\" for 4-way shadow, and \"drop\" for bottom-right",
+     "desc": "The default date format string which can be overriden for localization support.  The format must be\nvalid according to {@link Date#parseDate} (defaults to 'm/d/y').",
      "memberOf": ""
     },
     {
-     "name": "listAlign",
+     "name": "altFormats",
      "type": "String",
-     "desc": "A valid anchor position value. See {@link Roo.Element#alignTo} for details on supported\nanchor positions (defaults to 'tl-bl')",
+     "desc": "Multiple date formats separated by \"|\" to try when parsing a user input value and it doesn't match the defined\nformat (defaults to 'm/d/Y|m-d-y|m-d-Y|m/d|m-d|d').",
      "memberOf": ""
     },
     {
-     "name": "maxHeight",
-     "type": "Number",
-     "desc": "The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300)",
+     "name": "disabledDays",
+     "type": "Array",
+     "desc": "An array of days to disable, 0 based. For example, [0, 6] disables Sunday and Saturday (defaults to null).",
      "memberOf": ""
     },
     {
-     "name": "triggerAction",
+     "name": "disabledDaysText",
      "type": "String",
-     "desc": "The action to execute when the trigger field is activated.  Use 'all' to run the\nquery specified by the allQuery config option (defaults to 'query')",
-     "memberOf": ""
-    },
-    {
-     "name": "minChars",
-     "type": "Number",
-     "desc": "The minimum number of characters the user must type before autocomplete and typeahead activate\n(defaults to 4, does not apply if editable = false)",
-     "memberOf": ""
-    },
-    {
-     "name": "typeAhead",
-     "type": "Boolean",
-     "desc": "True to populate and autoselect the remainder of the text being typed after a configurable\ndelay (typeAheadDelay) if it matches a known value (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "queryDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to delay between the start of typing and sending the\nquery to filter the dropdown list (defaults to 500 if mode = 'remote' or 10 if mode = 'local')",
-     "memberOf": ""
-    },
-    {
-     "name": "pageSize",
-     "type": "Number",
-     "desc": "If greater than 0, a paging toolbar is displayed in the footer of the dropdown list and the\nfilter queries will execute with page start and limit parameters.  Only applies when mode = 'remote' (defaults to 0)",
-     "memberOf": ""
-    },
-    {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to select any existing text in the field immediately on focus.  Only applies\nwhen editable = true (defaults to false)",
+     "desc": "The tooltip to display when the date falls on a disabled day (defaults to 'Disabled')",
      "memberOf": ""
     },
     {
-     "name": "queryParam",
-     "type": "String",
-     "desc": "Name of the query as it will be passed on the querystring (defaults to 'query')",
+     "name": "disabledDates",
+     "type": "Array",
+     "desc": "An array of \"dates\" to disable, as strings. These strings will be used to build a dynamic regular\nexpression so they are very powerful. Some examples:\n<ul>\n<li>[\"03/08/2003\", \"09/16/2003\"] would disable those exact dates</li>\n<li>[\"03/08\", \"09/16\"] would disable those days for every year</li>\n<li>[\"^03/08\"] would only match the beginning (useful if you are using short years)</li>\n<li>[\"03/../2006\"] would disable every day in March 2006</li>\n<li>[\"^03\"] would disable every day in every March</li>\n</ul>\nIn order to support regular expressions, if you are using a date format that has \".\" in it, you will have to\nescape the dot when restricting dates. For example: [\"03\\\\.08\\\\.03\"].",
      "memberOf": ""
     },
     {
-     "name": "loadingText",
+     "name": "disabledDatesText",
      "type": "String",
-     "desc": "The text to display in the dropdown list while data is loading.  Only applies\nwhen mode = 'remote' (defaults to 'Loading...')",
-     "memberOf": ""
-    },
-    {
-     "name": "resizable",
-     "type": "Boolean",
-     "desc": "True to add a resize handle to the bottom of the dropdown list (defaults to false)",
+     "desc": "The tooltip text to display when the date falls on a disabled date (defaults to 'Disabled')",
      "memberOf": ""
     },
     {
-     "name": "handleHeight",
-     "type": "Number",
-     "desc": "The height in pixels of the dropdown list resize handle if resizable = true (defaults to 8)",
+     "name": "minValue",
+     "type": "Date/String",
+     "desc": "The minimum allowed date. Can be either a Javascript date object or a string date in a\nvalid format (defaults to null).",
      "memberOf": ""
     },
     {
-     "name": "editable",
-     "type": "Boolean",
-     "desc": "False to prevent the user from typing text directly into the field, just like a\ntraditional select (defaults to true)",
+     "name": "maxValue",
+     "type": "Date/String",
+     "desc": "The maximum allowed date. Can be either a Javascript date object or a string date in a\nvalid format (defaults to null).",
      "memberOf": ""
     },
     {
-     "name": "allQuery",
+     "name": "minText",
      "type": "String",
-     "desc": "The text query to send to the server to return all records for the list with no filtering (defaults to '')",
+     "desc": "The error text to display when the date in the cell is before minValue (defaults to\n'The date in this field must be after {minValue}').",
      "memberOf": ""
     },
     {
-     "name": "mode",
+     "name": "maxTextf",
      "type": "String",
-     "desc": "Set to 'local' if the ComboBox loads local data (defaults to 'remote' which loads from the server)",
-     "memberOf": ""
-    },
-    {
-     "name": "minListWidth",
-     "type": "Number",
-     "desc": "The minimum width of the dropdown list in pixels (defaults to 70, will be ignored if\nlistWidth has a higher value)",
-     "memberOf": ""
-    },
-    {
-     "name": "forceSelection",
-     "type": "Boolean",
-     "desc": "True to restrict the selected value to one of the values in the list, false to\nallow the user to set arbitrary text into the field (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "typeAheadDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to wait until the typeahead text is displayed\nif typeAhead = true (defaults to 250)",
+     "desc": "The error text to display when the date in the cell is after maxValue (defaults to\n'The date in this field must be before {maxValue}').",
      "memberOf": ""
     },
     {
-     "name": "valueNotFoundText",
+     "name": "invalidText",
      "type": "String",
-     "desc": "When using a name/value combo, if the value passed to setValue is not found in\nthe store, valueNotFoundText will be displayed as the field text if defined (defaults to undefined)",
+     "desc": "The error text to display when the date in the field is invalid (defaults to\n'{value} is not a valid date - it must be in the format {format}').",
      "memberOf": ""
     },
     {
-     "name": "defaultValue",
+     "name": "triggerClass",
      "type": "String",
-     "desc": "The value displayed after loading the store.",
-     "memberOf": ""
-    },
-    {
-     "name": "blockFocus",
-     "type": "Boolean",
-     "desc": "Prevents all focus calls, so it can work with things like HTML edtor bar",
+     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' and triggerClass will be <b>appended</b> if specified (defaults to 'x-form-date-trigger'\nwhich displays a calendar icon).",
      "memberOf": ""
     },
     {
-     "name": "disableClear",
+     "name": "useIso",
      "type": "Boolean",
-     "desc": "Disable showing of clear button.",
+     "desc": "if enabled, then the date field will use a hidden field to store the \nreal value as iso formated date. default (true)",
      "memberOf": ""
     },
     {
-     "name": "alwaysQuery",
-     "type": "Boolean",
-     "desc": "Disable caching of results, and always send query",
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"10\", autocomplete: \"off\"})",
      "memberOf": ""
     },
     {
      "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
      "memberOf": "Roo.form.TextField"
     },
+    {
+     "name": "selectOnFocus",
+     "type": "Boolean",
+     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
+     "memberOf": "Roo.form.TextField"
+    },
     {
      "name": "blankText",
      "type": "String",
      "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "invalidText",
-     "type": "String",
-     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
     {
      "name": "focusClass",
      "type": "String",
      "type": "function",
      "desc": "Fires after the component is resized."
     },
+    {
+     "name": "select",
+     "sig": "function (combo, date)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a date is selected"
+    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Clear any invalid styles/messages for this field"
     },
-    {
-     "name": "clearValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clears any text/value currently set in the field"
-    },
-    {
-     "name": "collapse",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hides the dropdown list if it is currently expanded. Fires the 'collapse' event on completion."
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Disable this component."
     },
-    {
-     "name": "doQuery",
-     "sig": "(String query, Boolean forceAll)",
-     "type": "function",
-     "desc": "Execute a query to filter the dropdown list.  Fires the beforequery event prior to performing the\nquery allowing the query action to be canceled if needed."
-    },
     {
      "name": "enable",
      "sig": "()",
      "type": "function",
      "desc": "Enable this component."
     },
-    {
-     "name": "expand",
-     "sig": "()",
-     "type": "function",
-     "desc": "Expands the dropdown list if it is currently hidden. Fires the 'expand' event on completion."
-    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the currently selected field value or empty string if no value is set."
+     "desc": "Returns the current date value of the date field."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
-    },
-    {
-     "name": "isExpanded",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the dropdown list is expanded, else false."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
      "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
     },
     {
-     "name": "select",
-     "sig": "(Number index, Boolean scrollIntoView)",
-     "type": "function",
-     "desc": "Select an item in the dropdown list by its numeric index in the list. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
-    },
-    {
-     "name": "selectByValue",
-     "sig": "(String value, Boolean scrollIntoView)",
+     "name": "resetHasChanged",
+     "sig": "()",
      "type": "function",
-     "desc": "Select an item in the dropdown list by its data value. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
+     "desc": "stores the current value in loadedValue"
     },
     {
      "name": "selectText",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setEditable",
-     "sig": "(Boolean value)",
-     "type": "function",
-     "desc": "Allow or prevent the user from directly editing the field text.  If false is passed,\nthe user will only be able to select from the items defined in the dropdown list.  This method\nis the runtime equivalent of setting the 'editable' config option at config time."
-    },
-    {
-     "name": "setFromData",
-     "sig": "(Object value)",
-     "type": "function",
-     "desc": "Sets the value of the field based on a object which is related to the record format for the store."
-    },
     {
      "name": "setPagePosition",
      "sig": "(Number x, Number y)",
     },
     {
      "name": "setValue",
-     "sig": "(String value)",
+     "sig": "(String/Date date)",
      "type": "function",
-     "desc": "Sets the specified value into the field.  If the value finds a match, the corresponding record text\nwill be displayed in the field.  If the value does not match the data value of an existing item,\nand the valueNotFoundText config option is defined, it will be displayed as the default field text.\nOtherwise the field will be blank (although the value will still be set)."
+     "desc": "Sets the value of the date field.  You can pass a date object or any string that can be parsed into a valid\ndate, using MonthField.format as the date format, according to the same rules as {@link Date#parseDate}\n(the default format used is \"m/d/y\").\n<br />Usage:\n<pre><code>\n//All of these calls set the same date value (May 4, 2006)\n\n//Pass a date object:\nvar dt = new Date('5/4/06');\nmonthField.setValue(dt);\n\n//Pass a date string (default format):\nmonthField.setValue('5/4/06');\n\n//Pass a date string (custom format):\nmonthField.format = 'Y-m-d';\nmonthField.setValue('2006-5-4');\n</code></pre>"
     },
     {
      "name": "setVisible",
     }
    ]
   },
-  "Roo.form.Signature": {
+  "Roo.form.NumberField": {
    "props": [
     {
-     "name": "labels",
-     "type": "Object",
-     "desc": "Label to use when rendering a form.\ndefaults to \nlabels : { \n     clear : \"Clear\",\n     confirm : \"Confirm\"\n }",
+     "name": "fieldClass",
+     "type": "String",
+     "desc": "The default CSS class for the field (defaults to \"x-form-field x-form-num-field\")",
      "memberOf": ""
     },
     {
-     "name": "width",
+     "name": "allowDecimals",
+     "type": "Boolean",
+     "desc": "False to disallow decimal values (defaults to true)",
+     "memberOf": ""
+    },
+    {
+     "name": "decimalSeparator",
+     "type": "String",
+     "desc": "Character(s) to allow as the decimal separator (defaults to '.')",
+     "memberOf": ""
+    },
+    {
+     "name": "decimalPrecision",
      "type": "Number",
-     "desc": "The signature panel width (defaults to 300)",
+     "desc": "The maximum precision to display after the decimal separator (defaults to 2)",
      "memberOf": ""
     },
     {
-     "name": "height",
+     "name": "allowNegative",
+     "type": "Boolean",
+     "desc": "False to prevent entering a negative sign (defaults to true)",
+     "memberOf": ""
+    },
+    {
+     "name": "minValue",
      "type": "Number",
-     "desc": "The signature panel height (defaults to 100)",
+     "desc": "The minimum allowed value (defaults to Number.NEGATIVE_INFINITY)",
+     "memberOf": ""
+    },
+    {
+     "name": "maxValue",
+     "type": "Number",
+     "desc": "The maximum allowed value (defaults to Number.MAX_VALUE)",
+     "memberOf": ""
+    },
+    {
+     "name": "minText",
+     "type": "String",
+     "desc": "Error text to display if the minimum value validation fails (defaults to \"The minimum value for this field is {minValue}\")",
+     "memberOf": ""
+    },
+    {
+     "name": "maxText",
+     "type": "String",
+     "desc": "Error text to display if the maximum value validation fails (defaults to \"The maximum value for this field is {maxValue}\")",
+     "memberOf": ""
+    },
+    {
+     "name": "nanText",
+     "type": "String",
+     "desc": "Error text to display if the value is not a valid number.  For example, this can happen\nif a valid character like '.' or '-' is left in the field with no number (defaults to \"{value} is not a valid number\")",
      "memberOf": ""
     },
+    {
+     "name": "grow",
+     "type": "Boolean",
+     "desc": "True if this field should automatically grow and shrink to its content",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "growMin",
+     "type": "Number",
+     "desc": "The minimum width to allow when grow = true (defaults to 30)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "growMax",
+     "type": "Number",
+     "desc": "The maximum width to allow when grow = true (defaults to 800)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "vtype",
+     "type": "String",
+     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "maskRe",
+     "type": "String",
+     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "disableKeyFilter",
+     "type": "Boolean",
+     "desc": "True to disable input keystroke filtering (defaults to false)",
+     "memberOf": "Roo.form.TextField"
+    },
     {
      "name": "allowBlank",
      "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to false)",
-     "memberOf": ""
+     "desc": "False to validate that the value length > 0 (defaults to true)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "minLength",
+     "type": "Number",
+     "desc": "Minimum input field length required (defaults to 0)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "maxLength",
+     "type": "Number",
+     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "minLengthText",
+     "type": "String",
+     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "maxLengthText",
+     "type": "String",
+     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "selectOnFocus",
+     "type": "Boolean",
+     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "blankText",
+     "type": "String",
+     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "validator",
+     "type": "Function",
+     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "regex",
+     "type": "RegExp",
+     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "regexText",
+     "type": "String",
+     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "emptyText",
+     "type": "String",
+     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
+     "memberOf": "Roo.form.TextField"
     },
     {
      "name": "fieldLabel",
      "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"20\", autocomplete: \"off\"})",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "fieldClass",
-     "type": "String",
-     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
-     "memberOf": "Roo.form.Field"
-    },
     {
      "name": "msgTarget",
      "type": "String",
      "desc": "A CSS class to apply to the field's underlying element.",
      "memberOf": "Roo.form.Field"
     },
+    {
+     "name": "width",
+     "type": "Number",
+     "desc": "width (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
+    },
+    {
+     "name": "height",
+     "type": "Number",
+     "desc": "height (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
+    },
     {
      "name": "disableClass",
      "type": "String",
     }
    ],
    "events": [
+    {
+     "name": "autosize",
+     "sig": "function (_self, width)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
+    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires just before the field blurs if the field value has changed."
     },
-    {
-     "name": "confirm",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'confirm' icon is pressed (add a listener to enable add button)"
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "reset",
-     "sig": "function (combo, record)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'edit' icon is pressed (add a listener to enable add button)"
-    },
     {
      "name": "resize",
      "sig": "function (_self, adjWidth, adjHeight, rawWidth, rawHeight)\n{\n\n}",
      "type": "function",
      "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
     },
+    {
+     "name": "autoSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Automatically grows the field to accomodate the width of the text up to the maximum field width allowed.\nThis only takes effect if grow = true, and fires the autosize event."
+    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "Clear any invalid styles/messages for this field"
     },
-    {
-     "name": "createToolbar",
-     "sig": "(HtmlEditor editor)",
-     "type": "function",
-     "desc": "Protected method that will not generally be called directly. It\nis called when the editor creates its toolbar. Override this method if you need to\nadd custom toolbar buttons."
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Gets the current box measurements of the component's underlying element."
     },
-    {
-     "name": "getConfirmed",
-     "sig": "()",
-     "type": "function",
-     "desc": ""
-    },
     {
      "name": "getEl",
      "sig": "()",
      "type": "function",
      "desc": "Returns the underlying {@link Roo.Element}."
     },
-    {
-     "name": "getHeight",
-     "sig": "()",
-     "type": "function",
-     "desc": ""
-    },
     {
      "name": "getId",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getImageDataURI",
-     "sig": "()",
-     "type": "function",
-     "desc": "when user is clicked confirm then show this image....."
-    },
     {
      "name": "getName",
      "sig": "()",
      "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
     },
     {
-     "name": "getWidth",
+     "name": "hasChanged",
      "sig": "()",
      "type": "function",
-     "desc": ""
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
      "name": "reset",
      "sig": "()",
      "type": "function",
-     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
+     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
+    },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
+    {
+     "name": "selectText",
+     "sig": "(Number start, Number end)",
+     "type": "function",
+     "desc": "Selects text in this field"
     },
     {
      "name": "setDisabled",
      "sig": "()",
      "type": "function",
      "desc": "Validates the field value"
+    },
+    {
+     "name": "validateValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.form.TextArea": {
+  "Roo.form.Radio": {
    "props": [
     {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "The minimum height to allow when grow = true (defaults to 60)",
-     "memberOf": ""
-    },
-    {
-     "name": "growMax",
-     "type": "Number",
-     "desc": "The maximum height to allow when grow = true (defaults to 1000)",
-     "memberOf": ""
-    },
-    {
-     "name": "preventScrollbars",
-     "type": "Boolean",
-     "desc": "True to prevent scrollbars from appearing regardless of how much text is\nin the field (equivalent to setting overflow: hidden, defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"textarea\", style: \"width:300px;height:60px;\", autocomplete: \"off\"})",
-     "memberOf": ""
-    },
-    {
-     "name": "grow",
-     "type": "Boolean",
-     "desc": "True if this field should automatically grow and shrink to its content",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "vtype",
+     "name": "focusClass",
      "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.form.TextField"
+     "desc": "The CSS class to use when the checkbox receives focus (defaults to undefined)",
+     "memberOf": "Roo.form.Checkbox"
     },
     {
-     "name": "maskRe",
+     "name": "fieldClass",
      "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.form.TextField"
+     "desc": "The default CSS class for the checkbox (defaults to \"x-form-field\")",
+     "memberOf": "Roo.form.Checkbox"
     },
     {
-     "name": "allowBlank",
+     "name": "checked",
      "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "minLengthText",
-     "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "maxLengthText",
-     "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.form.TextField"
+     "desc": "True if the the checkbox should render already checked (defaults to false)",
+     "memberOf": "Roo.form.Checkbox"
     },
     {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
-     "memberOf": "Roo.form.TextField"
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"checkbox\", autocomplete: \"off\"})",
+     "memberOf": "Roo.form.Checkbox"
     },
     {
-     "name": "blankText",
+     "name": "boxLabel",
      "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.form.TextField"
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.form.TextField"
+     "desc": "The text that appears beside the checkbox",
+     "memberOf": "Roo.form.Checkbox"
     },
     {
-     "name": "regexText",
+     "name": "inputValue",
      "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.form.TextField"
+     "desc": "The value that should go into the generated input element's value attribute",
+     "memberOf": "Roo.form.Checkbox"
     },
     {
-     "name": "emptyText",
+     "name": "valueOff",
      "type": "String",
-     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
-     "memberOf": "Roo.form.TextField"
+     "desc": "The value that should go into the generated input element's value when unchecked.",
+     "memberOf": "Roo.form.Checkbox"
     },
     {
      "name": "fieldLabel",
      "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.form.Field"
-    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
      "memberOf": "Roo.form.Field"
     },
-    {
-     "name": "fieldClass",
-     "type": "String",
-     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
-     "memberOf": "Roo.form.Field"
-    },
     {
      "name": "msgTarget",
      "type": "String",
     }
    ],
    "events": [
-    {
-     "name": "autosize",
-     "sig": "function (_self, width)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires just before the field blurs if the field value has changed."
     },
+    {
+     "name": "check",
+     "sig": "function (_self, checked)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the checkbox is checked or unchecked."
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
     },
-    {
-     "name": "autoSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Automatically grows the field to accomodate the height of the text up to the maximum field height allowed.\nThis only takes effect if grow = true, and fires the autosize event if the height changes."
-    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "Returns the underlying {@link Roo.Element}."
     },
+    {
+     "name": "getGroupValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "If this radio is part of a group, it will return the selected value"
+    },
     {
      "name": "getId",
      "sig": "()",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+     "desc": "Returns the checked state of the checkbox."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
      "name": "isValid",
      "name": "reset",
      "sig": "()",
      "type": "function",
-     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
+     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
     },
     {
-     "name": "selectText",
-     "sig": "(Number start, Number end)",
+     "name": "resetHasChanged",
+     "sig": "()",
      "type": "function",
-     "desc": "Selects text in this field"
+     "desc": "stores the current value in loadedValue"
     },
     {
      "name": "setDisabled",
     },
     {
      "name": "setValue",
-     "sig": "(Mixed value)",
+     "sig": "(Boolean/String value, Boolean/String suppressEvent)",
      "type": "function",
-     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
+     "desc": "Sets the checked state of the checkbox.\nOn is always based on a string comparison between inputValue and the param."
     },
     {
      "name": "setVisible",
      "sig": "()",
      "type": "function",
      "desc": "Validates the field value"
-    },
-    {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.form.TextField": {
+  "Roo.form.Row": {
    "props": [
     {
-     "name": "grow",
-     "type": "Boolean",
-     "desc": "True if this field should automatically grow and shrink to its content",
-     "memberOf": ""
-    },
-    {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "The minimum width to allow when grow = true (defaults to 30)",
-     "memberOf": ""
-    },
-    {
-     "name": "growMax",
-     "type": "Number",
-     "desc": "The maximum width to allow when grow = true (defaults to 800)",
-     "memberOf": ""
-    },
-    {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": ""
-    },
-    {
-     "name": "maskRe",
-     "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": ""
-    },
-    {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": ""
-    },
-    {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": ""
-    },
-    {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": ""
-    },
-    {
-     "name": "minLengthText",
-     "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": ""
-    },
-    {
-     "name": "maxLengthText",
-     "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": ""
-    },
-    {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "blankText",
-     "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": ""
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": ""
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": ""
-    },
-    {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
+     "name": "width",
+     "type": "Number/String",
+     "desc": "The fixed width of the column in pixels or CSS value (defaults to \"auto\")",
      "memberOf": ""
     },
     {
-     "name": "emptyText",
-     "type": "String",
-     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
+     "name": "height",
+     "type": "Number/String",
+     "desc": "The fixed height of the column in pixels or CSS value (defaults to \"auto\")",
      "memberOf": ""
     },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "Label to use when rendering a form.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "qtip",
-     "type": "String",
-     "desc": "Mouse over tip",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "name",
-     "type": "String",
-     "desc": "The field's HTML name attribute.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "invalidText",
-     "type": "String",
-     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.form.Field"
-    },
     {
      "name": "autoCreate",
      "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"20\", autocomplete: \"off\"})",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "fieldClass",
-     "type": "String",
-     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "msgTarget",
-     "type": "String",
-     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "msgFx",
-     "type": "String",
-     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
-     "memberOf": "Roo.form.Field"
+     "desc": "A DomHelper element spec used to autocreate the layout (defaults to {tag: 'div', cls: 'x-form-ct'})",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "True to disable the field (defaults to false).",
-     "memberOf": "Roo.form.Field"
+     "name": "style",
+     "type": "String/Object/Function",
+     "desc": "A style specification string, e.g. \"width:100px\", or object in the form {width:\"100px\"}, or\na function which returns such a specification.",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "inputType",
+     "name": "labelAlign",
      "type": "String",
-     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
-     "memberOf": "Roo.form.Field"
+     "desc": "Valid values are \"left,\" \"top\" and \"right\" (defaults to \"left\")",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "tabIndex",
+     "name": "labelWidth",
      "type": "Number",
-     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
-     "memberOf": "Roo.form.Field"
+     "desc": "Fixed width in pixels of all field labels (defaults to undefined)",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "value",
-     "type": "Mixed",
-     "desc": "A value to initialize this field with.",
-     "memberOf": "Roo.form.Field"
+     "name": "clear",
+     "type": "Boolean",
+     "desc": "True to add a clearing element at the end of this layout, equivalent to CSS clear: both (defaults to true)",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "cls",
+     "name": "labelSeparator",
      "type": "String",
-     "desc": "A CSS class to apply to the field's underlying element.",
-     "memberOf": "Roo.form.Field"
-    },
-    {
-     "name": "width",
-     "type": "Number",
-     "desc": "width (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
+     "desc": "The separator to use after field labels (defaults to ':')",
+     "memberOf": "Roo.form.Layout"
     },
     {
-     "name": "height",
-     "type": "Number",
-     "desc": "height (optional) size of component",
-     "memberOf": "Roo.BoxComponent"
+     "name": "hideLabels",
+     "type": "Boolean",
+     "desc": "True to suppress the display of field labels in this layout (defaults to false)",
+     "memberOf": "Roo.form.Layout"
     },
     {
      "name": "disableClass",
     }
    ],
    "events": [
-    {
-     "name": "autosize",
-     "sig": "function (_self, width)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "blur",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field loses input focus."
-    },
-    {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "focus",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field receives input focus."
-    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
-    },
-    {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the key up"
-    },
-    {
-     "name": "move",
-     "sig": "function (_self, x, y)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is moved."
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "resize",
-     "sig": "function (_self, adjWidth, adjHeight, rawWidth, rawHeight)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the component is resized."
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
-    },
-    {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
-    },
-    {
-     "name": "valid",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "desc": "Appends an event handler to this component"
     },
     {
-     "name": "applyTo",
-     "sig": "(String/HTMLElement/Element el)",
-     "type": "function",
-     "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
-    },
-    {
-     "name": "autoSize",
-     "sig": "()",
+     "name": "addxtype",
+     "sig": "(Object config)",
      "type": "function",
-     "desc": "Automatically grows the field to accomodate the width of the text up to the maximum field width allowed.\nThis only takes effect if grow = true, and fires the autosize event."
+     "desc": "Adds a object form elements (using the xtype property as the factory method.)\nValid xtypes are:  TextField, TextArea .... Button, Layout, FieldSet, Column"
     },
     {
      "name": "capture",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Try to focus this component."
     },
-    {
-     "name": "getBox",
-     "sig": "(Boolean local)",
-     "type": "function",
-     "desc": "Gets the current box measurements of the component's underlying element."
-    },
     {
      "name": "getEl",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getName",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the name attribute of the field if available"
-    },
-    {
-     "name": "getPosition",
-     "sig": "(Boolean local)",
-     "type": "function",
-     "desc": "Gets the current XY position of the component's underlying element."
-    },
-    {
-     "name": "getRawValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
-    },
-    {
-     "name": "getSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Gets the current size of the component's underlying element."
-    },
-    {
-     "name": "getValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "type": "function",
      "desc": "Hide this component."
     },
-    {
-     "name": "isDirty",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
-    },
-    {
-     "name": "isValid",
-     "sig": "(Boolean preventMark)",
-     "type": "function",
-     "desc": "Returns whether or not the field value is currently valid"
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
-    {
-     "name": "markInvalid",
-     "sig": "(String msg)",
-     "type": "function",
-     "desc": "Mark this field as invalid"
-    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
-    {
-     "name": "onPosition",
-     "sig": "(Number x, Number y)",
-     "type": "function",
-     "desc": "Called after the component is moved, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a move occurs."
-    },
-    {
-     "name": "onResize",
-     "sig": "(Number adjWidth, Number adjHeight, Number rawWidth, Number rawHeight)",
-     "type": "function",
-     "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
-    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "reset",
-     "sig": "()",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "type": "function",
-     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "selectText",
-     "sig": "(Number start, Number end)",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Selects text in this field"
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "setDisabled",
-     "sig": "(Boolean disabled)",
+     "name": "show",
+     "sig": "()",
      "type": "function",
-     "desc": "Convenience function for setting disabled/enabled by boolean."
+     "desc": "Show this component."
     },
     {
-     "name": "setPagePosition",
-     "sig": "(Number x, Number y)",
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "Sets the page XY position of the component.  To set the left and top instead, use {@link #setPosition}.\nThis method fires the move event."
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.form.Select": {
+   "props": [
+    {
+     "name": "transform",
+     "type": "String/HTMLElement/Element",
+     "desc": "The id, DOM node or element of an existing select to convert to a ComboBox",
+     "memberOf": ""
     },
     {
-     "name": "setPosition",
-     "sig": "(Number left, Number top)",
-     "type": "function",
-     "desc": "Sets the left and top of the component.  To set the page XY position instead, use {@link #setPagePosition}.\nThis method fires the move event."
+     "name": "lazyRender",
+     "type": "Boolean",
+     "desc": "True to prevent the ComboBox from rendering until requested (should always be used when\nrendering into an Roo.Editor, defaults to false)",
+     "memberOf": ""
     },
     {
-     "name": "setRawValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
+     "name": "autoCreate",
+     "type": "Boolean/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to:\n{tag: \"input\", type: \"text\", size: \"24\", autocomplete: \"off\"})",
+     "memberOf": ""
     },
     {
-     "name": "setSize",
-     "sig": "(Number/Object width, Number height)",
-     "type": "function",
-     "desc": "Sets the width and height of the component.  This method fires the resize event.  This method can accept\neither width and height as separate numeric arguments, or you can pass a size object like {width:10, height:20}."
+     "name": "store",
+     "type": "Roo.data.Store",
+     "desc": "The data store to which this combo is bound (defaults to undefined)",
+     "memberOf": ""
     },
     {
-     "name": "setValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
+     "name": "title",
+     "type": "String",
+     "desc": "If supplied, a header element is created containing this text and added into the top of\nthe dropdown list (defaults to undefined, with no header element)",
+     "memberOf": ""
     },
     {
-     "name": "setVisible",
-     "sig": "(Boolean visible)",
-     "type": "function",
-     "desc": "Convenience function to hide or show this component by boolean."
+     "name": "grow",
+     "type": "Boolean",
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "show",
-     "sig": "()",
-     "type": "function",
-     "desc": "Show this component."
+     "name": "growMin",
+     "type": "Number",
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "syncSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Force the component's size to recalculate based on the underlying element's current height and width."
+     "name": "growMax",
+     "type": "Number",
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
+     "name": "tpl",
+     "type": "String/Roo.Template",
+     "desc": "The template to use to render the output",
+     "memberOf": ""
     },
     {
-     "name": "updateBox",
-     "sig": "(Object box)",
-     "type": "function",
-     "desc": "Sets the current box measurements of the component's underlying element."
+     "name": "listWidth",
+     "type": "Number",
+     "desc": "The width in pixels of the dropdown list (defaults to the width of the ComboBox field)",
+     "memberOf": ""
     },
     {
-     "name": "validate",
-     "sig": "()",
-     "type": "function",
-     "desc": "Validates the field value"
+     "name": "displayField",
+     "type": "String",
+     "desc": "The underlying data field name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'text' if mode = 'local')",
+     "memberOf": ""
     },
     {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
-    }
-   ]
-  },
-  "Roo.form.TriggerField": {
-   "props": [
+     "name": "valueField",
+     "type": "String",
+     "desc": "The underlying data value name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'value' if mode = 'local'). \nNote: use of a valueField requires the user make a selection\nin order for a value to be mapped.",
+     "memberOf": ""
+    },
+    {
+     "name": "hiddenName",
+     "type": "String",
+     "desc": "If specified, a hidden form field with this name is dynamically generated to store the\nfield's data value (defaults to the underlying DOM element's name)",
+     "memberOf": ""
+    },
+    {
+     "name": "listClass",
+     "type": "String",
+     "desc": "CSS class to apply to the dropdown list element (defaults to '')",
+     "memberOf": ""
+    },
+    {
+     "name": "selectedClass",
+     "type": "String",
+     "desc": "CSS class to apply to the selected item in the dropdown list (defaults to 'x-combo-selected')",
+     "memberOf": ""
+    },
     {
      "name": "triggerClass",
      "type": "String",
-     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' by default and triggerClass will be <b>appended</b> if specified.",
+     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' and triggerClass will be <b>appended</b> if specified (defaults to 'x-form-arrow-trigger'\nwhich displays a downward arrow icon).",
      "memberOf": ""
     },
     {
-     "name": "autoCreate",
-     "type": "String/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"16\", autocomplete: \"off\"})",
+     "name": "shadow",
+     "type": "Boolean/String",
+     "desc": "True or \"sides\" for the default effect, \"frame\" for 4-way shadow, and \"drop\" for bottom-right",
+     "memberOf": ""
+    },
+    {
+     "name": "listAlign",
+     "type": "String",
+     "desc": "A valid anchor position value. See {@link Roo.Element#alignTo} for details on supported\nanchor positions (defaults to 'tl-bl')",
+     "memberOf": ""
+    },
+    {
+     "name": "maxHeight",
+     "type": "Number",
+     "desc": "The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300)",
+     "memberOf": ""
+    },
+    {
+     "name": "triggerAction",
+     "type": "String",
+     "desc": "The action to execute when the trigger field is activated.  Use 'all' to run the\nquery specified by the allQuery config option (defaults to 'query')",
+     "memberOf": ""
+    },
+    {
+     "name": "minChars",
+     "type": "Number",
+     "desc": "The minimum number of characters the user must type before autocomplete and typeahead activate\n(defaults to 4, does not apply if editable = false)",
+     "memberOf": ""
+    },
+    {
+     "name": "typeAhead",
+     "type": "Boolean",
+     "desc": "True to populate and autoselect the remainder of the text being typed after a configurable\ndelay (typeAheadDelay) if it matches a known value (defaults to false)",
+     "memberOf": ""
+    },
+    {
+     "name": "queryDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds to delay between the start of typing and sending the\nquery to filter the dropdown list (defaults to 500 if mode = 'remote' or 10 if mode = 'local')",
+     "memberOf": ""
+    },
+    {
+     "name": "pageSize",
+     "type": "Number",
+     "desc": "If greater than 0, a paging toolbar is displayed in the footer of the dropdown list and the\nfilter queries will execute with page start and limit parameters.  Only applies when mode = 'remote' (defaults to 0)",
+     "memberOf": ""
+    },
+    {
+     "name": "selectOnFocus",
+     "type": "Boolean",
+     "desc": "True to select any existing text in the field immediately on focus.  Only applies\nwhen editable = true (defaults to false)",
+     "memberOf": ""
+    },
+    {
+     "name": "queryParam",
+     "type": "String",
+     "desc": "Name of the query as it will be passed on the querystring (defaults to 'query')",
+     "memberOf": ""
+    },
+    {
+     "name": "loadingText",
+     "type": "String",
+     "desc": "The text to display in the dropdown list while data is loading.  Only applies\nwhen mode = 'remote' (defaults to 'Loading...')",
+     "memberOf": ""
+    },
+    {
+     "name": "resizable",
+     "type": "Boolean",
+     "desc": "True to add a resize handle to the bottom of the dropdown list (defaults to false)",
+     "memberOf": ""
+    },
+    {
+     "name": "handleHeight",
+     "type": "Number",
+     "desc": "The height in pixels of the dropdown list resize handle if resizable = true (defaults to 8)",
+     "memberOf": ""
+    },
+    {
+     "name": "editable",
+     "type": "Boolean",
+     "desc": "False to prevent the user from typing text directly into the field, just like a\ntraditional select (defaults to true)",
+     "memberOf": ""
+    },
+    {
+     "name": "allQuery",
+     "type": "String",
+     "desc": "The text query to send to the server to return all records for the list with no filtering (defaults to '')",
+     "memberOf": ""
+    },
+    {
+     "name": "mode",
+     "type": "String",
+     "desc": "Set to 'local' if the ComboBox loads local data (defaults to 'remote' which loads from the server)",
+     "memberOf": ""
+    },
+    {
+     "name": "minListWidth",
+     "type": "Number",
+     "desc": "The minimum width of the dropdown list in pixels (defaults to 70, will be ignored if\nlistWidth has a higher value)",
+     "memberOf": ""
+    },
+    {
+     "name": "forceSelection",
+     "type": "Boolean",
+     "desc": "True to restrict the selected value to one of the values in the list, false to\nallow the user to set arbitrary text into the field (defaults to false)",
+     "memberOf": ""
+    },
+    {
+     "name": "typeAheadDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds to wait until the typeahead text is displayed\nif typeAhead = true (defaults to 250)",
+     "memberOf": ""
+    },
+    {
+     "name": "valueNotFoundText",
+     "type": "String",
+     "desc": "When using a name/value combo, if the value passed to setValue is not found in\nthe store, valueNotFoundText will be displayed as the field text if defined (defaults to undefined)",
+     "memberOf": ""
+    },
+    {
+     "name": "defaultValue",
+     "type": "String",
+     "desc": "The value displayed after loading the store.",
+     "memberOf": ""
+    },
+    {
+     "name": "blockFocus",
+     "type": "Boolean",
+     "desc": "Prevents all focus calls, so it can work with things like HTML edtor bar",
+     "memberOf": ""
+    },
+    {
+     "name": "disableClear",
+     "type": "Boolean",
+     "desc": "Disable showing of clear button.",
+     "memberOf": ""
+    },
+    {
+     "name": "alwaysQuery",
+     "type": "Boolean",
+     "desc": "Disable caching of results, and always send query",
      "memberOf": ""
     },
     {
      "name": "hideTrigger",
      "type": "Boolean",
      "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
-     "memberOf": ""
+     "memberOf": "Roo.form.TriggerField"
     },
     {
      "name": "vtype",
      "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
      "memberOf": "Roo.form.TextField"
     },
-    {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
-     "memberOf": "Roo.form.TextField"
-    },
     {
      "name": "blankText",
      "type": "String",
      "type": "function",
      "desc": "Clear any invalid styles/messages for this field"
     },
+    {
+     "name": "clearValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears any text/value currently set in the field"
+    },
+    {
+     "name": "collapse",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hides the dropdown list if it is currently expanded. Fires the 'collapse' event on completion."
+    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Disable this component."
     },
+    {
+     "name": "doQuery",
+     "sig": "(String query, Boolean forceAll)",
+     "type": "function",
+     "desc": "Execute a query to filter the dropdown list.  Fires the beforequery event prior to performing the\nquery allowing the query action to be canceled if needed."
+    },
     {
      "name": "enable",
      "sig": "()",
      "type": "function",
      "desc": "Enable this component."
     },
+    {
+     "name": "expand",
+     "sig": "()",
+     "type": "function",
+     "desc": "Expands the dropdown list if it is currently hidden. Fires the 'expand' event on completion."
+    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+     "desc": "Returns the currently selected field value or empty string if no value is set."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled."
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
+    },
+    {
+     "name": "isExpanded",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the dropdown list is expanded, else false."
     },
     {
      "name": "isValid",
      "type": "function",
      "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
     },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
+    {
+     "name": "select",
+     "sig": "(Number index, Boolean scrollIntoView)",
+     "type": "function",
+     "desc": "Select an item in the dropdown list by its numeric index in the list. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
+    },
+    {
+     "name": "selectByValue",
+     "sig": "(String value, Boolean scrollIntoView)",
+     "type": "function",
+     "desc": "Select an item in the dropdown list by its data value. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
+    },
     {
      "name": "selectText",
      "sig": "(Number start, Number end)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setEditable",
+     "sig": "(Boolean value)",
+     "type": "function",
+     "desc": "Allow or prevent the user from directly editing the field text.  If false is passed,\nthe user will only be able to select from the items defined in the dropdown list.  This method\nis the runtime equivalent of setting the 'editable' config option at config time."
+    },
+    {
+     "name": "setFromData",
+     "sig": "(Object value)",
+     "type": "function",
+     "desc": "Sets the value of the field based on a object which is related to the record format for the store."
+    },
     {
      "name": "setPagePosition",
      "sig": "(Number x, Number y)",
     },
     {
      "name": "setValue",
-     "sig": "(Mixed value)",
+     "sig": "(String value)",
      "type": "function",
-     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
+     "desc": "Sets the specified value into the field.  If the value finds a match, the corresponding record text\nwill be displayed in the field.  If the value does not match the data value of an existing item,\nand the valueNotFoundText config option is defined, it will be displayed as the default field text.\nOtherwise the field will be blank (although the value will still be set)."
     },
     {
      "name": "setVisible",
     }
    ]
   },
-  "Roo.form.VTypes": {
-   "props": [],
-   "events": [],
-   "methods": [
+  "Roo.form.Signature": {
+   "props": [
     {
-     "name": "alpha",
-     "sig": "(String value)",
-     "type": "function",
-     "desc": "The function used to validate alpha values"
+     "name": "labels",
+     "type": "Object",
+     "desc": "Label to use when rendering a form.\ndefaults to \nlabels : { \n     clear : \"Clear\",\n     confirm : \"Confirm\"\n }",
+     "memberOf": ""
     },
     {
-     "name": "alphanum",
-     "sig": "(String value)",
-     "type": "function",
-     "desc": "The function used to validate alphanumeric values"
+     "name": "width",
+     "type": "Number",
+     "desc": "The signature panel width (defaults to 300)",
+     "memberOf": ""
     },
     {
-     "name": "email",
-     "sig": "(String value)",
-     "type": "function",
-     "desc": "The function used to validate email addresses"
+     "name": "height",
+     "type": "Number",
+     "desc": "The signature panel height (defaults to 100)",
+     "memberOf": ""
     },
     {
-     "name": "url",
-     "sig": "(String value)",
-     "type": "function",
-     "desc": "The function used to validate URLs"
-    }
-   ]
-  },
-  "Roo.grid": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.grid.AbstractGridView": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.grid.AbstractSelectionModel": {
-   "props": [
+     "name": "allowBlank",
+     "type": "Boolean",
+     "desc": "False to validate that the value length > 0 (defaults to false)",
+     "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": [],
-   "methods": [
+     "name": "fieldLabel",
+     "type": "String",
+     "desc": "Label to use when rendering a form.",
+     "memberOf": "Roo.form.Field"
+    },
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
-     "type": "function",
-     "desc": "Used to define events on this Observable"
+     "name": "qtip",
+     "type": "String",
+     "desc": "Mouse over tip",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this component"
+     "name": "name",
+     "type": "String",
+     "desc": "The field's HTML name attribute.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
-     "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "name": "invalidClass",
+     "type": "String",
+     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
-     "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "name": "invalidText",
+     "type": "String",
+     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "name": "focusClass",
+     "type": "String",
+     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "isLocked",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the selections are locked."
+     "name": "validationEvent",
+     "type": "String/Boolean",
+     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "lock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Locks the selections."
+     "name": "validateOnBlur",
+     "type": "Boolean",
+     "desc": "Whether the field should validate when it loses focus (defaults to true).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "name": "validationDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"20\", autocomplete: \"off\"})",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
-     "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "name": "fieldClass",
+     "type": "String",
+     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener"
+     "name": "msgTarget",
+     "type": "String",
+     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
+     "name": "msgFx",
+     "type": "String",
+     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "unlock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Unlocks the selections."
-    }
-   ]
-  },
-  "Roo.grid.Calendar": {
-   "props": [
+     "name": "readOnly",
+     "type": "Boolean",
+     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
+     "memberOf": "Roo.form.Field"
+    },
     {
-     "name": "eventStore",
-     "type": "Store",
-     "desc": "The store that loads events.",
-     "memberOf": ""
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "True to disable the field (defaults to false).",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "inputType",
+     "type": "String",
+     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "tabIndex",
+     "type": "Number",
+     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "value",
+     "type": "Mixed",
+     "desc": "A value to initialize this field with.",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "A CSS class to apply to the field's underlying element.",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "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": "bodyscroll",
-     "sig": "function (scrollLeft, scrollTop)\n{\n\n}",
+     "name": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the body element is scrolled"
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "cellclick",
-     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a cell is clicked"
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "cellcontextmenu",
-     "sig": "function (_self, rowIndex, cellIndex, e)\n{\n\n}",
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a cell is right clicked"
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "celldblclick",
-     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a cell is double clicked"
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "click",
-     "sig": "function (e)\n{\n\n}",
+     "name": "blur",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "The raw click event for the entire grid."
+     "desc": "Fires when this field loses input focus."
     },
     {
-     "name": "columnmove",
-     "sig": "function (oldIndex, newIndex)\n{\n\n}",
+     "name": "change",
+     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the user moves a column"
+     "desc": "Fires just before the field blurs if the field value has changed."
     },
     {
-     "name": "columnresize",
-     "sig": "function (columnIndex, newSize)\n{\n\n}",
+     "name": "confirm",
+     "sig": "function (combo)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the user resizes a column"
+     "desc": "Fires when the 'confirm' icon is pressed (add a listener to enable add button)"
     },
     {
-     "name": "contextmenu",
-     "sig": "function (e)\n{\n\n}",
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "The raw contextmenu event for the entire grid."
+     "desc": "Fires after the component is destroyed."
     },
     {
-     "name": "dblclick",
-     "sig": "function (e)\n{\n\n}",
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "The raw dblclick event for the entire grid."
+     "desc": "Fires after the component is disabled."
     },
     {
-     "name": "dragdrop",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when dragged row(s) are dropped on a valid DD target"
+     "desc": "Fires after the component is enabled."
     },
     {
-     "name": "dragenter\n Fires when the dragged row(s) first cross another DD target while being dragged",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "name": "focus",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": ""
+     "desc": "Fires when this field receives input focus."
     },
     {
-     "name": "dragout",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the dragged row(s) leave another DD target while being dragged"
+     "desc": "Fires after the component is hidden."
     },
     {
-     "name": "dragover",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
      "type": "function",
-     "desc": "Fires while row(s) are being dragged. \"targetId\" is the id of the Yahoo.util.DD object the selected rows are being dragged over."
+     "desc": "Fires after the field has been marked as invalid."
     },
     {
-     "name": "enddrag",
-     "sig": "function (_self, dd, e)\n{\n\n}",
+     "name": "keyup",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a drag operation is complete"
+     "desc": "Fires after the key up"
     },
     {
-     "name": "eventclick",
-     "sig": "function (_self, )\n{\n\n}",
+     "name": "move",
+     "sig": "function (_self, x, y)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the mouse click an"
+     "desc": "Fires after the component is moved."
     },
     {
-     "name": "evententer",
-     "sig": "function (_self, Event)\n{\n\n}",
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when mouse over an event"
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "eventleave",
-     "sig": "function (_self, )\n{\n\n}",
+     "name": "reset",
+     "sig": "function (combo, record)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the mouse leaves an"
+     "desc": "Fires when the 'edit' icon is pressed (add a listener to enable add button)"
     },
     {
-     "name": "eventrender",
-     "sig": "function (_self, data)\n{\n\n}",
+     "name": "resize",
+     "sig": "function (_self, adjWidth, adjHeight, rawWidth, rawHeight)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before each cell is rendered, so you can modify the contents, like cls / title / qtip"
+     "desc": "Fires after the component is resized."
     },
     {
-     "name": "headerclick",
-     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a header is clicked"
+     "desc": "Fires after the component is shown."
     },
     {
-     "name": "headercontextmenu",
-     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "name": "specialkey",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a header is right clicked"
+     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
     },
     {
-     "name": "headerdblclick",
-     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a header cell is double clicked"
-    },
+     "desc": "Fires after the field has been validated with no errors."
+    }
+   ],
+   "methods": [
     {
-     "name": "keydown",
-     "sig": "function (e)\n{\n\n}",
+     "name": "addEvents",
+     "sig": "(Object object)",
      "type": "function",
-     "desc": "The raw keydown event for the entire grid."
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "keypress",
-     "sig": "function (e)\n{\n\n}",
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "The raw keypress event for the entire grid."
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "monthchange",
-     "sig": "function (_self, date)\n{\n\n}",
+     "name": "applyTo",
+     "sig": "(String/HTMLElement/Element el)",
      "type": "function",
-     "desc": "Fires when the displayed month changes"
+     "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
     },
     {
-     "name": "mousedown",
-     "sig": "function (e)\n{\n\n}",
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
-     "desc": "The raw mousedown event for the entire grid."
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "mouseout",
-     "sig": "function (e)\n{\n\n}",
+     "name": "clearInvalid",
+     "sig": "()",
      "type": "function",
-     "desc": "The raw mouseout event for the entire grid."
+     "desc": "Clear any invalid styles/messages for this field"
     },
     {
-     "name": "mouseover",
-     "sig": "function (e)\n{\n\n}",
+     "name": "createToolbar",
+     "sig": "(HtmlEditor editor)",
      "type": "function",
-     "desc": "The raw mouseover event for the entire grid."
+     "desc": "Protected method that will not generally be called directly. It\nis called when the editor creates its toolbar. Override this method if you need to\nadd custom toolbar buttons."
     },
     {
-     "name": "mouseup",
-     "sig": "function (e)\n{\n\n}",
+     "name": "destroy",
+     "sig": "()",
      "type": "function",
-     "desc": "The raw mouseup event for the entire grid."
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
     },
     {
-     "name": "render",
-     "sig": "function (grid)\n{\n\n}",
+     "name": "disable",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when the grid is rendered"
+     "desc": "Disable this component."
     },
     {
-     "name": "rowclass",
-     "sig": "function (gridview, rowcfg)\n{\n\n}",
+     "name": "enable",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when a row is rendered, so you can change add a style to it."
+     "desc": "Enable this component."
     },
     {
-     "name": "rowclick",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
      "type": "function",
-     "desc": "Fires when a row is clicked"
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "rowcontextmenu",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
      "type": "function",
-     "desc": "Fires when a row is right clicked"
+     "desc": "Try to focus this component."
     },
     {
-     "name": "rowdblclick",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "getBox",
+     "sig": "(Boolean local)",
      "type": "function",
-     "desc": "Fires when a row is double clicked"
+     "desc": "Gets the current box measurements of the component's underlying element."
     },
     {
-     "name": "select",
-     "sig": "function (_self, date)\n{\n\n}",
+     "name": "getConfirmed",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when a date is selected"
+     "desc": ""
     },
     {
-     "name": "startdrag",
-     "sig": "function (_self, dd, e)\n{\n\n}",
+     "name": "getEl",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when row(s) start being dragged"
-    }
-   ],
-   "methods": [
+     "desc": "Returns the underlying {@link Roo.Element}."
+    },
     {
-     "name": "getSelectionModel",
+     "name": "getHeight",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's SelectionModel."
-    }
-   ]
-  },
-  "Roo.grid.CellSelectionModel": {
-   "props": [
+     "desc": ""
+    },
     {
-     "name": "enter_is_tab",
-     "type": "Boolean",
-     "desc": "Enter behaves the same as tab. (eg. goes to next cell) default: false",
-     "memberOf": ""
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
     },
     {
-     "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": "beforeeditnext",
-     "sig": "function (eventdata)\n{\n\n}",
+     "name": "getImageDataURI",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires before the next editable sell is made active\nYou can use this to skip to another cell or fire the tabend\n   if you set cell to false"
+     "desc": "when user is clicked confirm then show this image....."
     },
     {
-     "name": "beforerowselect",
-     "sig": "function (_self, rowIndex, colIndex)\n{\n\n}",
+     "name": "getName",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires before a cell is selected."
+     "desc": "Returns the name attribute of the field if available"
     },
     {
-     "name": "cellselect",
-     "sig": "function (_self, rowIndex, colIndex)\n{\n\n}",
+     "name": "getPosition",
+     "sig": "(Boolean local)",
      "type": "function",
-     "desc": "Fires when a cell is selected."
+     "desc": "Gets the current XY position of the component's underlying element."
     },
     {
-     "name": "selectionchange",
-     "sig": "function (_self, selection)\n{\n\n}",
+     "name": "getRawValue",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when the active selection changes."
+     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
     },
     {
-     "name": "tabend",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the tab (or enter) was pressed on the last editable cell\nYou can use this to trigger add new row."
-    }
-   ],
-   "methods": [
-    {
-     "name": "addEvents",
-     "sig": "(Object object)",
+     "name": "getSize",
+     "sig": "()",
      "type": "function",
-     "desc": "Used to define events on this Observable"
+     "desc": "Gets the current size of the component's underlying element."
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "getValue",
+     "sig": "()",
      "type": "function",
-     "desc": "Appends an event handler to this component"
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
+     "name": "getWidth",
+     "sig": "()",
      "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "desc": ""
     },
     {
-     "name": "clearSelections",
-     "sig": "(Boolean true)",
+     "name": "hasChanged",
+     "sig": "()",
      "type": "function",
-     "desc": "Clears all selections."
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
+     "name": "hasListener",
+     "sig": "(String eventName)",
      "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "getSelectedCell",
+     "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the currently selected cell,."
+     "desc": "Hide this component."
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
+     "name": "isDirty",
+     "sig": "()",
      "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
-     "name": "hasSelection",
-     "sig": "()",
+     "name": "isValid",
+     "sig": "(Boolean preventMark)",
      "type": "function",
-     "desc": "Returns true if there is a selection."
+     "desc": "Returns whether or not the field value is currently valid"
     },
     {
-     "name": "isLocked",
+     "name": "isVisible",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if the selections are locked."
+     "desc": "Returns true if this component is visible."
     },
     {
-     "name": "lock",
-     "sig": "()",
+     "name": "markInvalid",
+     "sig": "(String msg)",
      "type": "function",
-     "desc": "Locks the selections."
+     "desc": "Mark this field as invalid"
     },
     {
      "name": "on",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "onEditorKey",
-     "sig": "(Number field, Number e)",
+     "name": "onPosition",
+     "sig": "(Number x, Number y)",
      "type": "function",
-     "desc": "Selects a cell."
+     "desc": "Called after the component is moved, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a move occurs."
+    },
+    {
+     "name": "onResize",
+     "sig": "(Number adjWidth, Number adjHeight, Number rawWidth, Number rawHeight)",
+     "type": "function",
+     "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
     },
     {
      "name": "purgeListeners",
      "desc": "Removes a listener"
     },
     {
-     "name": "select",
-     "sig": "(Number rowIndex, Number collIndex)",
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
      "type": "function",
-     "desc": "Selects a cell."
+     "desc": "If this is a lazy rendering component, render it to its container element."
+    },
+    {
+     "name": "reset",
+     "sig": "()",
+     "type": "function",
+     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
+    },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
+    {
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
+    {
+     "name": "setPagePosition",
+     "sig": "(Number x, Number y)",
+     "type": "function",
+     "desc": "Sets the page XY position of the component.  To set the left and top instead, use {@link #setPosition}.\nThis method fires the move event."
+    },
+    {
+     "name": "setPosition",
+     "sig": "(Number left, Number top)",
+     "type": "function",
+     "desc": "Sets the left and top of the component.  To set the page XY position instead, use {@link #setPagePosition}.\nThis method fires the move event."
+    },
+    {
+     "name": "setRawValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
+    },
+    {
+     "name": "setSize",
+     "sig": "(Number/Object width, Number height)",
+     "type": "function",
+     "desc": "Sets the width and height of the component.  This method fires the resize event.  This method can accept\neither width and height as separate numeric arguments, or you can pass a size object like {width:10, height:20}."
+    },
+    {
+     "name": "setValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
+    },
+    {
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show this component."
+    },
+    {
+     "name": "syncSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Force the component's size to recalculate based on the underlying element's current height and width."
     },
     {
      "name": "un",
      "desc": "Removes a listener (shorthand for removeListener)"
     },
     {
-     "name": "unlock",
+     "name": "updateBox",
+     "sig": "(Object box)",
+     "type": "function",
+     "desc": "Sets the current box measurements of the component's underlying element."
+    },
+    {
+     "name": "validate",
      "sig": "()",
      "type": "function",
-     "desc": "Unlocks the selections."
+     "desc": "Validates the field value"
     }
    ]
   },
-  "Roo.grid.ColumnModel": {
+  "Roo.form.TextArea": {
    "props": [
     {
-     "name": "header",
-     "type": "String",
-     "desc": "The header text to display in the Grid view.",
-     "memberOf": ""
-    },
-    {
-     "name": "dataIndex",
-     "type": "String",
-     "desc": "(Optional) The name of the field in the grid's {@link Roo.data.Store}'s\n{@link Roo.data.Record} definition from which to draw the column's value. If not\nspecified, the column's index is used as an index into the Record's data Array.",
+     "name": "growMin",
+     "type": "Number",
+     "desc": "The minimum height to allow when grow = true (defaults to 60)",
      "memberOf": ""
     },
     {
-     "name": "width",
+     "name": "growMax",
      "type": "Number",
-     "desc": "(Optional) The initial width in pixels of the column. Using this\ninstead of {@link Roo.grid.Grid#autoSizeColumns} is more efficient.",
+     "desc": "The maximum height to allow when grow = true (defaults to 1000)",
      "memberOf": ""
     },
     {
-     "name": "sortable",
+     "name": "preventScrollbars",
      "type": "Boolean",
-     "desc": "(Optional) True if sorting is to be allowed on this column.\nDefaults to the value of the {@link #defaultSortable} property.\nWhether local/remote sorting is used is specified in {@link Roo.data.Store#remoteSort}.",
+     "desc": "True to prevent scrollbars from appearing regardless of how much text is\nin the field (equivalent to setting overflow: hidden, defaults to false)",
      "memberOf": ""
     },
     {
-     "name": "locked",
-     "type": "Boolean",
-     "desc": "(Optional) True to lock the column in place while scrolling the Grid.  Defaults to false.",
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"textarea\", style: \"width:300px;height:60px;\", autocomplete: \"off\"})",
      "memberOf": ""
     },
     {
-     "name": "fixed",
+     "name": "grow",
      "type": "Boolean",
-     "desc": "(Optional) True if the column width cannot be changed.  Defaults to false.",
-     "memberOf": ""
+     "desc": "True if this field should automatically grow and shrink to its content",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "resizable",
-     "type": "Boolean",
-     "desc": "(Optional) False to disable column resizing. Defaults to true.",
-     "memberOf": ""
+     "name": "vtype",
+     "type": "String",
+     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "hidden",
+     "name": "maskRe",
+     "type": "String",
+     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "disableKeyFilter",
      "type": "Boolean",
-     "desc": "(Optional) True to hide the column. Defaults to false.",
-     "memberOf": ""
+     "desc": "True to disable input keystroke filtering (defaults to false)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "renderer",
-     "type": "Function",
-     "desc": "(Optional) A function used to generate HTML markup for a cell\ngiven the cell's data value. See {@link #setRenderer}. If not specified, the\ndefault renderer uses the raw data value. If an object is returned (bootstrap only)\nthen it is treated as a Roo Component object instance, and it is rendered after the initial row is rendered",
-     "memberOf": ""
+     "name": "allowBlank",
+     "type": "Boolean",
+     "desc": "False to validate that the value length > 0 (defaults to true)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "editor",
-     "type": "Roo.grid.GridEditor",
-     "desc": "(Optional) For grid editors - returns the grid editor",
-     "memberOf": ""
+     "name": "minLength",
+     "type": "Number",
+     "desc": "Minimum input field length required (defaults to 0)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "align",
-     "type": "String",
-     "desc": "(Optional) Set the CSS text-align property of the column.  Defaults to undefined.",
-     "memberOf": ""
+     "name": "maxLength",
+     "type": "Number",
+     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "cursor",
+     "name": "minLengthText",
      "type": "String",
-     "desc": "(Optional)",
-     "memberOf": ""
+     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "tooltip",
+     "name": "maxLengthText",
      "type": "String",
-     "desc": "(Optional)",
-     "memberOf": ""
+     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "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": "columlockchange",
-     "sig": "function (_self, colIndex, locked)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a column's locked state is changed"
+     "name": "selectOnFocus",
+     "type": "Boolean",
+     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "columnmoved",
-     "sig": "function (_self, oldIndex, newIndex)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a column is moved."
+     "name": "blankText",
+     "type": "String",
+     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "headerchange",
-     "sig": "function (_self, columnIndex, newText)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the text of a header changes."
+     "name": "validator",
+     "type": "Function",
+     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "hiddenchange",
-     "sig": "function (_self, columnIndex, hidden)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a column is hidden or \"unhidden\"."
+     "name": "regex",
+     "type": "RegExp",
+     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "widthchange",
-     "sig": "function (_self, columnIndex, newWidth)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the width of a column changes."
-    }
-   ],
-   "methods": [
+     "name": "regexText",
+     "type": "String",
+     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
+     "memberOf": "Roo.form.TextField"
+    },
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
-     "type": "function",
-     "desc": "Used to define events on this Observable"
+     "name": "emptyText",
+     "type": "String",
+     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this component"
+     "name": "fieldLabel",
+     "type": "String",
+     "desc": "Label to use when rendering a form.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
-     "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "name": "qtip",
+     "type": "String",
+     "desc": "Mouse over tip",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "findColumnIndex",
-     "sig": "(String dataIndex)",
-     "type": "function",
-     "desc": "Returns the index for a specified column dataIndex."
+     "name": "name",
+     "type": "String",
+     "desc": "The field's HTML name attribute.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
-     "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "name": "invalidClass",
+     "type": "String",
+     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getCellEditor",
-     "sig": "(Number colIndex, Number rowIndex)",
-     "type": "function",
-     "desc": "Returns the editor defined for the cell/column.\nreturn false or null to disable editing."
+     "name": "invalidText",
+     "type": "String",
+     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getColumnByDataIndex",
-     "sig": "(String dataIndex)",
-     "type": "function",
-     "desc": "Returns the column for a specified dataIndex."
+     "name": "focusClass",
+     "type": "String",
+     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getColumnById",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Returns the column for a specified id."
+     "name": "validationEvent",
+     "type": "String/Boolean",
+     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getColumnCount",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the number of columns."
+     "name": "validateOnBlur",
+     "type": "Boolean",
+     "desc": "Whether the field should validate when it loses focus (defaults to true).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getColumnHeader",
-     "sig": "(Number col)",
-     "type": "function",
-     "desc": "Returns the header for the specified column."
+     "name": "validationDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getColumnId",
-     "sig": "(Number index)",
-     "type": "function",
-     "desc": "Returns the id of the column at the specified index."
+     "name": "fieldClass",
+     "type": "String",
+     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getColumnTooltip",
-     "sig": "(Number col)",
-     "type": "function",
-     "desc": "Returns the tooltip for the specified column."
+     "name": "msgTarget",
+     "type": "String",
+     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getColumnWidth",
-     "sig": "(Number col)",
-     "type": "function",
-     "desc": "Returns the width for the specified column."
+     "name": "msgFx",
+     "type": "String",
+     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getColumnsBy",
-     "sig": "(Function fn, Object scope)",
-     "type": "function",
-     "desc": "Returns the column configs that return true by the passed function that is called with (columnConfig, index)"
+     "name": "readOnly",
+     "type": "Boolean",
+     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getDataIndex",
-     "sig": "(Number col)",
-     "type": "function",
-     "desc": "Returns the dataIndex for the specified column."
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "True to disable the field (defaults to false).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getIndexById",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Returns the index for a specified column id."
+     "name": "inputType",
+     "type": "String",
+     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getRenderer",
-     "sig": "(Number col)",
-     "type": "function",
-     "desc": "Returns the rendering (formatting) function defined for the column."
+     "name": "tabIndex",
+     "type": "Number",
+     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "getTotalWidth",
-     "sig": "(Boolean includeHidden)",
-     "type": "function",
-     "desc": "Returns the total width of all columns."
+     "name": "value",
+     "type": "Mixed",
+     "desc": "A value to initialize this field with.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "name": "cls",
+     "type": "String",
+     "desc": "A CSS class to apply to the field's underlying element.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "isCellEditable",
-     "sig": "(Number colIndex, Number rowIndex)",
-     "type": "function",
-     "desc": "Returns true if the cell is editable."
+     "name": "width",
+     "type": "Number",
+     "desc": "width (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
     },
     {
-     "name": "isFixed",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the column width cannot be changed"
+     "name": "height",
+     "type": "Number",
+     "desc": "height (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
     },
     {
-     "name": "isHidden",
-     "sig": "(Number colIndex)",
-     "type": "function",
-     "desc": "Returns true if the column is hidden."
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "isResizable",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the column can be resized"
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "isSortable",
-     "sig": "(Number col)",
-     "type": "function",
-     "desc": "Returns true if the specified column is sortable."
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
-    },
+     "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": "releaseCapture",
-     "sig": "(Observable o)",
+     "name": "autosize",
+     "sig": "function (_self, width)\n{\n\n}",
      "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Removes a listener"
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "setColumnHeader",
-     "sig": "(Number col, String header)",
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Sets the header for a column."
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "setColumnTooltip",
-     "sig": "(Number col, String tooltip)",
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Sets the tooltip for a column."
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "setColumnWidth",
-     "sig": "(Number col, Number width)",
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Sets the width for a column."
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "setDataIndex",
-     "sig": "(Number col, Number dataIndex)",
+     "name": "blur",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Sets the dataIndex for a column."
+     "desc": "Fires when this field loses input focus."
     },
     {
-     "name": "setEditable",
-     "sig": "(Number col, Boolean editable)",
+     "name": "change",
+     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
      "type": "function",
-     "desc": "Sets if a column is editable."
+     "desc": "Fires just before the field blurs if the field value has changed."
     },
     {
-     "name": "setEditor",
-     "sig": "(Number col, Object editor)",
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Sets the editor for a column."
+     "desc": "Fires after the component is destroyed."
     },
     {
-     "name": "setHidden",
-     "sig": "(Number colIndex, Boolean hidden)",
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Sets if a column is hidden."
+     "desc": "Fires after the component is disabled."
     },
     {
-     "name": "setRenderer",
-     "sig": "(Number col, Function fn)",
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Sets the rendering (formatting) function for a column."
+     "desc": "Fires after the component is enabled."
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "focus",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
-    }
-   ]
-  },
-  "Roo.grid.EditorGrid": {
-   "props": [
-    {
-     "name": "clicksToEdit",
-     "type": "Number",
-     "desc": "The number of clicks on a cell required to display the cell's editor (defaults to 2)",
-     "memberOf": ""
-    },
-    {
-     "name": "ddGroup",
-     "type": "String",
-     "desc": "- drag drop group.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "enableDrag",
-     "type": "Boolean",
-     "desc": "True to enable drag of rows. Default is false. (double check if this is needed?)",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "autoWidth",
-     "type": "Boolean",
-     "desc": "True to set the grid's width to the default total width of the grid's columns instead\nof a fixed width. Default is false.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "maxHeight",
-     "type": "Number",
-     "desc": "Sets the maximum height of the grid - ignored if autoHeight is not on.",
-     "memberOf": "Roo.grid.Grid"
+     "desc": "Fires when this field receives input focus."
     },
     {
-     "name": "minColumnWidth",
-     "type": "Number",
-     "desc": "The minimum width a column can be resized to. Default is 25.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
     },
     {
-     "name": "autoSizeColumns",
-     "type": "Boolean",
-     "desc": "True to automatically resize the columns to fit their content\n<b>on initial render.</b> It is more efficient to explicitly size the columns\nthrough the ColumnModel's {@link Roo.grid.ColumnModel#width} config option.  Default is false.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been marked as invalid."
     },
     {
-     "name": "autoSizeHeaders",
-     "type": "Boolean",
-     "desc": "True to measure headers with column data when auto sizing columns. Default is true.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "keyup",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the key up"
     },
     {
-     "name": "monitorWindowResize",
-     "type": "Boolean",
-     "desc": "True to autoSize the grid when the window resizes. Default is true.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "move",
+     "sig": "function (_self, x, y)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is moved."
     },
     {
-     "name": "maxRowsToMeasure",
-     "type": "Boolean",
-     "desc": "If autoSizeColumns is on, maxRowsToMeasure can be used to limit the number of\nrows measured to get a columns size. Default is 0 (all rows).",
-     "memberOf": "Roo.grid.Grid"
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "trackMouseOver",
-     "type": "Boolean",
-     "desc": "True to highlight rows when the mouse is over. Default is true.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "resize",
+     "sig": "function (_self, adjWidth, adjHeight, rawWidth, rawHeight)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is resized."
     },
     {
-     "name": "enableDragDrop",
-     "type": "Boolean",
-     "desc": "True to enable drag and drop of rows. Default is false.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
     },
     {
-     "name": "enableColumnMove",
-     "type": "Boolean",
-     "desc": "True to enable drag and drop reorder of columns. Default is true.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "specialkey",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
     },
     {
-     "name": "enableColumnHide",
-     "type": "Boolean",
-     "desc": "True to enable hiding of columns with the header context menu. Default is true.",
-     "memberOf": "Roo.grid.Grid"
-    },
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been validated with no errors."
+    }
+   ],
+   "methods": [
     {
-     "name": "enableRowHeightSync",
-     "type": "Boolean",
-     "desc": "True to manually sync row heights across locked and not locked rows. Default is false.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "stripeRows",
-     "type": "Boolean",
-     "desc": "True to stripe the rows.  Default is true.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "autoHeight",
-     "type": "Boolean",
-     "desc": "True to fit the height of the grid container to the height of the data. Default is false.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "applyTo",
+     "sig": "(String/HTMLElement/Element el)",
+     "type": "function",
+     "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
     },
     {
-     "name": "autoExpandColumn",
-     "type": "String",
-     "desc": "The id (or dataIndex) of a column in this grid that should expand to fill unused space. This id can not be 0. Default is false.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "autoSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Automatically grows the field to accomodate the height of the text up to the maximum field height allowed.\nThis only takes effect if grow = true, and fires the autosize event if the height changes."
     },
     {
-     "name": "autoExpandMin",
-     "type": "Number",
-     "desc": "The minimum width the autoExpandColumn can have (if enabled).\nDefault is 50.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "autoExpandMax",
-     "type": "Number",
-     "desc": "The maximum width the autoExpandColumn can have (if enabled). Default is 1000.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "clearInvalid",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clear any invalid styles/messages for this field"
     },
     {
-     "name": "view",
-     "type": "Object",
-     "desc": "The {@link Roo.grid.GridView} used by the grid. This can be set before a call to render().",
-     "memberOf": "Roo.grid.Grid"
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
     },
     {
-     "name": "loadMask",
-     "type": "Object",
-     "desc": "An {@link Roo.LoadMask} config or true to mask the grid while loading. Default is false.",
-     "memberOf": "Roo.grid.Grid"
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
     },
     {
-     "name": "dropTarget",
-     "type": "Roo.dd.DropTarget",
-     "desc": "An {@link Roo.dd.DropTarget} config",
-     "memberOf": "Roo.grid.Grid"
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
     },
     {
-     "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": "afteredit",
-     "sig": "function (e)\n{\n\n}",
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
      "type": "function",
-     "desc": "Fires after a cell is edited. <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value being set</li>\n<li>originalValue - The original value for the field, before the edit.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n</ul>"
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "beforeedit",
-     "sig": "function (e)\n{\n\n}",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
      "type": "function",
-     "desc": "Fires before cell editing is triggered. The edit event object has the following properties <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value for the field being edited.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n<li>cancel - Set this to true to cancel the edit or return false from your handler.</li>\n</ul>"
+     "desc": "Try to focus this component."
     },
     {
-     "name": "bodyscroll",
-     "sig": "function (scrollLeft, scrollTop)\n{\n\n}",
+     "name": "getBox",
+     "sig": "(Boolean local)",
      "type": "function",
-     "desc": "Fires when the body element is scrolled"
+     "desc": "Gets the current box measurements of the component's underlying element."
     },
     {
-     "name": "cellclick",
-     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
+     "name": "getEl",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when a cell is clicked"
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "cellcontextmenu",
-     "sig": "function (_self, rowIndex, cellIndex, e)\n{\n\n}",
+     "name": "getId",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when a cell is right clicked"
+     "desc": "Returns the id of this component."
     },
     {
-     "name": "celldblclick",
-     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
+     "name": "getName",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when a cell is double clicked"
+     "desc": "Returns the name attribute of the field if available"
     },
     {
-     "name": "click",
-     "sig": "function (e)\n{\n\n}",
+     "name": "getPosition",
+     "sig": "(Boolean local)",
      "type": "function",
-     "desc": "The raw click event for the entire grid."
+     "desc": "Gets the current XY position of the component's underlying element."
     },
     {
-     "name": "columnmove",
-     "sig": "function (oldIndex, newIndex)\n{\n\n}",
+     "name": "getRawValue",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when the user moves a column"
+     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
     },
     {
-     "name": "columnresize",
-     "sig": "function (columnIndex, newSize)\n{\n\n}",
+     "name": "getSize",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when the user resizes a column"
+     "desc": "Gets the current size of the component's underlying element."
     },
     {
-     "name": "contextmenu",
-     "sig": "function (e)\n{\n\n}",
+     "name": "getValue",
+     "sig": "()",
      "type": "function",
-     "desc": "The raw contextmenu event for the entire grid."
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
     },
     {
-     "name": "dblclick",
-     "sig": "function (e)\n{\n\n}",
+     "name": "hasChanged",
+     "sig": "()",
      "type": "function",
-     "desc": "The raw dblclick event for the entire grid."
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
-     "name": "dragdrop",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "name": "hasListener",
+     "sig": "(String eventName)",
      "type": "function",
-     "desc": "Fires when dragged row(s) are dropped on a valid DD target"
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "dragenter\n Fires when the dragged row(s) first cross another DD target while being dragged",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "name": "hide",
+     "sig": "()",
      "type": "function",
-     "desc": ""
+     "desc": "Hide this component."
     },
     {
-     "name": "dragout",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "name": "isDirty",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when the dragged row(s) leave another DD target while being dragged"
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
     },
     {
-     "name": "dragover",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "name": "isValid",
+     "sig": "(Boolean preventMark)",
      "type": "function",
-     "desc": "Fires while row(s) are being dragged. \"targetId\" is the id of the Yahoo.util.DD object the selected rows are being dragged over."
+     "desc": "Returns whether or not the field value is currently valid"
     },
     {
-     "name": "enddrag",
-     "sig": "function (_self, dd, e)\n{\n\n}",
+     "name": "isVisible",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when a drag operation is complete"
+     "desc": "Returns true if this component is visible."
     },
     {
-     "name": "headerclick",
-     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "name": "markInvalid",
+     "sig": "(String msg)",
      "type": "function",
-     "desc": "Fires when a header is clicked"
+     "desc": "Mark this field as invalid"
     },
     {
-     "name": "headercontextmenu",
-     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Fires when a header is right clicked"
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "headerdblclick",
-     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "name": "onPosition",
+     "sig": "(Number x, Number y)",
      "type": "function",
-     "desc": "Fires when a header cell is double clicked"
+     "desc": "Called after the component is moved, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a move occurs."
     },
     {
-     "name": "keydown",
-     "sig": "function (e)\n{\n\n}",
+     "name": "onResize",
+     "sig": "(Number adjWidth, Number adjHeight, Number rawWidth, Number rawHeight)",
      "type": "function",
-     "desc": "The raw keydown event for the entire grid."
+     "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
     },
     {
-     "name": "keypress",
-     "sig": "function (e)\n{\n\n}",
+     "name": "purgeListeners",
+     "sig": "()",
      "type": "function",
-     "desc": "The raw keypress event for the entire grid."
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "mousedown",
-     "sig": "function (e)\n{\n\n}",
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
      "type": "function",
-     "desc": "The raw mousedown event for the entire grid."
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "mouseout",
-     "sig": "function (e)\n{\n\n}",
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "The raw mouseout event for the entire grid."
+     "desc": "Removes a listener"
     },
     {
-     "name": "mouseover",
-     "sig": "function (e)\n{\n\n}",
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
      "type": "function",
-     "desc": "The raw mouseover event for the entire grid."
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "mouseup",
-     "sig": "function (e)\n{\n\n}",
+     "name": "reset",
+     "sig": "()",
      "type": "function",
-     "desc": "The raw mouseup event for the entire grid."
+     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
     },
     {
-     "name": "render",
-     "sig": "function (grid)\n{\n\n}",
+     "name": "resetHasChanged",
+     "sig": "()",
      "type": "function",
-     "desc": "Fires when the grid is rendered"
+     "desc": "stores the current value in loadedValue"
     },
     {
-     "name": "rowclass",
-     "sig": "function (gridview, rowcfg)\n{\n\n}",
+     "name": "selectText",
+     "sig": "(Number start, Number end)",
      "type": "function",
-     "desc": "Fires when a row is rendered, so you can change add a style to it."
+     "desc": "Selects text in this field"
     },
     {
-     "name": "rowclick",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "type": "function",
-     "desc": "Fires when a row is clicked"
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "rowcontextmenu",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "setPagePosition",
+     "sig": "(Number x, Number y)",
      "type": "function",
-     "desc": "Fires when a row is right clicked"
+     "desc": "Sets the page XY position of the component.  To set the left and top instead, use {@link #setPosition}.\nThis method fires the move event."
     },
     {
-     "name": "rowdblclick",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "setPosition",
+     "sig": "(Number left, Number top)",
      "type": "function",
-     "desc": "Fires when a row is double clicked"
+     "desc": "Sets the left and top of the component.  To set the page XY position instead, use {@link #setPagePosition}.\nThis method fires the move event."
     },
     {
-     "name": "startdrag",
-     "sig": "function (_self, dd, e)\n{\n\n}",
+     "name": "setRawValue",
+     "sig": "(Mixed value)",
      "type": "function",
-     "desc": "Fires when row(s) start being dragged"
+     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
     },
     {
-     "name": "validateedit",
-     "sig": "function (e)\n{\n\n}",
+     "name": "setSize",
+     "sig": "(Number/Object width, Number height)",
      "type": "function",
-     "desc": "Fires after a cell is edited, but before the value is set in the record. \nYou can use this to modify the value being set in the field, Return false\nto cancel the change. The edit event object has the following properties <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>editor - This editor</li>\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value being set</li>\n<li>originalValue - The original value for the field, before the edit.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n<li>cancel - Set this to true to cancel the edit or return false from your handler.</li>\n</ul>"
-    }
-   ],
-   "methods": [
+     "desc": "Sets the width and height of the component.  This method fires the resize event.  This method can accept\neither width and height as separate numeric arguments, or you can pass a size object like {width:10, height:20}."
+    },
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
+     "name": "setValue",
+     "sig": "(Mixed value)",
      "type": "function",
-     "desc": "Used to define events on this Observable"
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Appends an event handler to this component"
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "autoSize",
+     "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Causes the grid to manually recalculate its dimensions. Generally this is done automatically,\nbut if manual update is required this method will initiate it."
+     "desc": "Show this component."
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
+     "name": "syncSize",
+     "sig": "()",
      "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "desc": "Force the component's size to recalculate based on the underlying element's current height and width."
     },
     {
-     "name": "destroy",
-     "sig": "(Boolean removeEl)",
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "Destroy this grid."
+     "desc": "Removes a listener (shorthand for removeListener)"
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
+     "name": "updateBox",
+     "sig": "(Object box)",
      "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "desc": "Sets the current box measurements of the component's underlying element."
     },
     {
-     "name": "getColumnModel",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the grid's ColumnModel."
-    },
-    {
-     "name": "getDataSource",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the grid's DataSource."
-    },
-    {
-     "name": "getDragDropText",
-     "sig": "()",
-     "type": "function",
-     "desc": "Called to get grid's drag proxy text, by default returns this.ddText."
-    },
-    {
-     "name": "getGridEl",
+     "name": "validate",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's underlying element."
+     "desc": "Validates the field value"
     },
     {
-     "name": "getSelectionModel",
-     "sig": "()",
+     "name": "validateValue",
+     "sig": "(Mixed value)",
      "type": "function",
-     "desc": "Returns the grid's SelectionModel."
-    },
+     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
+    }
+   ]
+  },
+  "Roo.form.TextField": {
+   "props": [
     {
-     "name": "getView",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the grid's GridView object."
+     "name": "grow",
+     "type": "Boolean",
+     "desc": "True if this field should automatically grow and shrink to its content",
+     "memberOf": ""
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "name": "growMin",
+     "type": "Number",
+     "desc": "The minimum width to allow when grow = true (defaults to 30)",
+     "memberOf": ""
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "name": "growMax",
+     "type": "Number",
+     "desc": "The maximum width to allow when grow = true (defaults to 800)",
+     "memberOf": ""
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
+     "name": "vtype",
+     "type": "String",
+     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
+     "memberOf": ""
     },
     {
-     "name": "reconfigure",
-     "sig": "(Roo.data.Store dataSource, Roo.grid.ColumnModel The)",
-     "type": "function",
-     "desc": "Reconfigures the grid to use a different Store and Column Model.\nThe View will be bound to the new objects and refreshed."
+     "name": "maskRe",
+     "type": "String",
+     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
+     "memberOf": ""
     },
     {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
-     "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "name": "disableKeyFilter",
+     "type": "Boolean",
+     "desc": "True to disable input keystroke filtering (defaults to false)",
+     "memberOf": ""
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener"
+     "name": "allowBlank",
+     "type": "Boolean",
+     "desc": "False to validate that the value length > 0 (defaults to true)",
+     "memberOf": ""
     },
     {
-     "name": "render",
-     "sig": "()",
-     "type": "function",
-     "desc": "Called once after all setup has been completed and the grid is ready to be rendered."
+     "name": "minLength",
+     "type": "Number",
+     "desc": "Minimum input field length required (defaults to 0)",
+     "memberOf": ""
     },
     {
-     "name": "startEditing",
-     "sig": "(Number rowIndex, Number colIndex)",
-     "type": "function",
-     "desc": "Starts editing the specified for the specified row/column"
+     "name": "maxLength",
+     "type": "Number",
+     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
+     "memberOf": ""
     },
     {
-     "name": "stopEditing",
-     "sig": "()",
-     "type": "function",
-     "desc": "Stops any active editing"
+     "name": "minLengthText",
+     "type": "String",
+     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
+     "memberOf": ""
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
-    }
-   ]
-  },
-  "Roo.grid.Grid": {
-   "props": [
-    {
-     "name": "ddGroup",
+     "name": "maxLengthText",
      "type": "String",
-     "desc": "- drag drop group.",
+     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
      "memberOf": ""
     },
     {
-     "name": "enableDrag",
+     "name": "selectOnFocus",
      "type": "Boolean",
-     "desc": "True to enable drag of rows. Default is false. (double check if this is needed?)",
+     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
      "memberOf": ""
     },
     {
-     "name": "autoWidth",
-     "type": "Boolean",
-     "desc": "True to set the grid's width to the default total width of the grid's columns instead\nof a fixed width. Default is false.",
+     "name": "blankText",
+     "type": "String",
+     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
      "memberOf": ""
     },
     {
-     "name": "maxHeight",
-     "type": "Number",
-     "desc": "Sets the maximum height of the grid - ignored if autoHeight is not on.",
+     "name": "validator",
+     "type": "Function",
+     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
      "memberOf": ""
     },
     {
-     "name": "minColumnWidth",
-     "type": "Number",
-     "desc": "The minimum width a column can be resized to. Default is 25.",
+     "name": "regex",
+     "type": "RegExp",
+     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
      "memberOf": ""
     },
     {
-     "name": "autoSizeColumns",
-     "type": "Boolean",
-     "desc": "True to automatically resize the columns to fit their content\n<b>on initial render.</b> It is more efficient to explicitly size the columns\nthrough the ColumnModel's {@link Roo.grid.ColumnModel#width} config option.  Default is false.",
+     "name": "regexText",
+     "type": "String",
+     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
      "memberOf": ""
     },
     {
-     "name": "autoSizeHeaders",
-     "type": "Boolean",
-     "desc": "True to measure headers with column data when auto sizing columns. Default is true.",
+     "name": "emptyText",
+     "type": "String",
+     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
      "memberOf": ""
     },
     {
-     "name": "monitorWindowResize",
-     "type": "Boolean",
-     "desc": "True to autoSize the grid when the window resizes. Default is true.",
-     "memberOf": ""
+     "name": "fieldLabel",
+     "type": "String",
+     "desc": "Label to use when rendering a form.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "maxRowsToMeasure",
-     "type": "Boolean",
-     "desc": "If autoSizeColumns is on, maxRowsToMeasure can be used to limit the number of\nrows measured to get a columns size. Default is 0 (all rows).",
-     "memberOf": ""
+     "name": "qtip",
+     "type": "String",
+     "desc": "Mouse over tip",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "trackMouseOver",
-     "type": "Boolean",
-     "desc": "True to highlight rows when the mouse is over. Default is true.",
-     "memberOf": ""
+     "name": "name",
+     "type": "String",
+     "desc": "The field's HTML name attribute.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "enableDragDrop",
-     "type": "Boolean",
-     "desc": "True to enable drag and drop of rows. Default is false.",
-     "memberOf": ""
+     "name": "invalidClass",
+     "type": "String",
+     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "enableColumnMove",
-     "type": "Boolean",
-     "desc": "True to enable drag and drop reorder of columns. Default is true.",
-     "memberOf": ""
+     "name": "invalidText",
+     "type": "String",
+     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "enableColumnHide",
-     "type": "Boolean",
-     "desc": "True to enable hiding of columns with the header context menu. Default is true.",
-     "memberOf": ""
+     "name": "focusClass",
+     "type": "String",
+     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "enableRowHeightSync",
-     "type": "Boolean",
-     "desc": "True to manually sync row heights across locked and not locked rows. Default is false.",
-     "memberOf": ""
+     "name": "validationEvent",
+     "type": "String/Boolean",
+     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "stripeRows",
+     "name": "validateOnBlur",
      "type": "Boolean",
-     "desc": "True to stripe the rows.  Default is true.",
-     "memberOf": ""
+     "desc": "Whether the field should validate when it loses focus (defaults to true).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "autoHeight",
-     "type": "Boolean",
-     "desc": "True to fit the height of the grid container to the height of the data. Default is false.",
-     "memberOf": ""
+     "name": "validationDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "autoExpandColumn",
-     "type": "String",
-     "desc": "The id (or dataIndex) of a column in this grid that should expand to fill unused space. This id can not be 0. Default is false.",
-     "memberOf": ""
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"20\", autocomplete: \"off\"})",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "autoExpandMin",
-     "type": "Number",
-     "desc": "The minimum width the autoExpandColumn can have (if enabled).\nDefault is 50.",
-     "memberOf": ""
+     "name": "fieldClass",
+     "type": "String",
+     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "autoExpandMax",
-     "type": "Number",
-     "desc": "The maximum width the autoExpandColumn can have (if enabled). Default is 1000.",
-     "memberOf": ""
+     "name": "msgTarget",
+     "type": "String",
+     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "view",
-     "type": "Object",
-     "desc": "The {@link Roo.grid.GridView} used by the grid. This can be set before a call to render().",
-     "memberOf": ""
+     "name": "msgFx",
+     "type": "String",
+     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "loadMask",
-     "type": "Object",
-     "desc": "An {@link Roo.LoadMask} config or true to mask the grid while loading. Default is false.",
-     "memberOf": ""
+     "name": "readOnly",
+     "type": "Boolean",
+     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "dropTarget",
-     "type": "Roo.dd.DropTarget",
-     "desc": "An {@link Roo.dd.DropTarget} config",
-     "memberOf": ""
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "True to disable the field (defaults to false).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "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": "inputType",
+     "type": "String",
+     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
+     "memberOf": "Roo.form.Field"
+    },
     {
-     "name": "bodyscroll",
-     "sig": "function (scrollLeft, scrollTop)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the body element is scrolled"
+     "name": "tabIndex",
+     "type": "Number",
+     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "cellclick",
-     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a cell is clicked"
+     "name": "value",
+     "type": "Mixed",
+     "desc": "A value to initialize this field with.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "cellcontextmenu",
-     "sig": "function (_self, rowIndex, cellIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a cell is right clicked"
+     "name": "cls",
+     "type": "String",
+     "desc": "A CSS class to apply to the field's underlying element.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "celldblclick",
-     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a cell is double clicked"
+     "name": "width",
+     "type": "Number",
+     "desc": "width (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
     },
     {
-     "name": "click",
-     "sig": "function (e)\n{\n\n}",
-     "type": "function",
-     "desc": "The raw click event for the entire grid."
+     "name": "height",
+     "type": "Number",
+     "desc": "height (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
     },
     {
-     "name": "columnmove",
-     "sig": "function (oldIndex, newIndex)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the user moves a column"
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "columnresize",
-     "sig": "function (columnIndex, newSize)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the user resizes a column"
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "contextmenu",
-     "sig": "function (e)\n{\n\n}",
-     "type": "function",
-     "desc": "The raw contextmenu event for the entire grid."
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
     },
     {
-     "name": "dblclick",
-     "sig": "function (e)\n{\n\n}",
-     "type": "function",
-     "desc": "The raw dblclick event for the entire grid."
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "dragdrop",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "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": "autosize",
+     "sig": "function (_self, width)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when dragged row(s) are dropped on a valid DD target"
+     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
     },
     {
-     "name": "dragenter\n Fires when the dragged row(s) first cross another DD target while being dragged",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "name": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": ""
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "dragout",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the dragged row(s) leave another DD target while being dragged"
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "dragover",
-     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires while row(s) are being dragged. \"targetId\" is the id of the Yahoo.util.DD object the selected rows are being dragged over."
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "enddrag",
-     "sig": "function (_self, dd, e)\n{\n\n}",
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a drag operation is complete"
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "headerclick",
-     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "name": "blur",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a header is clicked"
+     "desc": "Fires when this field loses input focus."
     },
     {
-     "name": "headercontextmenu",
-     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "name": "change",
+     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a header is right clicked"
+     "desc": "Fires just before the field blurs if the field value has changed."
     },
     {
-     "name": "headerdblclick",
-     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a header cell is double clicked"
+     "desc": "Fires after the component is destroyed."
     },
     {
-     "name": "keydown",
-     "sig": "function (e)\n{\n\n}",
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "The raw keydown event for the entire grid."
+     "desc": "Fires after the component is disabled."
     },
     {
-     "name": "keypress",
-     "sig": "function (e)\n{\n\n}",
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "The raw keypress event for the entire grid."
+     "desc": "Fires after the component is enabled."
     },
     {
-     "name": "mousedown",
-     "sig": "function (e)\n{\n\n}",
+     "name": "focus",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "The raw mousedown event for the entire grid."
+     "desc": "Fires when this field receives input focus."
     },
     {
-     "name": "mouseout",
-     "sig": "function (e)\n{\n\n}",
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "The raw mouseout event for the entire grid."
+     "desc": "Fires after the component is hidden."
     },
     {
-     "name": "mouseover",
-     "sig": "function (e)\n{\n\n}",
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
      "type": "function",
-     "desc": "The raw mouseover event for the entire grid."
+     "desc": "Fires after the field has been marked as invalid."
     },
     {
-     "name": "mouseup",
-     "sig": "function (e)\n{\n\n}",
+     "name": "keyup",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
-     "desc": "The raw mouseup event for the entire grid."
+     "desc": "Fires after the key up"
     },
     {
-     "name": "render",
-     "sig": "function (grid)\n{\n\n}",
+     "name": "move",
+     "sig": "function (_self, x, y)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the grid is rendered"
+     "desc": "Fires after the component is moved."
     },
     {
-     "name": "rowclass",
-     "sig": "function (gridview, rowcfg)\n{\n\n}",
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is rendered, so you can change add a style to it."
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "rowclick",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "resize",
+     "sig": "function (_self, adjWidth, adjHeight, rawWidth, rawHeight)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is clicked"
+     "desc": "Fires after the component is resized."
     },
     {
-     "name": "rowcontextmenu",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is right clicked"
+     "desc": "Fires after the component is shown."
     },
     {
-     "name": "rowdblclick",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "specialkey",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is double clicked"
+     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
     },
     {
-     "name": "startdrag",
-     "sig": "function (_self, dd, e)\n{\n\n}",
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when row(s) start being dragged"
+     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Appends an event handler to this component"
     },
+    {
+     "name": "applyTo",
+     "sig": "(String/HTMLElement/Element el)",
+     "type": "function",
+     "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
+    },
     {
      "name": "autoSize",
      "sig": "()",
      "type": "function",
-     "desc": "Causes the grid to manually recalculate its dimensions. Generally this is done automatically,\nbut if manual update is required this method will initiate it."
+     "desc": "Automatically grows the field to accomodate the width of the text up to the maximum field width allowed.\nThis only takes effect if grow = true, and fires the autosize event."
     },
     {
      "name": "capture",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "destroy",
-     "sig": "(Boolean removeEl)",
+     "name": "clearInvalid",
+     "sig": "()",
      "type": "function",
-     "desc": "Destroy this grid."
+     "desc": "Clear any invalid styles/messages for this field"
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
-     "type": "function",
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "getColumnModel",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getBox",
+     "sig": "(Boolean local)",
+     "type": "function",
+     "desc": "Gets the current box measurements of the component's underlying element."
+    },
+    {
+     "name": "getEl",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's ColumnModel."
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "getDataSource",
+     "name": "getId",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's DataSource."
+     "desc": "Returns the id of this component."
     },
     {
-     "name": "getDragDropText",
+     "name": "getName",
      "sig": "()",
      "type": "function",
-     "desc": "Called to get grid's drag proxy text, by default returns this.ddText."
+     "desc": "Returns the name attribute of the field if available"
     },
     {
-     "name": "getGridEl",
+     "name": "getPosition",
+     "sig": "(Boolean local)",
+     "type": "function",
+     "desc": "Gets the current XY position of the component's underlying element."
+    },
+    {
+     "name": "getRawValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's underlying element."
+     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
     },
     {
-     "name": "getSelectionModel",
+     "name": "getSize",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's SelectionModel."
+     "desc": "Gets the current size of the component's underlying element."
     },
     {
-     "name": "getView",
+     "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's GridView object."
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
     },
     {
      "name": "hasListener",
      "type": "function",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
+    {
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide this component."
+    },
+    {
+     "name": "isDirty",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
+    },
+    {
+     "name": "isValid",
+     "sig": "(Boolean preventMark)",
+     "type": "function",
+     "desc": "Returns whether or not the field value is currently valid"
+    },
+    {
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
+    },
+    {
+     "name": "markInvalid",
+     "sig": "(String msg)",
+     "type": "function",
+     "desc": "Mark this field as invalid"
+    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
+     "name": "onPosition",
+     "sig": "(Number x, Number y)",
      "type": "function",
-     "desc": "Removes all listeners for this object"
+     "desc": "Called after the component is moved, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a move occurs."
     },
     {
-     "name": "reconfigure",
-     "sig": "(Roo.data.Store dataSource, Roo.grid.ColumnModel The)",
+     "name": "onResize",
+     "sig": "(Number adjWidth, Number adjHeight, Number rawWidth, Number rawHeight)",
      "type": "function",
-     "desc": "Reconfigures the grid to use a different Store and Column Model.\nThe View will be bound to the new objects and refreshed."
+     "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
     },
     {
      "name": "releaseCapture",
     },
     {
      "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
+    },
+    {
+     "name": "reset",
      "sig": "()",
      "type": "function",
-     "desc": "Called once after all setup has been completed and the grid is ready to be rendered."
+     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
+    },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
+    {
+     "name": "selectText",
+     "sig": "(Number start, Number end)",
+     "type": "function",
+     "desc": "Selects text in this field"
+    },
+    {
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
+    {
+     "name": "setPagePosition",
+     "sig": "(Number x, Number y)",
+     "type": "function",
+     "desc": "Sets the page XY position of the component.  To set the left and top instead, use {@link #setPosition}.\nThis method fires the move event."
+    },
+    {
+     "name": "setPosition",
+     "sig": "(Number left, Number top)",
+     "type": "function",
+     "desc": "Sets the left and top of the component.  To set the page XY position instead, use {@link #setPagePosition}.\nThis method fires the move event."
+    },
+    {
+     "name": "setRawValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
+    },
+    {
+     "name": "setSize",
+     "sig": "(Number/Object width, Number height)",
+     "type": "function",
+     "desc": "Sets the width and height of the component.  This method fires the resize event.  This method can accept\neither width and height as separate numeric arguments, or you can pass a size object like {width:10, height:20}."
+    },
+    {
+     "name": "setValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
+    },
+    {
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show this component."
+    },
+    {
+     "name": "syncSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Force the component's size to recalculate based on the underlying element's current height and width."
     },
     {
      "name": "un",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "updateBox",
+     "sig": "(Object box)",
+     "type": "function",
+     "desc": "Sets the current box measurements of the component's underlying element."
+    },
+    {
+     "name": "validate",
+     "sig": "()",
+     "type": "function",
+     "desc": "Validates the field value"
+    },
+    {
+     "name": "validateValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.grid.GridEditor": {
+  "Roo.form.TriggerField": {
    "props": [
     {
-     "name": "field",
-     "type": "Roo.form.Field",
-     "desc": "Field to wrap (or xtyped)",
+     "name": "triggerClass",
+     "type": "String",
+     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' by default and triggerClass will be <b>appended</b> if specified.",
      "memberOf": ""
     },
     {
-     "name": "autosize",
-     "type": "Boolean/String",
-     "desc": "True for the editor to automatically adopt the size of the underlying field, \"width\" to adopt the width only,\nor \"height\" to adopt the height only (defaults to false)",
-     "memberOf": "Roo.Editor"
+     "name": "autoCreate",
+     "type": "String/Object",
+     "desc": "A DomHelper element spec, or true for a default element spec (defaults to\n{tag: \"input\", type: \"text\", size: \"16\", autocomplete: \"off\"})",
+     "memberOf": ""
     },
     {
-     "name": "revertInvalid",
+     "name": "hideTrigger",
      "type": "Boolean",
-     "desc": "True to automatically revert the field value and cancel the edit when the user completes an edit and the field\nvalidation fails (defaults to true)",
-     "memberOf": "Roo.Editor"
+     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
+     "memberOf": ""
     },
     {
-     "name": "ignoreNoChange",
+     "name": "vtype",
+     "type": "String",
+     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "maskRe",
+     "type": "String",
+     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "disableKeyFilter",
      "type": "Boolean",
-     "desc": "True to skip the the edit completion process (no save, no events fired) if the user completes an edit and\nthe value has not changed (defaults to false).  Applies only to string values - edits for other data types\nwill never be ignored.",
-     "memberOf": "Roo.Editor"
+     "desc": "True to disable input keystroke filtering (defaults to false)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "hideEl",
+     "name": "allowBlank",
      "type": "Boolean",
-     "desc": "False to keep the bound element visible while the editor is displayed (defaults to true)",
-     "memberOf": "Roo.Editor"
+     "desc": "False to validate that the value length > 0 (defaults to true)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "value",
-     "type": "Mixed",
-     "desc": "The data value of the underlying field (defaults to \"\")",
-     "memberOf": "Roo.Editor"
+     "name": "minLength",
+     "type": "Number",
+     "desc": "Minimum input field length required (defaults to 0)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "alignment",
+     "name": "maxLength",
+     "type": "Number",
+     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "minLengthText",
      "type": "String",
-     "desc": "The position to align to (see {@link Roo.Element#alignTo} for more details, defaults to \"c-c?\").",
-     "memberOf": "Roo.Editor"
+     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "shadow",
-     "type": "Boolean/String",
-     "desc": "\"sides\" for sides/bottom only, \"frame\" for 4-way shadow, and \"drop\"\nfor bottom-right shadow (defaults to \"frame\")",
-     "memberOf": "Roo.Editor"
+     "name": "maxLengthText",
+     "type": "String",
+     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "constrain",
+     "name": "selectOnFocus",
      "type": "Boolean",
-     "desc": "True to constrain the editor to the viewport",
-     "memberOf": "Roo.Editor"
+     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
+     "memberOf": "Roo.form.TextField"
     },
     {
-     "name": "completeOnEnter",
+     "name": "blankText",
+     "type": "String",
+     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "validator",
+     "type": "Function",
+     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "regex",
+     "type": "RegExp",
+     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "regexText",
+     "type": "String",
+     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "emptyText",
+     "type": "String",
+     "desc": "The default text to display in an empty field - placeholder... (defaults to null).",
+     "memberOf": "Roo.form.TextField"
+    },
+    {
+     "name": "fieldLabel",
+     "type": "String",
+     "desc": "Label to use when rendering a form.",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "qtip",
+     "type": "String",
+     "desc": "Mouse over tip",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "name",
+     "type": "String",
+     "desc": "The field's HTML name attribute.",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "invalidClass",
+     "type": "String",
+     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "invalidText",
+     "type": "String",
+     "desc": "The error text to use when marking a field invalid and no message is provided (defaults to \"The value in this field is invalid\")",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "focusClass",
+     "type": "String",
+     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "validationEvent",
+     "type": "String/Boolean",
+     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "validateOnBlur",
      "type": "Boolean",
-     "desc": "True to complete the edit when the enter key is pressed (defaults to false)",
-     "memberOf": "Roo.Editor"
+     "desc": "Whether the field should validate when it loses focus (defaults to true).",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "cancelOnEsc",
+     "name": "validationDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "fieldClass",
+     "type": "String",
+     "desc": "The default CSS class for the field (defaults to \"x-form-field\")",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "msgTarget",
+     "type": "String",
+     "desc": "The location where error text should display.  Should be one of the following values (defaults to 'qtip'):\n<pre>\nValue         Description\n-----------   ----------------------------------------------------------------------\nqtip          Display a quick tip when the user hovers over the field\ntitle         Display a default browser title attribute popup\nunder         Add a block div beneath the field containing the error text\nside          Add an error icon to the right of the field with a popup on hover\n[element id]  Add the error text directly to the innerHTML of the specified element\n</pre>",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "msgFx",
+     "type": "String",
+     "desc": "<b>Experimental</b> The effect used when displaying a validation message under the field (defaults to 'normal').",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "readOnly",
      "type": "Boolean",
-     "desc": "True to cancel the edit when the escape key is pressed (defaults to false)",
-     "memberOf": "Roo.Editor"
+     "desc": "True to mark the field as readOnly in HTML (defaults to false) -- Note: this only sets the element's readOnly DOM attribute.",
+     "memberOf": "Roo.form.Field"
     },
     {
-     "name": "updateEl",
+     "name": "disabled",
      "type": "Boolean",
-     "desc": "True to update the innerHTML of the bound element when the update completes (defaults to false)",
-     "memberOf": "Roo.Editor"
+     "desc": "True to disable the field (defaults to false).",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "inputType",
+     "type": "String",
+     "desc": "The type attribute for input fields -- e.g. radio, text, password (defaults to \"text\").",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "tabIndex",
+     "type": "Number",
+     "desc": "The tabIndex for this field. Note this only applies to fields that are rendered, not those which are built via applyTo (defaults to undefined).",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "value",
+     "type": "Mixed",
+     "desc": "A value to initialize this field with.",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "A CSS class to apply to the field's underlying element.",
+     "memberOf": "Roo.form.Field"
+    },
+    {
+     "name": "width",
+     "type": "Number",
+     "desc": "width (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
+    },
+    {
+     "name": "height",
+     "type": "Number",
+     "desc": "height (optional) size of component",
+     "memberOf": "Roo.BoxComponent"
     },
     {
      "name": "disableClass",
    ],
    "events": [
     {
-     "name": "beforecomplete",
-     "sig": "function (_self, value, startValue)\n{\n\n}",
+     "name": "autosize",
+     "sig": "function (_self, width)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after a change has been made to the field, but before the change is reflected in the underlying\nfield.  Saving the change to the field can be canceled by returning false from the handler of this event.\nNote that if the value has not changed and ignoreNoChange = true, the editing will still end but this\nevent will not fire since no edit actually occurred."
+     "desc": "Fires when the autosize function is triggered.  The field may or may not have actually changed size\naccording to the default logic, but this event provides a hook for the developer to apply additional\nlogic at runtime to resize the field if needed."
     },
     {
      "name": "beforedestroy",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "beforestartedit",
-     "sig": "function (_self, boundEl, value)\n{\n\n}",
+     "name": "blur",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when editing is initiated, but before the value changes.  Editing can be canceled by returning\nfalse from the handler of this event."
+     "desc": "Fires when this field loses input focus."
     },
     {
-     "name": "complete",
-     "sig": "function (_self, value, startValue)\n{\n\n}",
+     "name": "change",
+     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after editing is complete and any changed value has been written to the underlying field."
+     "desc": "Fires just before the field blurs if the field value has changed."
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
+    {
+     "name": "focus",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this field receives input focus."
+    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been marked as invalid."
+    },
+    {
+     "name": "keyup",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the key up"
+    },
+    {
+     "name": "move",
+     "sig": "function (_self, x, y)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is moved."
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
+    {
+     "name": "resize",
+     "sig": "function (_self, adjWidth, adjHeight, rawWidth, rawHeight)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is resized."
+    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
     },
     {
-     "name": "startedit",
-     "sig": "function (boundEl, value)\n{\n\n}",
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this editor is displayed"
+     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "desc": "Appends an event handler to this component"
     },
     {
-     "name": "cancelEdit",
-     "sig": "(Boolean remainVisible)",
+     "name": "applyTo",
+     "sig": "(String/HTMLElement/Element el)",
      "type": "function",
-     "desc": "Cancels the editing process and hides the editor without persisting any changes.  The field value will be\nreverted to the original starting value."
+     "desc": "Apply the behaviors of this component to an existing element. <b>This is used instead of render().</b>"
     },
     {
      "name": "capture",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "completeEdit",
-     "sig": "(Boolean remainVisible)",
+     "name": "clearInvalid",
+     "sig": "()",
      "type": "function",
-     "desc": "Ends the editing process, persists the changed value to the underlying field, and hides the editor."
+     "desc": "Clear any invalid styles/messages for this field"
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Try to focus this component."
     },
+    {
+     "name": "getBox",
+     "sig": "(Boolean local)",
+     "type": "function",
+     "desc": "Gets the current box measurements of the component's underlying element."
+    },
     {
      "name": "getEl",
      "sig": "()",
      "desc": "Returns the id of this component."
     },
     {
-     "name": "getValue",
+     "name": "getName",
      "sig": "()",
      "type": "function",
-     "desc": "Gets the data value of the editor"
+     "desc": "Returns the name attribute of the field if available"
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
+     "name": "getPosition",
+     "sig": "(Boolean local)",
+     "type": "function",
+     "desc": "Gets the current XY position of the component's underlying element."
+    },
+    {
+     "name": "getRawValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
+    },
+    {
+     "name": "getSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Gets the current size of the component's underlying element."
+    },
+    {
+     "name": "getValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+    },
+    {
+     "name": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "checks the current value against the 'loaded' value.\nNote - will return false if 'resetHasChanged' has not been called first."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
      "type": "function",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
      "type": "function",
      "desc": "Hide this component."
     },
+    {
+     "name": "isDirty",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this field has been changed since it was originally loaded and is not disabled.\nDEPRICATED  - it never worked well - use hasChanged/resetHasChanged."
+    },
+    {
+     "name": "isValid",
+     "sig": "(Boolean preventMark)",
+     "type": "function",
+     "desc": "Returns whether or not the field value is currently valid"
+    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
+    {
+     "name": "markInvalid",
+     "sig": "(String msg)",
+     "type": "function",
+     "desc": "Mark this field as invalid"
+    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
+     "name": "onPosition",
+     "sig": "(Number x, Number y)",
      "type": "function",
-     "desc": "Removes all listeners for this object"
+     "desc": "Called after the component is moved, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a move occurs."
     },
     {
-     "name": "realign",
+     "name": "onResize",
+     "sig": "(Number adjWidth, Number adjHeight, Number rawWidth, Number rawHeight)",
+     "type": "function",
+     "desc": "Called after the component is resized, this method is empty by default but can be implemented by any\nsubclass that needs to perform custom logic after a resize occurs."
+    },
+    {
+     "name": "onTriggerClick",
+     "sig": "(EventObject e)",
+     "type": "function",
+     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
+    },
+    {
+     "name": "purgeListeners",
      "sig": "()",
      "type": "function",
-     "desc": "Realigns the editor to the bound field based on the current alignment config value."
+     "desc": "Removes all listeners for this object"
     },
     {
      "name": "releaseCapture",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
+    {
+     "name": "reset",
+     "sig": "()",
+     "type": "function",
+     "desc": "Resets the current field value to the originally-loaded value and clears any validation messages."
+    },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "stores the current value in loadedValue"
+    },
+    {
+     "name": "selectText",
+     "sig": "(Number start, Number end)",
+     "type": "function",
+     "desc": "Selects text in this field"
+    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setPagePosition",
+     "sig": "(Number x, Number y)",
+     "type": "function",
+     "desc": "Sets the page XY position of the component.  To set the left and top instead, use {@link #setPosition}.\nThis method fires the move event."
+    },
+    {
+     "name": "setPosition",
+     "sig": "(Number left, Number top)",
+     "type": "function",
+     "desc": "Sets the left and top of the component.  To set the page XY position instead, use {@link #setPagePosition}.\nThis method fires the move event."
+    },
+    {
+     "name": "setRawValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
+    },
     {
      "name": "setSize",
-     "sig": "(Number width, Number height)",
+     "sig": "(Number/Object width, Number height)",
      "type": "function",
-     "desc": "Sets the height and width of this editor."
+     "desc": "Sets the width and height of the component.  This method fires the resize event.  This method can accept\neither width and height as separate numeric arguments, or you can pass a size object like {width:10, height:20}."
     },
     {
      "name": "setValue",
      "sig": "(Mixed value)",
      "type": "function",
-     "desc": "Sets the data value of the editor"
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
     },
     {
      "name": "setVisible",
      "desc": "Show this component."
     },
     {
-     "name": "startEdit",
-     "sig": "(String/HTMLElement/Element el, String value)",
+     "name": "syncSize",
+     "sig": "()",
      "type": "function",
-     "desc": "Starts the editing process and shows the editor."
+     "desc": "Force the component's size to recalculate based on the underlying element's current height and width."
     },
     {
      "name": "un",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "updateBox",
+     "sig": "(Object box)",
+     "type": "function",
+     "desc": "Sets the current box measurements of the component's underlying element."
+    },
+    {
+     "name": "validate",
+     "sig": "()",
+     "type": "function",
+     "desc": "Validates the field value"
+    },
+    {
+     "name": "validateValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.grid.GridView": {
+  "Roo.form.VTypes": {
+   "props": [],
+   "events": [],
+   "methods": [
+    {
+     "name": "alpha",
+     "sig": "(String value)",
+     "type": "function",
+     "desc": "The function used to validate alpha values"
+    },
+    {
+     "name": "alphanum",
+     "sig": "(String value)",
+     "type": "function",
+     "desc": "The function used to validate alphanumeric values"
+    },
+    {
+     "name": "email",
+     "sig": "(String value)",
+     "type": "function",
+     "desc": "The function used to validate email addresses"
+    },
+    {
+     "name": "url",
+     "sig": "(String value)",
+     "type": "function",
+     "desc": "The function used to validate URLs"
+    }
+   ]
+  },
+  "Roo.grid": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.grid.AbstractGridView": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.grid.AbstractSelectionModel": {
    "props": [
     {
      "name": "listeners",
      "type": "function",
      "desc": "Appends an event handler to this component"
     },
-    {
-     "name": "autoSizeColumn",
-     "sig": "(Number colIndex, Boolean forceMinSize)",
-     "type": "function",
-     "desc": "Autofit a column to its content."
-    },
-    {
-     "name": "autoSizeColumns",
-     "sig": "()",
-     "type": "function",
-     "desc": "Autofits all columns to their content and then expands to fit any extra space in the grid"
-    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "ensureVisible",
-     "sig": "(Number row, Number col, Boolean hscroll)",
-     "type": "function",
-     "desc": "Scrolls the specified cell into view"
-    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "fitColumns",
-     "sig": "(Boolean reserveScrollSpace)",
-     "type": "function",
-     "desc": "Autofits all columns to the grid's width proportionate with their current size"
-    },
-    {
-     "name": "focusCell",
-     "sig": "(Number row, Number col, Boolean hscroll)",
-     "type": "function",
-     "desc": "Focuses the specified cell."
-    },
-    {
-     "name": "focusRow",
-     "sig": "(Number row)",
-     "type": "function",
-     "desc": "Focuses the specified row."
-    },
-    {
-     "name": "getCell",
-     "sig": "(Integer rowIndex, Integer colIndex)",
-     "type": "function",
-     "desc": "Gets the 'td' of the cell"
-    },
-    {
-     "name": "getFooterPanel",
-     "sig": "(Boolean doShow)",
+     "name": "hasListener",
+     "sig": "(String eventName)",
      "type": "function",
-     "desc": "Gets a panel in the footer of the grid that can be used for toolbars etc.\nAfter modifying the contents of this panel a call to grid.autoSize() may be\nrequired to register any changes in size."
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "getHeaderPanel",
-     "sig": "(Boolean doShow)",
+     "name": "isLocked",
+     "sig": "()",
      "type": "function",
-     "desc": "Gets a panel in the header of the grid that can be used for toolbars etc.\nAfter modifying the contents of this panel a call to grid.autoSize() may be\nrequired to register any changes in size."
+     "desc": "Returns true if the selections are locked."
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
+     "name": "lock",
+     "sig": "()",
      "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "desc": "Locks the selections."
     },
     {
      "name": "on",
      "type": "function",
      "desc": "Removes all listeners for this object"
     },
-    {
-     "name": "refresh",
-     "sig": "(Boolean headersToo)",
-     "type": "function",
-     "desc": "Refreshes the grid"
-    },
     {
      "name": "releaseCapture",
      "sig": "(Observable o)",
      "type": "function",
      "desc": "Removes a listener"
     },
-    {
-     "name": "scrollToTop",
-     "sig": "()",
-     "type": "function",
-     "desc": "Scrolls the grid to the top"
-    },
     {
      "name": "un",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unlock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Unlocks the selections."
     }
    ]
   },
-  "Roo.grid.PropertyGrid": {
+  "Roo.grid.Calendar": {
    "props": [
     {
-     "name": "customEditors",
-     "type": "Object",
-     "desc": "map of colnames=> custom editors.\nthe custom editor can be one of the standard ones (date|string|number|int|boolean), or a\ngrid editor eg. Roo.grid.GridEditor(new Roo.form.TextArea({selectOnFocus:true})),\nfalse disables editing of the field.",
-     "memberOf": ""
-    },
-    {
-     "name": "propertyNames",
-     "type": "Object",
-     "desc": "map of property Names to their displayed value",
+     "name": "eventStore",
+     "type": "Store",
+     "desc": "The store that loads events.",
      "memberOf": ""
-    },
-    {
-     "name": "clicksToEdit",
-     "type": "Number",
-     "desc": "The number of clicks on a cell required to display the cell's editor (defaults to 2)",
-     "memberOf": "Roo.grid.EditorGrid"
-    },
-    {
-     "name": "ddGroup",
-     "type": "String",
-     "desc": "- drag drop group.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "enableDrag",
-     "type": "Boolean",
-     "desc": "True to enable drag of rows. Default is false. (double check if this is needed?)",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "autoWidth",
-     "type": "Boolean",
-     "desc": "True to set the grid's width to the default total width of the grid's columns instead\nof a fixed width. Default is false.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "maxHeight",
-     "type": "Number",
-     "desc": "Sets the maximum height of the grid - ignored if autoHeight is not on.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "minColumnWidth",
-     "type": "Number",
-     "desc": "The minimum width a column can be resized to. Default is 25.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "autoSizeColumns",
-     "type": "Boolean",
-     "desc": "True to automatically resize the columns to fit their content\n<b>on initial render.</b> It is more efficient to explicitly size the columns\nthrough the ColumnModel's {@link Roo.grid.ColumnModel#width} config option.  Default is false.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "autoSizeHeaders",
-     "type": "Boolean",
-     "desc": "True to measure headers with column data when auto sizing columns. Default is true.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "monitorWindowResize",
-     "type": "Boolean",
-     "desc": "True to autoSize the grid when the window resizes. Default is true.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "maxRowsToMeasure",
-     "type": "Boolean",
-     "desc": "If autoSizeColumns is on, maxRowsToMeasure can be used to limit the number of\nrows measured to get a columns size. Default is 0 (all rows).",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "trackMouseOver",
-     "type": "Boolean",
-     "desc": "True to highlight rows when the mouse is over. Default is true.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "enableDragDrop",
-     "type": "Boolean",
-     "desc": "True to enable drag and drop of rows. Default is false.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "enableColumnMove",
-     "type": "Boolean",
-     "desc": "True to enable drag and drop reorder of columns. Default is true.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "enableColumnHide",
-     "type": "Boolean",
-     "desc": "True to enable hiding of columns with the header context menu. Default is true.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "enableRowHeightSync",
-     "type": "Boolean",
-     "desc": "True to manually sync row heights across locked and not locked rows. Default is false.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "stripeRows",
-     "type": "Boolean",
-     "desc": "True to stripe the rows.  Default is true.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "autoHeight",
-     "type": "Boolean",
-     "desc": "True to fit the height of the grid container to the height of the data. Default is false.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "autoExpandColumn",
-     "type": "String",
-     "desc": "The id (or dataIndex) of a column in this grid that should expand to fill unused space. This id can not be 0. Default is false.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "autoExpandMin",
-     "type": "Number",
-     "desc": "The minimum width the autoExpandColumn can have (if enabled).\nDefault is 50.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "autoExpandMax",
-     "type": "Number",
-     "desc": "The maximum width the autoExpandColumn can have (if enabled). Default is 1000.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "view",
-     "type": "Object",
-     "desc": "The {@link Roo.grid.GridView} used by the grid. This can be set before a call to render().",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "loadMask",
-     "type": "Object",
-     "desc": "An {@link Roo.LoadMask} config or true to mask the grid while loading. Default is false.",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "name": "dropTarget",
-     "type": "Roo.dd.DropTarget",
-     "desc": "An {@link Roo.dd.DropTarget} config",
-     "memberOf": "Roo.grid.Grid"
-    },
-    {
-     "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": "afteredit",
-     "sig": "function (e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after a cell is edited. <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value being set</li>\n<li>originalValue - The original value for the field, before the edit.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n</ul>"
-    },
-    {
-     "name": "beforeedit",
-     "sig": "function (e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before cell editing is triggered. The edit event object has the following properties <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value for the field being edited.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n<li>cancel - Set this to true to cancel the edit or return false from your handler.</li>\n</ul>"
-    },
-    {
-     "name": "beforepropertychange",
-     "sig": "function (grid, id, newval, oldval)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a property changes (return false to stop?)"
-    },
     {
      "name": "bodyscroll",
      "sig": "function (scrollLeft, scrollTop)\n{\n\n}",
      "type": "function",
      "desc": "Fires when a drag operation is complete"
     },
+    {
+     "name": "eventclick",
+     "sig": "function (_self, )\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the mouse click an"
+    },
+    {
+     "name": "evententer",
+     "sig": "function (_self, Event)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when mouse over an event"
+    },
+    {
+     "name": "eventleave",
+     "sig": "function (_self, )\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the mouse leaves an"
+    },
+    {
+     "name": "eventrender",
+     "sig": "function (_self, data)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before each cell is rendered, so you can modify the contents, like cls / title / qtip"
+    },
     {
      "name": "headerclick",
      "sig": "function (_self, columnIndex, e)\n{\n\n}",
      "type": "function",
      "desc": "The raw keypress event for the entire grid."
     },
+    {
+     "name": "monthchange",
+     "sig": "function (_self, date)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the displayed month changes"
+    },
     {
      "name": "mousedown",
      "sig": "function (e)\n{\n\n}",
      "type": "function",
      "desc": "The raw mouseup event for the entire grid."
     },
-    {
-     "name": "propertychange",
-     "sig": "function (grid, id, newval, oldval)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after a property changes"
-    },
     {
      "name": "render",
      "sig": "function (grid)\n{\n\n}",
      "name": "rowdblclick",
      "sig": "function (_self, rowIndex, e)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is double clicked"
+     "desc": "Fires when a row is double clicked"
+    },
+    {
+     "name": "select",
+     "sig": "function (_self, date)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a date is selected"
+    },
+    {
+     "name": "startdrag",
+     "sig": "function (_self, dd, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when row(s) start being dragged"
+    }
+   ],
+   "methods": [
+    {
+     "name": "getSelectionModel",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's SelectionModel."
+    }
+   ]
+  },
+  "Roo.grid.CellSelectionModel": {
+   "props": [
+    {
+     "name": "enter_is_tab",
+     "type": "Boolean",
+     "desc": "Enter behaves the same as tab. (eg. goes to next cell) default: false",
+     "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": "beforeeditnext",
+     "sig": "function (eventdata)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the next editable sell is made active\nYou can use this to skip to another cell or fire the tabend\n   if you set cell to false"
+    },
+    {
+     "name": "beforerowselect",
+     "sig": "function (_self, rowIndex, colIndex)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before a cell is selected."
+    },
+    {
+     "name": "cellselect",
+     "sig": "function (_self, rowIndex, colIndex)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is selected."
+    },
+    {
+     "name": "selectionchange",
+     "sig": "function (_self, selection)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the active selection changes."
+    },
+    {
+     "name": "tabend",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the tab (or enter) was pressed on the last editable cell\nYou can use this to trigger add new row."
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "clearSelections",
+     "sig": "(Boolean true)",
+     "type": "function",
+     "desc": "Clears all selections."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "getSelectedCell",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the currently selected cell,."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hasSelection",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if there is a selection."
+    },
+    {
+     "name": "isLocked",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the selections are locked."
+    },
+    {
+     "name": "lock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Locks the selections."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "onEditorKey",
+     "sig": "(Number field, Number e)",
+     "type": "function",
+     "desc": "Selects a cell."
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "select",
+     "sig": "(Number rowIndex, Number collIndex)",
+     "type": "function",
+     "desc": "Selects a cell."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unlock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Unlocks the selections."
+    }
+   ]
+  },
+  "Roo.grid.ColumnModel": {
+   "props": [
+    {
+     "name": "header",
+     "type": "String",
+     "desc": "The header text to display in the Grid view.",
+     "memberOf": ""
+    },
+    {
+     "name": "dataIndex",
+     "type": "String",
+     "desc": "(Optional) The name of the field in the grid's {@link Roo.data.Store}'s\n{@link Roo.data.Record} definition from which to draw the column's value. If not\nspecified, the column's index is used as an index into the Record's data Array.",
+     "memberOf": ""
+    },
+    {
+     "name": "width",
+     "type": "Number",
+     "desc": "(Optional) The initial width in pixels of the column. Using this\ninstead of {@link Roo.grid.Grid#autoSizeColumns} is more efficient.",
+     "memberOf": ""
+    },
+    {
+     "name": "sortable",
+     "type": "Boolean",
+     "desc": "(Optional) True if sorting is to be allowed on this column.\nDefaults to the value of the {@link #defaultSortable} property.\nWhether local/remote sorting is used is specified in {@link Roo.data.Store#remoteSort}.",
+     "memberOf": ""
+    },
+    {
+     "name": "locked",
+     "type": "Boolean",
+     "desc": "(Optional) True to lock the column in place while scrolling the Grid.  Defaults to false.",
+     "memberOf": ""
+    },
+    {
+     "name": "fixed",
+     "type": "Boolean",
+     "desc": "(Optional) True if the column width cannot be changed.  Defaults to false.",
+     "memberOf": ""
+    },
+    {
+     "name": "resizable",
+     "type": "Boolean",
+     "desc": "(Optional) False to disable column resizing. Defaults to true.",
+     "memberOf": ""
+    },
+    {
+     "name": "hidden",
+     "type": "Boolean",
+     "desc": "(Optional) True to hide the column. Defaults to false.",
+     "memberOf": ""
+    },
+    {
+     "name": "renderer",
+     "type": "Function",
+     "desc": "(Optional) A function used to generate HTML markup for a cell\ngiven the cell's data value. See {@link #setRenderer}. If not specified, the\ndefault renderer uses the raw data value. If an object is returned (bootstrap only)\nthen it is treated as a Roo Component object instance, and it is rendered after the initial row is rendered",
+     "memberOf": ""
+    },
+    {
+     "name": "editor",
+     "type": "Roo.grid.GridEditor",
+     "desc": "(Optional) For grid editors - returns the grid editor",
+     "memberOf": ""
+    },
+    {
+     "name": "align",
+     "type": "String",
+     "desc": "(Optional) Set the CSS text-align property of the column.  Defaults to undefined.",
+     "memberOf": ""
+    },
+    {
+     "name": "cursor",
+     "type": "String",
+     "desc": "(Optional)",
+     "memberOf": ""
+    },
+    {
+     "name": "tooltip",
+     "type": "String",
+     "desc": "(Optional)",
+     "memberOf": ""
+    },
+    {
+     "name": "xs",
+     "type": "Number",
+     "desc": "(Optional)",
+     "memberOf": ""
+    },
+    {
+     "name": "sm",
+     "type": "Number",
+     "desc": "(Optional)",
+     "memberOf": ""
+    },
+    {
+     "name": "md",
+     "type": "Number",
+     "desc": "(Optional)",
+     "memberOf": ""
+    },
+    {
+     "name": "lg",
+     "type": "Number",
+     "desc": "(Optional)",
+     "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": "columlockchange",
+     "sig": "function (_self, colIndex, locked)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a column's locked state is changed"
+    },
+    {
+     "name": "columnmoved",
+     "sig": "function (_self, oldIndex, newIndex)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a column is moved."
+    },
+    {
+     "name": "headerchange",
+     "sig": "function (_self, columnIndex, newText)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the text of a header changes."
+    },
+    {
+     "name": "hiddenchange",
+     "sig": "function (_self, columnIndex, hidden)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a column is hidden or \"unhidden\"."
+    },
+    {
+     "name": "widthchange",
+     "sig": "function (_self, columnIndex, newWidth)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the width of a column changes."
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "findColumnIndex",
+     "sig": "(String dataIndex)",
+     "type": "function",
+     "desc": "Returns the index for a specified column dataIndex."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "getCellEditor",
+     "sig": "(Number colIndex, Number rowIndex)",
+     "type": "function",
+     "desc": "Returns the editor defined for the cell/column.\nreturn false or null to disable editing."
+    },
+    {
+     "name": "getColumnByDataIndex",
+     "sig": "(String dataIndex)",
+     "type": "function",
+     "desc": "Returns the column for a specified dataIndex."
+    },
+    {
+     "name": "getColumnById",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Returns the column for a specified id."
+    },
+    {
+     "name": "getColumnCount",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the number of columns."
+    },
+    {
+     "name": "getColumnHeader",
+     "sig": "(Number col)",
+     "type": "function",
+     "desc": "Returns the header for the specified column."
+    },
+    {
+     "name": "getColumnId",
+     "sig": "(Number index)",
+     "type": "function",
+     "desc": "Returns the id of the column at the specified index."
+    },
+    {
+     "name": "getColumnTooltip",
+     "sig": "(Number col)",
+     "type": "function",
+     "desc": "Returns the tooltip for the specified column."
+    },
+    {
+     "name": "getColumnWidth",
+     "sig": "(Number col)",
+     "type": "function",
+     "desc": "Returns the width for the specified column."
+    },
+    {
+     "name": "getColumnsBy",
+     "sig": "(Function fn, Object scope)",
+     "type": "function",
+     "desc": "Returns the column configs that return true by the passed function that is called with (columnConfig, index)"
+    },
+    {
+     "name": "getDataIndex",
+     "sig": "(Number col)",
+     "type": "function",
+     "desc": "Returns the dataIndex for the specified column."
+    },
+    {
+     "name": "getIndexById",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Returns the index for a specified column id."
+    },
+    {
+     "name": "getRenderer",
+     "sig": "(Number col)",
+     "type": "function",
+     "desc": "Returns the rendering (formatting) function defined for the column."
+    },
+    {
+     "name": "getTotalWidth",
+     "sig": "(Boolean includeHidden)",
+     "type": "function",
+     "desc": "Returns the total width of all columns."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "isCellEditable",
+     "sig": "(Number colIndex, Number rowIndex)",
+     "type": "function",
+     "desc": "Returns true if the cell is editable."
+    },
+    {
+     "name": "isFixed",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the column width cannot be changed"
+    },
+    {
+     "name": "isHidden",
+     "sig": "(Number colIndex)",
+     "type": "function",
+     "desc": "Returns true if the column is hidden."
+    },
+    {
+     "name": "isResizable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the column can be resized"
+    },
+    {
+     "name": "isSortable",
+     "sig": "(Number col)",
+     "type": "function",
+     "desc": "Returns true if the specified column is sortable."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "setColumnHeader",
+     "sig": "(Number col, String header)",
+     "type": "function",
+     "desc": "Sets the header for a column."
+    },
+    {
+     "name": "setColumnTooltip",
+     "sig": "(Number col, String tooltip)",
+     "type": "function",
+     "desc": "Sets the tooltip for a column."
+    },
+    {
+     "name": "setColumnWidth",
+     "sig": "(Number col, Number width)",
+     "type": "function",
+     "desc": "Sets the width for a column."
+    },
+    {
+     "name": "setDataIndex",
+     "sig": "(Number col, Number dataIndex)",
+     "type": "function",
+     "desc": "Sets the dataIndex for a column."
+    },
+    {
+     "name": "setEditable",
+     "sig": "(Number col, Boolean editable)",
+     "type": "function",
+     "desc": "Sets if a column is editable."
+    },
+    {
+     "name": "setEditor",
+     "sig": "(Number col, Object editor)",
+     "type": "function",
+     "desc": "Sets the editor for a column."
+    },
+    {
+     "name": "setHidden",
+     "sig": "(Number colIndex, Boolean hidden)",
+     "type": "function",
+     "desc": "Sets if a column is hidden."
+    },
+    {
+     "name": "setRenderer",
+     "sig": "(Number col, Function fn)",
+     "type": "function",
+     "desc": "Sets the rendering (formatting) function for a column."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.grid.EditorGrid": {
+   "props": [
+    {
+     "name": "clicksToEdit",
+     "type": "Number",
+     "desc": "The number of clicks on a cell required to display the cell's editor (defaults to 2)",
+     "memberOf": ""
+    },
+    {
+     "name": "ddGroup",
+     "type": "String",
+     "desc": "- drag drop group.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "enableDrag",
+     "type": "Boolean",
+     "desc": "True to enable drag of rows. Default is false. (double check if this is needed?)",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoWidth",
+     "type": "Boolean",
+     "desc": "True to set the grid's width to the default total width of the grid's columns instead\nof a fixed width. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "maxHeight",
+     "type": "Number",
+     "desc": "Sets the maximum height of the grid - ignored if autoHeight is not on.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "minColumnWidth",
+     "type": "Number",
+     "desc": "The minimum width a column can be resized to. Default is 25.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoSizeColumns",
+     "type": "Boolean",
+     "desc": "True to automatically resize the columns to fit their content\n<b>on initial render.</b> It is more efficient to explicitly size the columns\nthrough the ColumnModel's {@link Roo.grid.ColumnModel#width} config option.  Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoSizeHeaders",
+     "type": "Boolean",
+     "desc": "True to measure headers with column data when auto sizing columns. Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "monitorWindowResize",
+     "type": "Boolean",
+     "desc": "True to autoSize the grid when the window resizes. Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "maxRowsToMeasure",
+     "type": "Boolean",
+     "desc": "If autoSizeColumns is on, maxRowsToMeasure can be used to limit the number of\nrows measured to get a columns size. Default is 0 (all rows).",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "trackMouseOver",
+     "type": "Boolean",
+     "desc": "True to highlight rows when the mouse is over. Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "enableDragDrop",
+     "type": "Boolean",
+     "desc": "True to enable drag and drop of rows. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "enableColumnMove",
+     "type": "Boolean",
+     "desc": "True to enable drag and drop reorder of columns. Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "enableColumnHide",
+     "type": "Boolean",
+     "desc": "True to enable hiding of columns with the header context menu. Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "enableRowHeightSync",
+     "type": "Boolean",
+     "desc": "True to manually sync row heights across locked and not locked rows. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "stripeRows",
+     "type": "Boolean",
+     "desc": "True to stripe the rows.  Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoHeight",
+     "type": "Boolean",
+     "desc": "True to fit the height of the grid container to the height of the data. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoExpandColumn",
+     "type": "String",
+     "desc": "The id (or dataIndex) of a column in this grid that should expand to fill unused space. This id can not be 0. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoExpandMin",
+     "type": "Number",
+     "desc": "The minimum width the autoExpandColumn can have (if enabled).\nDefault is 50.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoExpandMax",
+     "type": "Number",
+     "desc": "The maximum width the autoExpandColumn can have (if enabled). Default is 1000.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "view",
+     "type": "Object",
+     "desc": "The {@link Roo.grid.GridView} used by the grid. This can be set before a call to render().",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "loadMask",
+     "type": "Object",
+     "desc": "An {@link Roo.LoadMask} config or true to mask the grid while loading. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "dropTarget",
+     "type": "Roo.dd.DropTarget",
+     "desc": "An {@link Roo.dd.DropTarget} config",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "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": "afteredit",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after a cell is edited. <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value being set</li>\n<li>originalValue - The original value for the field, before the edit.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n</ul>"
+    },
+    {
+     "name": "beforeedit",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before cell editing is triggered. The edit event object has the following properties <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value for the field being edited.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n<li>cancel - Set this to true to cancel the edit or return false from your handler.</li>\n</ul>"
+    },
+    {
+     "name": "bodyscroll",
+     "sig": "function (scrollLeft, scrollTop)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the body element is scrolled"
+    },
+    {
+     "name": "cellclick",
+     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is clicked"
+    },
+    {
+     "name": "cellcontextmenu",
+     "sig": "function (_self, rowIndex, cellIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is right clicked"
+    },
+    {
+     "name": "celldblclick",
+     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is double clicked"
+    },
+    {
+     "name": "click",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw click event for the entire grid."
+    },
+    {
+     "name": "columnmove",
+     "sig": "function (oldIndex, newIndex)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the user moves a column"
+    },
+    {
+     "name": "columnresize",
+     "sig": "function (columnIndex, newSize)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the user resizes a column"
+    },
+    {
+     "name": "contextmenu",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw contextmenu event for the entire grid."
+    },
+    {
+     "name": "dblclick",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw dblclick event for the entire grid."
+    },
+    {
+     "name": "dragdrop",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when dragged row(s) are dropped on a valid DD target"
+    },
+    {
+     "name": "dragenter\n Fires when the dragged row(s) first cross another DD target while being dragged",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": ""
+    },
+    {
+     "name": "dragout",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the dragged row(s) leave another DD target while being dragged"
+    },
+    {
+     "name": "dragover",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires while row(s) are being dragged. \"targetId\" is the id of the Yahoo.util.DD object the selected rows are being dragged over."
+    },
+    {
+     "name": "enddrag",
+     "sig": "function (_self, dd, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a drag operation is complete"
+    },
+    {
+     "name": "headerclick",
+     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a header is clicked"
+    },
+    {
+     "name": "headercontextmenu",
+     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a header is right clicked"
+    },
+    {
+     "name": "headerdblclick",
+     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a header cell is double clicked"
+    },
+    {
+     "name": "keydown",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw keydown event for the entire grid."
+    },
+    {
+     "name": "keypress",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw keypress event for the entire grid."
+    },
+    {
+     "name": "mousedown",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mousedown event for the entire grid."
+    },
+    {
+     "name": "mouseout",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mouseout event for the entire grid."
+    },
+    {
+     "name": "mouseover",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mouseover event for the entire grid."
+    },
+    {
+     "name": "mouseup",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mouseup event for the entire grid."
+    },
+    {
+     "name": "render",
+     "sig": "function (grid)\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 a row is clicked"
+    },
+    {
+     "name": "rowcontextmenu",
+     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is right clicked"
+    },
+    {
+     "name": "rowdblclick",
+     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is double clicked"
+    },
+    {
+     "name": "startdrag",
+     "sig": "function (_self, dd, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when row(s) start being dragged"
+    },
+    {
+     "name": "validateedit",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after a cell is edited, but before the value is set in the record. \nYou can use this to modify the value being set in the field, Return false\nto cancel the change. The edit event object has the following properties <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>editor - This editor</li>\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value being set</li>\n<li>originalValue - The original value for the field, before the edit.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n<li>cancel - Set this to true to cancel the edit or return false from your handler.</li>\n</ul>"
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "autoSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Causes the grid to manually recalculate its dimensions. Generally this is done automatically,\nbut if manual update is required this method will initiate it."
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
+     "sig": "(Boolean removeEl)",
+     "type": "function",
+     "desc": "Destroy this grid."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "getColumnModel",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's ColumnModel."
+    },
+    {
+     "name": "getDataSource",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's DataSource."
+    },
+    {
+     "name": "getDragDropText",
+     "sig": "()",
+     "type": "function",
+     "desc": "Called to get grid's drag proxy text, by default returns this.ddText."
+    },
+    {
+     "name": "getGridEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's underlying element."
+    },
+    {
+     "name": "getSelectionModel",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's SelectionModel."
+    },
+    {
+     "name": "getView",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's GridView object."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "reconfigure",
+     "sig": "(Roo.data.Store dataSource, Roo.grid.ColumnModel The)",
+     "type": "function",
+     "desc": "Reconfigures the grid to use a different Store and Column Model.\nThe View will be bound to the new objects and refreshed."
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "()",
+     "type": "function",
+     "desc": "Called once after all setup has been completed and the grid is ready to be rendered."
+    },
+    {
+     "name": "startEditing",
+     "sig": "(Number rowIndex, Number colIndex)",
+     "type": "function",
+     "desc": "Starts editing the specified for the specified row/column"
+    },
+    {
+     "name": "stopEditing",
+     "sig": "()",
+     "type": "function",
+     "desc": "Stops any active editing"
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.grid.Grid": {
+   "props": [
+    {
+     "name": "ddGroup",
+     "type": "String",
+     "desc": "- drag drop group.",
+     "memberOf": ""
+    },
+    {
+     "name": "enableDrag",
+     "type": "Boolean",
+     "desc": "True to enable drag of rows. Default is false. (double check if this is needed?)",
+     "memberOf": ""
+    },
+    {
+     "name": "autoWidth",
+     "type": "Boolean",
+     "desc": "True to set the grid's width to the default total width of the grid's columns instead\nof a fixed width. Default is false.",
+     "memberOf": ""
+    },
+    {
+     "name": "maxHeight",
+     "type": "Number",
+     "desc": "Sets the maximum height of the grid - ignored if autoHeight is not on.",
+     "memberOf": ""
+    },
+    {
+     "name": "minColumnWidth",
+     "type": "Number",
+     "desc": "The minimum width a column can be resized to. Default is 25.",
+     "memberOf": ""
+    },
+    {
+     "name": "autoSizeColumns",
+     "type": "Boolean",
+     "desc": "True to automatically resize the columns to fit their content\n<b>on initial render.</b> It is more efficient to explicitly size the columns\nthrough the ColumnModel's {@link Roo.grid.ColumnModel#width} config option.  Default is false.",
+     "memberOf": ""
+    },
+    {
+     "name": "autoSizeHeaders",
+     "type": "Boolean",
+     "desc": "True to measure headers with column data when auto sizing columns. Default is true.",
+     "memberOf": ""
+    },
+    {
+     "name": "monitorWindowResize",
+     "type": "Boolean",
+     "desc": "True to autoSize the grid when the window resizes. Default is true.",
+     "memberOf": ""
+    },
+    {
+     "name": "maxRowsToMeasure",
+     "type": "Boolean",
+     "desc": "If autoSizeColumns is on, maxRowsToMeasure can be used to limit the number of\nrows measured to get a columns size. Default is 0 (all rows).",
+     "memberOf": ""
+    },
+    {
+     "name": "trackMouseOver",
+     "type": "Boolean",
+     "desc": "True to highlight rows when the mouse is over. Default is true.",
+     "memberOf": ""
+    },
+    {
+     "name": "enableDragDrop",
+     "type": "Boolean",
+     "desc": "True to enable drag and drop of rows. Default is false.",
+     "memberOf": ""
+    },
+    {
+     "name": "enableColumnMove",
+     "type": "Boolean",
+     "desc": "True to enable drag and drop reorder of columns. Default is true.",
+     "memberOf": ""
+    },
+    {
+     "name": "enableColumnHide",
+     "type": "Boolean",
+     "desc": "True to enable hiding of columns with the header context menu. Default is true.",
+     "memberOf": ""
+    },
+    {
+     "name": "enableRowHeightSync",
+     "type": "Boolean",
+     "desc": "True to manually sync row heights across locked and not locked rows. Default is false.",
+     "memberOf": ""
+    },
+    {
+     "name": "stripeRows",
+     "type": "Boolean",
+     "desc": "True to stripe the rows.  Default is true.",
+     "memberOf": ""
+    },
+    {
+     "name": "autoHeight",
+     "type": "Boolean",
+     "desc": "True to fit the height of the grid container to the height of the data. Default is false.",
+     "memberOf": ""
+    },
+    {
+     "name": "autoExpandColumn",
+     "type": "String",
+     "desc": "The id (or dataIndex) of a column in this grid that should expand to fill unused space. This id can not be 0. Default is false.",
+     "memberOf": ""
+    },
+    {
+     "name": "autoExpandMin",
+     "type": "Number",
+     "desc": "The minimum width the autoExpandColumn can have (if enabled).\nDefault is 50.",
+     "memberOf": ""
+    },
+    {
+     "name": "autoExpandMax",
+     "type": "Number",
+     "desc": "The maximum width the autoExpandColumn can have (if enabled). Default is 1000.",
+     "memberOf": ""
+    },
+    {
+     "name": "view",
+     "type": "Object",
+     "desc": "The {@link Roo.grid.GridView} used by the grid. This can be set before a call to render().",
+     "memberOf": ""
+    },
+    {
+     "name": "loadMask",
+     "type": "Object",
+     "desc": "An {@link Roo.LoadMask} config or true to mask the grid while loading. Default is false.",
+     "memberOf": ""
+    },
+    {
+     "name": "dropTarget",
+     "type": "Roo.dd.DropTarget",
+     "desc": "An {@link Roo.dd.DropTarget} config",
+     "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": "bodyscroll",
+     "sig": "function (scrollLeft, scrollTop)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the body element is scrolled"
+    },
+    {
+     "name": "cellclick",
+     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is clicked"
+    },
+    {
+     "name": "cellcontextmenu",
+     "sig": "function (_self, rowIndex, cellIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is right clicked"
+    },
+    {
+     "name": "celldblclick",
+     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is double clicked"
+    },
+    {
+     "name": "click",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw click event for the entire grid."
+    },
+    {
+     "name": "columnmove",
+     "sig": "function (oldIndex, newIndex)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the user moves a column"
+    },
+    {
+     "name": "columnresize",
+     "sig": "function (columnIndex, newSize)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the user resizes a column"
+    },
+    {
+     "name": "contextmenu",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw contextmenu event for the entire grid."
+    },
+    {
+     "name": "dblclick",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw dblclick event for the entire grid."
+    },
+    {
+     "name": "dragdrop",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when dragged row(s) are dropped on a valid DD target"
+    },
+    {
+     "name": "dragenter\n Fires when the dragged row(s) first cross another DD target while being dragged",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": ""
+    },
+    {
+     "name": "dragout",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the dragged row(s) leave another DD target while being dragged"
+    },
+    {
+     "name": "dragover",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires while row(s) are being dragged. \"targetId\" is the id of the Yahoo.util.DD object the selected rows are being dragged over."
+    },
+    {
+     "name": "enddrag",
+     "sig": "function (_self, dd, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a drag operation is complete"
+    },
+    {
+     "name": "headerclick",
+     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a header is clicked"
+    },
+    {
+     "name": "headercontextmenu",
+     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a header is right clicked"
+    },
+    {
+     "name": "headerdblclick",
+     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a header cell is double clicked"
+    },
+    {
+     "name": "keydown",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw keydown event for the entire grid."
+    },
+    {
+     "name": "keypress",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw keypress event for the entire grid."
+    },
+    {
+     "name": "mousedown",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mousedown event for the entire grid."
+    },
+    {
+     "name": "mouseout",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mouseout event for the entire grid."
+    },
+    {
+     "name": "mouseover",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mouseover event for the entire grid."
+    },
+    {
+     "name": "mouseup",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mouseup event for the entire grid."
+    },
+    {
+     "name": "render",
+     "sig": "function (grid)\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 a row is clicked"
+    },
+    {
+     "name": "rowcontextmenu",
+     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is right clicked"
+    },
+    {
+     "name": "rowdblclick",
+     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is double clicked"
+    },
+    {
+     "name": "startdrag",
+     "sig": "function (_self, dd, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when row(s) start being dragged"
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "autoSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Causes the grid to manually recalculate its dimensions. Generally this is done automatically,\nbut if manual update is required this method will initiate it."
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
+     "sig": "(Boolean removeEl)",
+     "type": "function",
+     "desc": "Destroy this grid."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "getColumnModel",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's ColumnModel."
+    },
+    {
+     "name": "getDataSource",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's DataSource."
+    },
+    {
+     "name": "getDragDropText",
+     "sig": "()",
+     "type": "function",
+     "desc": "Called to get grid's drag proxy text, by default returns this.ddText."
+    },
+    {
+     "name": "getGridEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's underlying element."
+    },
+    {
+     "name": "getSelectionModel",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's SelectionModel."
+    },
+    {
+     "name": "getView",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's GridView object."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "reconfigure",
+     "sig": "(Roo.data.Store dataSource, Roo.grid.ColumnModel The)",
+     "type": "function",
+     "desc": "Reconfigures the grid to use a different Store and Column Model.\nThe View will be bound to the new objects and refreshed."
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "()",
+     "type": "function",
+     "desc": "Called once after all setup has been completed and the grid is ready to be rendered."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.grid.GridEditor": {
+   "props": [
+    {
+     "name": "field",
+     "type": "Roo.form.Field",
+     "desc": "Field to wrap (or xtyped)",
+     "memberOf": ""
+    },
+    {
+     "name": "autosize",
+     "type": "Boolean/String",
+     "desc": "True for the editor to automatically adopt the size of the underlying field, \"width\" to adopt the width only,\nor \"height\" to adopt the height only (defaults to false)",
+     "memberOf": "Roo.Editor"
+    },
+    {
+     "name": "revertInvalid",
+     "type": "Boolean",
+     "desc": "True to automatically revert the field value and cancel the edit when the user completes an edit and the field\nvalidation fails (defaults to true)",
+     "memberOf": "Roo.Editor"
+    },
+    {
+     "name": "ignoreNoChange",
+     "type": "Boolean",
+     "desc": "True to skip the the edit completion process (no save, no events fired) if the user completes an edit and\nthe value has not changed (defaults to false).  Applies only to string values - edits for other data types\nwill never be ignored.",
+     "memberOf": "Roo.Editor"
+    },
+    {
+     "name": "hideEl",
+     "type": "Boolean",
+     "desc": "False to keep the bound element visible while the editor is displayed (defaults to true)",
+     "memberOf": "Roo.Editor"
+    },
+    {
+     "name": "value",
+     "type": "Mixed",
+     "desc": "The data value of the underlying field (defaults to \"\")",
+     "memberOf": "Roo.Editor"
+    },
+    {
+     "name": "alignment",
+     "type": "String",
+     "desc": "The position to align to (see {@link Roo.Element#alignTo} for more details, defaults to \"c-c?\").",
+     "memberOf": "Roo.Editor"
+    },
+    {
+     "name": "shadow",
+     "type": "Boolean/String",
+     "desc": "\"sides\" for sides/bottom only, \"frame\" for 4-way shadow, and \"drop\"\nfor bottom-right shadow (defaults to \"frame\")",
+     "memberOf": "Roo.Editor"
+    },
+    {
+     "name": "constrain",
+     "type": "Boolean",
+     "desc": "True to constrain the editor to the viewport",
+     "memberOf": "Roo.Editor"
+    },
+    {
+     "name": "completeOnEnter",
+     "type": "Boolean",
+     "desc": "True to complete the edit when the enter key is pressed (defaults to false)",
+     "memberOf": "Roo.Editor"
+    },
+    {
+     "name": "cancelOnEsc",
+     "type": "Boolean",
+     "desc": "True to cancel the edit when the escape key is pressed (defaults to false)",
+     "memberOf": "Roo.Editor"
+    },
+    {
+     "name": "updateEl",
+     "type": "Boolean",
+     "desc": "True to update the innerHTML of the bound element when the update completes (defaults to false)",
+     "memberOf": "Roo.Editor"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "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": "beforecomplete",
+     "sig": "function (_self, value, startValue)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after a change has been made to the field, but before the change is reflected in the underlying\nfield.  Saving the change to the field can be canceled by returning false from the handler of this event.\nNote that if the value has not changed and ignoreNoChange = true, the editing will still end but this\nevent will not fire since no edit actually occurred."
+    },
+    {
+     "name": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+    },
+    {
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
+    },
+    {
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
+    {
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
+    {
+     "name": "beforestartedit",
+     "sig": "function (_self, boundEl, value)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when editing is initiated, but before the value changes.  Editing can be canceled by returning\nfalse from the handler of this event."
+    },
+    {
+     "name": "complete",
+     "sig": "function (_self, value, startValue)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after editing is complete and any changed value has been written to the underlying field."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    },
+    {
+     "name": "specialkey",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
+    },
+    {
+     "name": "startedit",
+     "sig": "function (boundEl, value)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this editor is displayed"
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "cancelEdit",
+     "sig": "(Boolean remainVisible)",
+     "type": "function",
+     "desc": "Cancels the editing process and hides the editor without persisting any changes.  The field value will be\nreverted to the original starting value."
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "completeEdit",
+     "sig": "(Boolean remainVisible)",
+     "type": "function",
+     "desc": "Ends the editing process, persists the changed value to the underlying field, and hides the editor."
+    },
+    {
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
+    },
+    {
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
+    },
+    {
+     "name": "getValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Gets the data value of the editor"
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide this component."
+    },
+    {
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "realign",
+     "sig": "()",
+     "type": "function",
+     "desc": "Realigns the editor to the bound field based on the current alignment config value."
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
+    },
+    {
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
+    {
+     "name": "setSize",
+     "sig": "(Number width, Number height)",
+     "type": "function",
+     "desc": "Sets the height and width of this editor."
+    },
+    {
+     "name": "setValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets the data value of the editor"
+    },
+    {
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show this component."
+    },
+    {
+     "name": "startEdit",
+     "sig": "(String/HTMLElement/Element el, String value)",
+     "type": "function",
+     "desc": "Starts the editing process and shows the editor."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.grid.GridView": {
+   "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": [],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "autoSizeColumn",
+     "sig": "(Number colIndex, Boolean forceMinSize)",
+     "type": "function",
+     "desc": "Autofit a column to its content."
+    },
+    {
+     "name": "autoSizeColumns",
+     "sig": "()",
+     "type": "function",
+     "desc": "Autofits all columns to their content and then expands to fit any extra space in the grid"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "ensureVisible",
+     "sig": "(Number row, Number col, Boolean hscroll)",
+     "type": "function",
+     "desc": "Scrolls the specified cell into view"
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "fitColumns",
+     "sig": "(Boolean reserveScrollSpace)",
+     "type": "function",
+     "desc": "Autofits all columns to the grid's width proportionate with their current size"
+    },
+    {
+     "name": "focusCell",
+     "sig": "(Number row, Number col, Boolean hscroll)",
+     "type": "function",
+     "desc": "Focuses the specified cell."
+    },
+    {
+     "name": "focusRow",
+     "sig": "(Number row)",
+     "type": "function",
+     "desc": "Focuses the specified row."
+    },
+    {
+     "name": "getCell",
+     "sig": "(Integer rowIndex, Integer colIndex)",
+     "type": "function",
+     "desc": "Gets the 'td' of the cell"
+    },
+    {
+     "name": "getFooterPanel",
+     "sig": "(Boolean doShow)",
+     "type": "function",
+     "desc": "Gets a panel in the footer of the grid that can be used for toolbars etc.\nAfter modifying the contents of this panel a call to grid.autoSize() may be\nrequired to register any changes in size."
+    },
+    {
+     "name": "getHeaderPanel",
+     "sig": "(Boolean doShow)",
+     "type": "function",
+     "desc": "Gets a panel in the header of the grid that can be used for toolbars etc.\nAfter modifying the contents of this panel a call to grid.autoSize() may be\nrequired to register any changes in size."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "refresh",
+     "sig": "(Boolean headersToo)",
+     "type": "function",
+     "desc": "Refreshes the grid"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "scrollToTop",
+     "sig": "()",
+     "type": "function",
+     "desc": "Scrolls the grid to the top"
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.grid.PropertyGrid": {
+   "props": [
+    {
+     "name": "customEditors",
+     "type": "Object",
+     "desc": "map of colnames=> custom editors.\nthe custom editor can be one of the standard ones (date|string|number|int|boolean), or a\ngrid editor eg. Roo.grid.GridEditor(new Roo.form.TextArea({selectOnFocus:true})),\nfalse disables editing of the field.",
+     "memberOf": ""
+    },
+    {
+     "name": "propertyNames",
+     "type": "Object",
+     "desc": "map of property Names to their displayed value",
+     "memberOf": ""
+    },
+    {
+     "name": "clicksToEdit",
+     "type": "Number",
+     "desc": "The number of clicks on a cell required to display the cell's editor (defaults to 2)",
+     "memberOf": "Roo.grid.EditorGrid"
+    },
+    {
+     "name": "ddGroup",
+     "type": "String",
+     "desc": "- drag drop group.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "enableDrag",
+     "type": "Boolean",
+     "desc": "True to enable drag of rows. Default is false. (double check if this is needed?)",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoWidth",
+     "type": "Boolean",
+     "desc": "True to set the grid's width to the default total width of the grid's columns instead\nof a fixed width. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "maxHeight",
+     "type": "Number",
+     "desc": "Sets the maximum height of the grid - ignored if autoHeight is not on.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "minColumnWidth",
+     "type": "Number",
+     "desc": "The minimum width a column can be resized to. Default is 25.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoSizeColumns",
+     "type": "Boolean",
+     "desc": "True to automatically resize the columns to fit their content\n<b>on initial render.</b> It is more efficient to explicitly size the columns\nthrough the ColumnModel's {@link Roo.grid.ColumnModel#width} config option.  Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoSizeHeaders",
+     "type": "Boolean",
+     "desc": "True to measure headers with column data when auto sizing columns. Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "monitorWindowResize",
+     "type": "Boolean",
+     "desc": "True to autoSize the grid when the window resizes. Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "maxRowsToMeasure",
+     "type": "Boolean",
+     "desc": "If autoSizeColumns is on, maxRowsToMeasure can be used to limit the number of\nrows measured to get a columns size. Default is 0 (all rows).",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "trackMouseOver",
+     "type": "Boolean",
+     "desc": "True to highlight rows when the mouse is over. Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "enableDragDrop",
+     "type": "Boolean",
+     "desc": "True to enable drag and drop of rows. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "enableColumnMove",
+     "type": "Boolean",
+     "desc": "True to enable drag and drop reorder of columns. Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "enableColumnHide",
+     "type": "Boolean",
+     "desc": "True to enable hiding of columns with the header context menu. Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "enableRowHeightSync",
+     "type": "Boolean",
+     "desc": "True to manually sync row heights across locked and not locked rows. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "stripeRows",
+     "type": "Boolean",
+     "desc": "True to stripe the rows.  Default is true.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoHeight",
+     "type": "Boolean",
+     "desc": "True to fit the height of the grid container to the height of the data. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoExpandColumn",
+     "type": "String",
+     "desc": "The id (or dataIndex) of a column in this grid that should expand to fill unused space. This id can not be 0. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoExpandMin",
+     "type": "Number",
+     "desc": "The minimum width the autoExpandColumn can have (if enabled).\nDefault is 50.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "autoExpandMax",
+     "type": "Number",
+     "desc": "The maximum width the autoExpandColumn can have (if enabled). Default is 1000.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "view",
+     "type": "Object",
+     "desc": "The {@link Roo.grid.GridView} used by the grid. This can be set before a call to render().",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "loadMask",
+     "type": "Object",
+     "desc": "An {@link Roo.LoadMask} config or true to mask the grid while loading. Default is false.",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "name": "dropTarget",
+     "type": "Roo.dd.DropTarget",
+     "desc": "An {@link Roo.dd.DropTarget} config",
+     "memberOf": "Roo.grid.Grid"
+    },
+    {
+     "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": "afteredit",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after a cell is edited. <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value being set</li>\n<li>originalValue - The original value for the field, before the edit.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n</ul>"
+    },
+    {
+     "name": "beforeedit",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before cell editing is triggered. The edit event object has the following properties <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value for the field being edited.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n<li>cancel - Set this to true to cancel the edit or return false from your handler.</li>\n</ul>"
+    },
+    {
+     "name": "beforepropertychange",
+     "sig": "function (grid, id, newval, oldval)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before a property changes (return false to stop?)"
+    },
+    {
+     "name": "bodyscroll",
+     "sig": "function (scrollLeft, scrollTop)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the body element is scrolled"
+    },
+    {
+     "name": "cellclick",
+     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is clicked"
+    },
+    {
+     "name": "cellcontextmenu",
+     "sig": "function (_self, rowIndex, cellIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is right clicked"
+    },
+    {
+     "name": "celldblclick",
+     "sig": "function (_self, rowIndex, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a cell is double clicked"
+    },
+    {
+     "name": "click",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw click event for the entire grid."
+    },
+    {
+     "name": "columnmove",
+     "sig": "function (oldIndex, newIndex)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the user moves a column"
+    },
+    {
+     "name": "columnresize",
+     "sig": "function (columnIndex, newSize)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the user resizes a column"
+    },
+    {
+     "name": "contextmenu",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw contextmenu event for the entire grid."
+    },
+    {
+     "name": "dblclick",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw dblclick event for the entire grid."
+    },
+    {
+     "name": "dragdrop",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when dragged row(s) are dropped on a valid DD target"
+    },
+    {
+     "name": "dragenter\n Fires when the dragged row(s) first cross another DD target while being dragged",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": ""
+    },
+    {
+     "name": "dragout",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the dragged row(s) leave another DD target while being dragged"
+    },
+    {
+     "name": "dragover",
+     "sig": "function (_self, dd, targetId, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires while row(s) are being dragged. \"targetId\" is the id of the Yahoo.util.DD object the selected rows are being dragged over."
+    },
+    {
+     "name": "enddrag",
+     "sig": "function (_self, dd, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a drag operation is complete"
+    },
+    {
+     "name": "headerclick",
+     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a header is clicked"
+    },
+    {
+     "name": "headercontextmenu",
+     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a header is right clicked"
+    },
+    {
+     "name": "headerdblclick",
+     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a header cell is double clicked"
+    },
+    {
+     "name": "keydown",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw keydown event for the entire grid."
+    },
+    {
+     "name": "keypress",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw keypress event for the entire grid."
+    },
+    {
+     "name": "mousedown",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mousedown event for the entire grid."
+    },
+    {
+     "name": "mouseout",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mouseout event for the entire grid."
+    },
+    {
+     "name": "mouseover",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mouseover event for the entire grid."
+    },
+    {
+     "name": "mouseup",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw mouseup event for the entire grid."
+    },
+    {
+     "name": "propertychange",
+     "sig": "function (grid, id, newval, oldval)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after a property changes"
+    },
+    {
+     "name": "render",
+     "sig": "function (grid)\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 a row is clicked"
+    },
+    {
+     "name": "rowcontextmenu",
+     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is right clicked"
+    },
+    {
+     "name": "rowdblclick",
+     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is double clicked"
+    },
+    {
+     "name": "startdrag",
+     "sig": "function (_self, dd, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when row(s) start being dragged"
+    },
+    {
+     "name": "validateedit",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after a cell is edited, but before the value is set in the record. \nYou can use this to modify the value being set in the field, Return false\nto cancel the change. The edit event object has the following properties <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>editor - This editor</li>\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value being set</li>\n<li>originalValue - The original value for the field, before the edit.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n<li>cancel - Set this to true to cancel the edit or return false from your handler.</li>\n</ul>"
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "autoSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Causes the grid to manually recalculate its dimensions. Generally this is done automatically,\nbut if manual update is required this method will initiate it."
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
+     "sig": "(Boolean removeEl)",
+     "type": "function",
+     "desc": "Destroy this grid."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "getColumnModel",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's ColumnModel."
+    },
+    {
+     "name": "getDataSource",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's DataSource."
+    },
+    {
+     "name": "getDragDropText",
+     "sig": "()",
+     "type": "function",
+     "desc": "Called to get grid's drag proxy text, by default returns this.ddText."
+    },
+    {
+     "name": "getGridEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's underlying element."
+    },
+    {
+     "name": "getSelectionModel",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's SelectionModel."
+    },
+    {
+     "name": "getSource",
+     "sig": "()",
+     "type": "function",
+     "desc": "Gets all the data from the grid."
+    },
+    {
+     "name": "getView",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's GridView object."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "reconfigure",
+     "sig": "(Roo.data.Store dataSource, Roo.grid.ColumnModel The)",
+     "type": "function",
+     "desc": "Reconfigures the grid to use a different Store and Column Model.\nThe View will be bound to the new objects and refreshed."
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "()",
+     "type": "function",
+     "desc": "Called once after all setup has been completed and the grid is ready to be rendered."
+    },
+    {
+     "name": "setSource",
+     "sig": "(Object data)",
+     "type": "function",
+     "desc": "Sets the data for the Grid\naccepts a Key => Value object of all the elements avaiable."
+    },
+    {
+     "name": "startEditing",
+     "sig": "(Number rowIndex, Number colIndex)",
+     "type": "function",
+     "desc": "Starts editing the specified for the specified row/column"
+    },
+    {
+     "name": "stopEditing",
+     "sig": "()",
+     "type": "function",
+     "desc": "Stops any active editing"
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.grid.RowSelectionModel": {
+   "props": [
+    {
+     "name": "singleSelect",
+     "type": "Boolean",
+     "desc": "True to allow selection of only one row at a time (defaults to false)",
+     "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": "afterselectionchange",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the selection changes (eg. by key press or clicking)"
+    },
+    {
+     "name": "beforerowselect",
+     "sig": "function (_self, rowIndex, keepExisting)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is selected being selected, return false to cancel."
+    },
+    {
+     "name": "rowdeselect",
+     "sig": "function (_self, rowIndex)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is deselected."
+    },
+    {
+     "name": "rowselect",
+     "sig": "function (_self, rowIndex, r)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is selected."
+    },
+    {
+     "name": "selectionchange",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the selection changes"
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "clearSelections",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears all selections."
+    },
+    {
+     "name": "deselectRange",
+     "sig": "(Number startRow, Number endRow)",
+     "type": "function",
+     "desc": "Deselects a range of rows. All rows in between startRow and endRow are also deselected."
+    },
+    {
+     "name": "deselectRow",
+     "sig": "(Number row)",
+     "type": "function",
+     "desc": "Deselects a row."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "getCount",
+     "sig": "()",
+     "type": "function",
+     "desc": "Gets the number of selected rows."
+    },
+    {
+     "name": "getSelected",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the first selected record."
+    },
+    {
+     "name": "getSelections",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the selected records"
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hasSelection",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns True if there is a selection."
+    },
+    {
+     "name": "isIdSelected",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Returns True if the specified record id is selected."
+    },
+    {
+     "name": "isLocked",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the selections are locked."
+    },
+    {
+     "name": "isSelected",
+     "sig": "(Number/Record record)",
+     "type": "function",
+     "desc": "Returns True if the specified row is selected."
+    },
+    {
+     "name": "lock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Locks the selections."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "selectAll",
+     "sig": "()",
+     "type": "function",
+     "desc": "Selects all rows."
+    },
+    {
+     "name": "selectFirstRow",
+     "sig": "()",
+     "type": "function",
+     "desc": "Selects the first row in the grid."
+    },
+    {
+     "name": "selectLastRow",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Select the last row."
+    },
+    {
+     "name": "selectNext",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects the row immediately following the last selected row."
+    },
+    {
+     "name": "selectPrevious",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects the row that precedes the last selected row."
+    },
+    {
+     "name": "selectRange",
+     "sig": "(Number startRow, Number endRow, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects a range of rows. All rows in between startRow and endRow are also selected."
+    },
+    {
+     "name": "selectRecords",
+     "sig": "(Array records, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Select records."
+    },
+    {
+     "name": "selectRow",
+     "sig": "(Number row, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects a row."
+    },
+    {
+     "name": "selectRows",
+     "sig": "(Array rows, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects multiple rows."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unlock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Unlocks the selections."
+    }
+   ]
+  },
+  "Roo.lib": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.lib.Ajax": {
+   "props": [],
+   "events": [],
+   "methods": [
+    {
+     "name": "request",
+     "sig": "()",
+     "type": "function",
+     "desc": ""
+    }
+   ]
+  },
+  "Roo.lib.Dom": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.mailer": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.mailer.Block": {
+   "props": [
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "class of the element",
+     "memberOf": ""
+    },
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "content of header (not used for columns)",
+     "memberOf": ""
+    },
+    {
+     "name": "blocktype",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "header",
+      "preheader",
+      "footer",
+      "body",
+      "row"
+     ]
+    },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "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": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+    },
+    {
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
+    },
+    {
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
+    {
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
+    {
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getChildContainer",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to add children to"
+    },
+    {
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
+    },
+    {
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide a component - adds 'hidden' class"
+    },
+    {
+     "name": "initEvents",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialize Events for the element"
+    },
+    {
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
+    },
+    {
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
+    {
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show a component - removes 'hidden' class"
+    },
+    {
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.mailer.Body": {
+   "props": [
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "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": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+    },
+    {
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
+    },
+    {
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
+    {
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
+    {
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getChildContainer",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to add children to"
+    },
+    {
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
+    },
+    {
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide a component - adds 'hidden' class"
+    },
+    {
+     "name": "initEvents",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialize Events for the element"
+    },
+    {
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
+    },
+    {
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
+    {
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show a component - removes 'hidden' class"
+    },
+    {
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.mailer.BodyContainer": {
+   "props": [
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "class of the element",
+     "memberOf": ""
+    },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "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": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+    },
+    {
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
+    },
+    {
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
+    {
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
+    {
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
     },
     {
-     "name": "startdrag",
-     "sig": "function (_self, dd, e)\n{\n\n}",
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when row(s) start being dragged"
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "validateedit",
-     "sig": "function (e)\n{\n\n}",
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after a cell is edited, but before the value is set in the record. \nYou can use this to modify the value being set in the field, Return false\nto cancel the change. The edit event object has the following properties <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>editor - This editor</li>\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value being set</li>\n<li>originalValue - The original value for the field, before the edit.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n<li>cancel - Set this to true to cancel the edit or return false from your handler.</li>\n</ul>"
+     "desc": "Fires after the component is shown."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Appends an event handler to this component"
     },
-    {
-     "name": "autoSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Causes the grid to manually recalculate its dimensions. Generally this is done automatically,\nbut if manual update is required this method will initiate it."
-    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
     },
     {
      "name": "destroy",
-     "sig": "(Boolean removeEl)",
+     "sig": "()",
      "type": "function",
-     "desc": "Destroy this grid."
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
     },
     {
      "name": "fireEvent",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "getColumnModel",
-     "sig": "()",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
      "type": "function",
-     "desc": "Returns the grid's ColumnModel."
+     "desc": "Try to focus this component."
     },
     {
-     "name": "getDataSource",
+     "name": "getChildContainer",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's DataSource."
+     "desc": "Fetch the element to add children to"
     },
     {
-     "name": "getDragDropText",
+     "name": "getEl",
      "sig": "()",
      "type": "function",
-     "desc": "Called to get grid's drag proxy text, by default returns this.ddText."
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "getGridEl",
+     "name": "getId",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's underlying element."
+     "desc": "Returns the id of this component."
     },
     {
-     "name": "getSelectionModel",
-     "sig": "()",
+     "name": "hasListener",
+     "sig": "(String eventName)",
      "type": "function",
-     "desc": "Returns the grid's SelectionModel."
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "getSource",
+     "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Gets all the data from the grid."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
-     "name": "getView",
+     "name": "initEvents",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's GridView object."
+     "desc": "Initialize Events for the element"
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
+     "name": "isVisible",
+     "sig": "()",
      "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "desc": "Returns true if this component is visible."
     },
     {
      "name": "on",
      "type": "function",
      "desc": "Removes all listeners for this object"
     },
-    {
-     "name": "reconfigure",
-     "sig": "(Roo.data.Store dataSource, Roo.grid.ColumnModel The)",
-     "type": "function",
-     "desc": "Reconfigures the grid to use a different Store and Column Model.\nThe View will be bound to the new objects and refreshed."
-    },
     {
      "name": "releaseCapture",
      "sig": "(Observable o)",
     },
     {
      "name": "render",
-     "sig": "()",
+     "sig": "(String/HTMLElement/Element container)",
      "type": "function",
-     "desc": "Called once after all setup has been completed and the grid is ready to be rendered."
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "setSource",
-     "sig": "(Object data)",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "type": "function",
-     "desc": "Sets the data for the Grid\naccepts a Key => Value object of all the elements avaiable."
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "startEditing",
-     "sig": "(Number rowIndex, Number colIndex)",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Starts editing the specified for the specified row/column"
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "stopEditing",
+     "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Stops any active editing"
+     "desc": "Show a component - removes 'hidden' class"
+    },
+    {
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
     },
     {
      "name": "un",
     }
    ]
   },
-  "Roo.grid.RowSelectionModel": {
+  "Roo.mailer.Column": {
    "props": [
     {
-     "name": "singleSelect",
-     "type": "Boolean",
-     "desc": "True to allow selection of only one row at a time (defaults to false)",
+     "name": "cls",
+     "type": "String",
+     "desc": "class of the element",
+     "memberOf": ""
+    },
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "content of body",
+     "memberOf": ""
+    },
+    {
+     "name": "src",
+     "type": "String",
+     "desc": "image url",
+     "memberOf": ""
+    },
+    {
+     "name": "column",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "left",
+      "right"
+     ]
+    },
+    {
+     "name": "",
+     "type": "",
+     "desc": "{String width (100%|200|340|260)",
      "memberOf": ""
     },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
     {
      "name": "listeners",
      "type": "Object",
    ],
    "events": [
     {
-     "name": "afterselectionchange",
+     "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the selection changes (eg. by key press or clicking)"
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "beforerowselect",
-     "sig": "function (_self, rowIndex, keepExisting)\n{\n\n}",
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is selected being selected, return false to cancel."
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "rowdeselect",
-     "sig": "function (_self, rowIndex)\n{\n\n}",
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is deselected."
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "rowselect",
-     "sig": "function (_self, rowIndex, r)\n{\n\n}",
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is selected."
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "selectionchange",
+     "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the selection changes"
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
     }
    ],
    "methods": [
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "clearSelections",
+     "name": "destroy",
      "sig": "()",
      "type": "function",
-     "desc": "Clears all selections."
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
     },
     {
-     "name": "deselectRange",
-     "sig": "(Number startRow, Number endRow)",
+     "name": "disable",
+     "sig": "()",
      "type": "function",
-     "desc": "Deselects a range of rows. All rows in between startRow and endRow are also deselected."
+     "desc": "Disable this component."
     },
     {
-     "name": "deselectRow",
-     "sig": "(Number row)",
+     "name": "enable",
+     "sig": "()",
      "type": "function",
-     "desc": "Deselects a row."
+     "desc": "Enable this component."
     },
     {
      "name": "fireEvent",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "getCount",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getChildContainer",
      "sig": "()",
      "type": "function",
-     "desc": "Gets the number of selected rows."
+     "desc": "Fetch the element to add children to"
     },
     {
-     "name": "getSelected",
+     "name": "getEl",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the first selected record."
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "getSelections",
+     "name": "getId",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the selected records"
+     "desc": "Returns the id of this component."
     },
     {
      "name": "hasListener",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "hasSelection",
+     "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Returns True if there is a selection."
-    },
-    {
-     "name": "isIdSelected",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Returns True if the specified record id is selected."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
-     "name": "isLocked",
+     "name": "initEvents",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if the selections are locked."
-    },
-    {
-     "name": "isSelected",
-     "sig": "(Number/Record record)",
-     "type": "function",
-     "desc": "Returns True if the specified row is selected."
+     "desc": "Initialize Events for the element"
     },
     {
-     "name": "lock",
+     "name": "isVisible",
      "sig": "()",
      "type": "function",
-     "desc": "Locks the selections."
+     "desc": "Returns true if this component is visible."
     },
     {
      "name": "on",
      "desc": "Removes a listener"
     },
     {
-     "name": "selectAll",
-     "sig": "()",
-     "type": "function",
-     "desc": "Selects all rows."
-    },
-    {
-     "name": "selectFirstRow",
-     "sig": "()",
-     "type": "function",
-     "desc": "Selects the first row in the grid."
-    },
-    {
-     "name": "selectLastRow",
-     "sig": "(Boolean keepExisting)",
-     "type": "function",
-     "desc": "Select the last row."
-    },
-    {
-     "name": "selectNext",
-     "sig": "(Boolean keepExisting)",
-     "type": "function",
-     "desc": "Selects the row immediately following the last selected row."
-    },
-    {
-     "name": "selectPrevious",
-     "sig": "(Boolean keepExisting)",
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
      "type": "function",
-     "desc": "Selects the row that precedes the last selected row."
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "selectRange",
-     "sig": "(Number startRow, Number endRow, Boolean keepExisting)",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "type": "function",
-     "desc": "Selects a range of rows. All rows in between startRow and endRow are also selected."
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "selectRecords",
-     "sig": "(Array records, Boolean keepExisting)",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Select records."
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "selectRow",
-     "sig": "(Number row, Boolean keepExisting)",
+     "name": "show",
+     "sig": "()",
      "type": "function",
-     "desc": "Selects a row."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
-     "name": "selectRows",
-     "sig": "(Array rows, Boolean keepExisting)",
+     "name": "tooltipEl",
+     "sig": "()",
      "type": "function",
-     "desc": "Selects multiple rows."
+     "desc": "Fetch the element to display the tooltip on."
     },
     {
      "name": "un",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "unlock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Unlocks the selections."
     }
    ]
   },
-  "Roo.lib": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.lib.Ajax": {
-   "props": [],
-   "events": [],
-   "methods": [
+  "Roo.mailer.Example": {
+   "props": [
     {
-     "name": "request",
-     "sig": "()",
-     "type": "function",
-     "desc": ""
+     "name": "lang",
+     "type": "String",
+     "desc": "section type.",
+     "memberOf": "",
+     "optvals": [
+      "phpcode",
+      "programlisting"
+     ]
+    },
+    {
+     "name": "code",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
     }
-   ]
-  },
-  "Roo.lib.Dom": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.mailer": {
-   "props": [],
+   ],
    "events": [],
    "methods": []
   },
-  "Roo.mailer.Block": {
+  "Roo.mailer.Para": {
    "props": [
-    {
-     "name": "cls",
-     "type": "String",
-     "desc": "class of the element",
-     "memberOf": ""
-    },
     {
      "name": "html",
      "type": "String",
-     "desc": "content of header (not used for columns)",
+     "desc": "",
      "memberOf": ""
     },
     {
-     "name": "blocktype",
+     "name": "cls",
      "type": "String",
-     "desc": "",
-     "memberOf": "",
-     "optvals": [
-      "header",
-      "preheader",
-      "footer",
-      "body",
-      "row"
-     ]
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "style",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.mailer.BodyContainer": {
+  "Roo.mailer.Param": {
    "props": [
     {
-     "name": "cls",
+     "name": "is_optional",
+     "type": "bool",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "type",
      "type": "String",
-     "desc": "class of the element",
+     "desc": "argument type",
+     "memberOf": ""
+    },
+    {
+     "name": "name",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "desc",
+     "type": "String",
+     "desc": "short description",
+     "memberOf": ""
+    },
+    {
+     "name": "defaultvalue",
+     "type": "String",
+     "desc": "default value",
      "memberOf": ""
     },
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
+    },
     {
      "name": "style",
      "type": "String",
      "desc": "cutomer id",
      "memberOf": "Roo.bootstrap.Component"
     },
-    {
-     "name": "name",
-     "type": "string",
-     "desc": "Specifies name attribute",
-     "memberOf": "Roo.bootstrap.Component"
-    },
     {
      "name": "tooltip",
      "type": "string",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.mailer.Column": {
+  "Roo.mailer.Section": {
    "props": [
     {
-     "name": "cls",
-     "type": "String",
-     "desc": "class of the element",
-     "memberOf": ""
-    },
-    {
-     "name": "html",
-     "type": "String",
-     "desc": "content of body",
-     "memberOf": ""
-    },
-    {
-     "name": "src",
-     "type": "String",
-     "desc": "image url",
-     "memberOf": ""
-    },
-    {
-     "name": "column",
+     "name": "stype",
      "type": "String",
-     "desc": "",
+     "desc": "section type.",
      "memberOf": "",
      "optvals": [
-      "left",
-      "right"
+      "desc",
+      "parameter",
+      "return",
+      "note",
+      "example"
      ]
     },
     {
-     "name": "",
-     "type": "",
-     "desc": "{String width (100%|200|340|260)",
-     "memberOf": ""
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "style",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
+    },
+    {
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.mailer.Synopsis": {
+   "props": [
+    {
+     "name": "returntype",
+     "type": "String",
+     "desc": "return value",
+     "memberOf": ""
+    },
+    {
+     "name": "name",
+     "type": "String",
+     "desc": "title really..",
+     "memberOf": ""
+    },
+    {
+     "name": "stype",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "function",
+      "constant"
+     ]
+    },
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "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": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+    },
+    {
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
+    },
+    {
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
+    {
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
+    {
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getChildContainer",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to add children to"
+    },
+    {
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
+    },
+    {
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide a component - adds 'hidden' class"
+    },
+    {
+     "name": "initEvents",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialize Events for the element"
+    },
+    {
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
+    },
+    {
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
+    {
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
      "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Hide this component."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
      "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Show this component."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",