docs/default.css
[roojs1] / docs / json / roodata.json
index 37c8127..652d3cd 100644 (file)
     }
    ]
   },
+  "Roo.bootstrap.Brick": {
+   "props": [
+    {
+     "name": "title",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "bgimage",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "href",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "video",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "square",
+     "type": "Boolean",
+     "desc": "",
+     "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": "click",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "When a Brick is click"
+    },
+    {
+     "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.bootstrap.Button": {
    "props": [
     {
      "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",
      "desc": "only for touch device",
      "memberOf": ""
     },
+    {
+     "name": "triggerText",
+     "type": "String",
+     "desc": "multiple combobox trigger button text default 'Select'",
+     "memberOf": ""
+    },
     {
      "name": "lazyRender",
      "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",
      "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": "panel",
      "type": "String",
-     "desc": "render as a panel.",
+     "desc": "render as panel  - type - primary/success.....",
      "memberOf": "",
      "optvals": [
       "primary",
      "name": "fa",
      "type": "String",
      "desc": "font awesome icon",
-     "memberOf": "",
-     "optvals": [
-      "ban",
-      "check",
-      "..."
-     ]
+     "memberOf": ""
     },
     {
      "name": "icon",
      "desc": "contet on the right of header",
      "memberOf": ""
     },
+    {
+     "name": "clickable",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "cls",
      "type": "String",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "click",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "When a element is chick"
+    },
     {
      "name": "collapse",
      "sig": "function (_self)\n{\n\n}",
      "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",
      "type": "function",
      "desc": "Fires before the component is rendered. Return false to stop the render."
     },
+    {
+     "name": "beforeselect",
+     "sig": "function (_self, date)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when before select a date."
+    },
     {
      "name": "beforeshow",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.DocumentManager": {
+  "Roo.bootstrap.DateSplitField": {
    "props": [
     {
-     "name": "paramName",
-     "type": "String",
-     "desc": "default 'imageUpload'",
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
      "memberOf": ""
     },
     {
-     "name": "method",
-     "type": "String",
-     "desc": "default POST",
+     "name": "labelWidth",
+     "type": "Number",
+     "desc": "set the width of label (0-12)",
      "memberOf": ""
     },
     {
-     "name": "url",
+     "name": "labelAlign",
      "type": "String",
-     "desc": "action url",
-     "memberOf": ""
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "top",
+      "left"
+     ]
     },
     {
-     "name": "boxes",
-     "type": "Number",
-     "desc": "number of boxes, 0 is no limit.. default 0",
-     "memberOf": ""
+     "name": "dayAllowBlank",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "multiple",
+     "name": "monthAllowBlank",
      "type": "Boolean",
-     "desc": "multiple upload default true",
+     "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": "thumbSize",
-     "type": "Number",
-     "desc": "default 300",
+     "name": "monthPlaceholder",
+     "type": "string",
+     "desc": "",
      "memberOf": ""
     },
     {
-     "name": "fieldLabel",
-     "type": "String",
+     "name": "yearPlaceholder",
+     "type": "string",
      "desc": "",
      "memberOf": ""
     },
     {
-     "name": "labelWidth",
-     "type": "Number",
-     "desc": "default 4",
+     "name": "dayFormat",
+     "type": "string",
+     "desc": "default 'd'",
      "memberOf": ""
     },
     {
-     "name": "labelAlign",
-     "type": "String",
-     "desc": "default left",
-     "memberOf": "",
-     "optvals": [
-      "left",
-      "top"
-     ]
+     "name": "monthFormat",
+     "type": "string",
+     "desc": "default 'm'",
+     "memberOf": ""
     },
     {
-     "name": "editable",
-     "type": "Boolean",
-     "desc": "allow edit when upload a image default true",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "yearFormat",
+     "type": "string",
+     "desc": "default 'Y'",
+     "memberOf": ""
     },
     {
      "name": "cls",
      "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}",
      "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "click",
-     "sig": "function (_self, file)\n{\n\n}",
+     "name": "days",
+     "sig": "function (_self, days)\n{\n\n}",
      "type": "function",
-     "desc": "Fire after click the image"
+     "desc": "getting the data of days"
     },
     {
      "name": "destroy",
      "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}",
      "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}",
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
      "type": "function",
-     "desc": "Fire before process file"
+     "desc": "Fires after the field has been marked as invalid."
     },
     {
-     "name": "refresh",
+     "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fire after refresh the file"
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "remove",
-     "sig": "function (_self, file)\n{\n\n}",
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fire when remove the file"
+     "desc": "Fires after the component is shown."
     },
     {
-     "name": "render",
+     "name": "valid",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is rendered."
+     "desc": "Fires after the field has been validated with no errors."
     },
     {
-     "name": "show",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "years",
+     "sig": "function (_self, years)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is shown."
+     "desc": "getting the data of years"
     }
    ],
    "methods": [
      "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)",
     }
    ]
   },
-  "Roo.bootstrap.DocumentViewer": {
+  "Roo.bootstrap.DocumentManager": {
    "props": [
+    {
+     "name": "paramName",
+     "type": "String",
+     "desc": "default 'imageUpload'",
+     "memberOf": ""
+    },
+    {
+     "name": "method",
+     "type": "String",
+     "desc": "default POST",
+     "memberOf": ""
+    },
+    {
+     "name": "url",
+     "type": "String",
+     "desc": "action url",
+     "memberOf": ""
+    },
+    {
+     "name": "boxes",
+     "type": "Number",
+     "desc": "number of boxes, 0 is no limit.. default 0",
+     "memberOf": ""
+    },
+    {
+     "name": "multiple",
+     "type": "Boolean",
+     "desc": "multiple upload default true",
+     "memberOf": ""
+    },
+    {
+     "name": "thumbSize",
+     "type": "Number",
+     "desc": "default 300",
+     "memberOf": ""
+    },
+    {
+     "name": "fieldLabel",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "labelWidth",
+     "type": "Number",
+     "desc": "default 4",
+     "memberOf": ""
+    },
+    {
+     "name": "labelAlign",
+     "type": "String",
+     "desc": "default left",
+     "memberOf": "",
+     "optvals": [
+      "left",
+      "top"
+     ]
+    },
+    {
+     "name": "editable",
+     "type": "Boolean",
+     "desc": "allow edit when upload a image default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "cls",
      "type": "String",
      "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}",
     },
     {
      "name": "click",
-     "sig": "function (_self)\n{\n\n}",
+     "sig": "function (_self, file)\n{\n\n}",
      "type": "function",
-     "desc": "Fire after click"
+     "desc": "Fire after click the image"
     },
     {
      "name": "destroy",
      "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}",
      "name": "initial",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fire after initEvent"
+     "desc": "Fire when initial the DocumentManager"
     },
     {
-     "name": "render",
+     "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": "Fires after the component is rendered."
+     "desc": "Fire after refresh the file"
     },
     {
-     "name": "show",
+     "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}",
      "type": "function",
-     "desc": "Fires after the component is shown."
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "trash",
+     "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fire after trash button"
+     "desc": "Fires after the component is shown."
     }
    ],
    "methods": [
     }
    ]
   },
-  "Roo.bootstrap.Element": {
+  "Roo.bootstrap.DocumentViewer": {
    "props": [
-    {
-     "name": "html",
-     "type": "String",
-     "desc": "contents of the element",
-     "memberOf": ""
-    },
-    {
-     "name": "tag",
-     "type": "String",
-     "desc": "tag of the element",
-     "memberOf": ""
-    },
     {
      "name": "cls",
      "type": "String",
-     "desc": "class of the element",
-     "memberOf": ""
-    },
-    {
-     "name": "preventDefault",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "clickable",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "style",
     },
     {
      "name": "click",
-     "sig": "function (_self, e)\n{\n\n}",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "When a element is chick"
+     "desc": "Fire after click"
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "initial",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire after initEvent"
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "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 after trash button"
     }
    ],
    "methods": [
     }
    ]
   },
-  "Roo.bootstrap.Form": {
+  "Roo.bootstrap.Element": {
    "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",
      "memberOf": ""
     },
     {
-     "name": "align",
+     "name": "cls",
      "type": "String",
-     "desc": "left  | right - for navbars",
+     "desc": "class of the element",
      "memberOf": ""
     },
     {
-     "name": "loadMask",
+     "name": "preventDefault",
      "type": "Boolean",
-     "desc": "load mask when submit (default true)",
-     "memberOf": ""
-    },
-    {
-     "name": "url",
-     "type": "String",
-     "desc": "The URL to use for form actions if one isn't supplied in the action options.",
-     "memberOf": ""
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "fileUpload",
+     "name": "clickable",
      "type": "Boolean",
-     "desc": "Set to true if this form is a file upload.",
-     "memberOf": ""
-    },
-    {
-     "name": "baseParams",
-     "type": "Object",
-     "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": ""
-    },
-    {
-     "name": "cls",
-     "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
      "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}",
      "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "clientvalidation",
-     "sig": "function (_self, valid)\n{\n\n}",
+     "name": "click",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
-     "desc": "If the monitorValid config option is true, this event fires repetitively to notify of valid state"
+     "desc": "When a element is chick"
     },
     {
      "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)",
      "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)",
     }
    ]
   },
-  "Roo.bootstrap.Graph": {
+  "Roo.bootstrap.FieldLabel": {
    "props": [
     {
-     "name": "graphtype",
+     "name": "html",
      "type": "String",
-     "desc": "bar | vbar | pie",
+     "desc": "contents of the element",
      "memberOf": ""
     },
     {
-     "name": "g_x",
-     "type": "number",
-     "desc": "coodinator | centre x (pie)",
+     "name": "tag",
+     "type": "String",
+     "desc": "tag of the element default label",
      "memberOf": ""
     },
     {
-     "name": "g_y",
-     "type": "number",
-     "desc": "coodinator | centre y (pie)",
+     "name": "cls",
+     "type": "String",
+     "desc": "class of the element",
      "memberOf": ""
     },
     {
-     "name": "g_r",
-     "type": "number",
-     "desc": "radius (pie)",
+     "name": "target",
+     "type": "String",
+     "desc": "label target",
      "memberOf": ""
     },
     {
-     "name": "g_height",
-     "type": "number",
-     "desc": "height of the chart (respected by all elements in the set)",
-     "memberOf": ""
+     "name": "allowBlank",
+     "type": "Boolean",
+     "desc": "target allowBlank default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "g_width",
-     "type": "number",
-     "desc": "width of the chart (respected by all elements in the set)",
+     "name": "invalidClass",
+     "type": "String",
+     "desc": "default \"text-danger fa fa-lg fa-exclamation-triangle\"",
      "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     }",
+     "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",
      "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}",
      "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": "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 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.FieldLabel the)",
+     "type": "function",
+     "desc": "register a FieldLabel Group"
+    },
     {
      "name": "releaseCapture",
      "sig": "(Observable o)",
     }
    ]
   },
-  "Roo.bootstrap.Header": {
+  "Roo.bootstrap.Form": {
    "props": [
     {
-     "name": "html",
+     "name": "method",
      "type": "String",
-     "desc": "content of header",
+     "desc": "GET | POST (default POST)",
      "memberOf": ""
     },
     {
-     "name": "level",
+     "name": "labelAlign",
+     "type": "String",
+     "desc": "top | left (default top)",
+     "memberOf": ""
+    },
+    {
+     "name": "align",
+     "type": "String",
+     "desc": "left  | right - for navbars",
+     "memberOf": ""
+    },
+    {
+     "name": "loadMask",
+     "type": "Boolean",
+     "desc": "load mask when submit (default true)",
+     "memberOf": ""
+    },
+    {
+     "name": "url",
+     "type": "String",
+     "desc": "The URL to use for form actions if one isn't supplied in the action options.",
+     "memberOf": ""
+    },
+    {
+     "name": "fileUpload",
+     "type": "Boolean",
+     "desc": "Set to true if this form is a file upload.",
+     "memberOf": ""
+    },
+    {
+     "name": "baseParams",
+     "type": "Object",
+     "desc": "Parameters to pass with all requests. e.g. baseParams: {id: '123', foo: 'bar'}.",
+     "memberOf": ""
+    },
+    {
+     "name": "timeout",
      "type": "Number",
-     "desc": "default 1",
-     "memberOf": "",
-     "optvals": [
-      "1",
-      "2",
-      "3",
-      "4",
-      "5",
-      "6"
-     ]
+     "desc": "Timeout for form actions in seconds (default is 30 seconds).",
+     "memberOf": ""
     },
     {
      "name": "cls",
     }
    ],
    "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": "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)",
      "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)",
     }
    ]
   },
-  "Roo.bootstrap.HtmlEditor": {
+  "Roo.bootstrap.Graph": {
    "props": [
     {
-     "name": "toolbars",
-     "type": "Array",
-     "desc": "Array of toolbars. - defaults to just the Standard one",
-     "memberOf": ""
-    },
-    {
-     "name": "resizable",
+     "name": "graphtype",
      "type": "String",
-     "desc": "'s' or 'se' or 'e' - wrapps the element in a\n                       Roo.resizable.",
+     "desc": "bar | vbar | pie",
      "memberOf": ""
     },
     {
-     "name": "height",
-     "type": "Number",
-     "desc": "(in pixels)",
+     "name": "g_x",
+     "type": "number",
+     "desc": "coodinator | centre x (pie)",
      "memberOf": ""
     },
     {
-     "name": "width",
-     "type": "Number",
-     "desc": "(in pixels)",
+     "name": "g_y",
+     "type": "number",
+     "desc": "coodinator | centre y (pie)",
      "memberOf": ""
     },
     {
-     "name": "stylesheets",
-     "type": "Array",
-     "desc": "url of stylesheets. set to [] to disable stylesheets.",
+     "name": "g_r",
+     "type": "number",
+     "desc": "radius (pie)",
      "memberOf": ""
     },
     {
-     "name": "cols",
-     "type": "Number",
-     "desc": "Specifies the visible width of a text area",
-     "memberOf": "Roo.bootstrap.TextArea"
-    },
-    {
-     "name": "rows",
-     "type": "Number",
-     "desc": "Specifies the visible number of lines in a text area",
-     "memberOf": "Roo.bootstrap.TextArea"
-    },
-    {
-     "name": "wrap",
-     "type": "string",
-     "desc": "Specifies how the text in a text area is to be wrapped when submitted in a form",
-     "memberOf": "Roo.bootstrap.TextArea",
-     "optvals": [
-      "soft",
-      "hard"
-     ]
-    },
-    {
-     "name": "resize",
-     "type": "string",
-     "desc": "",
-     "memberOf": "Roo.bootstrap.TextArea",
-     "optvals": [
-      "none",
-      "both",
-      "horizontal",
-      "vertical",
-      "inherit",
-      "initial"
-     ]
-    },
-    {
-     "name": "html",
-     "type": "string",
-     "desc": "text",
-     "memberOf": "Roo.bootstrap.TextArea"
-    },
-    {
-     "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": "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": "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": "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": "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": "g_height",
+     "type": "number",
+     "desc": "height of the chart (respected by all elements in the set)",
+     "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.bootstrap.Input"
+     "name": "g_width",
+     "type": "number",
+     "desc": "width of the chart (respected by all elements in the set)",
+     "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": "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",
      "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": "activate",
+     "name": "beforedestroy",
      "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."
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "autosave",
+     "name": "beforehide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Auto save the htmlEditor value as a file into Events"
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "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": "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",
+     "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is rendered. Return false to stop the render."
      "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": "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 img click event for the img."
+    },
     {
      "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": "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": "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": "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": [
      "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": "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": "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)",
      "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)",
      "type": "function",
      "desc": "Show a component - removes 'hidden' class"
     },
-    {
-     "name": "toggleSourceEdit",
-     "sig": "(Boolean sourceEdit)",
-     "type": "function",
-     "desc": "Toggles the editor between standard and source edit mode."
-    },
     {
      "name": "tooltipEl",
      "sig": "()",
      "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.Img": {
+  "Roo.bootstrap.Header": {
    "props": [
     {
-     "name": "imgResponsive",
-     "type": "Boolean",
-     "desc": "false | true",
-     "memberOf": ""
-    },
-    {
-     "name": "border",
-     "type": "String",
-     "desc": "rounded | circle | thumbnail",
-     "memberOf": ""
-    },
-    {
-     "name": "src",
-     "type": "String",
-     "desc": "image source",
-     "memberOf": ""
-    },
-    {
-     "name": "alt",
-     "type": "String",
-     "desc": "image alternative text",
-     "memberOf": ""
-    },
-    {
-     "name": "href",
+     "name": "html",
      "type": "String",
-     "desc": "a tag href",
+     "desc": "content of header",
      "memberOf": ""
     },
     {
-     "name": "target",
-     "type": "String",
-     "desc": "target for a href.",
+     "name": "level",
+     "type": "Number",
+     "desc": "default 1",
      "memberOf": "",
      "optvals": [
-      "_self",
-      "_blank",
-      "_parent",
-      "_top"
+      "1",
+      "2",
+      "3",
+      "4",
+      "5",
+      "6"
      ]
     },
-    {
-     "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",
      "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}",
     }
    ]
   },
-  "Roo.bootstrap.Input": {
+  "Roo.bootstrap.HtmlEditor": {
    "props": [
     {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "is it disabled",
+     "name": "toolbars",
+     "type": "Array",
+     "desc": "Array of toolbars. - defaults to just the Standard one",
      "memberOf": ""
     },
     {
-     "name": "fieldLabel",
+     "name": "resizable",
      "type": "String",
-     "desc": "- the label associated",
+     "desc": "'s' or 'se' or 'e' - wrapps the element in a\n                       Roo.resizable.",
      "memberOf": ""
     },
     {
-     "name": "inputType",
-     "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
+     "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": "cols",
+     "type": "Number",
+     "desc": "Specifies the visible width of a text area",
+     "memberOf": "Roo.bootstrap.TextArea"
+    },
+    {
+     "name": "rows",
+     "type": "Number",
+     "desc": "Specifies the visible number of lines in a text area",
+     "memberOf": "Roo.bootstrap.TextArea"
+    },
+    {
+     "name": "wrap",
+     "type": "string",
+     "desc": "Specifies how the text in a text area is to be wrapped when submitted in a form",
+     "memberOf": "Roo.bootstrap.TextArea",
+     "optvals": [
+      "soft",
+      "hard"
+     ]
+    },
+    {
+     "name": "resize",
+     "type": "string",
+     "desc": "",
+     "memberOf": "Roo.bootstrap.TextArea",
+     "optvals": [
+      "none",
+      "both",
+      "horizontal",
+      "vertical",
+      "inherit",
+      "initial"
+     ]
+    },
+    {
+     "name": "html",
+     "type": "string",
+     "desc": "text",
+     "memberOf": "Roo.bootstrap.TextArea"
+    },
+    {
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "is it disabled",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "name",
      "type": "String",
      "desc": "name of the input",
-     "memberOf": ""
+     "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": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "before",
      "type": "string",
      "desc": "- input group add on before",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "after",
      "type": "string",
      "desc": "- input group add on after",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "size",
      "type": "string",
      "desc": "- (lg|sm) or leave empty..",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "xs",
      "type": "Number",
      "desc": "colspan out of 12 for mobile-sized screens",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "sm",
      "type": "Number",
      "desc": "colspan out of 12 for tablet-sized screens",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "md",
      "type": "Number",
      "desc": "colspan out of 12 for computer-sized screens",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "lg",
      "type": "Number",
      "desc": "colspan out of 12 for large computer-sized screens",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "value",
      "type": "string",
      "desc": "default value of the input",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "labelWidth",
      "type": "Number",
      "desc": "set the width of label (0-12)",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "labelAlign",
      "type": "String",
      "desc": "",
-     "memberOf": "",
+     "memberOf": "Roo.bootstrap.Input",
      "optvals": [
       "top",
       "left"
      "name": "readOnly",
      "type": "Boolean",
      "desc": "Specifies that the field should be read-only",
-     "memberOf": ""
+     "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": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "align",
      "type": "String",
      "desc": "Default left",
-     "memberOf": "",
+     "memberOf": "Roo.bootstrap.Input",
      "optvals": [
       "left",
       "center",
      "name": "forceFeedback",
      "type": "Boolean",
      "desc": "Default false",
-     "memberOf": "",
+     "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": ""
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": ""
+     "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": ""
-    },
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": ""
-    },
-    {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": ""
+     "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": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "hasFeedback",
      "type": "Boolean",
      "desc": "default true",
-     "memberOf": "",
+     "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": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "validFeedbackIcon",
      "type": "String",
      "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": ""
+     "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": ""
+     "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": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "vtype",
      "type": "String",
      "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "disableKeyFilter",
      "type": "Boolean",
      "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "allowBlank",
      "type": "Boolean",
      "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": ""
+     "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": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "minLength",
      "type": "Number",
      "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "maxLength",
      "type": "Number",
      "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": ""
+     "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": ""
+     "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": ""
+     "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": ""
+     "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": ""
+     "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": ""
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "cls",
     }
    ],
    "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}",
-     "type": "function",
-     "desc": "Fires when this field loses input focus."
-    },
-    {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
+     "name": "beforesync",
+     "sig": "function (_self, html)\n{\n\n}",
      "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
+     "desc": "Fires before the textarea is updated with content from the editor iframe. Return false\nto cancel the sync."
     },
     {
      "name": "childrenrendered",
      "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}",
      "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 key up"
     },
+    {
+     "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": "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": "sync",
+     "sig": "function (_self, html)\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 the textarea is updated with content from the editor iframe."
     },
     {
      "name": "valid",
      "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": "()",
      "name": "inputEl",
      "sig": "()",
      "type": "function",
-     "desc": "return the real input element."
+     "desc": "return the real textarea element."
     },
     {
      "name": "isVisible",
      "type": "function",
      "desc": "Show a component - removes 'hidden' class"
     },
+    {
+     "name": "toggleSourceEdit",
+     "sig": "(Boolean sourceEdit)",
+     "type": "function",
+     "desc": "Toggles the editor between standard and source edit mode."
+    },
     {
      "name": "tooltipEl",
      "sig": "()",
     }
    ]
   },
-  "Roo.bootstrap.LayoutMasonry": {
+  "Roo.bootstrap.Img": {
    "props": [
     {
-     "name": "isFitWidth",
+     "name": "imgResponsive",
      "type": "Boolean",
-     "desc": "- resize the width..",
+     "desc": "false | true",
      "memberOf": ""
     },
     {
-     "name": "isOriginLeft",
-     "type": "Boolean",
-     "desc": "= left align?",
+     "name": "border",
+     "type": "String",
+     "desc": "rounded | circle | thumbnail",
      "memberOf": ""
     },
     {
-     "name": "isOriginTop",
-     "type": "Boolean",
-     "desc": "= top align?",
+     "name": "src",
+     "type": "String",
+     "desc": "image source",
      "memberOf": ""
     },
     {
-     "name": "isLayoutInstant",
-     "type": "Boolean",
-     "desc": "= no animation?",
+     "name": "alt",
+     "type": "String",
+     "desc": "image alternative text",
      "memberOf": ""
     },
     {
-     "name": "isResizingContainer",
-     "type": "Boolean",
-     "desc": "= not sure if this is used..",
+     "name": "href",
+     "type": "String",
+     "desc": "a tag href",
      "memberOf": ""
     },
     {
-     "name": "columnWidth",
-     "type": "Number",
-     "desc": "width of the columns",
+     "name": "target",
+     "type": "String",
+     "desc": "target for a href.",
+     "memberOf": "",
+     "optvals": [
+      "_self",
+      "_blank",
+      "_parent",
+      "_top"
+     ]
+    },
+    {
+     "name": "xsUrl",
+     "type": "String",
+     "desc": "xs image source",
      "memberOf": ""
     },
     {
-     "name": "padHeight",
-     "type": "Number",
-     "desc": "padding below box..",
+     "name": "smUrl",
+     "type": "String",
+     "desc": "sm image source",
      "memberOf": ""
     },
     {
-     "name": "isAutoInitial",
-     "type": "Boolean",
-     "desc": "defalut true",
+     "name": "mdUrl",
+     "type": "String",
+     "desc": "md image source",
+     "memberOf": ""
+    },
+    {
+     "name": "lgUrl",
+     "type": "String",
+     "desc": "lg image source",
      "memberOf": ""
     },
     {
      "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}",
     }
    ]
   },
-  "Roo.bootstrap.Link": {
+  "Roo.bootstrap.Input": {
    "props": [
     {
-     "name": "alt",
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "is it disabled",
+     "memberOf": ""
+    },
+    {
+     "name": "inputType",
      "type": "String",
-     "desc": "image alternative text",
+     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
      "memberOf": ""
     },
     {
-     "name": "href",
+     "name": "name",
      "type": "String",
-     "desc": "a tag href",
+     "desc": "name of the input",
      "memberOf": ""
     },
     {
-     "name": "target",
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": ""
+    },
+    {
+     "name": "placeholder",
+     "type": "string",
+     "desc": "- placeholder to put in text.",
+     "memberOf": ""
+    },
+    {
+     "name": "before",
+     "type": "string",
+     "desc": "- input group add on before",
+     "memberOf": ""
+    },
+    {
+     "name": "after",
+     "type": "string",
+     "desc": "- input group add on after",
+     "memberOf": ""
+    },
+    {
+     "name": "size",
+     "type": "string",
+     "desc": "- (lg|sm) or leave empty..",
+     "memberOf": ""
+    },
+    {
+     "name": "xs",
+     "type": "Number",
+     "desc": "colspan out of 12 for mobile-sized screens",
+     "memberOf": ""
+    },
+    {
+     "name": "sm",
+     "type": "Number",
+     "desc": "colspan out of 12 for tablet-sized screens",
+     "memberOf": ""
+    },
+    {
+     "name": "md",
+     "type": "Number",
+     "desc": "colspan out of 12 for computer-sized screens",
+     "memberOf": ""
+    },
+    {
+     "name": "lg",
+     "type": "Number",
+     "desc": "colspan out of 12 for large computer-sized screens",
+     "memberOf": ""
+    },
+    {
+     "name": "value",
+     "type": "string",
+     "desc": "default value of the input",
+     "memberOf": ""
+    },
+    {
+     "name": "labelWidth",
+     "type": "Number",
+     "desc": "set the width of label (0-12)",
+     "memberOf": ""
+    },
+    {
+     "name": "labelAlign",
      "type": "String",
-     "desc": "target for a href.",
+     "desc": "",
      "memberOf": "",
      "optvals": [
-      "_self",
-      "_blank",
-      "_parent",
-      "_top"
+      "top",
+      "left"
      ]
     },
     {
-     "name": "html",
+     "name": "readOnly",
+     "type": "Boolean",
+     "desc": "Specifies that the field should be read-only",
+     "memberOf": ""
+    },
+    {
+     "name": "autocomplete",
      "type": "String",
-     "desc": "the content of the link.",
+     "desc": "- default is new-password see: https://developers.google.com/web/fundamentals/input/form/label-and-name-inputs?hl=en",
      "memberOf": ""
     },
     {
-     "name": "anchor",
+     "name": "align",
      "type": "String",
-     "desc": "name for the anchor link",
+     "desc": "Default left",
+     "memberOf": "",
+     "optvals": [
+      "left",
+      "center",
+      "right"
+     ]
+    },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "",
+     "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": ""
     },
     {
-     "name": "preventDefault",
+     "name": "validateOnBlur",
      "type": "Boolean",
-     "desc": "default false",
+     "desc": "Whether the field should validate when it loses focus (defaults to true).",
+     "memberOf": ""
+    },
+    {
+     "name": "validationDelay",
+     "type": "Number",
+     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
+     "memberOf": ""
+    },
+    {
+     "name": "focusClass",
+     "type": "String",
+     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
+     "memberOf": ""
+    },
+    {
+     "name": "invalidClass",
+     "type": "String",
+     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
+     "memberOf": ""
+    },
+    {
+     "name": "validClass",
+     "type": "String",
+     "desc": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
+     "memberOf": ""
+    },
+    {
+     "name": "hasFeedback",
+     "type": "Boolean",
+     "desc": "default true",
      "memberOf": "",
      "optvals": [
       "true",
       "false"
      ]
     },
+    {
+     "name": "invalidFeedbackIcon",
+     "type": "String",
+     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
+     "memberOf": ""
+    },
+    {
+     "name": "validFeedbackIcon",
+     "type": "String",
+     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
+     "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": "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": "vtype",
+     "type": "String",
+     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (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": "blankText",
+     "type": "String",
+     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
+     "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": "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 \"\")",
+     "memberOf": ""
+    },
     {
      "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": "childrenrendered",
+     "name": "blur",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the children have been rendered.."
+     "desc": "Fires when this field loses input focus."
     },
     {
-     "name": "click",
-     "sig": "function (e)\n{\n\n}",
+     "name": "change",
+     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
      "type": "function",
-     "desc": "The img click event for the img."
+     "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 when the children have been rendered.."
     },
     {
      "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": "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)",
      "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)",
      "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.LocationPicker": {
+  "Roo.bootstrap.LayoutMasonry": {
    "props": [
     {
-     "name": "latitude",
-     "type": "Number",
-     "desc": "Position when init default 0",
+     "name": "isLayoutInstant",
+     "type": "Boolean",
+     "desc": "= no animation?",
      "memberOf": ""
     },
     {
-     "name": "longitude",
+     "name": "boxWidth",
      "type": "Number",
-     "desc": "Position when init default 0",
+     "desc": "width of the columns",
      "memberOf": ""
     },
     {
-     "name": "zoom",
+     "name": "padWidth",
      "type": "Number",
-     "desc": "default 15",
-     "memberOf": ""
-    },
-    {
-     "name": "mapTypeId",
-     "type": "String",
-     "desc": "default google.maps.MapTypeId.ROADMAP",
-     "memberOf": ""
-    },
-    {
-     "name": "mapTypeControl",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": ""
-    },
-    {
-     "name": "disableDoubleClickZoom",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": ""
-    },
-    {
-     "name": "scrollwheel",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": ""
-    },
-    {
-     "name": "streetViewControl",
-     "type": "Boolean",
-     "desc": "default false",
+     "desc": "padding below box..",
      "memberOf": ""
     },
     {
-     "name": "radius",
+     "name": "gutter",
      "type": "Number",
-     "desc": "default 0",
-     "memberOf": ""
-    },
-    {
-     "name": "locationName",
-     "type": "String",
-     "desc": "",
+     "desc": "gutter width..",
      "memberOf": ""
     },
     {
-     "name": "draggable",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": ""
-    },
-    {
-     "name": "enableAutocomplete",
+     "name": "isAutoInitial",
      "type": "Boolean",
-     "desc": "default false",
+     "desc": "defalut true",
      "memberOf": ""
     },
     {
-     "name": "enableReverseGeocode",
+     "name": "isHorizontal",
      "type": "Boolean",
-     "desc": "default true",
-     "memberOf": ""
-    },
-    {
-     "name": "markerTitle",
-     "type": "String",
-     "desc": "",
+     "desc": "defalut false",
      "memberOf": ""
     },
     {
     }
    ],
    "events": [
-    {
-     "name": "OverlayViewDraw",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when OverlayView Draw"
-    },
-    {
-     "name": "OverlayViewHide",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when OverlayView Draw"
-    },
-    {
-     "name": "OverlayViewOnAdd",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when OverlayView Draw"
-    },
-    {
-     "name": "OverlayViewOnRemove",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when OverlayView Draw"
-    },
-    {
-     "name": "OverlayViewShow",
-     "sig": "function (_self, cpx)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when OverlayView Draw"
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the map hide."
-    },
-    {
-     "name": "initial",
-     "sig": "function (_self, location)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the picker initialized."
-    },
-    {
-     "name": "mapClick",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when click the map."
-    },
-    {
-     "name": "mapRightClick",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when right click the map."
-    },
-    {
-     "name": "markerClick",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when click the marker."
-    },
-    {
-     "name": "markerRightClick",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when right click the marker."
-    },
-    {
-     "name": "positionchanged",
-     "sig": "function (_self, location)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the picker position changed."
+     "desc": "Fires after the component is hidden."
     },
     {
      "name": "render",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "resize",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the map resize."
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the map show."
+     "desc": "Fires after the component is shown."
     }
    ],
    "methods": [
     }
    ]
   },
-  "Roo.bootstrap.Menu": {
+  "Roo.bootstrap.LayoutMasonryAuto": {
    "props": [
     {
-     "name": "type",
-     "type": "String",
-     "desc": "type of menu",
-     "memberOf": "",
-     "optvals": [
-      "dropdown",
-      "treeview",
-      "submenu"
-     ]
+     "name": "isFitWidth",
+     "type": "Boolean",
+     "desc": "- resize the width..",
+     "memberOf": ""
     },
     {
-     "name": "registerMenu",
+     "name": "isOriginLeft",
      "type": "Boolean",
-     "desc": "True (default) - means that clicking on screen etc. hides it.",
+     "desc": "= left align?",
+     "memberOf": ""
+    },
+    {
+     "name": "isOriginTop",
+     "type": "Boolean",
+     "desc": "= top align?",
+     "memberOf": ""
+    },
+    {
+     "name": "isLayoutInstant",
+     "type": "Boolean",
+     "desc": "= no animation?",
+     "memberOf": ""
+    },
+    {
+     "name": "isResizingContainer",
+     "type": "Boolean",
+     "desc": "= not sure if this is used..",
+     "memberOf": ""
+    },
+    {
+     "name": "columnWidth",
+     "type": "Number",
+     "desc": "width of the columns",
+     "memberOf": ""
+    },
+    {
+     "name": "padHeight",
+     "type": "Number",
+     "desc": "padding below box..",
+     "memberOf": ""
+    },
+    {
+     "name": "isAutoInitial",
+     "type": "Boolean",
+     "desc": "defalut true",
      "memberOf": ""
     },
     {
      "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, menuItem, 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"
-    },
-    {
-     "name": "itemclick",
-     "sig": "function (baseItem, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a menu item contained in this menu is clicked"
-    },
-    {
-     "name": "mouseout",
-     "sig": "function (_self, e, menuItem)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the mouse exits this menu"
-    },
-    {
-     "name": "mouseover",
-     "sig": "function (_self, e, menuItem)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the mouse is hovering over this menu"
+     "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": "(Boolean deep)",
+     "sig": "()",
      "type": "function",
-     "desc": "Hides this menu and optionally all parent menus"
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
      "name": "initEvents",
     },
     {
      "name": "show",
-     "sig": "(String/HTMLElement/Roo.Element element, String position, Roo.menu.Menu parentMenu)",
-     "type": "function",
-     "desc": "Displays this menu relative to another element"
-    },
-    {
-     "name": "showAt",
-     "sig": "(Array xyPosition, Roo.menu.Menu parentMenu)",
+     "sig": "()",
      "type": "function",
-     "desc": "Displays this menu at a specific xy position"
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.MenuItem": {
+  "Roo.bootstrap.Link": {
    "props": [
     {
-     "name": "html",
+     "name": "alt",
      "type": "String",
-     "desc": "the menu label",
+     "desc": "image alternative text",
      "memberOf": ""
     },
     {
      "name": "href",
      "type": "String",
-     "desc": "the link",
+     "desc": "a tag href",
      "memberOf": ""
     },
     {
-     "name": "preventDefault",
-     "type": "Boolean",
-     "desc": "default true",
+     "name": "target",
+     "type": "String",
+     "desc": "target for a href.",
      "memberOf": "",
      "optvals": [
-      "true",
-      "false"
+      "_self",
+      "_blank",
+      "_parent",
+      "_top"
      ]
     },
     {
-     "name": "isContainer",
+     "name": "html",
+     "type": "String",
+     "desc": "the content of the link.",
+     "memberOf": ""
+    },
+    {
+     "name": "anchor",
+     "type": "String",
+     "desc": "name for the anchor link",
+     "memberOf": ""
+    },
+    {
+     "name": "fa",
+     "type": "String",
+     "desc": "- favicon",
+     "memberOf": ""
+    },
+    {
+     "name": "preventDefault",
      "type": "Boolean",
      "desc": "default false",
      "memberOf": "",
     },
     {
      "name": "click",
-     "sig": "function (_self, e)\n{\n\n}",
+     "sig": "function (e)\n{\n\n}",
      "type": "function",
-     "desc": "The raw click event for the entire grid."
+     "desc": "The img click event for the img."
     },
     {
      "name": "destroy",
     }
    ]
   },
-  "Roo.bootstrap.MenuMgr": {
-   "props": [],
-   "events": [],
-   "methods": [
+  "Roo.bootstrap.LocationPicker": {
+   "props": [
     {
-     "name": "get",
-     "sig": "(String/Object menu)",
-     "type": "function",
-     "desc": "Returns a {@link Roo.menu.Menu} object"
+     "name": "latitude",
+     "type": "Number",
+     "desc": "Position when init default 0",
+     "memberOf": ""
     },
     {
-     "name": "hideAll",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hides all menus that are currently visible"
-    }
-   ]
-  },
-  "Roo.bootstrap.MenuSeparator": {
-   "props": [
+     "name": "longitude",
+     "type": "Number",
+     "desc": "Position when init default 0",
+     "memberOf": ""
+    },
+    {
+     "name": "zoom",
+     "type": "Number",
+     "desc": "default 15",
+     "memberOf": ""
+    },
+    {
+     "name": "mapTypeId",
+     "type": "String",
+     "desc": "default google.maps.MapTypeId.ROADMAP",
+     "memberOf": ""
+    },
+    {
+     "name": "mapTypeControl",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": ""
+    },
+    {
+     "name": "disableDoubleClickZoom",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": ""
+    },
+    {
+     "name": "scrollwheel",
+     "type": "Boolean",
+     "desc": "default true",
+     "memberOf": ""
+    },
+    {
+     "name": "streetViewControl",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": ""
+    },
+    {
+     "name": "radius",
+     "type": "Number",
+     "desc": "default 0",
+     "memberOf": ""
+    },
+    {
+     "name": "locationName",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "draggable",
+     "type": "Boolean",
+     "desc": "default true",
+     "memberOf": ""
+    },
+    {
+     "name": "enableAutocomplete",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": ""
+    },
+    {
+     "name": "enableReverseGeocode",
+     "type": "Boolean",
+     "desc": "default true",
+     "memberOf": ""
+    },
+    {
+     "name": "markerTitle",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
     }
    ],
    "events": [
+    {
+     "name": "OverlayViewDraw",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when OverlayView Draw"
+    },
+    {
+     "name": "OverlayViewHide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when OverlayView Draw"
+    },
+    {
+     "name": "OverlayViewOnAdd",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when OverlayView Draw"
+    },
+    {
+     "name": "OverlayViewOnRemove",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when OverlayView Draw"
+    },
+    {
+     "name": "OverlayViewShow",
+     "sig": "function (_self, cpx)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when OverlayView Draw"
+    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is hidden."
+     "desc": "Fires when the map hide."
+    },
+    {
+     "name": "initial",
+     "sig": "function (_self, location)\n{\n\n}",
+     "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}",
+     "type": "function",
+     "desc": "Fires when click the map."
+    },
+    {
+     "name": "mapRightClick",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when right click the map."
+    },
+    {
+     "name": "markerClick",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when click the marker."
+    },
+    {
+     "name": "markerRightClick",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when right click the marker."
+    },
+    {
+     "name": "positionchanged",
+     "sig": "function (_self, location)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the picker position changed."
     },
     {
      "name": "render",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
+    {
+     "name": "resize",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the map resize."
+    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is shown."
+     "desc": "Fires when the map show."
     }
    ],
    "methods": [
     }
    ]
   },
-  "Roo.bootstrap.MessageBar": {
+  "Roo.bootstrap.MasonryBrick": {
    "props": [
+    {
+     "name": "title",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
     {
      "name": "html",
      "type": "String",
-     "desc": "contents of the MessageBar",
+     "desc": "",
      "memberOf": ""
     },
     {
-     "name": "weight",
+     "name": "bgimage",
      "type": "String",
-     "desc": "default info",
-     "memberOf": "",
-     "optvals": [
-      "info",
-      "success",
-      "warning",
-      "danger"
-     ]
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "beforeClass",
+     "name": "cls",
      "type": "String",
-     "desc": "insert the bar before the given class",
+     "desc": "",
      "memberOf": ""
     },
     {
-     "name": "closable",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "href",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "fixed",
+     "name": "video",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "square",
      "type": "Boolean",
-     "desc": "default false, fix the bar at the top",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "cls",
+     "name": "(xs|sm|md)",
      "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "size",
+     "memberOf": ""
     },
     {
      "name": "style",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "click",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "When a MasonryBrick is clcik"
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.MessageBox": {
-   "props": [],
-   "events": [],
-   "methods": [
-    {
-     "name": "alert",
-     "sig": "(String title, String msg, Function fn, Object scope)",
-     "type": "function",
-     "desc": "Displays a standard read-only message box with an OK button (comparable to the basic JavaScript Window.alert).\nIf a callback function is passed it will be called after the user clicks the button, and the\nid of the button that was clicked will be passed as the only parameter to the callback\n(could also be the top-right close button)."
-    },
-    {
-     "name": "confirm",
-     "sig": "(String title, String msg, Function fn, Object scope)",
-     "type": "function",
-     "desc": "Displays a confirmation message box with Yes and No buttons (comparable to JavaScript's Window.confirm).\nIf a callback function is passed it will be called after the user clicks either button, and the id of the\nbutton that was clicked will be passed as the only parameter to the callback (could also be the top-right close button)."
-    },
-    {
-     "name": "getDialog",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns a reference to the underlying {@link Roo.BasicDialog} element"
-    },
-    {
-     "name": "hide",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hides the message box if it is displayed"
-    },
-    {
-     "name": "isVisible",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the message box is currently displayed"
-    },
-    {
-     "name": "progress",
-     "sig": "(String title, String msg)",
-     "type": "function",
-     "desc": "Displays a message box with a progress bar.  This message box has no buttons and is not closeable by\nthe user.  You are responsible for updating the progress bar as needed via {@link Roo.MessageBox#updateProgress}\nand closing the message box when the process is complete."
-    },
-    {
-     "name": "prompt",
-     "sig": "(String title, String msg, Function fn, Object scope, Boolean/Number multiline)",
-     "type": "function",
-     "desc": "Displays a message box with OK and Cancel buttons prompting the user to enter some text (comparable to\nJavaScript's Window.prompt).  The prompt can be a single-line or multi-line textbox.  If a callback function\nis passed it will be called after the user clicks either button, and the id of the button that was clicked\n(could also be the top-right close button) and the text that was entered will be passed as the two\nparameters to the callback."
-    },
-    {
-     "name": "show",
-     "sig": "(Object config)",
-     "type": "function",
-     "desc": "Displays a new message box, or reinitializes an existing message box, based on the config options\npassed in. All functions (e.g. prompt, alert, etc) on MessageBox call this function internally.\nThe following config object properties are supported:\n<pre>\nProperty    Type             Description\n----------  ---------------  ------------------------------------------------------------------------------------\nanimEl            String/Element   An id or Element from which the message box should animate as it opens and\n                                   closes (defaults to undefined)\nbuttons           Object/Boolean   A button config object (e.g., Roo.MessageBox.OKCANCEL or {ok:'Foo',\n                                   cancel:'Bar'}), or false to not show any buttons (defaults to false)\nclosable          Boolean          False to hide the top-right close button (defaults to true).  Note that\n                                   progress and wait dialogs will ignore this property and always hide the\n                                   close button as they can only be closed programmatically.\ncls               String           A custom CSS class to apply to the message box element\ndefaultTextHeight Number           The default height in pixels of the message box's multiline textarea if\n                                   displayed (defaults to 75)\nfn                Function         A callback function to execute after closing the dialog.  The arguments to the\n                                   function will be btn (the name of the button that was clicked, if applicable,\n                                   e.g. \"ok\"), and text (the value of the active text field, if applicable).\n                                   Progress and wait dialogs will ignore this option since they do not respond to\n                                   user actions and can only be closed programmatically, so any required function\n                                   should be called by the same code after it closes the dialog.\nicon              String           A CSS class that provides a background image to be used as an icon for\n                                   the dialog (e.g., Roo.MessageBox.WARNING or 'custom-class', defaults to '')\nmaxWidth          Number           The maximum width in pixels of the message box (defaults to 600)\nminWidth          Number           The minimum width in pixels of the message box (defaults to 100)\nmodal             Boolean          False to allow user interaction with the page while the message box is\n                                   displayed (defaults to true)\nmsg               String           A string that will replace the existing message box body text (defaults\n                                   to the XHTML-compliant non-breaking space character '&#160;')\nmultiline         Boolean          True to prompt the user to enter multi-line text (defaults to false)\nprogress          Boolean          True to display a progress bar (defaults to false)\nprogressText      String           The text to display inside the progress bar if progress = true (defaults to '')\nprompt            Boolean          True to prompt the user to enter single-line text (defaults to false)\nproxyDrag         Boolean          True to display a lightweight proxy while dragging (defaults to false)\ntitle             String           The title text\nvalue             String           The string value to set into the active textbox element if displayed\nwait              Boolean          True to display a progress bar (defaults to false)\nwidth             Number           The width of the dialog in pixels\n</pre>\n\nExample usage:\n<pre><code>\nRoo.Msg.show({\n   title: 'Address',\n   msg: 'Please enter your address:',\n   width: 300,\n   buttons: Roo.MessageBox.OKCANCEL,\n   multiline: true,\n   fn: saveAddress,\n   animEl: 'addAddressBtn'\n});\n</code></pre>"
-    },
-    {
-     "name": "updateProgress",
-     "sig": "(Number value, String text)",
-     "type": "function",
-     "desc": "Updates a progress-style message box's text and progress bar.  Only relevant on message boxes\ninitiated via {@link Roo.MessageBox#progress} or by calling {@link Roo.MessageBox#show} with progress: true."
-    },
-    {
-     "name": "updateText",
-     "sig": "(String text)",
-     "type": "function",
-     "desc": "Updates the message box body text"
-    },
-    {
-     "name": "wait",
-     "sig": "(String msg, String title)",
-     "type": "function",
-     "desc": "Displays a message box with an infinitely auto-updating progress bar.  This can be used to block user\ninteraction while waiting for a long-running process to complete that does not have defined intervals.\nYou are responsible for closing the message box when the process is complete."
-    }
-   ]
-  },
-  "Roo.bootstrap.Modal": {
+  "Roo.bootstrap.Menu": {
    "props": [
     {
-     "name": "title",
-     "type": "String",
-     "desc": "Title of dialog",
-     "memberOf": ""
-    },
-    {
-     "name": "html",
-     "type": "String",
-     "desc": "- the body of the dialog (for simple ones) - you can also use template..",
-     "memberOf": ""
-    },
-    {
-     "name": "tmpl",
-     "type": "Roo.Template",
-     "desc": "- a template with variables. to use it, add a handler in show:method  adn",
-     "memberOf": ""
-    },
-    {
-     "name": "specificTitle",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": ""
-    },
-    {
-     "name": "buttons",
-     "type": "Array",
-     "desc": "Array of buttons or standard button set..",
-     "memberOf": ""
-    },
-    {
-     "name": "buttonPosition",
+     "name": "type",
      "type": "String",
-     "desc": "default right",
+     "desc": "type of menu",
      "memberOf": "",
      "optvals": [
-      "left",
-      "right",
-      "center"
+      "dropdown",
+      "treeview",
+      "submenu"
      ]
     },
     {
-     "name": "animate",
-     "type": "Boolean",
-     "desc": "default true",
+     "name": "hidden",
+     "type": "bool",
+     "desc": "if the menu should be hidden when rendered.",
      "memberOf": ""
     },
     {
-     "name": "allow_close",
+     "name": "registerMenu",
      "type": "Boolean",
-     "desc": "default true",
+     "desc": "True (default) - means that clicking on screen etc. hides it.",
      "memberOf": ""
     },
     {
      "name": "beforehide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before the component is hidden. Return false to stop the hide."
+     "desc": "Fires before this menu is hidden"
     },
     {
      "name": "beforerender",
      "name": "beforeshow",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before the component is shown.  Return false to stop the show."
-    },
-    {
-     "name": "btnclick",
-     "sig": "function (e)\n{\n\n}",
-     "type": "function",
-     "desc": "The raw btnclick event for the button"
+     "desc": "Fires before this menu is displayed"
     },
     {
      "name": "childrenrendered",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "click",
+     "sig": "function (_self, menuItem, 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 the component is hidden."
+     "desc": "Fires after this menu is hidden"
+    },
+    {
+     "name": "itemclick",
+     "sig": "function (baseItem, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a menu item contained in this menu is clicked"
+    },
+    {
+     "name": "mouseout",
+     "sig": "function (_self, e, menuItem)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the mouse exits this menu"
+    },
+    {
+     "name": "mouseover",
+     "sig": "function (_self, e, menuItem)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the mouse is hovering over this menu"
     },
     {
      "name": "render",
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is shown."
+     "desc": "Fires after this menu is displayed"
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Appends an event handler to this component"
     },
-    {
-     "name": "applyBody",
-     "sig": "(Obj data)",
-     "type": "function",
-     "desc": "Set the body of the Dialog using the template"
-    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
     },
     {
      "name": "hide",
-     "sig": "()",
+     "sig": "(Boolean deep)",
      "type": "function",
-     "desc": "Hide a component - adds 'hidden' class"
+     "desc": "Hides this menu and optionally all parent menus"
     },
     {
      "name": "initEvents",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
-    {
-     "name": "setBody",
-     "sig": "(String str)",
-     "type": "function",
-     "desc": "Set the body of the Dialog"
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setTitle",
-     "sig": "(String str)",
-     "type": "function",
-     "desc": "Set the title of the Dialog"
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
     },
     {
      "name": "show",
-     "sig": "()",
+     "sig": "(String/HTMLElement/Roo.Element element, String position, Roo.menu.Menu parentMenu)",
      "type": "function",
-     "desc": "Show a component - removes 'hidden' class"
+     "desc": "Displays this menu relative to another element"
+    },
+    {
+     "name": "showAt",
+     "sig": "(Array xyPosition, Roo.menu.Menu parentMenu)",
+     "type": "function",
+     "desc": "Displays this menu at a specific xy position"
     },
     {
      "name": "tooltipEl",
     }
    ]
   },
-  "Roo.bootstrap.MonthField": {
+  "Roo.bootstrap.MenuItem": {
    "props": [
     {
-     "name": "language",
+     "name": "html",
      "type": "String",
-     "desc": "default en",
+     "desc": "the menu label",
      "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": "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",
+     "name": "href",
      "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "the link",
+     "memberOf": ""
     },
     {
-     "name": "selectOnFocus",
+     "name": "preventDefault",
      "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"
+     "desc": "do not trigger A href on clicks.",
+     "memberOf": ""
     },
     {
-     "name": "disableKeyFilter",
+     "name": "isContainer",
      "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "is it a container - just returns a drop down item..",
+     "memberOf": ""
     },
     {
-     "name": "allowBlank",
+     "name": "active",
      "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"
+     "desc": "used on sidebars to highlight active itesm",
+     "memberOf": ""
     },
     {
-     "name": "maxLengthText",
+     "name": "fa",
      "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": "favicon to show on left of menu item.",
+     "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": "menu",
+     "type": "Roo.bootsrap.Menu",
+     "desc": "the child menu.",
+     "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",
      "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": "The raw click event for the entire grid."
     },
     {
      "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": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "select",
-     "sig": "function (_self, oldvalue, newvalue)\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}",
-     "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."
+     "desc": "Fires after the component is shown."
     }
    ],
    "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)",
      "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)",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    },
+    }
+   ]
+  },
+  "Roo.bootstrap.MenuMgr": {
+   "props": [],
+   "events": [],
+   "methods": [
     {
-     "name": "validate",
-     "sig": "()",
+     "name": "get",
+     "sig": "(String/Object menu)",
      "type": "function",
-     "desc": "Validates the field value"
+     "desc": "Returns a {@link Roo.menu.Menu} object"
     },
     {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
+     "name": "hideAll",
+     "sig": "()",
      "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
+     "desc": "Hides all menus that are currently visible"
     }
    ]
   },
-  "Roo.bootstrap.NavGroup": {
+  "Roo.bootstrap.MenuSeparator": {
    "props": [
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "",
-     "memberOf": "",
-     "optvals": [
-      "left",
-      "right"
-     ]
-    },
-    {
-     "name": "inverse",
-     "type": "Boolean",
-     "desc": "",
-     "memberOf": ""
-    },
-    {
-     "name": "type",
-     "type": "String",
-     "desc": "default nav",
-     "memberOf": "",
-     "optvals": [
-      "nav",
-      "pills",
-      "tab"
-     ]
-    },
-    {
-     "name": "navId",
-     "type": "String",
-     "desc": "- reference Id for navbar.",
-     "memberOf": ""
-    },
     {
      "name": "cls",
      "type": "String",
      "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}",
      "type": "function",
      "desc": "Used to define events on this Observable"
     },
-    {
-     "name": "addItem",
-     "sig": "(Roo.bootstrap.NavItem the)",
-     "type": "function",
-     "desc": "adds a Navigation item"
-    },
     {
      "name": "addListener",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "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": "clearAll",
-     "sig": "()",
-     "type": "function",
-     "desc": "clear all the Navigation item"
-    },
     {
      "name": "destroy",
      "sig": "()",
      "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"
-    },
-    {
-     "name": "getActive",
-     "sig": "()",
-     "type": "function",
-     "desc": "gets the active Navigation item"
-    },
     {
      "name": "getChildContainer",
      "sig": "()",
      "type": "function",
      "desc": "Removes all listeners for this object"
     },
-    {
-     "name": "register",
-     "sig": "(Roo.bootstrap.NavItem the)",
-     "type": "function",
-     "desc": "register a Navigation item"
-    },
-    {
-     "name": "register",
-     "sig": "(Roo.bootstrap.NavGroup the)",
-     "type": "function",
-     "desc": "register a Navigation Group"
-    },
     {
      "name": "releaseCapture",
      "sig": "(Observable o)",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "setActiveItem",
-     "sig": "(Roo.bootstrap.NavItem the)",
-     "type": "function",
-     "desc": "sets the active Navigation item"
-    },
-    {
-     "name": "setDisabled",
-     "sig": "(Boolean disabled)",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     }
    ]
   },
-  "Roo.bootstrap.NavHeaderbar": {
+  "Roo.bootstrap.MessageBar": {
    "props": [
     {
-     "name": "brand",
+     "name": "html",
      "type": "String",
-     "desc": "what is brand",
+     "desc": "contents of the MessageBar",
      "memberOf": ""
     },
     {
-     "name": "position",
+     "name": "weight",
      "type": "String",
-     "desc": "position",
+     "desc": "default info",
      "memberOf": "",
      "optvals": [
-      "fixed-top",
-      "fixed-bottom",
-      "static-top"
+      "info",
+      "success",
+      "warning",
+      "danger"
      ]
     },
     {
-     "name": "brand_href",
+     "name": "beforeClass",
      "type": "String",
-     "desc": "href of the brand",
-     "memberOf": ""
-    },
-    {
-     "name": "srButton",
-     "type": "Boolean",
-     "desc": "generate the (screen reader / mobile) sr-only button   default true",
-     "memberOf": ""
-    },
-    {
-     "name": "autohide",
-     "type": "Boolean",
-     "desc": "a top nav bar header that hides on scroll.",
-     "memberOf": ""
-    },
-    {
-     "name": "desktopCenter",
-     "type": "Boolean",
-     "desc": "should the header be centered on desktop using a container class",
-     "memberOf": ""
-    },
-    {
-     "name": "mobilerow",
-     "type": "Roo.bootstrap.Row",
-     "desc": "- a row to display on mobile only..",
+     "desc": "insert the bar before the given class",
      "memberOf": ""
     },
     {
-     "name": "inverse",
-     "type": "Boolean",
-     "desc": "is inverted color",
-     "memberOf": "Roo.bootstrap.NavSimplebar"
-    },
-    {
-     "name": "type",
-     "type": "String",
-     "desc": "",
-     "memberOf": "Roo.bootstrap.NavSimplebar",
-     "optvals": [
-      "nav",
-      "pills",
-      "tabs"
-     ]
-    },
-    {
-     "name": "arrangement",
-     "type": "Boolean",
-     "desc": "stacked | justified",
-     "memberOf": "Roo.bootstrap.NavSimplebar"
-    },
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "alignment",
-     "memberOf": "Roo.bootstrap.NavSimplebar",
-     "optvals": [
-      "left",
-      "right"
-     ]
-    },
-    {
-     "name": "main",
+     "name": "closable",
      "type": "Boolean",
-     "desc": "main nav bar? default false",
-     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "desc": "default false",
+     "memberOf": "",
      "optvals": [
       "true",
       "false"
      ]
     },
     {
-     "name": "loadMask",
+     "name": "fixed",
      "type": "Boolean",
-     "desc": "loadMask on the bar",
-     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "desc": "default false, fix the bar at the top",
+     "memberOf": "",
      "optvals": [
       "true",
       "false"
      ]
     },
-    {
-     "name": "tag",
-     "type": "String",
-     "desc": "default is nav",
-     "memberOf": "Roo.bootstrap.NavSimplebar",
-     "optvals": [
-      "header",
-      "footer",
-      "nav",
-      "div"
-     ]
-    },
     {
      "name": "cls",
      "type": "String",
     }
    ]
   },
-  "Roo.bootstrap.NavItem": {
-   "props": [
+  "Roo.bootstrap.MessageBox": {
+   "props": [],
+   "events": [],
+   "methods": [
     {
-     "name": "href",
-     "type": "String",
-     "desc": "link to",
-     "memberOf": ""
+     "name": "alert",
+     "sig": "(String title, String msg, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Displays a standard read-only message box with an OK button (comparable to the basic JavaScript Window.alert).\nIf a callback function is passed it will be called after the user clicks the button, and the\nid of the button that was clicked will be passed as the only parameter to the callback\n(could also be the top-right close button)."
     },
     {
-     "name": "html",
-     "type": "String",
-     "desc": "content of button",
-     "memberOf": ""
+     "name": "confirm",
+     "sig": "(String title, String msg, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Displays a confirmation message box with Yes and No buttons (comparable to JavaScript's Window.confirm).\nIf a callback function is passed it will be called after the user clicks either button, and the id of the\nbutton that was clicked will be passed as the only parameter to the callback (could also be the top-right close button)."
     },
     {
-     "name": "badge",
-     "type": "String",
-     "desc": "text inside badge",
-     "memberOf": ""
+     "name": "getDialog",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns a reference to the underlying {@link Roo.BasicDialog} element"
     },
     {
-     "name": "badgecls",
-     "type": "String",
-     "desc": "the extra classes for the badge",
-     "memberOf": "",
-     "optvals": [
-      "bg-green",
-      "bg-red",
-      "bg-yellow"
-     ]
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hides the message box if it is displayed"
     },
     {
-     "name": "glyphicon",
-     "type": "String",
-     "desc": "name of glyphicon",
-     "memberOf": ""
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the message box is currently displayed"
     },
     {
-     "name": "icon",
+     "name": "progress",
+     "sig": "(String title, String msg)",
+     "type": "function",
+     "desc": "Displays a message box with a progress bar.  This message box has no buttons and is not closeable by\nthe user.  You are responsible for updating the progress bar as needed via {@link Roo.MessageBox#updateProgress}\nand closing the message box when the process is complete."
+    },
+    {
+     "name": "prompt",
+     "sig": "(String title, String msg, Function fn, Object scope, Boolean/Number multiline)",
+     "type": "function",
+     "desc": "Displays a message box with OK and Cancel buttons prompting the user to enter some text (comparable to\nJavaScript's Window.prompt).  The prompt can be a single-line or multi-line textbox.  If a callback function\nis passed it will be called after the user clicks either button, and the id of the button that was clicked\n(could also be the top-right close button) and the text that was entered will be passed as the two\nparameters to the callback."
+    },
+    {
+     "name": "show",
+     "sig": "(Object config)",
+     "type": "function",
+     "desc": "Displays a new message box, or reinitializes an existing message box, based on the config options\npassed in. All functions (e.g. prompt, alert, etc) on MessageBox call this function internally.\nThe following config object properties are supported:\n<pre>\nProperty    Type             Description\n----------  ---------------  ------------------------------------------------------------------------------------\nanimEl            String/Element   An id or Element from which the message box should animate as it opens and\n                                   closes (defaults to undefined)\nbuttons           Object/Boolean   A button config object (e.g., Roo.MessageBox.OKCANCEL or {ok:'Foo',\n                                   cancel:'Bar'}), or false to not show any buttons (defaults to false)\nclosable          Boolean          False to hide the top-right close button (defaults to true).  Note that\n                                   progress and wait dialogs will ignore this property and always hide the\n                                   close button as they can only be closed programmatically.\ncls               String           A custom CSS class to apply to the message box element\ndefaultTextHeight Number           The default height in pixels of the message box's multiline textarea if\n                                   displayed (defaults to 75)\nfn                Function         A callback function to execute after closing the dialog.  The arguments to the\n                                   function will be btn (the name of the button that was clicked, if applicable,\n                                   e.g. \"ok\"), and text (the value of the active text field, if applicable).\n                                   Progress and wait dialogs will ignore this option since they do not respond to\n                                   user actions and can only be closed programmatically, so any required function\n                                   should be called by the same code after it closes the dialog.\nicon              String           A CSS class that provides a background image to be used as an icon for\n                                   the dialog (e.g., Roo.MessageBox.WARNING or 'custom-class', defaults to '')\nmaxWidth          Number           The maximum width in pixels of the message box (defaults to 600)\nminWidth          Number           The minimum width in pixels of the message box (defaults to 100)\nmodal             Boolean          False to allow user interaction with the page while the message box is\n                                   displayed (defaults to true)\nmsg               String           A string that will replace the existing message box body text (defaults\n                                   to the XHTML-compliant non-breaking space character '&#160;')\nmultiline         Boolean          True to prompt the user to enter multi-line text (defaults to false)\nprogress          Boolean          True to display a progress bar (defaults to false)\nprogressText      String           The text to display inside the progress bar if progress = true (defaults to '')\nprompt            Boolean          True to prompt the user to enter single-line text (defaults to false)\nproxyDrag         Boolean          True to display a lightweight proxy while dragging (defaults to false)\ntitle             String           The title text\nvalue             String           The string value to set into the active textbox element if displayed\nwait              Boolean          True to display a progress bar (defaults to false)\nwidth             Number           The width of the dialog in pixels\n</pre>\n\nExample usage:\n<pre><code>\nRoo.Msg.show({\n   title: 'Address',\n   msg: 'Please enter your address:',\n   width: 300,\n   buttons: Roo.MessageBox.OKCANCEL,\n   multiline: true,\n   fn: saveAddress,\n   animEl: 'addAddressBtn'\n});\n</code></pre>"
+    },
+    {
+     "name": "updateProgress",
+     "sig": "(Number value, String text)",
+     "type": "function",
+     "desc": "Updates a progress-style message box's text and progress bar.  Only relevant on message boxes\ninitiated via {@link Roo.MessageBox#progress} or by calling {@link Roo.MessageBox#show} with progress: true."
+    },
+    {
+     "name": "updateText",
+     "sig": "(String text)",
+     "type": "function",
+     "desc": "Updates the message box body text"
+    },
+    {
+     "name": "wait",
+     "sig": "(String msg, String title)",
+     "type": "function",
+     "desc": "Displays a message box with an infinitely auto-updating progress bar.  This can be used to block user\ninteraction while waiting for a long-running process to complete that does not have defined intervals.\nYou are responsible for closing the message box when the process is complete."
+    }
+   ]
+  },
+  "Roo.bootstrap.Modal": {
+   "props": [
+    {
+     "name": "title",
      "type": "String",
-     "desc": "name of font awesome icon",
+     "desc": "Title of dialog",
      "memberOf": ""
     },
     {
-     "name": "active",
-     "type": "Boolean",
-     "desc": "Is item active",
+     "name": "html",
+     "type": "String",
+     "desc": "- the body of the dialog (for simple ones) - you can also use template..",
      "memberOf": ""
     },
     {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "Is item disabled",
+     "name": "tmpl",
+     "type": "Roo.Template",
+     "desc": "- a template with variables. to use it, add a handler in show:method  adn",
      "memberOf": ""
     },
     {
-     "name": "preventDefault",
+     "name": "specificTitle",
      "type": "Boolean",
      "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "memberOf": ""
     },
     {
-     "name": "tabId",
-     "type": "String",
-     "desc": "the tab that this item activates.",
+     "name": "buttons",
+     "type": "Array",
+     "desc": "Array of buttons or standard button set..",
      "memberOf": ""
     },
     {
-     "name": "tagtype",
+     "name": "buttonPosition",
      "type": "String",
-     "desc": "render as a href or span?",
+     "desc": "default right",
      "memberOf": "",
      "optvals": [
-      "a",
-      "span"
+      "left",
+      "right",
+      "center"
      ]
     },
     {
-     "name": "animateRef",
+     "name": "animate",
      "type": "Boolean",
-     "desc": "link to element default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "desc": "default true",
+     "memberOf": ""
+    },
+    {
+     "name": "allow_close",
+     "type": "Boolean",
+     "desc": "default true",
+     "memberOf": ""
     },
     {
      "name": "cls",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "changed",
-     "sig": "function (_self, state)\n{\n\n}",
+     "name": "btnclick",
+     "sig": "function (e)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the active item active state changes"
+     "desc": "The raw btnclick event for the button"
     },
     {
      "name": "childrenrendered",
      "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}",
      "type": "function",
      "desc": "Appends an event handler to this component"
     },
+    {
+     "name": "applyBody",
+     "sig": "(Obj data)",
+     "type": "function",
+     "desc": "Set the body of the Dialog using the template"
+    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
+    {
+     "name": "setBody",
+     "sig": "(String str)",
+     "type": "function",
+     "desc": "Set the body of the Dialog"
+    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setTitle",
+     "sig": "(String str)",
+     "type": "function",
+     "desc": "Set the title of the Dialog"
+    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
     }
    ]
   },
-  "Roo.bootstrap.NavProgressBar": {
+  "Roo.bootstrap.MonthField": {
    "props": [
+    {
+     "name": "language",
+     "type": "String",
+     "desc": "default en",
+     "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",
+     "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",
+     "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": "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",
      "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": "changed",
-     "sig": "function (_self, selected, prev)\n{\n\n}",
+     "name": "blur",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the active item changes"
+     "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",
      "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}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
+    {
+     "name": "select",
+     "sig": "function (_self, oldvalue, newvalue)\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}",
+     "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 component is shown."
+     "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)",
      "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)",
      "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.NavProgressItem": {
+  "Roo.bootstrap.NavGroup": {
    "props": [
     {
-     "name": "rid",
+     "name": "align",
      "type": "String",
-     "desc": "the reference id",
-     "memberOf": ""
-    },
-    {
-     "name": "active",
-     "type": "Boolean",
-     "desc": "Is item active default false",
+     "desc": "",
      "memberOf": "",
      "optvals": [
-      "true",
-      "false"
+      "left",
+      "right"
      ]
     },
     {
-     "name": "disabled",
+     "name": "inverse",
      "type": "Boolean",
-     "desc": "Is item active default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "html",
-     "type": "String",
      "desc": "",
      "memberOf": ""
     },
     {
-     "name": "position",
+     "name": "type",
      "type": "String",
-     "desc": "text position default bottom",
+     "desc": "default nav",
      "memberOf": "",
      "optvals": [
-      "top",
-      "bottom"
+      "nav",
+      "pills",
+      "tab"
      ]
     },
     {
-     "name": "icon",
+     "name": "navId",
      "type": "String",
-     "desc": "show icon instead of number",
+     "desc": "- reference Id for navbar.",
      "memberOf": ""
     },
     {
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "childrenrendered",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "changed",
+     "sig": "function (_self, selected, prev)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the children have been rendered.."
+     "desc": "Fires when the active item changes"
     },
     {
-     "name": "click",
-     "sig": "function (_self, e)\n{\n\n}",
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "The raw click event for the entire grid."
+     "desc": "Fires when the children have been rendered.."
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Used to define events on this Observable"
     },
+    {
+     "name": "addItem",
+     "sig": "(Roo.bootstrap.NavItem the)",
+     "type": "function",
+     "desc": "adds a Navigation item"
+    },
     {
      "name": "addListener",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "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": "clearAll",
+     "sig": "()",
+     "type": "function",
+     "desc": "clear all the Navigation item"
+    },
     {
      "name": "destroy",
      "sig": "()",
      "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"
+    },
+    {
+     "name": "getActive",
+     "sig": "()",
+     "type": "function",
+     "desc": "gets the active Navigation item"
+    },
     {
      "name": "getChildContainer",
      "sig": "()",
      "type": "function",
      "desc": "Removes all listeners for this object"
     },
+    {
+     "name": "register",
+     "sig": "(Roo.bootstrap.NavItem the)",
+     "type": "function",
+     "desc": "register a Navigation item"
+    },
+    {
+     "name": "register",
+     "sig": "(Roo.bootstrap.NavGroup the)",
+     "type": "function",
+     "desc": "register a Navigation Group"
+    },
     {
      "name": "releaseCapture",
      "sig": "(Observable o)",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
+    {
+     "name": "setActiveItem",
+     "sig": "(Roo.bootstrap.NavItem the)",
+     "type": "function",
+     "desc": "sets the active Navigation item"
+    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
     }
    ]
   },
-  "Roo.bootstrap.NavSidebar": {
+  "Roo.bootstrap.NavHeaderbar": {
    "props": [
+    {
+     "name": "brand",
+     "type": "String",
+     "desc": "what is brand",
+     "memberOf": ""
+    },
+    {
+     "name": "position",
+     "type": "String",
+     "desc": "position",
+     "memberOf": "",
+     "optvals": [
+      "fixed-top",
+      "fixed-bottom",
+      "static-top"
+     ]
+    },
+    {
+     "name": "brand_href",
+     "type": "String",
+     "desc": "href of the brand",
+     "memberOf": ""
+    },
+    {
+     "name": "srButton",
+     "type": "Boolean",
+     "desc": "generate the (screen reader / mobile) sr-only button   default true",
+     "memberOf": ""
+    },
+    {
+     "name": "autohide",
+     "type": "Boolean",
+     "desc": "a top nav bar header that hides on scroll.",
+     "memberOf": ""
+    },
+    {
+     "name": "desktopCenter",
+     "type": "Boolean",
+     "desc": "should the header be centered on desktop using a container class",
+     "memberOf": ""
+    },
+    {
+     "name": "mobilerow",
+     "type": "Roo.bootstrap.Row",
+     "desc": "- a row to display on mobile only..",
+     "memberOf": ""
+    },
+    {
+     "name": "inverse",
+     "type": "Boolean",
+     "desc": "is inverted color",
+     "memberOf": "Roo.bootstrap.NavSimplebar"
+    },
+    {
+     "name": "type",
+     "type": "String",
+     "desc": "",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "nav",
+      "pills",
+      "tabs"
+     ]
+    },
+    {
+     "name": "arrangement",
+     "type": "Boolean",
+     "desc": "stacked | justified",
+     "memberOf": "Roo.bootstrap.NavSimplebar"
+    },
+    {
+     "name": "align",
+     "type": "String",
+     "desc": "alignment",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "left",
+      "right"
+     ]
+    },
+    {
+     "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": "default is nav",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "header",
+      "footer",
+      "nav",
+      "div"
+     ]
+    },
     {
      "name": "cls",
      "type": "String",
     }
    ]
   },
-  "Roo.bootstrap.NavSidebarItem": {
+  "Roo.bootstrap.NavItem": {
    "props": [
     {
      "name": "href",
      "type": "String",
      "desc": "link to",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "memberOf": ""
     },
     {
      "name": "html",
      "type": "String",
      "desc": "content of button",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "memberOf": ""
     },
     {
      "name": "badge",
      "type": "String",
      "desc": "text inside badge",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "memberOf": ""
     },
     {
      "name": "badgecls",
      "type": "String",
      "desc": "the extra classes for the badge",
-     "memberOf": "Roo.bootstrap.NavItem",
+     "memberOf": "",
      "optvals": [
       "bg-green",
       "bg-red",
      "name": "glyphicon",
      "type": "String",
      "desc": "name of glyphicon",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "memberOf": ""
     },
     {
      "name": "icon",
      "type": "String",
      "desc": "name of font awesome icon",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "memberOf": ""
     },
     {
      "name": "active",
      "type": "Boolean",
      "desc": "Is item active",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "memberOf": ""
     },
     {
      "name": "disabled",
      "type": "Boolean",
      "desc": "Is item disabled",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "memberOf": ""
     },
     {
      "name": "preventDefault",
      "type": "Boolean",
      "desc": "default false",
-     "memberOf": "Roo.bootstrap.NavItem",
+     "memberOf": "",
      "optvals": [
       "true",
       "false"
      "name": "tabId",
      "type": "String",
      "desc": "the tab that this item activates.",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "memberOf": ""
     },
     {
      "name": "tagtype",
      "type": "String",
      "desc": "render as a href or span?",
-     "memberOf": "Roo.bootstrap.NavItem",
+     "memberOf": "",
      "optvals": [
       "a",
       "span"
      "name": "animateRef",
      "type": "Boolean",
      "desc": "link to element default false",
-     "memberOf": "Roo.bootstrap.NavItem",
+     "memberOf": "",
      "optvals": [
       "true",
       "false"
     }
    ]
   },
-  "Roo.bootstrap.NavSimplebar": {
+  "Roo.bootstrap.NavProgressBar": {
    "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",
      "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}",
     }
    ]
   },
-  "Roo.bootstrap.Navbar": {
+  "Roo.bootstrap.NavProgressItem": {
    "props": [
+    {
+     "name": "rid",
+     "type": "String",
+     "desc": "the reference id",
+     "memberOf": ""
+    },
+    {
+     "name": "active",
+     "type": "Boolean",
+     "desc": "Is item active default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "Is item active default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "position",
+     "type": "String",
+     "desc": "text position default bottom",
+     "memberOf": "",
+     "optvals": [
+      "top",
+      "bottom"
+     ]
+    },
+    {
+     "name": "icon",
+     "type": "String",
+     "desc": "show icon instead of number",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "click",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw click event for the entire grid."
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.Pagination": {
+  "Roo.bootstrap.NavSidebar": {
    "props": [
-    {
-     "name": "size",
-     "type": "String",
-     "desc": "xs | sm | md | lg",
-     "memberOf": ""
-    },
-    {
-     "name": "inverse",
-     "type": "Boolean",
-     "desc": "false | true",
-     "memberOf": ""
-    },
     {
      "name": "cls",
      "type": "String",
     }
    ]
   },
-  "Roo.bootstrap.PaginationItem": {
+  "Roo.bootstrap.NavSidebarItem": {
    "props": [
+    {
+     "name": "href",
+     "type": "String",
+     "desc": "link to",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
     {
      "name": "html",
      "type": "String",
-     "desc": "text",
-     "memberOf": ""
+     "desc": "content of button",
+     "memberOf": "Roo.bootstrap.NavItem"
     },
     {
-     "name": "href",
+     "name": "badge",
      "type": "String",
-     "desc": "the link",
-     "memberOf": ""
+     "desc": "text inside badge",
+     "memberOf": "Roo.bootstrap.NavItem"
     },
     {
-     "name": "preventDefault",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "",
+     "name": "badgecls",
+     "type": "String",
+     "desc": "the extra classes for the badge",
+     "memberOf": "Roo.bootstrap.NavItem",
      "optvals": [
-      "true",
-      "false"
+      "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": "",
+     "memberOf": "Roo.bootstrap.NavItem",
      "optvals": [
       "true",
       "false"
      ]
     },
     {
-     "name": "disabled",
+     "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": "default false",
-     "memberOf": ""
+     "desc": "link to element default false",
+     "memberOf": "Roo.bootstrap.NavItem",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
      "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}",
      "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}",
     }
    ]
   },
-  "Roo.bootstrap.PagingToolbar": {
+  "Roo.bootstrap.NavSimplebar": {
    "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": ""
-    },
     {
      "name": "inverse",
      "type": "Boolean",
      "desc": "is inverted color",
-     "memberOf": "Roo.bootstrap.NavSimplebar"
+     "memberOf": ""
     },
     {
      "name": "type",
      "type": "String",
      "desc": "",
-     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "memberOf": "",
      "optvals": [
       "nav",
       "pills",
      "name": "arrangement",
      "type": "Boolean",
      "desc": "stacked | justified",
-     "memberOf": "Roo.bootstrap.NavSimplebar"
+     "memberOf": ""
     },
     {
      "name": "align",
      "type": "String",
      "desc": "alignment",
-     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "memberOf": "",
      "optvals": [
       "left",
       "right"
      "name": "main",
      "type": "Boolean",
      "desc": "main nav bar? default false",
-     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "memberOf": "",
      "optvals": [
       "true",
       "false"
      "name": "loadMask",
      "type": "Boolean",
      "desc": "loadMask on the bar",
-     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "memberOf": "",
      "optvals": [
       "true",
       "false"
      "name": "tag",
      "type": "String",
      "desc": "default is nav",
-     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "memberOf": "",
      "optvals": [
       "header",
       "footer",
      "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)",
      "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.Popover": {
+  "Roo.bootstrap.Navbar": {
    "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",
-     "type": "String",
-     "desc": "what (parent or false to trigger manually.)",
-     "memberOf": ""
-    },
-    {
-     "name": "delay",
-     "type": "Number",
-     "desc": "- delay before showing",
-     "memberOf": ""
-    },
     {
      "name": "cls",
      "type": "String",
     }
    ]
   },
-  "Roo.bootstrap.Progress": {
+  "Roo.bootstrap.Pagination": {
    "props": [
     {
-     "name": "striped",
-     "type": "Boolean",
-     "desc": "striped of the progress bar",
+     "name": "size",
+     "type": "String",
+     "desc": "xs | sm | md | lg",
      "memberOf": ""
     },
     {
-     "name": "active",
+     "name": "inverse",
      "type": "Boolean",
-     "desc": "animated of the progress bar",
+     "desc": "false | true",
      "memberOf": ""
     },
     {
     }
    ]
   },
-  "Roo.bootstrap.ProgressBar": {
+  "Roo.bootstrap.PaginationItem": {
    "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",
+     "name": "html",
+     "type": "String",
+     "desc": "text",
      "memberOf": ""
     },
     {
-     "name": "label",
+     "name": "href",
      "type": "String",
-     "desc": "label for the progress bar",
+     "desc": "the link",
      "memberOf": ""
     },
     {
-     "name": "panel",
-     "type": "String",
-     "desc": "",
+     "name": "preventDefault",
+     "type": "Boolean",
+     "desc": "default true",
      "memberOf": "",
      "optvals": [
-      "success",
-      "info",
-      "warning",
-      "danger"
+      "true",
+      "false"
      ]
     },
     {
-     "name": "role",
-     "type": "String",
-     "desc": "role of the progress bar",
-     "memberOf": ""
+     "name": "active",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "sr_only",
-     "type": "String",
-     "desc": "text",
+     "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}",
     }
    ]
   },
-  "Roo.bootstrap.Radio": {
+  "Roo.bootstrap.PagingToolbar": {
    "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": "dataSource",
+     "type": "Roo.data.Store",
+     "desc": "The underlying data store providing the paged data",
+     "memberOf": ""
     },
     {
-     "name": "groupId",
-     "type": "String",
-     "desc": "the checkbox group id // normal just use for checkbox",
-     "memberOf": "Roo.bootstrap.CheckBox"
+     "name": "container",
+     "type": "String/HTMLElement/Element",
+     "desc": "container The id or element that will contain the toolbar",
+     "memberOf": ""
     },
     {
-     "name": "disabled",
+     "name": "displayInfo",
      "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "True to display the displayMsg (defaults to false)",
+     "memberOf": ""
     },
     {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "pageSize",
+     "type": "Number",
+     "desc": "The number of records to display per page (defaults to 20)",
+     "memberOf": ""
     },
     {
-     "name": "inputType",
+     "name": "displayMsg",
      "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "The paging status message to display (defaults to \"Displaying {start} - {end} of {total}\")",
+     "memberOf": ""
     },
     {
-     "name": "name",
+     "name": "emptyMsg",
      "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"
+     "desc": "The message to display when no records are found (defaults to \"No data to display\")",
+     "memberOf": ""
     },
     {
-     "name": "labelWidth",
-     "type": "Number",
-     "desc": "set the width of label (0-12)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "inverse",
+     "type": "Boolean",
+     "desc": "is inverted color",
+     "memberOf": "Roo.bootstrap.NavSimplebar"
     },
     {
-     "name": "labelAlign",
+     "name": "type",
      "type": "String",
      "desc": "",
-     "memberOf": "Roo.bootstrap.Input",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
      "optvals": [
-      "top",
-      "left"
+      "nav",
+      "pills",
+      "tabs"
      ]
     },
     {
-     "name": "readOnly",
+     "name": "arrangement",
      "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"
+     "desc": "stacked | justified",
+     "memberOf": "Roo.bootstrap.NavSimplebar"
     },
     {
      "name": "align",
      "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
+     "desc": "alignment",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
      "optvals": [
       "left",
-      "center",
       "right"
      ]
     },
     {
-     "name": "forceFeedback",
+     "name": "main",
      "type": "Boolean",
-     "desc": "Default false",
-     "memberOf": "Roo.bootstrap.Input",
+     "desc": "main nav bar? default false",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
      "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",
+     "name": "loadMask",
      "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
+     "desc": "loadMask on the bar",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
      "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",
+     "name": "tag",
      "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": "default is nav",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "header",
+      "footer",
+      "nav",
+      "div"
+     ]
     },
     {
      "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": [
      "desc": "Appends an event handler to this component"
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
+     "name": "bind",
+     "sig": "(Roo.data.Store store)",
      "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": "Binds the paging toolbar to the specified {@link Roo.data.Store}"
     },
     {
-     "name": "clearInvalid",
-     "sig": "()",
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
+     "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",
      "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)",
      "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)",
      "desc": "Removes a listener (shorthand for removeListener)"
     },
     {
-     "name": "validate",
-     "sig": "()",
-     "type": "function",
-     "desc": "Validates the field value"
-    },
-    {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
+     "name": "unbind",
+     "sig": "(Roo.data.Store store)",
      "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
+     "desc": "Unbinds the paging toolbar from the specified {@link Roo.data.Store}"
     }
    ]
   },
-  "Roo.bootstrap.Row": {
+  "Roo.bootstrap.Popover": {
    "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",
+     "type": "String",
+     "desc": "what (parent or false to trigger manually.)",
+     "memberOf": ""
+    },
+    {
+     "name": "delay",
+     "type": "Number",
+     "desc": "- delay before showing",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is hidden."
+     "desc": "After the popover hide"
     },
     {
      "name": "render",
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is shown."
+     "desc": "After the popover show"
     }
    ],
    "methods": [
     }
    ]
   },
-  "Roo.bootstrap.Slider": {
+  "Roo.bootstrap.Progress": {
    "props": [
     {
-     "name": "cls",
-     "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
-    },
-    {
-     "name": "style",
+     "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",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "style",
      "type": "String",
      "desc": "any extra css",
      "memberOf": "Roo.bootstrap.Component"
     }
    ]
   },
-  "Roo.bootstrap.TabGroup": {
+  "Roo.bootstrap.ProgressBar": {
    "props": [
     {
-     "name": "navId",
-     "type": "String",
-     "desc": "the navigation id (for use with navbars) - will be auto generated if it does not exist..",
-     "memberOf": ""
-    },
-    {
-     "name": "carousel",
-     "type": "Boolean",
-     "desc": "true to make the group behave like a carousel",
-     "memberOf": ""
-    },
-    {
-     "name": "bullets",
+     "name": "aria_valuenow",
      "type": "Number",
-     "desc": "show the panel pointer.. default 0",
+     "desc": "aria-value now",
      "memberOf": ""
     },
     {
-     "name": "autoslide",
-     "type": "Boolean",
-     "desc": "auto slide .. default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "slideOnTouch",
-     "type": "Boolean",
-     "desc": "slide on touch .. default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "timer",
+     "name": "aria_valuemin",
      "type": "Number",
-     "desc": "auto slide timer .. default 0 millisecond",
+     "desc": "aria-value min",
      "memberOf": ""
     },
     {
-     "name": "xs",
-     "type": "Number",
-     "desc": "colspan out of 12 for mobile-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
-    },
-    {
-     "name": "sm",
-     "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
-    },
-    {
-     "name": "md",
-     "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
-    },
-    {
-     "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"
-    },
-    {
-     "name": "smoff",
-     "type": "Number",
-     "desc": "colspan offset out of 12 for tablet-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
-    },
-    {
-     "name": "mdoff",
-     "type": "Number",
-     "desc": "colspan offset out of 12 for computer-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
-    },
-    {
-     "name": "lgoff",
+     "name": "aria_valuemax",
      "type": "Number",
-     "desc": "colspan offset out of 12 for large computer-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "aria-value max",
+     "memberOf": ""
     },
     {
-     "name": "hidden",
-     "type": "Boolean",
-     "desc": "hide the element",
-     "memberOf": "Roo.bootstrap.Column",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "label",
+     "type": "String",
+     "desc": "label for the progress bar",
+     "memberOf": ""
     },
     {
-     "name": "alert",
+     "name": "panel",
      "type": "String",
-     "desc": "type alert (changes background / border...)",
-     "memberOf": "Roo.bootstrap.Column",
+     "desc": "",
+     "memberOf": "",
      "optvals": [
       "success",
       "info",
      ]
     },
     {
-     "name": "fa",
-     "type": "String",
-     "desc": "font awesome icon",
-     "memberOf": "Roo.bootstrap.Column",
-     "optvals": [
-      "ban",
-      "check",
-      "..."
-     ]
-    },
-    {
-     "name": "fasize",
-     "type": "Number",
-     "desc": "font awsome size",
-     "memberOf": "Roo.bootstrap.Column",
-     "optvals": [
-      "1",
-      "2",
-      "...."
-     ]
-    },
-    {
-     "name": "icon",
+     "name": "role",
      "type": "String",
-     "desc": "glyphicon name",
-     "memberOf": "Roo.bootstrap.Column",
-     "optvals": [
-      "info-sign",
-      "check",
-      "..."
-     ]
+     "desc": "role of the progress bar",
+     "memberOf": ""
     },
     {
-     "name": "html",
+     "name": "sr_only",
      "type": "String",
-     "desc": "content of column.",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "text",
+     "memberOf": ""
     },
     {
      "name": "cls",
      "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": "Removes all listeners for this object"
     },
-    {
-     "name": "register",
-     "sig": "(Roo.bootstrap.NavItem the)",
-     "type": "function",
-     "desc": "register a Navigation item"
-    },
-    {
-     "name": "register",
-     "sig": "(Roo.bootstrap.NavGroup the)",
-     "type": "function",
-     "desc": "register a Navigation Group"
-    },
     {
      "name": "releaseCapture",
      "sig": "(Observable o)",
      "type": "function",
      "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": "()",
     }
    ]
   },
-  "Roo.bootstrap.TabPanel": {
+  "Roo.bootstrap.Radio": {
    "props": [
     {
-     "name": "active",
+     "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": "panel active",
-     "memberOf": ""
+     "desc": "initnal the element",
+     "memberOf": "Roo.bootstrap.CheckBox"
     },
     {
-     "name": "html",
+     "name": "inline",
+     "type": "Boolean",
+     "desc": "inline the element (default false)",
+     "memberOf": "Roo.bootstrap.CheckBox"
+    },
+    {
+     "name": "groupId",
      "type": "String",
-     "desc": "panel content",
-     "memberOf": ""
+     "desc": "the checkbox group id // normal just use for checkbox",
+     "memberOf": "Roo.bootstrap.CheckBox"
     },
     {
-     "name": "tabId",
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "is it disabled",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "inputType",
      "type": "String",
-     "desc": "unique tab ID (will be autogenerated if not set. - used to match TabItem to Panel)",
-     "memberOf": ""
+     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "navId",
+     "name": "name",
      "type": "String",
-     "desc": "The Roo.bootstrap.NavGroup which triggers show hide ()",
-     "memberOf": ""
+     "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",
+     "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": "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",
    ],
    "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",
+     "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is destroyed. Return false to stop the destroy."
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "changed",
-     "sig": "function (_self, state)\n{\n\n}",
+     "name": "blur",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the active status changes"
+     "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",
      "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)",
      "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)",
      "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.Table": {
+  "Roo.bootstrap.Row": {
    "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": "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": ""
+     "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": "()",
      "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)",
     }
    ]
   },
-  "Roo.bootstrap.Table.AbstractSelectionModel": {
+  "Roo.bootstrap.Slider": {
    "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": "cls",
+     "type": "String",
+     "desc": "css class",
+     "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": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "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": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "isLocked",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the selections are locked."
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "lock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Locks the selections."
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "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": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
-     "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener"
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
+     "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": "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": "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": "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.bootstrap.TableBody": {
+  "Roo.bootstrap.TabGroup": {
    "props": [
     {
-     "name": "cls",
+     "name": "navId",
      "type": "String",
-     "desc": "element class",
+     "desc": "the navigation id (for use with navbars) - will be auto generated if it does not exist..",
      "memberOf": ""
     },
     {
-     "name": "tag",
-     "type": "String",
-     "desc": "element tag (thead|tbody|tfoot) default tbody",
+     "name": "carousel",
+     "type": "Boolean",
+     "desc": "true to make the group behave like a carousel",
      "memberOf": ""
     },
     {
-     "name": "align",
-     "type": "String",
-     "desc": "Aligns the content inside the element",
+     "name": "bullets",
+     "type": "Boolean",
+     "desc": "show bullets for the panels",
      "memberOf": ""
     },
     {
-     "name": "charoff",
+     "name": "autoslide",
+     "type": "Boolean",
+     "desc": "auto slide .. default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "slideOnTouch",
+     "type": "Boolean",
+     "desc": "slide on touch .. default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "timer",
      "type": "Number",
-     "desc": "Sets the number of characters the content inside the element will be aligned from the character specified by the char attribute",
+     "desc": "auto slide timer .. default 0 millisecond",
      "memberOf": ""
     },
     {
-     "name": "valign",
+     "name": "xs",
+     "type": "Number",
+     "desc": "colspan out of 12 for mobile-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
+    },
+    {
+     "name": "sm",
+     "type": "Number",
+     "desc": "colspan out of 12 for tablet-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
+    },
+    {
+     "name": "md",
+     "type": "Number",
+     "desc": "colspan out of 12 for computer-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
+    },
+    {
+     "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"
+    },
+    {
+     "name": "smoff",
+     "type": "Number",
+     "desc": "colspan offset out of 12 for tablet-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
+    },
+    {
+     "name": "mdoff",
+     "type": "Number",
+     "desc": "colspan offset out of 12 for computer-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
+    },
+    {
+     "name": "lgoff",
+     "type": "Number",
+     "desc": "colspan offset out of 12 for large computer-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
+    },
+    {
+     "name": "hidden",
+     "type": "Boolean",
+     "desc": "hide the element",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "alert",
      "type": "String",
-     "desc": "Vertical aligns the content inside the <tbody> element",
-     "memberOf": ""
+     "desc": "type alert (changes background / border...)",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "success",
+      "info",
+      "warning",
+      "danger"
+     ]
+    },
+    {
+     "name": "fa",
+     "type": "String",
+     "desc": "font awesome icon",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "ban",
+      "check",
+      "..."
+     ]
+    },
+    {
+     "name": "fasize",
+     "type": "Number",
+     "desc": "font awsome size",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "1",
+      "2",
+      "...."
+     ]
+    },
+    {
+     "name": "icon",
+     "type": "String",
+     "desc": "glyphicon name",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "info-sign",
+      "check",
+      "..."
+     ]
+    },
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "content of column.",
+     "memberOf": "Roo.bootstrap.Column"
+    },
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "style",
      "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": "Removes all listeners for this object"
     },
+    {
+     "name": "register",
+     "sig": "(Roo.bootstrap.NavItem the)",
+     "type": "function",
+     "desc": "register a Navigation item"
+    },
+    {
+     "name": "register",
+     "sig": "(Roo.bootstrap.NavGroup the)",
+     "type": "function",
+     "desc": "register a Navigation Group"
+    },
     {
      "name": "releaseCapture",
      "sig": "(Observable o)",
      "type": "function",
      "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": "()",
     }
    ]
   },
-  "Roo.bootstrap.TableCell": {
+  "Roo.bootstrap.TabPanel": {
    "props": [
     {
-     "name": "html",
-     "type": "String",
-     "desc": "cell contain text",
-     "memberOf": ""
-    },
-    {
-     "name": "cls",
-     "type": "String",
-     "desc": "cell class",
-     "memberOf": ""
-    },
-    {
-     "name": "tag",
-     "type": "String",
-     "desc": "cell tag (td|th) default td",
-     "memberOf": ""
-    },
-    {
-     "name": "abbr",
-     "type": "String",
-     "desc": "Specifies an abbreviated version of the content in a cell",
-     "memberOf": ""
-    },
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "Aligns the content in a cell",
-     "memberOf": ""
-    },
-    {
-     "name": "axis",
-     "type": "String",
-     "desc": "Categorizes cells",
-     "memberOf": ""
-    },
-    {
-     "name": "bgcolor",
-     "type": "String",
-     "desc": "Specifies the background color of a cell",
-     "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": "colspan",
-     "type": "Number",
-     "desc": "Specifies the number of columns a cell should span",
+     "name": "active",
+     "type": "Boolean",
+     "desc": "panel active",
      "memberOf": ""
     },
     {
-     "name": "headers",
+     "name": "html",
      "type": "String",
-     "desc": "Specifies one or more header cells a cell is related to",
-     "memberOf": ""
-    },
-    {
-     "name": "height",
-     "type": "Number",
-     "desc": "Sets the height of a cell",
+     "desc": "panel content",
      "memberOf": ""
     },
     {
-     "name": "nowrap",
+     "name": "tabId",
      "type": "String",
-     "desc": "Specifies that the content inside a cell should not wrap",
-     "memberOf": ""
-    },
-    {
-     "name": "rowspan",
-     "type": "Number",
-     "desc": "Sets the number of rows a cell should span",
+     "desc": "unique tab ID (will be autogenerated if not set. - used to match TabItem to Panel)",
      "memberOf": ""
     },
     {
-     "name": "scope",
+     "name": "navId",
      "type": "String",
-     "desc": "Defines a way to associate header cells and data cells in a table",
+     "desc": "The Roo.bootstrap.NavGroup which triggers show hide ()",
      "memberOf": ""
     },
     {
-     "name": "valign",
+     "name": "cls",
      "type": "String",
-     "desc": "Vertical aligns the content in a cell",
-     "memberOf": ""
-    },
-    {
-     "name": "width",
-     "type": "Number",
-     "desc": "Specifies the width of a cell",
-     "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}",
     }
    ]
   },
-  "Roo.bootstrap.TableRow": {
+  "Roo.bootstrap.Table": {
    "props": [
     {
      "name": "cls",
      "type": "String",
-     "desc": "row class",
+     "desc": "table class",
      "memberOf": ""
     },
     {
      "name": "align",
      "type": "String",
-     "desc": "Aligns the content in a table row",
-     "memberOf": ""
+     "desc": "Specifies the alignment of a table according to surrounding text",
+     "memberOf": "",
+     "optvals": [
+      "left",
+      "center",
+      "right"
+     ]
     },
     {
      "name": "bgcolor",
      "type": "String",
-     "desc": "Specifies a background color for a table row",
+     "desc": "Specifies the background color for a table",
      "memberOf": ""
     },
     {
-     "name": "charoff",
+     "name": "border",
      "type": "Number",
-     "desc": "Sets the number of characters the content will be aligned from the character specified by the char attribute",
+     "desc": "Specifies whether the table cells should have borders or not",
      "memberOf": ""
     },
     {
-     "name": "valign",
+     "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": "Vertical aligns the content in a table row",
+     "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": "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": "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, 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 when the children have been rendered.."
     },
+    {
+     "name": "contextmenu",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw contextmenu event for the entire grid."
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
+    {
+     "name": "headercontextmenu",
+     "sig": "function (_self, columnIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a header is right clicked"
+    },
     {
      "name": "hide",
      "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": "rowcontextmenu",
+     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is right 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": "()",
      "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)",
     }
    ]
   },
-  "Roo.bootstrap.TextArea": {
+  "Roo.bootstrap.Table.AbstractSelectionModel": {
    "props": [
     {
-     "name": "cols",
-     "type": "Number",
-     "desc": "Specifies the visible width of a text area",
-     "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": "rows",
-     "type": "Number",
-     "desc": "Specifies the visible number of lines in a text area",
-     "memberOf": ""
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
     },
     {
-     "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": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "resize",
-     "type": "string",
-     "desc": "",
-     "memberOf": "",
-     "optvals": [
-      "none",
-      "both",
-      "horizontal",
-      "vertical",
-      "inherit",
-      "initial"
-     ]
+     "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": "html",
-     "type": "string",
-     "desc": "text",
-     "memberOf": ""
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "isLocked",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the selections are locked."
     },
     {
-     "name": "inputType",
-     "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "lock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Locks the selections."
     },
     {
-     "name": "name",
-     "type": "String",
-     "desc": "name of the input",
-     "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": "placeholder",
-     "type": "string",
-     "desc": "- placeholder to put in text.",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "before",
-     "type": "string",
-     "desc": "- input group add on before",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "after",
-     "type": "string",
-     "desc": "- input group add on after",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
     },
     {
-     "name": "size",
-     "type": "string",
-     "desc": "- (lg|sm) or leave empty..",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
     },
     {
-     "name": "xs",
-     "type": "Number",
-     "desc": "colspan out of 12 for mobile-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
+     "name": "unlock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Unlocks the selections."
+    }
+   ]
+  },
+  "Roo.bootstrap.Table.RowSelectionModel": {
+   "props": [
     {
-     "name": "sm",
-     "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "singleSelect",
+     "type": "Boolean",
+     "desc": "True to allow selection of only one row at a time (defaults to false)",
+     "memberOf": ""
     },
     {
-     "name": "md",
-     "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens",
-     "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": "lg",
-     "type": "Number",
-     "desc": "colspan out of 12 for large computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "afterselectionchange",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the selection changes (eg. by key press or clicking)"
     },
     {
-     "name": "value",
-     "type": "string",
-     "desc": "default value of the input",
-     "memberOf": "Roo.bootstrap.Input"
+     "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": "labelWidth",
-     "type": "Number",
-     "desc": "set the width of label (0-12)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "rowdeselect",
+     "sig": "function (_self, rowIndex)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is deselected."
     },
     {
-     "name": "labelAlign",
-     "type": "String",
-     "desc": "",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "top",
-      "left"
-     ]
+     "name": "rowselect",
+     "sig": "function (_self, rowIndex, r)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is selected."
     },
     {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "Specifies that the field should be read-only",
-     "memberOf": "Roo.bootstrap.Input"
+     "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": "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": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "align",
-     "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "left",
-      "center",
-      "right"
-     ]
+     "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": "forceFeedback",
-     "type": "Boolean",
-     "desc": "Default false",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "clearSelections",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears all selections."
     },
     {
-     "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": "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": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "deselectRow",
+     "sig": "(Number row)",
+     "type": "function",
+     "desc": "Deselects a row."
     },
     {
-     "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": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "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": "getCount",
+     "sig": "()",
+     "type": "function",
+     "desc": "Gets the number of selected rows."
     },
     {
-     "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": "getSelected",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the first selected record."
     },
     {
-     "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": "getSelections",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the selected records"
     },
     {
-     "name": "hasFeedback",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
-     "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": "invalidFeedbackIcon",
-     "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "hasSelection",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns True if there is a selection."
     },
     {
-     "name": "validFeedbackIcon",
-     "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "isIdSelected",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Returns True if the specified record id is selected."
     },
     {
-     "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": "isLocked",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the selections are locked."
     },
     {
-     "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": "isSelected",
+     "sig": "(Number/Record record)",
+     "type": "function",
+     "desc": "Returns True if the specified row is selected."
     },
     {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "lock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Locks the selections."
     },
     {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "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": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
     },
     {
-     "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": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
     },
     {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "selectAll",
+     "sig": "()",
+     "type": "function",
+     "desc": "Selects all rows."
     },
     {
-     "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": "selectFirstRow",
+     "sig": "()",
+     "type": "function",
+     "desc": "Selects the first row in the grid."
     },
     {
-     "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": "selectLastRow",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Select the last row."
     },
     {
-     "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": "selectNext",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects the row immediately following the last selected row."
     },
     {
-     "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": "selectPrevious",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects the row that precedes the last selected row."
     },
     {
-     "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": "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": "css class",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "element class",
+     "memberOf": ""
+    },
+    {
+     "name": "tag",
+     "type": "String",
+     "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 inside the element will be aligned from the character specified by the char attribute",
+     "memberOf": ""
+    },
+    {
+     "name": "valign",
+     "type": "String",
+     "desc": "Vertical aligns the content inside the <tbody> element",
+     "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)",
      "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)",
      "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.TableCell": {
    "props": [
     {
-     "name": "format",
+     "name": "html",
      "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').",
+     "desc": "cell contain text",
      "memberOf": ""
     },
     {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "fieldLabel",
+     "name": "cls",
      "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "cell class",
+     "memberOf": ""
     },
     {
-     "name": "inputType",
+     "name": "tag",
      "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "cell tag (td|th) default td",
+     "memberOf": ""
     },
     {
-     "name": "name",
+     "name": "abbr",
      "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"
+     "desc": "Specifies an abbreviated version of the content in a cell",
+     "memberOf": ""
     },
     {
-     "name": "before",
-     "type": "string",
-     "desc": "- input group add on before",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "align",
+     "type": "String",
+     "desc": "Aligns the content in a cell",
+     "memberOf": ""
     },
     {
-     "name": "after",
-     "type": "string",
-     "desc": "- input group add on after",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "axis",
+     "type": "String",
+     "desc": "Categorizes cells",
+     "memberOf": ""
     },
     {
-     "name": "size",
-     "type": "string",
-     "desc": "- (lg|sm) or leave empty..",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "bgcolor",
+     "type": "String",
+     "desc": "Specifies the background color of a cell",
+     "memberOf": ""
     },
     {
-     "name": "xs",
+     "name": "charoff",
      "type": "Number",
-     "desc": "colspan out of 12 for mobile-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Sets the number of characters the content will be aligned from the character specified by the char attribute",
+     "memberOf": ""
     },
     {
-     "name": "sm",
+     "name": "colspan",
      "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Specifies the number of columns a cell should span",
+     "memberOf": ""
     },
     {
-     "name": "md",
-     "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "headers",
+     "type": "String",
+     "desc": "Specifies one or more header cells a cell is related to",
+     "memberOf": ""
     },
     {
-     "name": "lg",
+     "name": "height",
      "type": "Number",
-     "desc": "colspan out of 12 for large computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Sets the height of a cell",
+     "memberOf": ""
     },
     {
-     "name": "value",
-     "type": "string",
-     "desc": "default value of the input",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "nowrap",
+     "type": "String",
+     "desc": "Specifies that the content inside a cell should not wrap",
+     "memberOf": ""
     },
     {
-     "name": "labelWidth",
+     "name": "rowspan",
      "type": "Number",
-     "desc": "set the width of label (0-12)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Sets the number of rows a cell should span",
+     "memberOf": ""
     },
     {
-     "name": "labelAlign",
+     "name": "scope",
      "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"
+     "desc": "Defines a way to associate header cells and data cells in a table",
+     "memberOf": ""
     },
     {
-     "name": "autocomplete",
+     "name": "valign",
      "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"
+     "desc": "Vertical aligns the content in a cell",
+     "memberOf": ""
     },
     {
-     "name": "align",
-     "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "left",
-      "center",
-      "right"
-     ]
+     "name": "width",
+     "type": "Number",
+     "desc": "Specifies the width of a cell",
+     "memberOf": ""
     },
     {
-     "name": "forceFeedback",
-     "type": "Boolean",
-     "desc": "Default false",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "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": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "validateOnBlur",
+     "name": "can_build_overlaid",
      "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "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": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "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": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "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": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "validClass",
+     "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": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "hasFeedback",
+     "name": "allowDomMove",
      "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
+     "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": [
-      "true",
-      "false"
+      "display",
+      "visibility"
      ]
     },
     {
-     "name": "invalidFeedbackIcon",
+     "name": "actionMode",
      "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.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": "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": "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": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "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": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "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": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
     },
     {
-     "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": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
     },
     {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
     },
     {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
     },
     {
-     "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": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
     },
     {
-     "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": "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": "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": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
     },
     {
-     "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": "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": "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": "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.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}",
      "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}",
-     "type": "function",
-     "desc": "Fires when this field show."
-    },
-    {
-     "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."
+     "desc": "Fires after the component is shown."
     }
    ],
    "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)",
      "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)",
      "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.Tooltip": {
-   "props": [],
-   "events": [],
-   "methods": [
-    {
-     "name": "currentEl",
-     "sig": "()",
-     "type": "function",
-     "desc": ""
-    }
-   ]
-  },
-  "Roo.bootstrap.TriggerField": {
+  "Roo.bootstrap.TextArea": {
    "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.",
+     "name": "cols",
+     "type": "Number",
+     "desc": "Specifies the visible width of a text area",
      "memberOf": ""
     },
     {
-     "name": "caret",
-     "type": "String",
-     "desc": "a fontawesome for the trigger icon see http://fortawesome.github.io/Font-Awesome/icons/",
+     "name": "rows",
+     "type": "Number",
+     "desc": "Specifies the visible number of lines in a text area",
+     "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": [
-      "search",
-      "calendar"
+      "soft",
+      "hard"
      ]
     },
     {
-     "name": "hideTrigger",
-     "type": "Boolean",
-     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "removable",
-     "type": "Boolean",
-     "desc": "special filter default false",
+     "name": "resize",
+     "type": "string",
+     "desc": "",
      "memberOf": "",
      "optvals": [
-      "true",
-      "false"
+      "none",
+      "both",
+      "horizontal",
+      "vertical",
+      "inherit",
+      "initial"
      ]
     },
+    {
+     "name": "html",
+     "type": "string",
+     "desc": "text",
+     "memberOf": ""
+    },
     {
      "name": "disabled",
      "type": "Boolean",
      "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "inputType",
+     "name": "inputType",
      "type": "String",
      "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
      "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",
      "name": "inputEl",
      "sig": "()",
      "type": "function",
-     "desc": "return the real input element."
+     "desc": "return the real textarea element."
     },
     {
      "name": "isVisible",
      "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": "()",
     }
    ]
   },
-  "Roo.bootstrap.UploadCropbox": {
+  "Roo.bootstrap.TimeField": {
    "props": [
     {
-     "name": "emptyText",
+     "name": "format",
      "type": "String",
-     "desc": "show when image has been loaded",
+     "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": ""
     },
     {
-     "name": "rotateNotify",
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "is it disabled",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "inputType",
      "type": "String",
-     "desc": "show when image too small to rotate",
-     "memberOf": ""
+     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "errorTimeout",
+     "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": "default 3000",
-     "memberOf": ""
+     "desc": "colspan out of 12 for mobile-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "minWidth",
+     "name": "sm",
      "type": "Number",
-     "desc": "default 300",
-     "memberOf": ""
+     "desc": "colspan out of 12 for tablet-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "minHeight",
+     "name": "md",
      "type": "Number",
-     "desc": "default 300",
-     "memberOf": ""
+     "desc": "colspan out of 12 for computer-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "buttons",
-     "type": "Array",
-     "desc": "default ['rotateLeft', 'pictureBtn', 'rotateRight']",
-     "memberOf": ""
+     "name": "lg",
+     "type": "Number",
+     "desc": "colspan out of 12 for large computer-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "isDocument",
+     "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": "default false",
-     "memberOf": "",
+     "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": "url",
+     "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": "action url",
-     "memberOf": ""
+     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "paramName",
+     "name": "invalidClass",
      "type": "String",
-     "desc": "default 'imageUpload'",
-     "memberOf": ""
+     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "method",
+     "name": "validClass",
      "type": "String",
-     "desc": "default POST",
-     "memberOf": ""
+     "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",
     }
    ],
    "events": [
-    {
-     "name": "arrange",
-     "sig": "function (_self, formData)\n{\n\n}",
-     "type": "function",
-     "desc": "Fire when arrange the file data"
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "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}",
      "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "beforeselectfile",
+     "name": "beforeshow",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fire before select file"
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "beforeshow",
+     "name": "blur",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before the component is shown.  Return false to stop the show."
+     "desc": "Fires when this field loses input focus."
     },
     {
-     "name": "childrenrendered",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "change",
+     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the children have been rendered.."
+     "desc": "Fires just before the field blurs if the field value has changed."
     },
     {
-     "name": "crop",
-     "sig": "function (_self, data)\n{\n\n}",
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fire after initEvent"
+     "desc": "Fires when the children have been rendered.."
     },
     {
      "name": "destroy",
      "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}",
      "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}",
+     "name": "focus",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fire when footerbuttonclick"
+     "desc": "Fires when this field receives input focus."
     },
     {
      "name": "hide",
      "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}",
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
      "type": "function",
-     "desc": "Fire when inspect the file"
+     "desc": "Fires after the field has been marked as invalid."
     },
     {
-     "name": "prepare",
-     "sig": "function (_self, file)\n{\n\n}",
+     "name": "keyup",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
-     "desc": "Fire when preparing the file data"
+     "desc": "Fires after the key up"
     },
     {
      "name": "render",
      "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}",
+     "name": "select",
+     "sig": "function (_self, date)\n{\n\n}",
      "type": "function",
-     "desc": "Fire when rotate the image"
+     "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": "trash",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "specialkey",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
-     "desc": "Fire when trash image"
+     "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": "upload",
-     "sig": "function (_self, data)\n{\n\n}",
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fire when xhr upload the file"
+     "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)",
      "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)",
      "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": {
+  "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}",
      "desc": "Fires after the component is hidden."
     },
     {
-     "name": "render",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is rendered."
+     "desc": "Fires after the field has been marked as invalid."
     },
     {
-     "name": "show",
-     "sig": "function (_self)\n{\n\n}",
+     "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}",
+     "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": "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)",
      "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)",
      "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}",
-     "type": "function",
-     "desc": "When a pane is activated"
-    },
-    {
-     "name": "addpane",
-     "sig": "function (pane)\n{\n\n}",
+     "name": "arrange",
+     "sig": "function (_self, formData)\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": [
      "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)",
     }
    ]
   },
-  "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}",
      "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)",
     }
    ]
   },
-  "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}",
      "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)",
     }
    ]
   },
-  "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": [
      "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)",
     }
    ]
   },
-  "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}",
     }
    ]
   },
-  "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": ""
-    },
-    {
-     "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": ""
+     "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",
-     "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": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "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": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "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": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.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": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
     {
-     "name": "totalProperty",
+     "name": "disableClass",
      "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": ""
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "successProperty",
-     "type": "String",
-     "desc": "Name of the property from which to retrieve the success attribute used by forms.",
-     "memberOf": ""
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "root",
+     "name": "hideMode",
      "type": "String",
-     "desc": "name of the property which contains the Array of row objects.",
-     "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": "id",
+     "name": "actionMode",
      "type": "String",
-     "desc": "Name of the property within a row object that contains a record identifier value.",
-     "memberOf": ""
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "fields",
-     "type": "Array",
-     "desc": "Array of field definition objects",
-     "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": [
-    {
-     "name": "fields",
-     "type": "Array",
-     "desc": "An array of field definition objects, or field name strings.",
-     "memberOf": ""
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "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": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "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": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the data cache has been cleared."
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "datachanged",
+     "name": "destroy",
      "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."
+     "desc": "Fires after the component is destroyed."
     },
     {
-     "name": "load",
-     "sig": "function (_self, records, options)\n{\n\n}",
+     "name": "disable",
+     "sig": "function (_self)\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."
-    },
-    {
-     "name": "sort",
-     "sig": "(Function fn, Object scope)",
-     "type": "function",
-     "desc": "Sorts this nodes children using the supplied sort function"
+     "desc": "Sends an HTTP request to a remote server."
     },
     {
      "name": "un",
     }
    ]
   },
-  "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",
      "desc": "Abstract method called when we are no longer hovering over an element"
     },
     {
-     "name": "onDragOver",
-     "sig": "(Event e, String|DragDrop[] id)",
+     "name": "onDragOver",
+     "sig": "(Event e, String|DragDrop[] id)",
+     "type": "function",
+     "desc": "Abstract method called when this element is hovering over another\nDragDrop obj"
+    },
+    {
+     "name": "onInvalidDrop",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Abstract method called when this item is dropped on an area with no\ndrop target"
+    },
+    {
+     "name": "onMouseDown",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Event handler that fires when a drag/drop obj gets a mousedown"
+    },
+    {
+     "name": "onMouseUp",
+     "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": "The padding configured for this drag and drop object for calculating\nthe drop zone intersection with this object."
+    },
+    {
+     "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": "removeFromGroup",
+     "sig": "(string sGroup)",
+     "type": "function",
+     "desc": "Remove's this instance from the supplied interaction group"
+    },
+    {
+     "name": "removeInvalidHandleClass",
+     "sig": "(string cssClass)",
+     "type": "function",
+     "desc": "Unsets an invalid css class"
+    },
+    {
+     "name": "removeInvalidHandleId",
+     "sig": "(string id)",
+     "type": "function",
+     "desc": "Unsets an invalid handle id"
+    },
+    {
+     "name": "removeInvalidHandleType",
+     "sig": "(string tagName)",
+     "type": "function",
+     "desc": "Unsets an excluded tag name set by addInvalidHandleType"
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "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)",
+     "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)",
+     "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."
+    },
+    {
+     "name": "setInitPosition",
+     "sig": "(int diffX, int diffY)",
+     "type": "function",
+     "desc": "Stores the initial placement of the linked element."
+    },
+    {
+     "name": "setOuterHandleElId",
+     "sig": "( id)",
+     "type": "function",
+     "desc": "Allows you to set an element outside of the linked element as a drag\nhandle"
+    },
+    {
+     "name": "setPadding",
+     "sig": "(int iTop, int iRight, int iBot, int iLeft)",
+     "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."
+    },
+    {
+     "name": "setXConstraint",
+     "sig": "(int iLeft, int iRight, int iTickSize)",
+     "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."
+    },
+    {
+     "name": "setYConstraint",
+     "sig": "(int iUp, int iDown, int iTickSize)",
+     "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."
+    },
+    {
+     "name": "startDrag",
+     "sig": "(int X, int Y)",
+     "type": "function",
+     "desc": "Abstract method called after a drag/drop object is clicked\nand the drag or mousedown time thresholds have beeen met."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unlock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Unlock this instace"
+    },
+    {
+     "name": "unreg",
+     "sig": "()",
+     "type": "function",
+     "desc": "Remove all drag and drop hooks for this element"
+    }
+   ]
+  },
+  "Roo.dd.DragZone": {
+   "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",
+     "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",
+     "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": "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": "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": "(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 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": "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": "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",
+     "sig": "(Event e, String|DragDrop[] id)",
+     "type": "function",
+     "desc": "Abstract method called when this element fist begins hovering over\nanother DragDrop obj"
+    },
+    {
+     "name": "onDragOut",
+     "sig": "(Event e, String|DragDrop[] id)",
+     "type": "function",
+     "desc": "Abstract method called when we are no longer hovering over an element"
+    },
+    {
+     "name": "onDragOver",
+     "sig": "(Event e, String|DragDrop[] id)",
+     "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": "Abstract method called when this item is dropped on an area with no\ndrop target"
+    },
+    {
+     "name": "onMouseDown",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Event handler that fires when a drag/drop obj gets a mousedown"
+    },
+    {
+     "name": "onMouseUp",
+     "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": "The padding configured for this drag and drop object for calculating\nthe drop zone intersection with this object."
+    },
+    {
+     "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": "removeFromGroup",
+     "sig": "(string sGroup)",
+     "type": "function",
+     "desc": "Remove's this instance from the supplied interaction group"
+    },
+    {
+     "name": "removeInvalidHandleClass",
+     "sig": "(string cssClass)",
+     "type": "function",
+     "desc": "Unsets an invalid css class"
+    },
+    {
+     "name": "removeInvalidHandleId",
+     "sig": "(string id)",
+     "type": "function",
+     "desc": "Unsets an invalid handle id"
+    },
+    {
+     "name": "removeInvalidHandleType",
+     "sig": "(string tagName)",
+     "type": "function",
+     "desc": "Unsets an excluded tag name set by addInvalidHandleType"
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "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)",
+     "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)",
+     "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."
+    },
+    {
+     "name": "setInitPosition",
+     "sig": "(int diffX, int diffY)",
+     "type": "function",
+     "desc": "Stores the initial placement of the linked element."
+    },
+    {
+     "name": "setOuterHandleElId",
+     "sig": "( id)",
+     "type": "function",
+     "desc": "Allows you to set an element outside of the linked element as a drag\nhandle"
+    },
+    {
+     "name": "setPadding",
+     "sig": "(int iTop, int iRight, int iBot, int iLeft)",
+     "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."
+    },
+    {
+     "name": "setXConstraint",
+     "sig": "(int iLeft, int iRight, int iTickSize)",
+     "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."
+    },
+    {
+     "name": "setYConstraint",
+     "sig": "(int iUp, int iDown, int iTickSize)",
+     "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."
+    },
+    {
+     "name": "startDrag",
+     "sig": "(int X, int Y)",
+     "type": "function",
+     "desc": "Abstract method called after a drag/drop object is clicked\nand the drag or mousedown time thresholds have beeen met."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unlock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Unlock this instace"
+    },
+    {
+     "name": "unreg",
+     "sig": "()",
+     "type": "function",
+     "desc": "Remove all drag and drop hooks for this element"
+    }
+   ]
+  },
+  "Roo.dd.DropTarget": {
+   "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": ""
+    },
+    {
+     "name": "ddGroup",
+     "type": "String",
+     "desc": "The drag drop group to handle drop events for",
+     "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": ""
+    },
+    {
+     "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": "success",
+     "type": "boolean",
+     "desc": "set this after drop listener..",
+     "memberOf": ""
+    },
+    {
+     "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"
+    }
+   ],
+   "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"
+    }
+   ],
+   "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",
+     "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": "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": "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": "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": "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": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "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": "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": "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",
+     "sig": "(Event e, String|DragDrop[] id)",
+     "type": "function",
+     "desc": "Abstract method called when this element fist begins hovering over\nanother DragDrop obj"
+    },
+    {
+     "name": "onDragOut",
+     "sig": "(Event e, String|DragDrop[] id)",
+     "type": "function",
+     "desc": "Abstract method called when we are no longer hovering over an element"
+    },
+    {
+     "name": "onDragOver",
+     "sig": "(Event e, String|DragDrop[] id)",
+     "type": "function",
+     "desc": "Abstract method called when this element is hovering over another\nDragDrop obj"
+    },
+    {
+     "name": "onInvalidDrop",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Abstract method called when this item is dropped on an area with no\ndrop target"
+    },
+    {
+     "name": "onMouseDown",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Event handler that fires when a drag/drop obj gets a mousedown"
+    },
+    {
+     "name": "onMouseUp",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Event handler that fires when a drag/drop obj gets a mouseup"
+    },
+    {
+     "name": "padding",
+     "sig": "()",
+     "type": "function",
+     "desc": "The padding configured for this drag and drop object for calculating\nthe drop zone intersection with this object."
+    },
+    {
+     "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": "removeFromGroup",
+     "sig": "(string sGroup)",
+     "type": "function",
+     "desc": "Remove's this instance from the supplied interaction group"
+    },
+    {
+     "name": "removeInvalidHandleClass",
+     "sig": "(string cssClass)",
+     "type": "function",
+     "desc": "Unsets an invalid css class"
+    },
+    {
+     "name": "removeInvalidHandleId",
+     "sig": "(string id)",
+     "type": "function",
+     "desc": "Unsets an invalid handle id"
+    },
+    {
+     "name": "removeInvalidHandleType",
+     "sig": "(string tagName)",
+     "type": "function",
+     "desc": "Unsets an excluded tag name set by addInvalidHandleType"
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "resetConstraints",
+     "sig": "(boolean maintainOffset)",
+     "type": "function",
+     "desc": "resetConstraints must be called if you manually reposition a dd element."
+    },
+    {
+     "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": "setHandleElId",
+     "sig": "( id)",
+     "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."
+    },
+    {
+     "name": "setInitPosition",
+     "sig": "(int diffX, int diffY)",
+     "type": "function",
+     "desc": "Stores the initial placement of the linked element."
+    },
+    {
+     "name": "setOuterHandleElId",
+     "sig": "( id)",
+     "type": "function",
+     "desc": "Allows you to set an element outside of the linked element as a drag\nhandle"
+    },
+    {
+     "name": "setPadding",
+     "sig": "(int iTop, int iRight, int iBot, int iLeft)",
+     "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."
+    },
+    {
+     "name": "setXConstraint",
+     "sig": "(int iLeft, int iRight, int iTickSize)",
+     "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."
+    },
+    {
+     "name": "setYConstraint",
+     "sig": "(int iUp, int iDown, int iTickSize)",
+     "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."
+    },
+    {
+     "name": "startDrag",
+     "sig": "(int X, int Y)",
+     "type": "function",
+     "desc": "Abstract method called after a drag/drop object is clicked\nand the drag or mousedown time thresholds have beeen met."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unlock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Unlock this instace"
+    },
+    {
+     "name": "unreg",
+     "sig": "()",
+     "type": "function",
+     "desc": "Remove all drag and drop hooks for this element"
+    }
+   ]
+  },
+  "Roo.dd.DropZone": {
+   "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": "ddGroup",
+     "type": "String",
+     "desc": "The drag drop group to handle drop events for",
+     "memberOf": "Roo.dd.DropTarget"
+    },
+    {
+     "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"
+    },
+    {
+     "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"
+    },
+    {
+     "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": "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"
+    }
+   ],
+   "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",
+     "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": "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": "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": "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": "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": "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": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "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": "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": "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)",
+     "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": "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)",
+     "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."
+    },
+    {
+     "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",
+     "sig": "(Event e, String|DragDrop[] id)",
+     "type": "function",
+     "desc": "Abstract method called when this element fist begins hovering over\nanother DragDrop obj"
+    },
+    {
+     "name": "onDragOut",
+     "sig": "(Event e, String|DragDrop[] id)",
+     "type": "function",
+     "desc": "Abstract method called when we are no longer hovering over an element"
+    },
+    {
+     "name": "onDragOver",
+     "sig": "(Event e, String|DragDrop[] id)",
+     "type": "function",
+     "desc": "Abstract method called when this element is hovering over another\nDragDrop obj"
+    },
+    {
+     "name": "onInvalidDrop",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Abstract method called when this item is dropped on an area with no\ndrop target"
+    },
+    {
+     "name": "onMouseDown",
+     "sig": "(Event e)",
+     "type": "function",
+     "desc": "Event handler that fires when a drag/drop obj gets a mousedown"
+    },
+    {
+     "name": "onMouseUp",
+     "sig": "(Event e)",
+     "type": "function",
+     "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)",
+     "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."
+    },
+    {
+     "name": "padding",
+     "sig": "()",
+     "type": "function",
+     "desc": "The padding configured for this drag and drop object for calculating\nthe drop zone intersection with this object."
+    },
+    {
+     "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": "removeFromGroup",
+     "sig": "(string sGroup)",
+     "type": "function",
+     "desc": "Remove's this instance from the supplied interaction group"
+    },
+    {
+     "name": "removeInvalidHandleClass",
+     "sig": "(string cssClass)",
+     "type": "function",
+     "desc": "Unsets an invalid css class"
+    },
+    {
+     "name": "removeInvalidHandleId",
+     "sig": "(string id)",
+     "type": "function",
+     "desc": "Unsets an invalid handle id"
+    },
+    {
+     "name": "removeInvalidHandleType",
+     "sig": "(string tagName)",
+     "type": "function",
+     "desc": "Unsets an excluded tag name set by addInvalidHandleType"
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "resetConstraints",
+     "sig": "(boolean maintainOffset)",
+     "type": "function",
+     "desc": "resetConstraints must be called if you manually reposition a dd element."
+    },
+    {
+     "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": "setHandleElId",
+     "sig": "( id)",
+     "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."
+    },
+    {
+     "name": "setInitPosition",
+     "sig": "(int diffX, int diffY)",
+     "type": "function",
+     "desc": "Stores the initial placement of the linked element."
+    },
+    {
+     "name": "setOuterHandleElId",
+     "sig": "( id)",
+     "type": "function",
+     "desc": "Allows you to set an element outside of the linked element as a drag\nhandle"
+    },
+    {
+     "name": "setPadding",
+     "sig": "(int iTop, int iRight, int iBot, int iLeft)",
+     "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."
+    },
+    {
+     "name": "setXConstraint",
+     "sig": "(int iLeft, int iRight, int iTickSize)",
+     "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."
+    },
+    {
+     "name": "setYConstraint",
+     "sig": "(int iUp, int iDown, int iTickSize)",
+     "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."
+    },
+    {
+     "name": "startDrag",
+     "sig": "(int X, int Y)",
+     "type": "function",
+     "desc": "Abstract method called after a drag/drop object is clicked\nand the drag or mousedown time thresholds have beeen met."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unlock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Unlock this instace"
+    },
+    {
+     "name": "unreg",
+     "sig": "()",
+     "type": "function",
+     "desc": "Remove all drag and drop hooks for this element"
+    }
+   ]
+  },
+  "Roo.dd.Registry": {
+   "props": [],
+   "events": [],
+   "methods": [
+    {
+     "name": "getHandle",
+     "sig": "(String|HTMLElement id)",
+     "type": "function",
+     "desc": "Returns the handle registered for a DOM Node by id"
+    },
+    {
+     "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": "getTarget",
+     "sig": "(String|HTMLElement id)",
+     "type": "function",
+     "desc": "Returns a custom data object that is registered for a DOM node by id"
+    },
+    {
+     "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": "register",
+     "sig": "(String|HTMLElement element, Object data)",
+     "type": "function",
+     "desc": "Register a drag drop element"
+    },
+    {
+     "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": "Manually trigger a cache refresh."
+    },
+    {
+     "name": "register",
+     "sig": "(String/HTMLElement/Element/Array el)",
+     "type": "function",
+     "desc": "Registers new overflow element(s) to auto scroll"
+    },
+    {
+     "name": "unregister",
+     "sig": "(String/HTMLElement/Element/Array el)",
+     "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": ""
+    },
+    {
+     "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": "Returns the underlying proxy {@link Roo.Layer}"
+    },
+    {
+     "name": "getGhost",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the ghost element"
+    },
+    {
+     "name": "hide",
+     "sig": "(Boolean clear)",
+     "type": "function",
+     "desc": "Hides the proxy"
+    },
+    {
+     "name": "repair",
+     "sig": "(Array xy, Function callback, Object scope)",
+     "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."
+    },
+    {
+     "name": "reset",
+     "sig": "(Boolean clearGhost)",
+     "type": "function",
+     "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": "Displays this proxy"
+    },
+    {
+     "name": "stop",
+     "sig": "()",
+     "type": "function",
+     "desc": "Stops the repair animation if it's currently running"
+    },
+    {
+     "name": "sync",
+     "sig": "()",
+     "type": "function",
+     "desc": "Force the Layer to sync its shadow and shim positions to the element"
+    },
+    {
+     "name": "update",
+     "sig": "(String html)",
+     "type": "function",
+     "desc": "Updates the contents of the ghost element"
+    }
+   ]
+  },
+  "Roo.doc": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.doc.Book": {
+   "props": [
+    {
+     "name": "title",
+     "type": "String",
+     "desc": "Title of the book",
+     "memberOf": ""
+    },
+    {
+     "name": "abstract",
+     "type": "String",
+     "desc": "Abstract (or just add para's to the book, and it will get added to the abstract)",
+     "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",
+     "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.doc.Entry": {
+   "props": [
+    {
+     "name": "name",
+     "type": "",
+     "desc": "{String} name of method",
+     "memberOf": ""
+    },
+    {
+     "name": "purpose",
+     "type": "",
+     "desc": "{String} short description of method.",
+     "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": "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.doc.Example": {
+   "props": [
+    {
+     "name": "title",
+     "type": "String",
+     "desc": "short title describing example",
+     "memberOf": ""
+    },
+    {
+     "name": "lang",
+     "type": "String",
+     "desc": "code language.",
+     "memberOf": "",
+     "optvals": [
+      "php",
+      "txt",
+      "sql"
+     ]
+    },
+    {
+     "name": "code",
+     "type": "String",
+     "desc": "example code",
+     "memberOf": ""
+    },
+    {
+     "name": "output",
+     "type": "String",
+     "desc": "The expected output from the code",
+     "memberOf": ""
+    },
+    {
+     "name": "outputlang",
+     "type": "String",
+     "desc": "php|txt|sql) output language",
+     "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",
+     "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.doc.NavCategory": {
+   "props": [
+    {
+     "name": "title",
+     "type": "string",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Represent's an category on the left menu.\n- phpdoc @category elements map the pages to the categories\n  this should be on the left side of the menu, when the\n  contents are loaded, then it can expand this out, and add links\n  for each of the methods.",
+     "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": "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.doc.Para": {
+   "props": [
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "",
+     "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",
+     "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.doc.Param": {
+   "props": [
+    {
+     "name": "is_optional",
+     "type": "bool",
+     "desc": "is the argument optional",
+     "memberOf": ""
+    },
+    {
+     "name": "type",
+     "type": "String",
+     "desc": "argument type",
+     "memberOf": ""
+    },
+    {
+     "name": "name",
+     "type": "String",
+     "desc": "name of the parameter",
+     "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": "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": "Abstract method called when this element is hovering over another\nDragDrop obj"
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "onInvalidDrop",
-     "sig": "(Event e)",
+     "name": "addListener",
+     "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 component"
     },
     {
-     "name": "onMouseDown",
-     "sig": "(Event e)",
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
-     "desc": "Event handler that fires when a drag/drop obj gets a mousedown"
+     "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": "onMouseUp",
-     "sig": "(Event e)",
+     "name": "destroy",
+     "sig": "()",
      "type": "function",
-     "desc": "Event handler that fires when a drag/drop obj gets a mouseup"
+     "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": "padding",
+     "name": "disable",
      "sig": "()",
      "type": "function",
-     "desc": "The padding configured for this drag and drop object for calculating\nthe drop zone intersection with this object."
+     "desc": "Disable this component."
     },
     {
-     "name": "purgeListeners",
+     "name": "enable",
      "sig": "()",
      "type": "function",
-     "desc": "Removes all listeners for this object"
+     "desc": "Enable this component."
     },
     {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
      "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "removeFromGroup",
-     "sig": "(string sGroup)",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
      "type": "function",
-     "desc": "Remove's this instance from the supplied interaction group"
+     "desc": "Try to focus this component."
     },
     {
-     "name": "removeInvalidHandleClass",
-     "sig": "(string cssClass)",
+     "name": "getChildContainer",
+     "sig": "()",
      "type": "function",
-     "desc": "Unsets an invalid css class"
+     "desc": "Fetch the element to add children to"
     },
     {
-     "name": "removeInvalidHandleId",
-     "sig": "(string id)",
+     "name": "getEl",
+     "sig": "()",
      "type": "function",
-     "desc": "Unsets an invalid handle id"
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "removeInvalidHandleType",
-     "sig": "(string tagName)",
+     "name": "getId",
+     "sig": "()",
      "type": "function",
-     "desc": "Unsets an excluded tag name set by addInvalidHandleType"
+     "desc": "Returns the id of this component."
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "hasListener",
+     "sig": "(String eventName)",
      "type": "function",
-     "desc": "Removes a listener"
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "resetConstraints",
-     "sig": "(boolean maintainOffset)",
+     "name": "hide",
+     "sig": "()",
      "type": "function",
-     "desc": "resetConstraints must be called if you manually reposition a dd element."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
-     "name": "setDragElId",
-     "sig": "( id)",
+     "name": "initEvents",
+     "sig": "()",
      "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": "Initialize Events for the element"
     },
     {
-     "name": "setHandleElId",
-     "sig": "( id)",
+     "name": "isVisible",
+     "sig": "()",
      "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": "Returns true if this component is visible."
     },
     {
-     "name": "setInitPosition",
-     "sig": "(int diffX, int diffY)",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Stores the initial placement of the linked element."
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "setOuterHandleElId",
-     "sig": "( id)",
+     "name": "purgeListeners",
+     "sig": "()",
      "type": "function",
-     "desc": "Allows you to set an element outside of the linked element as a drag\nhandle"
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "setPadding",
-     "sig": "(int iTop, int iRight, int iBot, int iLeft)",
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
      "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": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "setXConstraint",
-     "sig": "(int iLeft, int iRight, int iTickSize)",
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
      "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": "Removes a listener"
     },
     {
-     "name": "setYConstraint",
-     "sig": "(int iUp, int iDown, int iTickSize)",
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
      "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": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "startDrag",
-     "sig": "(int X, int Y)",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "type": "function",
-     "desc": "Abstract method called after a drag/drop object is clicked\nand the drag or mousedown time thresholds have beeen met."
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "unlock",
+     "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Unlock this instace"
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
-     "name": "unreg",
+     "name": "tooltipEl",
      "sig": "()",
      "type": "function",
-     "desc": "Remove all drag and drop hooks for this element"
+     "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.dd.DropZone": {
+  "Roo.doc.Section": {
    "props": [
     {
-     "name": "overClass",
+     "name": "stype",
      "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"
+     "desc": "section type.",
+     "memberOf": "",
+     "optvals": [
+      "desc",
+      "parameter",
+      "return",
+      "note",
+      "example"
+     ]
     },
     {
-     "name": "ddGroup",
+     "name": "cls",
      "type": "String",
-     "desc": "The drag drop group to handle drop events for",
-     "memberOf": "Roo.dd.DropTarget"
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "dropAllowed",
+     "name": "style",
      "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"
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "dropNotAllowed",
+     "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": "The CSS class returned to the drag source when drop is not allowed (defaults to \"x-dd-drop-nodrop\").",
-     "memberOf": "Roo.dd.DropTarget"
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "success",
-     "type": "boolean",
-     "desc": "set this after drop listener..",
-     "memberOf": "Roo.dd.DropTarget"
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "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": "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": "drop",
-     "sig": "function (source, e, data)\n{\n\n}",
+     "name": "beforedestroy",
+     "sig": "function (_self)\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"
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "enter",
-     "sig": "function (source, e, data)\n{\n\n}",
+     "name": "beforehide",
+     "sig": "function (_self)\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"
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "out",
-     "sig": "function (source, e, data)\n{\n\n}",
+     "name": "beforerender",
+     "sig": "function (_self)\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."
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "over",
-     "sig": "function (source, e, data)\n{\n\n}",
+     "name": "beforeshow",
+     "sig": "function (_self)\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": [
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Used to define events on this Observable"
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "addInvalidHandleClass",
-     "sig": "(string cssClass)",
+     "name": "destroy",
+     "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 after the component is destroyed."
     },
     {
-     "name": "addInvalidHandleId",
-     "sig": "(string id)",
+     "name": "disable",
+     "sig": "function (_self)\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 the component is disabled."
     },
     {
-     "name": "addInvalidHandleType",
-     "sig": "(string tagName)",
+     "name": "enable",
+     "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 after the component is enabled."
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Appends an event handler to this component"
+     "desc": "Fires after the component is hidden."
     },
     {
-     "name": "addToGroup",
-     "sig": "( sGroup)",
+     "name": "render",
+     "sig": "function (_self)\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 the component is rendered."
     },
     {
-     "name": "applyConfig",
-     "sig": "()",
+     "name": "show",
+     "sig": "function (_self)\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 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",
      "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",
+     "name": "destroy",
      "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": "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": "clearTicks",
+     "name": "disable",
      "sig": "()",
      "type": "function",
-     "desc": "Clears any tick interval defined for this instance"
+     "desc": "Disable this component."
     },
     {
-     "name": "endDrag",
-     "sig": "(Event e)",
+     "name": "enable",
+     "sig": "()",
      "type": "function",
-     "desc": "Fired when we are done dragging the object"
+     "desc": "Enable this component."
     },
     {
      "name": "fireEvent",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "function toString() {\n    [native code]\n}",
-     "sig": "()",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
      "type": "function",
-     "desc": "toString method"
+     "desc": "Try to focus this component."
     },
     {
-     "name": "getDragEl",
+     "name": "getChildContainer",
      "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"
+     "desc": "Fetch the element to add children to"
     },
     {
      "name": "getEl",
      "sig": "()",
      "type": "function",
-     "desc": "Returns a reference to the linked element"
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "getTargetFromEvent",
-     "sig": "(Event e)",
+     "name": "getId",
+     "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 id of this component."
     },
     {
      "name": "hasListener",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "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": "initTarget",
-     "sig": "( id, String sGroup, object config)",
+     "name": "hide",
+     "sig": "()",
      "type": "function",
-     "desc": "Initializes Targeting functionality only... the object does not\nget a mousedown handler."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
-     "name": "isLocked",
+     "name": "initEvents",
      "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": "Initialize Events for the element"
     },
     {
-     "name": "isTarget",
+     "name": "isVisible",
      "sig": "()",
      "type": "function",
-     "desc": "By default, all insances can be a drop target.  This can be disabled by\nsetting isTarget to false."
+     "desc": "Returns true if this component is visible."
     },
     {
-     "name": "isValidHandleChild",
-     "sig": "(HTMLElement node)",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Checks the tag exclusion list to see if this click should be ignored"
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "lock",
+     "name": "purgeListeners",
      "sig": "()",
      "type": "function",
-     "desc": "Lock this instance"
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "notifyDrop",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
      "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}."
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "notifyEnter",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
      "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."
+     "desc": "Removes a listener"
     },
     {
-     "name": "notifyOut",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
      "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."
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "notifyOver",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "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}."
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "onAvailable",
+     "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Override the onAvailable method to do what is needed after the initial\nposition was determined."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
-     "name": "onContainerDrop",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
+     "name": "tooltipEl",
+     "sig": "()",
      "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."
+     "desc": "Fetch the element to display the tooltip on."
     },
     {
-     "name": "onContainerOver",
-     "sig": "(Roo.dd.DragSource source, Event e, Object data)",
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
      "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": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.doc.Synopsis": {
+   "props": [
+    {
+     "name": "returntype",
+     "type": "String",
+     "desc": "return value",
+     "memberOf": ""
     },
     {
-     "name": "onDrag",
-     "sig": "(Event e)",
-     "type": "function",
-     "desc": "Abstract method called during the onMouseMove event while dragging an\nobject."
+     "name": "returndesc",
+     "type": "String",
+     "desc": "description of return value. (used in the return section if set..)",
+     "memberOf": ""
     },
     {
-     "name": "onDragDrop",
-     "sig": "(Event e, String|DragDrop[] id)",
-     "type": "function",
-     "desc": "Abstract method called when this item is dropped on another DragDrop\nobj"
+     "name": "name",
+     "type": "String",
+     "desc": "title really..",
+     "memberOf": ""
     },
     {
-     "name": "onDragEnter",
-     "sig": "(Event e, String|DragDrop[] id)",
-     "type": "function",
-     "desc": "Abstract method called when this element fist begins hovering over\nanother DragDrop obj"
+     "name": "stype",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "function",
+      "constant"
+     ]
     },
     {
-     "name": "onDragOut",
-     "sig": "(Event e, String|DragDrop[] id)",
-     "type": "function",
-     "desc": "Abstract method called when we are no longer hovering over an element"
+     "name": "memberof",
+     "type": "String",
+     "desc": "class name",
+     "memberOf": ""
     },
     {
-     "name": "onDragOver",
-     "sig": "(Event e, String|DragDrop[] id)",
-     "type": "function",
-     "desc": "Abstract method called when this element is hovering over another\nDragDrop obj"
+     "name": "is_static",
+     "type": "bool",
+     "desc": "is a static member",
+     "memberOf": ""
     },
     {
-     "name": "onInvalidDrop",
-     "sig": "(Event e)",
-     "type": "function",
-     "desc": "Abstract method called when this item is dropped on an area with no\ndrop target"
+     "name": "is_constructor",
+     "type": "bool",
+     "desc": "is a static member",
+     "memberOf": ""
     },
     {
-     "name": "onMouseDown",
-     "sig": "(Event e)",
-     "type": "function",
-     "desc": "Event handler that fires when a drag/drop obj gets a mousedown"
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "onMouseUp",
-     "sig": "(Event e)",
-     "type": "function",
-     "desc": "Event handler that fires when a drag/drop obj gets a mouseup"
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "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": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "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": "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": "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": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "onNodeOver",
-     "sig": "(Object nodeData, Roo.dd.DragSource source, Event e, Object data)",
-     "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."
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "padding",
-     "sig": "()",
-     "type": "function",
-     "desc": "The padding configured for this drag and drop object for calculating\nthe drop zone intersection with this object."
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
+     "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": "releaseCapture",
-     "sig": "(Observable o)",
-     "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "removeFromGroup",
-     "sig": "(string sGroup)",
+     "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": "Remove's this instance from the supplied interaction group"
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "removeInvalidHandleClass",
-     "sig": "(string cssClass)",
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Unsets an invalid css class"
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "removeInvalidHandleId",
-     "sig": "(string id)",
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Unsets an invalid handle id"
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "removeInvalidHandleType",
-     "sig": "(string tagName)",
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Unsets an excluded tag name set by addInvalidHandleType"
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Removes a listener"
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "resetConstraints",
-     "sig": "(boolean maintainOffset)",
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "resetConstraints must be called if you manually reposition a dd element."
+     "desc": "Fires after the component is destroyed."
     },
     {
-     "name": "setDragElId",
-     "sig": "( id)",
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
      "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": "Fires after the component is disabled."
     },
     {
-     "name": "setHandleElId",
-     "sig": "( id)",
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
      "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": "Fires after the component is enabled."
     },
     {
-     "name": "setInitPosition",
-     "sig": "(int diffX, int diffY)",
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Stores the initial placement of the linked element."
+     "desc": "Fires after the component is hidden."
     },
     {
-     "name": "setOuterHandleElId",
-     "sig": "( id)",
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Allows you to set an element outside of the linked element as a drag\nhandle"
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "setPadding",
-     "sig": "(int iTop, int iRight, int iBot, int iLeft)",
+     "name": "show",
+     "sig": "function (_self)\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 after the component is shown."
+    }
+   ],
+   "methods": [
     {
-     "name": "setXConstraint",
-     "sig": "(int iLeft, int iRight, int iTickSize)",
+     "name": "addEvents",
+     "sig": "(Object object)",
      "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": "Used to define events on this Observable"
     },
     {
-     "name": "setYConstraint",
-     "sig": "(int iUp, int iDown, int iTickSize)",
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "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": "Appends an event handler to this component"
     },
     {
-     "name": "startDrag",
-     "sig": "(int X, int Y)",
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
      "type": "function",
-     "desc": "Abstract method called after a drag/drop object is clicked\nand the drag or mousedown time thresholds have beeen met."
+     "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": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
+     "name": "destroy",
+     "sig": "()",
      "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
+     "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": "unlock",
+     "name": "disable",
      "sig": "()",
      "type": "function",
-     "desc": "Unlock this instace"
+     "desc": "Disable this component."
     },
     {
-     "name": "unreg",
+     "name": "enable",
      "sig": "()",
      "type": "function",
-     "desc": "Remove all drag and drop hooks for this element"
-    }
-   ]
-  },
-  "Roo.dd.Registry": {
-   "props": [],
-   "events": [],
-   "methods": [
+     "desc": "Enable this component."
+    },
     {
-     "name": "getHandle",
-     "sig": "(String|HTMLElement id)",
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
      "type": "function",
-     "desc": "Returns the handle registered for a DOM Node by id"
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "getHandleFromEvent",
-     "sig": "(Event e)",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
      "type": "function",
-     "desc": "Returns the handle that is registered for the DOM node that is the target of the event"
+     "desc": "Try to focus this component."
     },
     {
-     "name": "getTarget",
-     "sig": "(String|HTMLElement id)",
+     "name": "getChildContainer",
+     "sig": "()",
      "type": "function",
-     "desc": "Returns a custom data object that is registered for a DOM node by id"
+     "desc": "Fetch the element to add children to"
     },
     {
-     "name": "getTargetFromEvent",
-     "sig": "(Event e)",
+     "name": "getEl",
+     "sig": "()",
      "type": "function",
-     "desc": "Returns a custom data object that is registered for the DOM node that is the target of the event"
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "register",
-     "sig": "(String|HTMLElement element, Object data)",
+     "name": "getId",
+     "sig": "()",
      "type": "function",
-     "desc": "Register a drag drop element"
+     "desc": "Returns the id of this component."
     },
     {
-     "name": "unregister",
-     "sig": "(String|HTMLElement element)",
+     "name": "hasListener",
+     "sig": "(String eventName)",
      "type": "function",
-     "desc": "Unregister a drag drop element"
-    }
-   ]
-  },
-  "Roo.dd.ScrollManager": {
-   "props": [],
-   "events": [],
-   "methods": [
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
     {
-     "name": "refreshCache",
+     "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Manually trigger a cache refresh."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
-     "name": "register",
-     "sig": "(String/HTMLElement/Element/Array el)",
+     "name": "initEvents",
+     "sig": "()",
      "type": "function",
-     "desc": "Registers new overflow element(s) to auto scroll"
+     "desc": "Initialize Events for the element"
     },
     {
-     "name": "unregister",
-     "sig": "(String/HTMLElement/Element/Array el)",
+     "name": "isVisible",
+     "sig": "()",
      "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": "Returns true if this component is visible."
     },
     {
-     "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": "()",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Returns the underlying proxy {@link Roo.Layer}"
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "getGhost",
+     "name": "purgeListeners",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the ghost element"
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "hide",
-     "sig": "(Boolean clear)",
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
      "type": "function",
-     "desc": "Hides the proxy"
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "repair",
-     "sig": "(Array xy, Function callback, Object scope)",
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
      "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": "Removes a listener"
     },
     {
-     "name": "reset",
-     "sig": "(Boolean clearGhost)",
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
      "type": "function",
-     "desc": "Resets the status indicator to the default dropNotAllowed value"
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "setStatus",
-     "sig": "(String cssClass)",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "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": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "show",
-     "sig": "()",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Displays this proxy"
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "stop",
+     "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Stops the repair animation if it's currently running"
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
-     "name": "sync",
+     "name": "tooltipEl",
      "sig": "()",
      "type": "function",
-     "desc": "Force the Layer to sync its shadow and shim positions to the element"
+     "desc": "Fetch the element to display the tooltip on."
     },
     {
-     "name": "update",
-     "sig": "(String html)",
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
-     "desc": "Updates the contents of the ghost element"
+     "desc": "Removes a listener (shorthand for removeListener)"
     }
    ]
   },
      "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": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if any fields in this form have changed since their original load. (New version)"
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if any fields in this form have changed since their original load."
+     "desc": "DEPRICATED Returns true if any fields in this form have changed since their original load."
     },
     {
      "name": "isValid",
      "type": "function",
      "desc": "Resets this form."
     },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "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": "setValues",
      "sig": "(Array/Object values)",
      "type": "function",
      "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",
      "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": "setDisabled",
      "sig": "(Boolean disabled)",
      "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)",
      "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)",
      "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)",
      "type": "function",
      "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",
      "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)",
      "type": "function",
      "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",
      "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": "setDisabled",
      "sig": "(Boolean disabled)",
   },
   "Roo.form.DisplayField": {
    "props": [
+    {
+     "name": "closable",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "focusClass",
      "type": "String",
      "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": "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": "setDisabled",
      "sig": "(Boolean disabled)",
      "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)",
      "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": "setDisabled",
      "sig": "(Boolean disabled)",
      "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": "hasChanged",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if any fields in this form have changed since their original load. (New version)"
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "name": "isDirty",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if any fields in this form have changed since their original load."
+     "desc": "DEPRICATED Returns true if any fields in this form have changed since their original load."
     },
     {
      "name": "isValid",
      "type": "function",
      "desc": "Resets this form."
     },
+    {
+     "name": "resetHasChanged",
+     "sig": "()",
+     "type": "function",
+     "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": "setValues",
      "sig": "(Array/Object values)",
      "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": "setDisabled",
      "sig": "(Boolean disabled)",
      "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)",
      "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": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "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",
      "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)",
      "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)",
      "type": "function",
      "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",
      "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": "setDisabled",
      "sig": "(Boolean disabled)",
      "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)",
      "type": "function",
      "desc": ""
     },
+    {
+     "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": "setDisabled",
      "sig": "(Boolean disabled)",
      "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)",
      "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)",
      "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)",
      "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",
     }
    ]
   },
+  "Roo.mailer.Body": {
+   "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": "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": [
     {
     }
    ]
   },
-  "_calls": {
-   "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": "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)"
-    }
-   ]
-  },
   "this": {
    "props": [],
    "events": [],