docs/default.css
[roojs1] / docs / json / roodata.json
index 0259f0c..eebfd75 100644 (file)
      "desc": "is it disabled",
      "memberOf": "Roo.bootstrap.Input"
     },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
     {
      "name": "inputType",
      "type": "String",
      "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "desc": "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",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "type": "function",
      "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
     },
+    {
+     "name": "tick",
+     "sig": "function (combo)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when tick the element"
+    },
+    {
+     "name": "touchviewdisplay",
+     "sig": "function (combo, cfg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when touch view require special display (default is using displayField)"
+    },
     {
      "name": "valid",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.ComboBox2": {
+  "Roo.bootstrap.Component": {
    "props": [
     {
-     "name": "append",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "autoFocus",
-     "type": "Boolean",
-     "desc": "auto focus the first item, default true",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": ""
     },
     {
-     "name": "tickable",
-     "type": "Boolean",
-     "desc": "ComboBox with tickable selections (true|false), default false",
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
      "memberOf": ""
     },
     {
-     "name": "btnPosition",
-     "type": "String",
-     "desc": "set the position of the trigger button (left | right) default right",
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
      "memberOf": ""
     },
     {
-     "name": "lazyRender",
+     "name": "can_build_overlaid",
      "type": "Boolean",
-     "desc": "True to prevent the ComboBox from rendering until requested (should always be used when\nrendering into an Roo.Editor, defaults to false)",
+     "desc": "True if element can be rebuild from a HTML page",
      "memberOf": ""
     },
     {
-     "name": "autoCreate",
-     "type": "Boolean/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to:\n{tag: \"input\", type: \"text\", size: \"24\", autocomplete: \"off\"})",
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
      "memberOf": ""
     },
     {
-     "name": "store",
-     "type": "Roo.data.Store",
-     "desc": "The data store to which this combo is bound (defaults to undefined)",
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
      "memberOf": ""
     },
     {
-     "name": "title",
-     "type": "String",
-     "desc": "If supplied, a header element is created containing this text and added into the top of\nthe dropdown list (defaults to undefined, with no header element)",
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
      "memberOf": ""
     },
     {
-     "name": "tpl",
-     "type": "String/Roo.Template",
-     "desc": "The template to use to render the output",
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
      "memberOf": ""
     },
     {
-     "name": "grow",
+     "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": "",
-     "memberOf": ""
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
     },
     {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "",
-     "memberOf": ""
+     "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": "growMax",
-     "type": "Number",
-     "desc": "",
-     "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": "listWidth",
-     "type": "Number",
-     "desc": "The width in pixels of the dropdown list (defaults to the width of the ComboBox field)",
-     "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": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "displayField",
-     "type": "String",
-     "desc": "The underlying data field name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'text' if mode = 'local')",
-     "memberOf": ""
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "valueField",
-     "type": "String",
-     "desc": "The underlying data value name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'value' if mode = 'local'). \nNote: use of a valueField requires the user make a selection\nin order for a value to be mapped.",
-     "memberOf": ""
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "hiddenName",
-     "type": "String",
-     "desc": "If specified, a hidden form field with this name is dynamically generated to store the\nfield's data value (defaults to the underlying DOM element's name)",
-     "memberOf": ""
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "listClass",
-     "type": "String",
-     "desc": "CSS class to apply to the dropdown list element (defaults to '')",
-     "memberOf": ""
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "selectedClass",
-     "type": "String",
-     "desc": "CSS class to apply to the selected item in the dropdown list (defaults to 'x-combo-selected')",
-     "memberOf": ""
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
     },
     {
-     "name": "shadow",
-     "type": "Boolean/String",
-     "desc": "True or \"sides\" for the default effect, \"frame\" for 4-way shadow, and \"drop\" for bottom-right",
-     "memberOf": ""
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
     },
     {
-     "name": "listAlign",
-     "type": "String",
-     "desc": "A valid anchor position value. See {@link Roo.Element#alignTo} for details on supported\nanchor positions (defaults to 'tl-bl')",
-     "memberOf": ""
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
     },
     {
-     "name": "maxHeight",
-     "type": "Number",
-     "desc": "The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300)",
-     "memberOf": ""
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
     },
     {
-     "name": "triggerAction",
-     "type": "String",
-     "desc": "The action to execute when the trigger field is activated.  Use 'all' to run the\nquery specified by the allQuery config option (defaults to 'query')",
-     "memberOf": ""
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "minChars",
-     "type": "Number",
-     "desc": "The minimum number of characters the user must type before autocomplete and typeahead activate\n(defaults to 4, does not apply if editable = false)",
-     "memberOf": ""
+     "name": "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": "typeAhead",
-     "type": "Boolean",
-     "desc": "True to populate and autoselect the remainder of the text being typed after a configurable\ndelay (typeAheadDelay) if it matches a known value (defaults to false)",
-     "memberOf": ""
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
     },
     {
-     "name": "queryDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to delay between the start of typing and sending the\nquery to filter the dropdown list (defaults to 500 if mode = 'remote' or 10 if mode = 'local')",
-     "memberOf": ""
+     "name": "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": "pageSize",
-     "type": "Number",
-     "desc": "If greater than 0, a paging toolbar is displayed in the footer of the dropdown list and the\nfilter queries will execute with page start and limit parameters.  Only applies when mode = 'remote' (defaults to 0)",
-     "memberOf": ""
+     "name": "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": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to select any existing text in the field immediately on focus.  Only applies\nwhen editable = true (defaults to false)",
-     "memberOf": ""
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
     },
     {
-     "name": "queryParam",
-     "type": "String",
-     "desc": "Name of the query as it will be passed on the querystring (defaults to 'query')",
-     "memberOf": ""
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
     },
     {
-     "name": "loadingText",
-     "type": "String",
-     "desc": "The text to display in the dropdown list while data is loading.  Only applies\nwhen mode = 'remote' (defaults to 'Loading...')",
-     "memberOf": ""
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "resizable",
-     "type": "Boolean",
-     "desc": "True to add a resize handle to the bottom of the dropdown list (defaults to false)",
-     "memberOf": ""
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
     },
     {
-     "name": "handleHeight",
-     "type": "Number",
-     "desc": "The height in pixels of the dropdown list resize handle if resizable = true (defaults to 8)",
-     "memberOf": ""
+     "name": "getChildContainer",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to add children to"
     },
     {
-     "name": "editable",
-     "type": "Boolean",
-     "desc": "False to prevent the user from typing text directly into the field, just like a\ntraditional select (defaults to true)",
-     "memberOf": ""
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "allQuery",
-     "type": "String",
-     "desc": "The text query to send to the server to return all records for the list with no filtering (defaults to '')",
-     "memberOf": ""
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
     },
     {
-     "name": "mode",
-     "type": "String",
-     "desc": "Set to 'local' if the ComboBox loads local data (defaults to 'remote' which loads from the server)",
-     "memberOf": ""
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "minListWidth",
-     "type": "Number",
-     "desc": "The minimum width of the dropdown list in pixels (defaults to 70, will be ignored if\nlistWidth has a higher value)",
-     "memberOf": ""
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
-     "name": "forceSelection",
-     "type": "Boolean",
-     "desc": "True to restrict the selected value to one of the values in the list, false to\nallow the user to set arbitrary text into the field (defaults to false)",
-     "memberOf": ""
+     "name": "initEvents",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialize Events for the element"
     },
     {
-     "name": "typeAheadDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to wait until the typeahead text is displayed\nif typeAhead = true (defaults to 250)",
-     "memberOf": ""
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
     },
     {
-     "name": "valueNotFoundText",
-     "type": "String",
-     "desc": "When using a name/value combo, if the value passed to setValue is not found in\nthe store, valueNotFoundText will be displayed as the field text if defined (defaults to undefined)",
-     "memberOf": ""
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "blockFocus",
-     "type": "Boolean",
-     "desc": "Prevents all focus calls, so it can work with things like HTML edtor bar",
-     "memberOf": ""
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "disableClear",
-     "type": "Boolean",
-     "desc": "Disable showing of clear button.",
-     "memberOf": ""
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "alwaysQuery",
-     "type": "Boolean",
-     "desc": "Disable caching of results, and always send query",
-     "memberOf": ""
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
     },
     {
-     "name": "multiple",
-     "type": "Boolean",
-     "desc": "ComboBobArray, default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "triggerClass",
-     "type": "String",
-     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' by default and triggerClass will be <b>appended</b> if specified.",
-     "memberOf": "Roo.bootstrap.TriggerField"
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "caret",
-     "type": "String",
-     "desc": "a fontawesome for the trigger icon see http://fortawesome.github.io/Font-Awesome/icons/",
-     "memberOf": "Roo.bootstrap.TriggerField",
-     "optvals": [
-      "search",
-      "calendar"
-     ]
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "hideTrigger",
-     "type": "Boolean",
-     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
-     "memberOf": "Roo.bootstrap.TriggerField"
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
-     "name": "removable",
-     "type": "Boolean",
-     "desc": "special filter default false",
-     "memberOf": "Roo.bootstrap.TriggerField",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
     },
     {
-     "name": "disabled",
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.bootstrap.Container": {
+   "props": [
+    {
+     "name": "jumbotron",
      "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "is it a jumbotron element",
+     "memberOf": ""
     },
     {
-     "name": "fieldLabel",
+     "name": "html",
      "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "content of element",
+     "memberOf": ""
     },
     {
-     "name": "inputType",
+     "name": "well",
      "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "a well, large, small or medium.",
+     "memberOf": "",
+     "optvals": [
+      "lg",
+      "sm",
+      "md"
+     ]
     },
     {
-     "name": "name",
+     "name": "panel",
      "type": "String",
-     "desc": "name of the input",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "render as panel  - type - primary/success.....",
+     "memberOf": "",
+     "optvals": [
+      "primary",
+      "success",
+      "info",
+      "warning",
+      "danger"
+     ]
     },
     {
-     "name": "placeholder",
-     "type": "string",
-     "desc": "- placeholder to put in text.",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "header",
+     "type": "String",
+     "desc": "content of header (for panel)",
+     "memberOf": ""
     },
     {
-     "name": "before",
-     "type": "string",
-     "desc": "- input group add on before",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "footer",
+     "type": "String",
+     "desc": "content of footer (for panel)",
+     "memberOf": ""
     },
     {
-     "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",
+     "name": "sticky",
      "type": "String",
-     "desc": "",
-     "memberOf": "Roo.bootstrap.Input",
+     "desc": "block to use as footer or body- needs css-bootstrap/sticky-footer.css",
+     "memberOf": "",
      "optvals": [
-      "top",
-      "left"
+      "footer",
+      "wrap",
+      "push"
      ]
     },
     {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "Specifies that the field should be read-only",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "autocomplete",
-     "type": "String",
-     "desc": "- default is new-password see: https://developers.google.com/web/fundamentals/input/form/label-and-name-inputs?hl=en",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "align",
+     "name": "tag",
      "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
+     "desc": "type of HTML tag.",
+     "memberOf": "",
      "optvals": [
-      "left",
-      "center",
-      "right"
+      "header",
+      "aside",
+      "section"
      ]
     },
     {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "focusClass",
+     "name": "alert",
      "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "type alert (changes background / border...)",
+     "memberOf": "",
+     "optvals": [
+      "success",
+      "info",
+      "warning",
+      "danger"
+     ]
     },
     {
-     "name": "invalidClass",
+     "name": "fa",
      "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "font awesome icon",
+     "memberOf": ""
     },
     {
-     "name": "validClass",
+     "name": "icon",
      "type": "String",
-     "desc": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "glyphicon name",
+     "memberOf": "",
+     "optvals": [
+      "info-sign",
+      "check",
+      "..."
+     ]
     },
     {
-     "name": "hasFeedback",
+     "name": "hidden",
      "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
+     "desc": "hide the element",
+     "memberOf": "",
      "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": "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",
+     "name": "expandable",
      "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "allowBlank",
+     "name": "expanded",
      "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": "default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "maxLengthText",
+     "name": "rheader",
      "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "contet on the right of header",
+     "memberOf": ""
     },
     {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "clickable",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
      "name": "cls",
      "desc": "cutomer id",
      "memberOf": "Roo.bootstrap.Component"
     },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
     {
      "name": "tooltip",
      "type": "string",
     }
    ],
    "events": [
-    {
-     "name": "add",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'add' icon is pressed (add a listener to enable add button)"
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
-    {
-     "name": "beforequery",
-     "sig": "function (combo, query, forceAll, cancel, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before all queries are processed. Return false to cancel the query or set cancel to true.\nThe event object passed has these properties:"
-    },
     {
      "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is rendered. Return false to stop the render."
     },
-    {
-     "name": "beforeselect",
-     "sig": "function (combo, record, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a list item is selected. Return false to cancel the selection."
-    },
     {
      "name": "beforeshow",
      "sig": "function (_self)\n{\n\n}",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "blur",
+     "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this field loses input focus."
-    },
-    {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "childrenrendered",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "click",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the children have been rendered.."
+     "desc": "When a element is chick"
     },
     {
      "name": "collapse",
-     "sig": "function (combo)\n{\n\n}",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the dropdown list is collapsed"
+     "desc": "After the panel has been collapsed"
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Fires after the component is disabled."
     },
-    {
-     "name": "edit",
-     "sig": "function (combo, record)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'edit' icon is pressed (add a listener to enable add button)"
-    },
     {
      "name": "enable",
      "sig": "function (_self)\n{\n\n}",
     },
     {
      "name": "expand",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the dropdown list is expanded"
-    },
-    {
-     "name": "focus",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this field receives input focus."
+     "desc": "After the panel has been expand"
     },
     {
      "name": "hide",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
-    },
-    {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the key up"
-    },
-    {
-     "name": "remove",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the remove value from the combobox array"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "select",
-     "sig": "function (combo, record, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a list item is selected"
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
-    },
-    {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
-    },
-    {
-     "name": "valid",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
-    },
-    {
-     "name": "clearValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clears any text/value currently set in the field"
-    },
-    {
-     "name": "collapse",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hides the dropdown list if it is currently expanded. Fires the 'collapse' event on completion."
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Disable this component."
     },
-    {
-     "name": "doQuery",
-     "sig": "(String query, Boolean forceAll)",
-     "type": "function",
-     "desc": "Execute a query to filter the dropdown list.  Fires the beforequery event prior to performing the\nquery allowing the query action to be canceled if needed."
-    },
     {
      "name": "enable",
      "sig": "()",
      "type": "function",
      "desc": "Enable this component."
     },
-    {
-     "name": "expand",
-     "sig": "()",
-     "type": "function",
-     "desc": "Expands the dropdown list if it is currently hidden. Fires the 'expand' event on completion."
-    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getName",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the name of the field"
-    },
-    {
-     "name": "getRawValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
-    },
-    {
-     "name": "getValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the currently selected field value or empty string if no value is set."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "type": "function",
      "desc": "Initialize Events for the element"
     },
-    {
-     "name": "inputEl",
-     "sig": "()",
-     "type": "function",
-     "desc": "return the real input element."
-    },
-    {
-     "name": "isExpanded",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the dropdown list is expanded, else false."
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
-    {
-     "name": "markInvalid",
-     "sig": "(String msg)",
-     "type": "function",
-     "desc": "Mark this field as invalid"
-    },
-    {
-     "name": "markValid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Mark this field as valid"
-    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
-    {
-     "name": "onTriggerClick",
-     "sig": "(EventObject e)",
-     "type": "function",
-     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
-    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
-    {
-     "name": "reset",
-     "sig": "()",
-     "type": "function",
-     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
-    },
-    {
-     "name": "select",
-     "sig": "(Number index, Boolean scrollIntoView)",
-     "type": "function",
-     "desc": "Select an item in the dropdown list by its numeric index in the list. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
-    },
-    {
-     "name": "selectByValue",
-     "sig": "(String value, Boolean scrollIntoView)",
-     "type": "function",
-     "desc": "Select an item in the dropdown list by its data value. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setEditable",
-     "sig": "(Boolean value)",
-     "type": "function",
-     "desc": "Allow or prevent the user from directly editing the field text.  If false is passed,\nthe user will only be able to select from the items defined in the dropdown list.  This method\nis the runtime equivalent of setting the 'editable' config option at config time."
-    },
-    {
-     "name": "setFromData",
-     "sig": "(Object value)",
-     "type": "function",
-     "desc": "Sets the value of the field based on a object which is related to the record format for the store."
-    },
-    {
-     "name": "setRawValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
-    },
-    {
-     "name": "setValue",
-     "sig": "(String value)",
-     "type": "function",
-     "desc": "Sets the specified value into the field.  If the value finds a match, the corresponding record text\nwill be displayed in the field.  If the value does not match the data value of an existing item,\nand the valueNotFoundText config option is defined, it will be displayed as the default field text.\nOtherwise the field will be blank (although the value will still be set)."
-    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "validate",
-     "sig": "()",
-     "type": "function",
-     "desc": "Validates the field value"
-    },
-    {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
     }
    ]
   },
-  "Roo.bootstrap.ComboBox_old": {
+  "Roo.bootstrap.DateField": {
    "props": [
     {
-     "name": "append",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "autoFocus",
-     "type": "Boolean",
-     "desc": "auto focus the first item, default true",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "lazyRender",
-     "type": "Boolean",
-     "desc": "True to prevent the ComboBox from rendering until requested (should always be used when\nrendering into an Roo.Editor, defaults to false)",
+     "name": "weekStart",
+     "type": "Number",
+     "desc": "default 0",
      "memberOf": ""
     },
     {
-     "name": "autoCreate",
-     "type": "Boolean/Object",
-     "desc": "A DomHelper element spec, or true for a default element spec (defaults to:\n{tag: \"input\", type: \"text\", size: \"24\", autocomplete: \"off\"})",
+     "name": "viewMode",
+     "type": "String",
+     "desc": "default empty, (months|years)",
      "memberOf": ""
     },
     {
-     "name": "store",
-     "type": "Roo.data.Store",
-     "desc": "The data store to which this combo is bound (defaults to undefined)",
+     "name": "minViewMode",
+     "type": "String",
+     "desc": "default empty, (months|years)",
      "memberOf": ""
     },
     {
-     "name": "title",
-     "type": "String",
-     "desc": "If supplied, a header element is created containing this text and added into the top of\nthe dropdown list (defaults to undefined, with no header element)",
+     "name": "startDate",
+     "type": "Number",
+     "desc": "default -Infinity",
      "memberOf": ""
     },
     {
-     "name": "tpl",
-     "type": "String/Roo.Template",
-     "desc": "The template to use to render the output",
+     "name": "endDate",
+     "type": "Number",
+     "desc": "default Infinity",
      "memberOf": ""
     },
     {
-     "name": "grow",
+     "name": "todayHighlight",
      "type": "Boolean",
-     "desc": "",
+     "desc": "default false",
      "memberOf": ""
     },
     {
-     "name": "growMin",
-     "type": "Number",
-     "desc": "",
-     "memberOf": ""
-    },
-    {
-     "name": "growMax",
-     "type": "Number",
-     "desc": "",
-     "memberOf": ""
-    },
-    {
-     "name": "listWidth",
-     "type": "Number",
-     "desc": "The width in pixels of the dropdown list (defaults to the width of the ComboBox field)",
-     "memberOf": ""
-    },
-    {
-     "name": "displayField",
-     "type": "String",
-     "desc": "The underlying data field name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'text' if mode = 'local')",
-     "memberOf": ""
-    },
-    {
-     "name": "valueField",
-     "type": "String",
-     "desc": "The underlying data value name to bind to this CombBox (defaults to undefined if\nmode = 'remote' or 'value' if mode = 'local'). \nNote: use of a valueField requires the user make a selection\nin order for a value to be mapped.",
-     "memberOf": ""
-    },
-    {
-     "name": "hiddenName",
-     "type": "String",
-     "desc": "If specified, a hidden form field with this name is dynamically generated to store the\nfield's data value (defaults to the underlying DOM element's name)",
-     "memberOf": ""
-    },
-    {
-     "name": "listClass",
-     "type": "String",
-     "desc": "CSS class to apply to the dropdown list element (defaults to '')",
-     "memberOf": ""
-    },
-    {
-     "name": "selectedClass",
-     "type": "String",
-     "desc": "CSS class to apply to the selected item in the dropdown list (defaults to 'x-combo-selected')",
-     "memberOf": ""
-    },
-    {
-     "name": "shadow",
-     "type": "Boolean/String",
-     "desc": "True or \"sides\" for the default effect, \"frame\" for 4-way shadow, and \"drop\" for bottom-right",
-     "memberOf": ""
-    },
-    {
-     "name": "listAlign",
-     "type": "String",
-     "desc": "A valid anchor position value. See {@link Roo.Element#alignTo} for details on supported\nanchor positions (defaults to 'tl-bl')",
-     "memberOf": ""
-    },
-    {
-     "name": "maxHeight",
-     "type": "Number",
-     "desc": "The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300)",
-     "memberOf": ""
-    },
-    {
-     "name": "triggerAction",
-     "type": "String",
-     "desc": "The action to execute when the trigger field is activated.  Use 'all' to run the\nquery specified by the allQuery config option (defaults to 'query')",
-     "memberOf": ""
-    },
-    {
-     "name": "minChars",
-     "type": "Number",
-     "desc": "The minimum number of characters the user must type before autocomplete and typeahead activate\n(defaults to 4, does not apply if editable = false)",
-     "memberOf": ""
-    },
-    {
-     "name": "typeAhead",
+     "name": "todayBtn",
      "type": "Boolean",
-     "desc": "True to populate and autoselect the remainder of the text being typed after a configurable\ndelay (typeAheadDelay) if it matches a known value (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "queryDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to delay between the start of typing and sending the\nquery to filter the dropdown list (defaults to 500 if mode = 'remote' or 10 if mode = 'local')",
-     "memberOf": ""
-    },
-    {
-     "name": "pageSize",
-     "type": "Number",
-     "desc": "If greater than 0, a paging toolbar is displayed in the footer of the dropdown list and the\nfilter queries will execute with page start and limit parameters.  Only applies when mode = 'remote' (defaults to 0)",
+     "desc": "default false",
      "memberOf": ""
     },
     {
-     "name": "selectOnFocus",
+     "name": "calendarWeeks",
      "type": "Boolean",
-     "desc": "True to select any existing text in the field immediately on focus.  Only applies\nwhen editable = true (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "queryParam",
-     "type": "String",
-     "desc": "Name of the query as it will be passed on the querystring (defaults to 'query')",
+     "desc": "default false",
      "memberOf": ""
     },
     {
-     "name": "loadingText",
-     "type": "String",
-     "desc": "The text to display in the dropdown list while data is loading.  Only applies\nwhen mode = 'remote' (defaults to 'Loading...')",
+     "name": "daysOfWeekDisabled",
+     "type": "Object",
+     "desc": "default empty",
      "memberOf": ""
     },
     {
-     "name": "resizable",
+     "name": "singleMode",
      "type": "Boolean",
-     "desc": "True to add a resize handle to the bottom of the dropdown list (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "handleHeight",
-     "type": "Number",
-     "desc": "The height in pixels of the dropdown list resize handle if resizable = true (defaults to 8)",
+     "desc": "default false (true | false)",
      "memberOf": ""
     },
     {
-     "name": "editable",
+     "name": "keyboardNavigation",
      "type": "Boolean",
-     "desc": "False to prevent the user from typing text directly into the field, just like a\ntraditional select (defaults to true)",
+     "desc": "default true",
      "memberOf": ""
     },
     {
-     "name": "allQuery",
+     "name": "language",
      "type": "String",
-     "desc": "The text query to send to the server to return all records for the list with no filtering (defaults to '')",
+     "desc": "default en",
      "memberOf": ""
     },
     {
-     "name": "mode",
+     "name": "format",
      "type": "String",
-     "desc": "Set to 'local' if the ComboBox loads local data (defaults to 'remote' which loads from the server)",
-     "memberOf": ""
-    },
-    {
-     "name": "minListWidth",
-     "type": "Number",
-     "desc": "The minimum width of the dropdown list in pixels (defaults to 70, will be ignored if\nlistWidth has a higher value)",
-     "memberOf": ""
-    },
-    {
-     "name": "forceSelection",
-     "type": "Boolean",
-     "desc": "True to restrict the selected value to one of the values in the list, false to\nallow the user to set arbitrary text into the field (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "typeAheadDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds to wait until the typeahead text is displayed\nif typeAhead = true (defaults to 250)",
+     "desc": "The default date format string which can be overriden for localization support.  The format must be\nvalid according to {@link Date#parseDate} (defaults to 'm/d/y').",
      "memberOf": ""
     },
     {
-     "name": "valueNotFoundText",
+     "name": "altFormats",
      "type": "String",
-     "desc": "When using a name/value combo, if the value passed to setValue is not found in\nthe store, valueNotFoundText will be displayed as the field text if defined (defaults to undefined)",
-     "memberOf": ""
-    },
-    {
-     "name": "blockFocus",
-     "type": "Boolean",
-     "desc": "Prevents all focus calls, so it can work with things like HTML edtor bar",
-     "memberOf": ""
-    },
-    {
-     "name": "disableClear",
-     "type": "Boolean",
-     "desc": "Disable showing of clear button.",
-     "memberOf": ""
-    },
-    {
-     "name": "alwaysQuery",
-     "type": "Boolean",
-     "desc": "Disable caching of results, and always send query",
+     "desc": "Multiple date formats separated by \"|\" to try when parsing a user input value and it doesn't match the defined\nformat (defaults to 'm/d/Y|m-d-y|m-d-Y|m/d|m-d|d').",
      "memberOf": ""
     },
-    {
-     "name": "multiple",
-     "type": "Boolean",
-     "desc": "ComboBobArray, default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "triggerClass",
-     "type": "String",
-     "desc": "An additional CSS class used to style the trigger button.  The trigger will always get the\nclass 'x-form-trigger' by default and triggerClass will be <b>appended</b> if specified.",
-     "memberOf": "Roo.bootstrap.TriggerField"
-    },
-    {
-     "name": "caret",
-     "type": "String",
-     "desc": "a fontawesome for the trigger icon see http://fortawesome.github.io/Font-Awesome/icons/",
-     "memberOf": "Roo.bootstrap.TriggerField",
-     "optvals": [
-      "search",
-      "calendar"
-     ]
-    },
-    {
-     "name": "hideTrigger",
-     "type": "Boolean",
-     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
-     "memberOf": "Roo.bootstrap.TriggerField"
-    },
-    {
-     "name": "removable",
-     "type": "Boolean",
-     "desc": "special filter default false",
-     "memberOf": "Roo.bootstrap.TriggerField",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
     {
      "name": "disabled",
      "type": "Boolean",
      "desc": "is it disabled",
      "memberOf": "Roo.bootstrap.Input"
     },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
     {
      "name": "inputType",
      "type": "String",
      "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "selectOnFocus",
+     "type": "Boolean",
+     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "maskRe",
      "type": "String",
     }
    ],
    "events": [
-    {
-     "name": "add",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'add' icon is pressed (add a listener to enable add button)"
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
-    {
-     "name": "beforequery",
-     "sig": "function (combo, query, forceAll, cancel, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before all queries are processed. Return false to cancel the query or set cancel to true.\nThe event object passed has these properties:"
-    },
     {
      "name": "beforerender",
      "sig": "function (_self)\n{\n\n}",
     },
     {
      "name": "beforeselect",
-     "sig": "function (combo, record, index)\n{\n\n}",
+     "sig": "function (_self, date)\n{\n\n}",
      "type": "function",
-     "desc": "Fires before a list item is selected. Return false to cancel the selection."
+     "desc": "Fires when before select a date."
     },
     {
      "name": "beforeshow",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
-    {
-     "name": "collapse",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the dropdown list is collapsed"
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is disabled."
     },
-    {
-     "name": "edit",
-     "sig": "function (combo, record)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the 'edit' icon is pressed (add a listener to enable add button)"
-    },
     {
      "name": "enable",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "expand",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the dropdown list is expanded"
-    },
     {
      "name": "focus",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the key up"
     },
-    {
-     "name": "remove",
-     "sig": "function (combo)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the remove value from the combobox array"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
     },
     {
      "name": "select",
-     "sig": "function (combo, record, index)\n{\n\n}",
+     "sig": "function (_self, date)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a list item is selected"
+     "desc": "Fires when select a date."
     },
     {
      "name": "show",
-     "sig": "function (_self)\n{\n\n}",
+     "sig": "function (_self, date)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is shown."
+     "desc": "Fires when this field show."
     },
     {
      "name": "specialkey",
      "type": "function",
      "desc": "Clear any invalid styles/messages for this field"
     },
-    {
-     "name": "clearValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clears any text/value currently set in the field"
-    },
-    {
-     "name": "collapse",
-     "sig": "()",
-     "type": "function",
-     "desc": "Hides the dropdown list if it is currently expanded. Fires the 'collapse' event on completion."
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Disable this component."
     },
-    {
-     "name": "doQuery",
-     "sig": "(String query, Boolean forceAll)",
-     "type": "function",
-     "desc": "Execute a query to filter the dropdown list.  Fires the beforequery event prior to performing the\nquery allowing the query action to be canceled if needed."
-    },
     {
      "name": "enable",
      "sig": "()",
      "type": "function",
      "desc": "Enable this component."
     },
-    {
-     "name": "expand",
-     "sig": "()",
-     "type": "function",
-     "desc": "Expands the dropdown list if it is currently hidden. Fires the 'expand' event on completion."
-    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "name": "getValue",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the currently selected field value or empty string if no value is set."
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
     },
     {
      "name": "hasListener",
      "type": "function",
      "desc": "return the real input element."
     },
-    {
-     "name": "isExpanded",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the dropdown list is expanded, else false."
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
-    {
-     "name": "onTriggerClick",
-     "sig": "(EventObject e)",
-     "type": "function",
-     "desc": "The function that should handle the trigger's click event.  This method does nothing by default until overridden\nby an implementing function."
-    },
     {
      "name": "purgeListeners",
      "sig": "()",
      "type": "function",
      "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
     },
-    {
-     "name": "select",
-     "sig": "(Number index, Boolean scrollIntoView)",
-     "type": "function",
-     "desc": "Select an item in the dropdown list by its numeric index in the list. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
-    },
-    {
-     "name": "selectByValue",
-     "sig": "(String value, Boolean scrollIntoView)",
-     "type": "function",
-     "desc": "Select an item in the dropdown list by its data value. This function does NOT cause the select event to fire.\nThe store must be loaded and the list expanded for this function to work, otherwise use setValue."
-    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
-    {
-     "name": "setEditable",
-     "sig": "(Boolean value)",
-     "type": "function",
-     "desc": "Allow or prevent the user from directly editing the field text.  If false is passed,\nthe user will only be able to select from the items defined in the dropdown list.  This method\nis the runtime equivalent of setting the 'editable' config option at config time."
-    },
-    {
-     "name": "setFromData",
-     "sig": "(Object value)",
-     "type": "function",
-     "desc": "Sets the value of the field based on a object which is related to the record format for the store."
-    },
     {
      "name": "setRawValue",
      "sig": "(Mixed value)",
     },
     {
      "name": "setValue",
-     "sig": "(String value)",
+     "sig": "(Mixed value)",
      "type": "function",
-     "desc": "Sets the specified value into the field.  If the value finds a match, the corresponding record text\nwill be displayed in the field.  If the value does not match the data value of an existing item,\nand the valueNotFoundText config option is defined, it will be displayed as the default field text.\nOtherwise the field will be blank (although the value will still be set)."
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
     },
     {
      "name": "setVisible",
     }
    ]
   },
-  "Roo.bootstrap.Component": {
+  "Roo.bootstrap.DateSplitField": {
    "props": [
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": ""
+    },
+    {
+     "name": "labelWidth",
+     "type": "Number",
+     "desc": "set the width of label (0-12)",
+     "memberOf": ""
+    },
+    {
+     "name": "labelAlign",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "top",
+      "left"
+     ]
+    },
+    {
+     "name": "dayAllowBlank",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "monthAllowBlank",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "yearAllowBlank",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "dayPlaceholder",
+     "type": "string",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "monthPlaceholder",
+     "type": "string",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "yearPlaceholder",
+     "type": "string",
+     "desc": "",
+     "memberOf": ""
+    },
+    {
+     "name": "dayFormat",
+     "type": "string",
+     "desc": "default 'd'",
+     "memberOf": ""
+    },
+    {
+     "name": "monthFormat",
+     "type": "string",
+     "desc": "default 'm'",
+     "memberOf": ""
+    },
+    {
+     "name": "yearFormat",
+     "type": "string",
+     "desc": "default 'Y'",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
      "desc": "css class",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "style",
      "type": "String",
      "desc": "any extra css",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "xattr",
      "type": "Object",
      "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "can_build_overlaid",
      "type": "Boolean",
      "desc": "True if element can be rebuild from a HTML page",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "dataId",
      "type": "string",
      "desc": "cutomer id",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "name",
      "type": "string",
      "desc": "Specifies name attribute",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "tooltip",
      "type": "string",
      "desc": "Text for the tooltip",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "container_method",
      "type": "string",
      "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
-     "memberOf": ""
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "disableClass",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "days",
+     "sig": "function (_self, days)\n{\n\n}",
+     "type": "function",
+     "desc": "getting the data of days"
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been marked as invalid."
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
+    },
+    {
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been validated with no errors."
+    },
+    {
+     "name": "years",
+     "sig": "function (_self, years)\n{\n\n}",
+     "type": "function",
+     "desc": "getting the data of years"
     }
    ],
    "methods": [
      "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.Container": {
+  "Roo.bootstrap.DocumentManager": {
    "props": [
     {
-     "name": "jumbotron",
-     "type": "Boolean",
-     "desc": "is it a jumbotron element",
-     "memberOf": ""
-    },
-    {
-     "name": "html",
+     "name": "paramName",
      "type": "String",
-     "desc": "content of element",
+     "desc": "default 'imageUpload'",
      "memberOf": ""
     },
     {
-     "name": "well",
-     "type": "String",
-     "desc": "a well, large, small or medium.",
-     "memberOf": "",
-     "optvals": [
-      "lg",
-      "sm",
-      "md"
-     ]
-    },
-    {
-     "name": "panel",
+     "name": "method",
      "type": "String",
-     "desc": "render as a panel.",
-     "memberOf": "",
-     "optvals": [
-      "primary",
-      "success",
-      "info",
-      "warning",
-      "danger"
-     ]
+     "desc": "default POST",
+     "memberOf": ""
     },
     {
-     "name": "header",
+     "name": "url",
      "type": "String",
-     "desc": "content of header (for panel)",
+     "desc": "action url",
      "memberOf": ""
     },
     {
-     "name": "footer",
-     "type": "String",
-     "desc": "content of footer (for panel)",
+     "name": "boxes",
+     "type": "Number",
+     "desc": "number of boxes, 0 is no limit.. default 0",
      "memberOf": ""
     },
     {
-     "name": "sticky",
-     "type": "String",
-     "desc": "block to use as footer or body- needs css-bootstrap/sticky-footer.css",
-     "memberOf": "",
-     "optvals": [
-      "footer",
-      "wrap",
-      "push"
-     ]
+     "name": "multiple",
+     "type": "Boolean",
+     "desc": "multiple upload default true",
+     "memberOf": ""
     },
     {
-     "name": "tag",
-     "type": "String",
-     "desc": "type of HTML tag.",
-     "memberOf": "",
-     "optvals": [
-      "header",
-      "aside",
-      "section"
-     ]
+     "name": "thumbSize",
+     "type": "Number",
+     "desc": "default 300",
+     "memberOf": ""
     },
     {
-     "name": "alert",
+     "name": "fieldLabel",
      "type": "String",
-     "desc": "type alert (changes background / border...)",
-     "memberOf": "",
-     "optvals": [
-      "success",
-      "info",
-      "warning",
-      "danger"
-     ]
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "fa",
-     "type": "String",
-     "desc": "font awesome icon",
-     "memberOf": "",
-     "optvals": [
-      "ban",
-      "check",
-      "..."
-     ]
+     "name": "labelWidth",
+     "type": "Number",
+     "desc": "default 4",
+     "memberOf": ""
     },
     {
-     "name": "icon",
+     "name": "labelAlign",
      "type": "String",
-     "desc": "glyphicon name",
-     "memberOf": "",
-     "optvals": [
-      "info-sign",
-      "check",
-      "..."
-     ]
-    },
-    {
-     "name": "hidden",
-     "type": "Boolean",
-     "desc": "hide the element",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "expandable",
-     "type": "Boolean",
-     "desc": "default false",
+     "desc": "default left",
      "memberOf": "",
      "optvals": [
-      "true",
-      "false"
+      "left",
+      "top"
      ]
     },
     {
-     "name": "expanded",
+     "name": "editable",
      "type": "Boolean",
-     "desc": "default true",
+     "desc": "allow edit when upload a image default true",
      "memberOf": "",
      "optvals": [
       "true",
       "false"
      ]
     },
-    {
-     "name": "rheader",
-     "type": "String",
-     "desc": "contet on the right of header",
-     "memberOf": ""
-    },
     {
      "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}",
      "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "collapse",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "click",
+     "sig": "function (_self, file)\n{\n\n}",
      "type": "function",
-     "desc": "After the panel has been collapsed"
+     "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}",
      "desc": "Fires after the component is enabled."
     },
     {
-     "name": "expand",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "exception",
+     "sig": "function (_self, xhr)\n{\n\n}",
      "type": "function",
-     "desc": "After the panel has been expand"
+     "desc": "Fire when xhr load exception"
     },
     {
      "name": "hide",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "initial",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when initial the DocumentManager"
+    },
+    {
+     "name": "inspect",
+     "sig": "function (_self, file)\n{\n\n}",
+     "type": "function",
+     "desc": "inspect selected file"
+    },
+    {
+     "name": "prepare",
+     "sig": "function (_self, formData)\n{\n\n}",
+     "type": "function",
+     "desc": "prepare the form data"
+    },
+    {
+     "name": "process",
+     "sig": "function (_self, file)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire before process file"
+    },
+    {
+     "name": "refresh",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire after refresh the file"
+    },
+    {
+     "name": "remove",
+     "sig": "function (_self, file)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when remove the file"
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.DateField": {
+  "Roo.bootstrap.DocumentViewer": {
    "props": [
-    {
-     "name": "weekStart",
-     "type": "Number",
-     "desc": "default 0",
-     "memberOf": ""
-    },
-    {
-     "name": "viewMode",
-     "type": "String",
-     "desc": "default empty, (months|years)",
-     "memberOf": ""
-    },
-    {
-     "name": "minViewMode",
-     "type": "String",
-     "desc": "default empty, (months|years)",
-     "memberOf": ""
-    },
-    {
-     "name": "startDate",
-     "type": "Number",
-     "desc": "default -Infinity",
-     "memberOf": ""
-    },
-    {
-     "name": "endDate",
-     "type": "Number",
-     "desc": "default Infinity",
-     "memberOf": ""
-    },
-    {
-     "name": "todayHighlight",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": ""
-    },
-    {
-     "name": "todayBtn",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": ""
-    },
-    {
-     "name": "calendarWeeks",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": ""
-    },
-    {
-     "name": "daysOfWeekDisabled",
-     "type": "Object",
-     "desc": "default empty",
-     "memberOf": ""
-    },
-    {
-     "name": "singleMode",
-     "type": "Boolean",
-     "desc": "default false (true | false)",
-     "memberOf": ""
-    },
-    {
-     "name": "keyboardNavigation",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": ""
-    },
-    {
-     "name": "language",
-     "type": "String",
-     "desc": "default en",
-     "memberOf": ""
-    },
-    {
-     "name": "format",
-     "type": "String",
-     "desc": "The default date format string which can be overriden for localization support.  The format must be\nvalid according to {@link Date#parseDate} (defaults to 'm/d/y').",
-     "memberOf": ""
-    },
-    {
-     "name": "altFormats",
-     "type": "String",
-     "desc": "Multiple date formats separated by \"|\" to try when parsing a user input value and it doesn't match the defined\nformat (defaults to 'm/d/Y|m-d-y|m-d-Y|m/d|m-d|d').",
-     "memberOf": ""
-    },
-    {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "inputType",
-     "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "name",
-     "type": "String",
-     "desc": "name of the input",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "placeholder",
-     "type": "string",
-     "desc": "- placeholder to put in text.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "before",
-     "type": "string",
-     "desc": "- input group add on before",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "after",
-     "type": "string",
-     "desc": "- input group add on after",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "size",
-     "type": "string",
-     "desc": "- (lg|sm) or leave empty..",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "xs",
-     "type": "Number",
-     "desc": "colspan out of 12 for mobile-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "sm",
-     "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "md",
-     "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "lg",
-     "type": "Number",
-     "desc": "colspan out of 12 for large computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "value",
-     "type": "string",
-     "desc": "default value of the input",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "labelWidth",
-     "type": "Number",
-     "desc": "set the width of label (0-12)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "labelAlign",
-     "type": "String",
-     "desc": "",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "top",
-      "left"
-     ]
-    },
-    {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "Specifies that the field should be read-only",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "autocomplete",
-     "type": "String",
-     "desc": "- default is new-password see: https://developers.google.com/web/fundamentals/input/form/label-and-name-inputs?hl=en",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "left",
-      "center",
-      "right"
-     ]
-    },
-    {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "hasFeedback",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "invalidFeedbackIcon",
-     "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validFeedbackIcon",
-     "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "maskRe",
-     "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "blankText",
-     "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "minLengthText",
-     "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "maxLengthText",
-     "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
     {
      "name": "cls",
      "type": "String",
      "desc": "cutomer id",
      "memberOf": "Roo.bootstrap.Component"
     },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
     {
      "name": "tooltip",
      "type": "string",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "blur",
+     "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when this field loses input focus."
-    },
-    {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
+     "desc": "Fires when the children have been rendered.."
     },
     {
-     "name": "childrenrendered",
+     "name": "click",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the children have been rendered.."
+     "desc": "Fire after click"
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "focus",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field receives input focus."
-    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "desc": "Fires after the component is hidden."
     },
     {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
-    },
-    {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
+     "name": "initial",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the key up"
+     "desc": "Fire after initEvent"
     },
     {
      "name": "render",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "select",
-     "sig": "function (_self, date)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when select a date."
-    },
     {
      "name": "show",
-     "sig": "function (_self, date)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field show."
-    },
-    {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
+     "desc": "Fires after the component is shown."
     },
     {
-     "name": "valid",
+     "name": "trash",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
+     "desc": "Fire after trash button"
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getName",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the name of the field"
-    },
-    {
-     "name": "getRawValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
-    },
-    {
-     "name": "getValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "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)",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "setRawValue",
-     "sig": "(Mixed value)",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "setValue",
-     "sig": "(Mixed value)",
-     "type": "function",
-     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
-    },
-    {
-     "name": "setVisible",
-     "sig": "(Boolean visible)",
-     "type": "function",
-     "desc": "Convenience function to hide or show this component by boolean."
-    },
-    {
-     "name": "show",
-     "sig": "()",
+     "name": "show",
+     "sig": "()",
      "type": "function",
      "desc": "Show a component - removes 'hidden' class"
     },
      "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.DocumentManager": {
+  "Roo.bootstrap.Element": {
    "props": [
     {
-     "name": "paramName",
+     "name": "html",
      "type": "String",
-     "desc": "default 'imageUpload'",
+     "desc": "contents of the element",
      "memberOf": ""
     },
     {
-     "name": "method",
+     "name": "tag",
      "type": "String",
-     "desc": "default POST",
+     "desc": "tag of the element",
      "memberOf": ""
     },
     {
-     "name": "url",
+     "name": "cls",
      "type": "String",
-     "desc": "action url",
-     "memberOf": ""
-    },
-    {
-     "name": "boxes",
-     "type": "Number",
-     "desc": "number of boxes to show default 12",
+     "desc": "class of the element",
      "memberOf": ""
     },
     {
-     "name": "multiple",
+     "name": "preventDefault",
      "type": "Boolean",
-     "desc": "multiple upload default true",
-     "memberOf": ""
-    },
-    {
-     "name": "minWidth",
-     "type": "Number",
-     "desc": "default 300",
-     "memberOf": ""
-    },
-    {
-     "name": "minHeight",
-     "type": "Number",
-     "desc": "default 300",
-     "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",
+     "desc": "default false",
      "memberOf": "",
      "optvals": [
-      "left",
-      "top"
+      "true",
+      "false"
      ]
     },
     {
-     "name": "cls",
-     "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
+     "name": "clickable",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
      "name": "style",
     },
     {
      "name": "click",
-     "sig": "function (_self, file)\n{\n\n}",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
-     "desc": "Fire after click the image"
+     "desc": "When a element is chick"
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "exception",
-     "sig": "function (_self, xhr)\n{\n\n}",
-     "type": "function",
-     "desc": "Fire when xhr load exception"
-    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "initial",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fire when initial the DocumentManager"
-    },
-    {
-     "name": "inspect",
-     "sig": "function (_self, file)\n{\n\n}",
-     "type": "function",
-     "desc": "inspect selected file"
-    },
-    {
-     "name": "prepare",
-     "sig": "function (_self, formData)\n{\n\n}",
-     "type": "function",
-     "desc": "prepare the form data"
-    },
-    {
-     "name": "refresh",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fire after refresh the file"
-    },
-    {
-     "name": "remove",
-     "sig": "function (_self, file)\n{\n\n}",
-     "type": "function",
-     "desc": "Fire when remove the file"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.DocumentViewer": {
+  "Roo.bootstrap.FieldLabel": {
    "props": [
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "contents of the element",
+     "memberOf": ""
+    },
+    {
+     "name": "tag",
+     "type": "String",
+     "desc": "tag of the element default label",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "class of the element",
+     "memberOf": ""
+    },
+    {
+     "name": "target",
+     "type": "String",
+     "desc": "label target",
+     "memberOf": ""
+    },
+    {
+     "name": "allowBlank",
+     "type": "Boolean",
+     "desc": "target allowBlank default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "invalidClass",
+     "type": "String",
+     "desc": "default \"text-danger fa fa-lg fa-exclamation-triangle\"",
+     "memberOf": ""
+    },
+    {
+     "name": "validClass",
+     "type": "String",
+     "desc": "default \"text-success fa fa-lg fa-check\"",
+     "memberOf": ""
+    },
+    {
+     "name": "iconTooltip",
+     "type": "String",
+     "desc": "default \"This field is required\"",
+     "memberOf": ""
     },
     {
      "name": "style",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
-    {
-     "name": "click",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fire after click"
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "desc": "Fires after the component is hidden."
     },
     {
-     "name": "initial",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
      "type": "function",
-     "desc": "Fire after initEvent"
+     "desc": "Fires after the field has been marked as invalid."
     },
     {
      "name": "render",
      "desc": "Fires after the component is shown."
     },
     {
-     "name": "trash",
+     "name": "valid",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fire after trash button"
+     "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.Element": {
+  "Roo.bootstrap.Form": {
    "props": [
     {
-     "name": "html",
+     "name": "method",
      "type": "String",
-     "desc": "contents of the element",
+     "desc": "GET | POST (default POST)",
      "memberOf": ""
     },
     {
-     "name": "tag",
+     "name": "labelAlign",
      "type": "String",
-     "desc": "tag of the element",
+     "desc": "top | left (default top)",
      "memberOf": ""
     },
     {
-     "name": "cls",
+     "name": "align",
      "type": "String",
-     "desc": "class of the element",
+     "desc": "left  | right - for navbars",
      "memberOf": ""
     },
     {
-     "name": "preventDefault",
+     "name": "loadMask",
      "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "desc": "load mask when submit (default true)",
+     "memberOf": ""
     },
     {
-     "name": "clickable",
+     "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": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "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"
     },
     {
      "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": "click",
-     "sig": "function (_self, e)\n{\n\n}",
+     "name": "clientvalidation",
+     "sig": "function (_self, valid)\n{\n\n}",
      "type": "function",
-     "desc": "When a element is chick"
+     "desc": "If the monitorValid config option is true, this event fires repetitively to notify of valid state"
     },
     {
      "name": "destroy",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
+    {
+     "name": "clearInvalid",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears all invalid messages in this form."
+    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Disable this component."
     },
+    {
+     "name": "doAction",
+     "sig": "(String actionName, Object options)",
+     "type": "function",
+     "desc": "Performs a predefined action (submit or load) or custom actions you define on this form."
+    },
     {
      "name": "enable",
      "sig": "()",
      "type": "function",
      "desc": "Enable this component."
     },
+    {
+     "name": "findField",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Find a Roo.form.Field in this form by id, dataIndex, name or hiddenName"
+    },
     {
      "name": "fireEvent",
      "sig": "(String eventName, Object... args)",
      "type": "function",
      "desc": "Returns the underlying {@link Roo.Element}."
     },
+    {
+     "name": "getFieldValues",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the fields in this form as an object with key/value pairs. \nThis differs from getValues as it calls getValue on each child item, rather than using dom data."
+    },
     {
      "name": "getId",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
+    {
+     "name": "getValues",
+     "sig": "(Boolean asString)",
+     "type": "function",
+     "desc": "Returns the fields in this form as an object with key/value pairs. If multiple fields exist with the same name\nthey are returned as an array."
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "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.Form": {
+  "Roo.bootstrap.Graph": {
    "props": [
     {
-     "name": "method",
+     "name": "graphtype",
      "type": "String",
-     "desc": "GET | POST (default POST)",
+     "desc": "bar | vbar | pie",
      "memberOf": ""
     },
     {
-     "name": "labelAlign",
-     "type": "String",
-     "desc": "top | left (default top)",
+     "name": "g_x",
+     "type": "number",
+     "desc": "coodinator | centre x (pie)",
      "memberOf": ""
     },
     {
-     "name": "align",
-     "type": "String",
-     "desc": "left  | right - for navbars",
+     "name": "g_y",
+     "type": "number",
+     "desc": "coodinator | centre y (pie)",
      "memberOf": ""
     },
     {
-     "name": "loadMask",
-     "type": "Boolean",
-     "desc": "load mask when submit (default true)",
+     "name": "g_r",
+     "type": "number",
+     "desc": "radius (pie)",
      "memberOf": ""
     },
     {
-     "name": "url",
-     "type": "String",
-     "desc": "The URL to use for form actions if one isn't supplied in the action options.",
+     "name": "g_height",
+     "type": "number",
+     "desc": "height of the chart (respected by all elements in the set)",
      "memberOf": ""
     },
     {
-     "name": "fileUpload",
-     "type": "Boolean",
-     "desc": "Set to true if this form is a file upload.",
+     "name": "g_width",
+     "type": "number",
+     "desc": "width of the chart (respected by all elements in the set)",
      "memberOf": ""
     },
     {
-     "name": "baseParams",
+     "name": "title",
      "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).",
+     "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": ""
     },
     {
     }
    ],
    "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 (e)\n{\n\n}",
      "type": "function",
-     "desc": "If the monitorValid config option is true, this event fires repetitively to notify of valid state"
+     "desc": "The img click event for the img."
     },
     {
      "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.Header": {
    "props": [
     {
-     "name": "graphtype",
+     "name": "html",
      "type": "String",
-     "desc": "bar | vbar | pie",
-     "memberOf": ""
-    },
-    {
-     "name": "g_x",
-     "type": "number",
-     "desc": "coodinator | centre x (pie)",
-     "memberOf": ""
-    },
-    {
-     "name": "g_y",
-     "type": "number",
-     "desc": "coodinator | centre y (pie)",
-     "memberOf": ""
-    },
-    {
-     "name": "g_r",
-     "type": "number",
-     "desc": "radius (pie)",
-     "memberOf": ""
-    },
-    {
-     "name": "g_height",
-     "type": "number",
-     "desc": "height of the chart (respected by all elements in the set)",
-     "memberOf": ""
-    },
-    {
-     "name": "g_width",
-     "type": "number",
-     "desc": "width of the chart (respected by all elements in the set)",
+     "desc": "content of header",
      "memberOf": ""
     },
     {
-     "name": "title",
-     "type": "Object",
-     "desc": "The title of the chart\n    \n -{Array}  values\n -opts (object) options for the chart \n     o {\n     o type (string) type of endings of the bar. Default: 'square'. Other options are: 'round', 'sharp', 'soft'.\n     o gutter (number)(string) default '20%' (WHAT DOES IT DO?)\n     o vgutter (number)\n     o colors (array) colors be used repeatedly to plot the bars. If multicolumn bar is used each sequence of bars with use a different color.\n     o stacked (boolean) whether or not to tread values as in a stacked bar chart\n     o to\n     o stretch (boolean)\n     o }\n -opts (object) options for the pie\n     o{\n     o cut\n     o startAngle (number)\n     o endAngle (number)\n     }",
-     "memberOf": ""
-    },
-    {
-     "name": "cls",
-     "type": "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": "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 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.Header": {
-   "props": [
-    {
-     "name": "html",
-     "type": "String",
-     "desc": "content of header",
-     "memberOf": ""
-    },
-    {
-     "name": "level",
-     "type": "Number",
-     "desc": "default 1",
-     "memberOf": "",
-     "optvals": [
-      "1",
-      "2",
-      "3",
-      "4",
-      "5",
-      "6"
-     ]
+     "name": "level",
+     "type": "Number",
+     "desc": "default 1",
+     "memberOf": "",
+     "optvals": [
+      "1",
+      "2",
+      "3",
+      "4",
+      "5",
+      "6"
+     ]
     },
     {
      "name": "cls",
      "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "fieldLabel",
+     "name": "name",
      "type": "String",
-     "desc": "- the label associated",
+     "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "name",
-     "type": "String",
-     "desc": "name of the input",
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
      "memberOf": "Roo.bootstrap.Input"
     },
     {
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "desc": "is it disabled",
      "memberOf": ""
     },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": ""
-    },
     {
      "name": "inputType",
      "type": "String",
      "desc": "name of the input",
      "memberOf": ""
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": ""
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "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}",
      "desc": "is it disabled",
      "memberOf": "Roo.bootstrap.Input"
     },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
     {
      "name": "inputType",
      "type": "String",
      "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
     }
    ]
   },
-  "Roo.bootstrap.NavSidebar": {
+  "Roo.bootstrap.NavProgressBar": {
    "props": [
     {
      "name": "cls",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
+    {
+     "name": "changed",
+     "sig": "function (_self, selected, prev)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the active item changes"
+    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.NavSidebarItem": {
+  "Roo.bootstrap.NavProgressItem": {
    "props": [
     {
-     "name": "href",
-     "type": "String",
-     "desc": "link to",
-     "memberOf": "Roo.bootstrap.NavItem"
-    },
-    {
-     "name": "html",
-     "type": "String",
-     "desc": "content of button",
-     "memberOf": "Roo.bootstrap.NavItem"
-    },
-    {
-     "name": "badge",
-     "type": "String",
-     "desc": "text inside badge",
-     "memberOf": "Roo.bootstrap.NavItem"
-    },
-    {
-     "name": "badgecls",
-     "type": "String",
-     "desc": "the extra classes for the badge",
-     "memberOf": "Roo.bootstrap.NavItem",
-     "optvals": [
-      "bg-green",
-      "bg-red",
-      "bg-yellow"
-     ]
-    },
-    {
-     "name": "glyphicon",
-     "type": "String",
-     "desc": "name of glyphicon",
-     "memberOf": "Roo.bootstrap.NavItem"
-    },
-    {
-     "name": "icon",
+     "name": "rid",
      "type": "String",
-     "desc": "name of font awesome icon",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "desc": "the reference id",
+     "memberOf": ""
     },
     {
      "name": "active",
      "type": "Boolean",
-     "desc": "Is item active",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "desc": "Is item active default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
      "name": "disabled",
      "type": "Boolean",
-     "desc": "Is item disabled",
-     "memberOf": "Roo.bootstrap.NavItem"
-    },
-    {
-     "name": "preventDefault",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "Roo.bootstrap.NavItem",
+     "desc": "Is item active default false",
+     "memberOf": "",
      "optvals": [
       "true",
       "false"
      ]
     },
     {
-     "name": "tabId",
+     "name": "html",
      "type": "String",
-     "desc": "the tab that this item activates.",
-     "memberOf": "Roo.bootstrap.NavItem"
+     "desc": "",
+     "memberOf": ""
     },
     {
-     "name": "tagtype",
+     "name": "position",
      "type": "String",
-     "desc": "render as a href or span?",
-     "memberOf": "Roo.bootstrap.NavItem",
+     "desc": "text position default bottom",
+     "memberOf": "",
      "optvals": [
-      "a",
-      "span"
+      "top",
+      "bottom"
      ]
     },
     {
-     "name": "animateRef",
-     "type": "Boolean",
-     "desc": "link to element default false",
-     "memberOf": "Roo.bootstrap.NavItem",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "icon",
+     "type": "String",
+     "desc": "show icon instead of number",
+     "memberOf": ""
     },
     {
      "name": "cls",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "changed",
-     "sig": "function (_self, state)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the active item active state changes"
-    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
     },
     {
      "name": "click",
-     "sig": "function (e)\n{\n\n}",
+     "sig": "function (_self, e)\n{\n\n}",
      "type": "function",
      "desc": "The raw click event for the entire grid."
     },
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "scrollto",
-     "sig": "function (_self, options, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when scroll to element"
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.NavSimplebar": {
+  "Roo.bootstrap.NavSidebar": {
    "props": [
-    {
-     "name": "inverse",
-     "type": "Boolean",
-     "desc": "is inverted color",
-     "memberOf": ""
-    },
-    {
-     "name": "type",
-     "type": "String",
-     "desc": "",
-     "memberOf": "",
-     "optvals": [
-      "nav",
-      "pills",
-      "tabs"
-     ]
-    },
-    {
-     "name": "arrangement",
-     "type": "Boolean",
-     "desc": "stacked | justified",
-     "memberOf": ""
-    },
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "alignment",
-     "memberOf": "",
-     "optvals": [
-      "left",
-      "right"
-     ]
-    },
-    {
-     "name": "main",
-     "type": "Boolean",
-     "desc": "main nav bar? default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "loadMask",
-     "type": "Boolean",
-     "desc": "loadMask on the bar",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "tag",
-     "type": "String",
-     "desc": "default is nav",
-     "memberOf": "",
-     "optvals": [
-      "header",
-      "footer",
-      "nav",
-      "div"
-     ]
-    },
     {
      "name": "cls",
      "type": "String",
     }
    ]
   },
-  "Roo.bootstrap.Navbar": {
+  "Roo.bootstrap.NavSidebarItem": {
    "props": [
+    {
+     "name": "href",
+     "type": "String",
+     "desc": "link to",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "content of button",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "badge",
+     "type": "String",
+     "desc": "text inside badge",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "badgecls",
+     "type": "String",
+     "desc": "the extra classes for the badge",
+     "memberOf": "Roo.bootstrap.NavItem",
+     "optvals": [
+      "bg-green",
+      "bg-red",
+      "bg-yellow"
+     ]
+    },
+    {
+     "name": "glyphicon",
+     "type": "String",
+     "desc": "name of glyphicon",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "icon",
+     "type": "String",
+     "desc": "name of font awesome icon",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "active",
+     "type": "Boolean",
+     "desc": "Is item active",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "Is item disabled",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "preventDefault",
+     "type": "Boolean",
+     "desc": "default false",
+     "memberOf": "Roo.bootstrap.NavItem",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "tabId",
+     "type": "String",
+     "desc": "the tab that this item activates.",
+     "memberOf": "Roo.bootstrap.NavItem"
+    },
+    {
+     "name": "tagtype",
+     "type": "String",
+     "desc": "render as a href or span?",
+     "memberOf": "Roo.bootstrap.NavItem",
+     "optvals": [
+      "a",
+      "span"
+     ]
+    },
+    {
+     "name": "animateRef",
+     "type": "Boolean",
+     "desc": "link to element default false",
+     "memberOf": "Roo.bootstrap.NavItem",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "cls",
      "type": "String",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
+    {
+     "name": "changed",
+     "sig": "function (_self, state)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the active item active state changes"
+    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "click",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw click event for the entire grid."
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
+    {
+     "name": "scrollto",
+     "sig": "function (_self, options, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when scroll to element"
+    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.Pagination": {
+  "Roo.bootstrap.NavSimplebar": {
    "props": [
     {
-     "name": "size",
-     "type": "String",
-     "desc": "xs | sm | md | lg",
+     "name": "inverse",
+     "type": "Boolean",
+     "desc": "is inverted color",
      "memberOf": ""
     },
     {
-     "name": "inverse",
+     "name": "type",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "nav",
+      "pills",
+      "tabs"
+     ]
+    },
+    {
+     "name": "arrangement",
      "type": "Boolean",
-     "desc": "false | true",
+     "desc": "stacked | justified",
      "memberOf": ""
     },
+    {
+     "name": "align",
+     "type": "String",
+     "desc": "alignment",
+     "memberOf": "",
+     "optvals": [
+      "left",
+      "right"
+     ]
+    },
+    {
+     "name": "main",
+     "type": "Boolean",
+     "desc": "main nav bar? default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "loadMask",
+     "type": "Boolean",
+     "desc": "loadMask on the bar",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "tag",
+     "type": "String",
+     "desc": "default is nav",
+     "memberOf": "",
+     "optvals": [
+      "header",
+      "footer",
+      "nav",
+      "div"
+     ]
+    },
     {
      "name": "cls",
      "type": "String",
     }
    ]
   },
-  "Roo.bootstrap.PaginationItem": {
+  "Roo.bootstrap.Navbar": {
    "props": [
-    {
-     "name": "html",
-     "type": "String",
-     "desc": "text",
-     "memberOf": ""
-    },
-    {
-     "name": "href",
-     "type": "String",
-     "desc": "the link",
-     "memberOf": ""
-    },
-    {
-     "name": "preventDefault",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "active",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": ""
-    },
     {
      "name": "cls",
      "type": "String",
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
-    {
-     "name": "click",
-     "sig": "function (e)\n{\n\n}",
-     "type": "function",
-     "desc": "The raw click event for the entire grid."
-    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.PagingToolbar": {
-   "props": [
-    {
-     "name": "dataSource",
-     "type": "Roo.data.Store",
-     "desc": "The underlying data store providing the paged data",
-     "memberOf": ""
-    },
-    {
-     "name": "container",
-     "type": "String/HTMLElement/Element",
-     "desc": "container The id or element that will contain the toolbar",
-     "memberOf": ""
-    },
-    {
-     "name": "displayInfo",
-     "type": "Boolean",
-     "desc": "True to display the displayMsg (defaults to false)",
-     "memberOf": ""
-    },
-    {
-     "name": "pageSize",
-     "type": "Number",
-     "desc": "The number of records to display per page (defaults to 20)",
-     "memberOf": ""
-    },
-    {
-     "name": "displayMsg",
-     "type": "String",
-     "desc": "The paging status message to display (defaults to \"Displaying {start} - {end} of {total}\")",
-     "memberOf": ""
-    },
-    {
-     "name": "emptyMsg",
-     "type": "String",
-     "desc": "The message to display when no records are found (defaults to \"No data to display\")",
-     "memberOf": ""
-    }
-   ],
-   "events": [],
-   "methods": [
-    {
-     "name": "bind",
-     "sig": "(Roo.data.Store store)",
-     "type": "function",
-     "desc": "Binds the paging toolbar to the specified {@link Roo.data.Store}"
-    },
-    {
-     "name": "unbind",
-     "sig": "(Roo.data.Store store)",
-     "type": "function",
-     "desc": "Unbinds the paging toolbar from the specified {@link Roo.data.Store}"
-    }
-   ]
-  },
-  "Roo.bootstrap.Popover": {
+  "Roo.bootstrap.Pagination": {
    "props": [
     {
-     "name": "html",
-     "type": "String",
-     "desc": "contents of the popover   (or false to use children..)",
-     "memberOf": ""
-    },
-    {
-     "name": "title",
-     "type": "String",
-     "desc": "of popover (or false to hide)",
-     "memberOf": ""
-    },
-    {
-     "name": "placement",
-     "type": "String",
-     "desc": "how it is placed",
-     "memberOf": ""
-    },
-    {
-     "name": "trigger",
-     "type": "String",
-     "desc": "click || hover (or false to trigger manually)",
-     "memberOf": ""
-    },
-    {
-     "name": "over",
+     "name": "size",
      "type": "String",
-     "desc": "what (parent or false to trigger manually.)",
+     "desc": "xs | sm | md | lg",
      "memberOf": ""
     },
     {
-     "name": "delay",
-     "type": "Number",
-     "desc": "- delay before showing",
+     "name": "inverse",
+     "type": "Boolean",
+     "desc": "false | true",
      "memberOf": ""
     },
     {
     }
    ]
   },
-  "Roo.bootstrap.Progress": {
+  "Roo.bootstrap.PaginationItem": {
    "props": [
     {
-     "name": "striped",
-     "type": "Boolean",
-     "desc": "striped of the progress bar",
+     "name": "html",
+     "type": "String",
+     "desc": "text",
      "memberOf": ""
     },
+    {
+     "name": "href",
+     "type": "String",
+     "desc": "the link",
+     "memberOf": ""
+    },
+    {
+     "name": "preventDefault",
+     "type": "Boolean",
+     "desc": "default true",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "active",
      "type": "Boolean",
-     "desc": "animated of the progress bar",
+     "desc": "default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "default false",
      "memberOf": ""
     },
     {
      "type": "function",
      "desc": "Fires when the children have been rendered.."
     },
+    {
+     "name": "click",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "The raw click event for the entire grid."
+    },
     {
      "name": "destroy",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.ProgressBar": {
+  "Roo.bootstrap.PagingToolbar": {
    "props": [
     {
-     "name": "aria_valuenow",
-     "type": "Number",
-     "desc": "aria-value now",
+     "name": "dataSource",
+     "type": "Roo.data.Store",
+     "desc": "The underlying data store providing the paged data",
      "memberOf": ""
     },
     {
-     "name": "aria_valuemin",
-     "type": "Number",
-     "desc": "aria-value min",
+     "name": "container",
+     "type": "String/HTMLElement/Element",
+     "desc": "container The id or element that will contain the toolbar",
      "memberOf": ""
     },
     {
-     "name": "aria_valuemax",
+     "name": "displayInfo",
+     "type": "Boolean",
+     "desc": "True to display the displayMsg (defaults to false)",
+     "memberOf": ""
+    },
+    {
+     "name": "pageSize",
      "type": "Number",
-     "desc": "aria-value max",
+     "desc": "The number of records to display per page (defaults to 20)",
      "memberOf": ""
     },
     {
-     "name": "label",
+     "name": "displayMsg",
      "type": "String",
-     "desc": "label for the progress bar",
+     "desc": "The paging status message to display (defaults to \"Displaying {start} - {end} of {total}\")",
      "memberOf": ""
     },
     {
-     "name": "panel",
+     "name": "emptyMsg",
+     "type": "String",
+     "desc": "The message to display when no records are found (defaults to \"No data to display\")",
+     "memberOf": ""
+    },
+    {
+     "name": "inverse",
+     "type": "Boolean",
+     "desc": "is inverted color",
+     "memberOf": "Roo.bootstrap.NavSimplebar"
+    },
+    {
+     "name": "type",
      "type": "String",
      "desc": "",
-     "memberOf": "",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
      "optvals": [
-      "success",
-      "info",
-      "warning",
-      "danger"
+      "nav",
+      "pills",
+      "tabs"
      ]
     },
     {
-     "name": "role",
+     "name": "arrangement",
+     "type": "Boolean",
+     "desc": "stacked | justified",
+     "memberOf": "Roo.bootstrap.NavSimplebar"
+    },
+    {
+     "name": "align",
      "type": "String",
-     "desc": "role of the progress bar",
-     "memberOf": ""
+     "desc": "alignment",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "left",
+      "right"
+     ]
     },
     {
-     "name": "sr_only",
+     "name": "main",
+     "type": "Boolean",
+     "desc": "main nav bar? default false",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "loadMask",
+     "type": "Boolean",
+     "desc": "loadMask on the bar",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
+    {
+     "name": "tag",
      "type": "String",
-     "desc": "text",
-     "memberOf": ""
+     "desc": "default is nav",
+     "memberOf": "Roo.bootstrap.NavSimplebar",
+     "optvals": [
+      "header",
+      "footer",
+      "nav",
+      "div"
+     ]
     },
     {
      "name": "cls",
      "type": "function",
      "desc": "Appends an event handler to this component"
     },
+    {
+     "name": "bind",
+     "sig": "(Roo.data.Store store)",
+     "type": "function",
+     "desc": "Binds the paging toolbar to the specified {@link Roo.data.Store}"
+    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unbind",
+     "sig": "(Roo.data.Store store)",
+     "type": "function",
+     "desc": "Unbinds the paging toolbar from the specified {@link Roo.data.Store}"
     }
    ]
   },
-  "Roo.bootstrap.Radio": {
+  "Roo.bootstrap.Popover": {
    "props": [
     {
-     "name": "valueOff",
-     "type": "String",
-     "desc": "The value that should go into the generated input element's value when unchecked.",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "inputValue",
-     "type": "String",
-     "desc": "The value that should go into the generated input element's value when checked.",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "boxLabel",
-     "type": "String",
-     "desc": "The text that appears beside the checkbox",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "weight",
-     "type": "String",
-     "desc": "The text that appears beside the checkbox",
-     "memberOf": "Roo.bootstrap.CheckBox",
-     "optvals": [
-      "primary",
-      "warning",
-      "info",
-      "danger",
-      "success"
-     ]
-    },
-    {
-     "name": "checked",
-     "type": "Boolean",
-     "desc": "initnal the element",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "inline",
-     "type": "Boolean",
-     "desc": "inline the element (default false)",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "groupId",
-     "type": "String",
-     "desc": "the checkbox group id // normal just use for checkbox",
-     "memberOf": "Roo.bootstrap.CheckBox"
-    },
-    {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "inputType",
-     "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "name",
-     "type": "String",
-     "desc": "name of the input",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "placeholder",
-     "type": "string",
-     "desc": "- placeholder to put in text.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "before",
-     "type": "string",
-     "desc": "- input group add on before",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "after",
-     "type": "string",
-     "desc": "- input group add on after",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "size",
-     "type": "string",
-     "desc": "- (lg|sm) or leave empty..",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "xs",
-     "type": "Number",
-     "desc": "colspan out of 12 for mobile-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "sm",
-     "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "md",
-     "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "lg",
-     "type": "Number",
-     "desc": "colspan out of 12 for large computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "value",
-     "type": "string",
-     "desc": "default value of the input",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "labelWidth",
-     "type": "Number",
-     "desc": "set the width of label (0-12)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "labelAlign",
-     "type": "String",
-     "desc": "",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "top",
-      "left"
-     ]
-    },
-    {
-     "name": "readOnly",
-     "type": "Boolean",
-     "desc": "Specifies that the field should be read-only",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "autocomplete",
-     "type": "String",
-     "desc": "- default is new-password see: https://developers.google.com/web/fundamentals/input/form/label-and-name-inputs?hl=en",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "left",
-      "center",
-      "right"
-     ]
-    },
-    {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "hasFeedback",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "invalidFeedbackIcon",
+     "name": "html",
      "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "contents of the popover   (or false to use children..)",
+     "memberOf": ""
     },
     {
-     "name": "validFeedbackIcon",
+     "name": "title",
      "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "selectOnFocus",
-     "type": "Boolean",
-     "desc": "True to automatically select any existing field text when the field receives input focus (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "of popover (or false to hide)",
+     "memberOf": ""
     },
     {
-     "name": "maskRe",
+     "name": "placement",
      "type": "String",
-     "desc": "An input mask regular expression that will be used to filter keystrokes that don't match (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "how it is placed",
+     "memberOf": ""
     },
     {
-     "name": "vtype",
+     "name": "trigger",
      "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "click || hover (or false to trigger manually)",
+     "memberOf": ""
     },
     {
-     "name": "blankText",
+     "name": "over",
      "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "what (parent or false to trigger manually.)",
+     "memberOf": ""
     },
     {
-     "name": "maxLength",
+     "name": "delay",
      "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "minLengthText",
-     "type": "String",
-     "desc": "Error text to display if the minimum length validation fails (defaults to \"The minimum length for this field is {minLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "maxLengthText",
-     "type": "String",
-     "desc": "Error text to display if the maximum length validation fails (defaults to \"The maximum length for this field is {maxLength}\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validator",
-     "type": "Function",
-     "desc": "A custom validation function to be called during field validation (defaults to null).\nIf available, this function will be called only after the basic validators all return true, and will be passed the\ncurrent field value and expected to return boolean true if the value is valid or a string error message if invalid.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "regex",
-     "type": "RegExp",
-     "desc": "A JavaScript RegExp object to be tested against the field value during validation (defaults to null).\nIf available, this regex will be evaluated only after the basic validators all return true, and will be passed the\ncurrent field value.  If the test fails, the field will be marked invalid using {@link #regexText}.",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "regexText",
-     "type": "String",
-     "desc": "The error text to display if {@link #regex} is used and the test fails during validation (defaults to \"\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "- delay before showing",
+     "memberOf": ""
     },
     {
      "name": "cls",
      "desc": "cutomer id",
      "memberOf": "Roo.bootstrap.Component"
     },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
     {
      "name": "tooltip",
      "type": "string",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "blur",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field loses input focus."
-    },
-    {
-     "name": "change",
-     "sig": "function (_self, newValue, oldValue)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires just before the field blurs if the field value has changed."
-    },
-    {
-     "name": "check",
-     "sig": "function (_self, checked)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the element is checked or unchecked."
-    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
-    {
-     "name": "focus",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when this field receives input focus."
-    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "invalid",
-     "sig": "function (_self, msg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been marked as invalid."
-    },
-    {
-     "name": "keyup",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the key up"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
-    },
-    {
-     "name": "specialkey",
-     "sig": "function (_self, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
-    },
-    {
-     "name": "valid",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clearInvalid",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clear any invalid styles/messages for this field"
-    },
     {
      "name": "destroy",
      "sig": "()",
      "type": "function",
      "desc": "Try to focus this component."
     },
-    {
-     "name": "get",
-     "sig": "(string the)",
-     "type": "function",
-     "desc": "fetch a CheckBox Group based on the group ID"
-    },
     {
      "name": "getChildContainer",
      "sig": "()",
      "type": "function",
      "desc": "Returns the id of this component."
     },
-    {
-     "name": "getName",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the name of the field"
-    },
-    {
-     "name": "getRawValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
-    },
-    {
-     "name": "getValue",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
-    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "type": "function",
      "desc": "Initialize Events for the element"
     },
-    {
-     "name": "inputEl",
-     "sig": "()",
-     "type": "function",
-     "desc": "return the real input element."
-    },
     {
      "name": "isVisible",
      "sig": "()",
      "desc": "Returns true if this component is visible."
     },
     {
-     "name": "markInvalid",
-     "sig": "(String msg)",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "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)"
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
      "name": "purgeListeners",
      "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.Row": {
+  "Roo.bootstrap.Progress": {
    "props": [
+    {
+     "name": "striped",
+     "type": "Boolean",
+     "desc": "striped of the progress bar",
+     "memberOf": ""
+    },
+    {
+     "name": "active",
+     "type": "Boolean",
+     "desc": "animated of the progress bar",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
     }
    ]
   },
-  "Roo.bootstrap.Slider": {
+  "Roo.bootstrap.ProgressBar": {
    "props": [
+    {
+     "name": "aria_valuenow",
+     "type": "Number",
+     "desc": "aria-value now",
+     "memberOf": ""
+    },
+    {
+     "name": "aria_valuemin",
+     "type": "Number",
+     "desc": "aria-value min",
+     "memberOf": ""
+    },
+    {
+     "name": "aria_valuemax",
+     "type": "Number",
+     "desc": "aria-value max",
+     "memberOf": ""
+    },
+    {
+     "name": "label",
+     "type": "String",
+     "desc": "label for the progress bar",
+     "memberOf": ""
+    },
+    {
+     "name": "panel",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "success",
+      "info",
+      "warning",
+      "danger"
+     ]
+    },
+    {
+     "name": "role",
+     "type": "String",
+     "desc": "role of the progress bar",
+     "memberOf": ""
+    },
+    {
+     "name": "sr_only",
+     "type": "String",
+     "desc": "text",
+     "memberOf": ""
+    },
     {
      "name": "cls",
      "type": "String",
     }
    ]
   },
-  "Roo.bootstrap.TabGroup": {
+  "Roo.bootstrap.Radio": {
    "props": [
     {
-     "name": "navId",
+     "name": "valueOff",
      "type": "String",
-     "desc": "the navigation id (for use with navbars) - will be auto generated if it does not exist..",
-     "memberOf": ""
+     "desc": "The value that should go into the generated input element's value when unchecked.",
+     "memberOf": "Roo.bootstrap.CheckBox"
     },
     {
-     "name": "carousel",
-     "type": "Boolean",
-     "desc": "true to make the group behave like a carousel",
-     "memberOf": ""
+     "name": "inputValue",
+     "type": "String",
+     "desc": "The value that should go into the generated input element's value when checked.",
+     "memberOf": "Roo.bootstrap.CheckBox"
     },
     {
-     "name": "bullets",
-     "type": "Number",
-     "desc": "show the panel pointer.. default 0",
-     "memberOf": ""
+     "name": "boxLabel",
+     "type": "String",
+     "desc": "The text that appears beside the checkbox",
+     "memberOf": "Roo.bootstrap.CheckBox"
     },
     {
-     "name": "autoslide",
-     "type": "Boolean",
-     "desc": "auto slide .. default false",
-     "memberOf": "",
+     "name": "weight",
+     "type": "String",
+     "desc": "The text that appears beside the checkbox",
+     "memberOf": "Roo.bootstrap.CheckBox",
      "optvals": [
-      "true",
-      "false"
+      "primary",
+      "warning",
+      "info",
+      "danger",
+      "success"
      ]
     },
     {
-     "name": "slideOnTouch",
+     "name": "checked",
      "type": "Boolean",
-     "desc": "slide on touch .. default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "desc": "initnal the element",
+     "memberOf": "Roo.bootstrap.CheckBox"
     },
     {
-     "name": "timer",
-     "type": "Number",
-     "desc": "auto slide timer .. default 0 millisecond",
-     "memberOf": ""
+     "name": "inline",
+     "type": "Boolean",
+     "desc": "inline the element (default false)",
+     "memberOf": "Roo.bootstrap.CheckBox"
+    },
+    {
+     "name": "groupId",
+     "type": "String",
+     "desc": "the checkbox group id // normal just use for checkbox",
+     "memberOf": "Roo.bootstrap.CheckBox"
+    },
+    {
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "is it disabled",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "inputType",
+     "type": "String",
+     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "name",
+     "type": "String",
+     "desc": "name of the input",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "placeholder",
+     "type": "string",
+     "desc": "- placeholder to put in text.",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "before",
+     "type": "string",
+     "desc": "- input group add on before",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "after",
+     "type": "string",
+     "desc": "- input group add on after",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "size",
+     "type": "string",
+     "desc": "- (lg|sm) or leave empty..",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "xs",
      "type": "Number",
-     "desc": "colspan out of 12 for mobile-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "colspan out of 12 for mobile-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "sm",
      "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "colspan out of 12 for tablet-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "md",
      "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "colspan out of 12 for computer-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
      "name": "lg",
      "type": "Number",
-     "desc": "colspan out of 12 for large computer-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "colspan out of 12 for large computer-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "xsoff",
-     "type": "Number",
-     "desc": "colspan offset out of 12 for mobile-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "name": "value",
+     "type": "string",
+     "desc": "default value of the input",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "smoff",
+     "name": "labelWidth",
      "type": "Number",
-     "desc": "colspan offset out of 12 for tablet-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "desc": "set the width of label (0-12)",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "mdoff",
-     "type": "Number",
-     "desc": "colspan offset out of 12 for computer-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "name": "labelAlign",
+     "type": "String",
+     "desc": "",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "top",
+      "left"
+     ]
     },
     {
-     "name": "lgoff",
-     "type": "Number",
-     "desc": "colspan offset out of 12 for large computer-sized screens or 0 for hidden",
-     "memberOf": "Roo.bootstrap.Column"
+     "name": "readOnly",
+     "type": "Boolean",
+     "desc": "Specifies that the field should be read-only",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "hidden",
+     "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": "hide the element",
-     "memberOf": "Roo.bootstrap.Column",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
      "optvals": [
       "true",
       "false"
      ]
     },
     {
-     "name": "alert",
+     "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": "type alert (changes background / border...)",
-     "memberOf": "Roo.bootstrap.Column",
-     "optvals": [
-      "success",
-      "info",
-      "warning",
-      "danger"
-     ]
+     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "fa",
+     "name": "invalidClass",
      "type": "String",
-     "desc": "font awesome icon",
-     "memberOf": "Roo.bootstrap.Column",
+     "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": [
-      "ban",
-      "check",
-      "..."
+      "true",
+      "false"
      ]
     },
     {
-     "name": "fasize",
+     "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": "font awsome size",
-     "memberOf": "Roo.bootstrap.Column",
-     "optvals": [
-      "1",
-      "2",
-      "...."
-     ]
+     "desc": "Minimum input field length required (defaults to 0)",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "icon",
+     "name": "maxLength",
+     "type": "Number",
+     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
+     "memberOf": "Roo.bootstrap.Input"
+    },
+    {
+     "name": "minLengthText",
      "type": "String",
-     "desc": "glyphicon name",
-     "memberOf": "Roo.bootstrap.Column",
-     "optvals": [
-      "info-sign",
-      "check",
-      "..."
-     ]
+     "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": "html",
+     "name": "maxLengthText",
      "type": "String",
-     "desc": "content of column.",
-     "memberOf": "Roo.bootstrap.Column"
+     "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": "check",
+     "sig": "function (_self, checked)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the element is checked or unchecked."
+    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is enabled."
     },
+    {
+     "name": "focus",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this field receives input focus."
+    },
     {
      "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
+    {
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been marked as invalid."
+    },
+    {
+     "name": "keyup",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the key up"
+    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is shown."
+    },
+    {
+     "name": "specialkey",
+     "sig": "function (_self, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when any key related to navigation (arrows, tab, enter, esc, etc.) is pressed.  You can check\n{@link Roo.EventObject#getKey} to determine which key was pressed."
+    },
+    {
+     "name": "valid",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the field has been validated with no errors."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
+    {
+     "name": "clearInvalid",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clear any invalid styles/messages for this field"
+    },
     {
      "name": "destroy",
      "sig": "()",
      "name": "get",
      "sig": "(string the)",
      "type": "function",
-     "desc": "fetch a Navigation Group based on the navigation ID\nif one does not exist , it will get created."
+     "desc": "fetch a CheckBox Group based on the group ID"
     },
     {
      "name": "getChildContainer",
      "type": "function",
      "desc": "Returns the id of this component."
     },
+    {
+     "name": "getName",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the name of the field"
+    },
+    {
+     "name": "getRawValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the raw data value which may or may not be a valid, defined value.  To return a normalized value see {@link #getValue}."
+    },
+    {
+     "name": "getValue",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the normalized data value (undefined or emptyText will be returned as '').  To return the raw value see {@link #getRawValue}."
+    },
     {
      "name": "hasListener",
      "sig": "(String eventName)",
      "type": "function",
      "desc": "Initialize Events for the element"
     },
+    {
+     "name": "inputEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "return the real input element."
+    },
     {
      "name": "isVisible",
      "sig": "()",
      "type": "function",
      "desc": "Returns true if this component is visible."
     },
+    {
+     "name": "markInvalid",
+     "sig": "(String msg)",
+     "type": "function",
+     "desc": "Mark this field as invalid"
+    },
+    {
+     "name": "markValid",
+     "sig": "()",
+     "type": "function",
+     "desc": "Mark this field as valid"
+    },
     {
      "name": "on",
      "sig": "(String eventName, Function handler, Object scope, Object options)",
     },
     {
      "name": "register",
-     "sig": "(Roo.bootstrap.NavItem the)",
-     "type": "function",
-     "desc": "register a Navigation item"
-    },
-    {
-     "name": "register",
-     "sig": "(Roo.bootstrap.NavGroup the)",
+     "sig": "(Roo.bootstrap.CheckBox the)",
      "type": "function",
-     "desc": "register a Navigation Group"
+     "desc": "register a CheckBox Group"
     },
     {
      "name": "releaseCapture",
      "type": "function",
      "desc": "If this is a lazy rendering component, render it to its container element."
     },
+    {
+     "name": "reset",
+     "sig": "()",
+     "type": "function",
+     "desc": "Resets the current field value to the originally loaded value and clears any validation messages"
+    },
     {
      "name": "setDisabled",
      "sig": "(Boolean disabled)",
      "type": "function",
      "desc": "Convenience function for setting disabled/enabled by boolean."
     },
+    {
+     "name": "setRawValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets the underlying DOM field's value directly, bypassing validation.  To set the value with validation see {@link #setValue}."
+    },
+    {
+     "name": "setValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Sets a data value into the field and validates it.  To set the value directly without validation see {@link #setRawValue}."
+    },
     {
      "name": "setVisible",
      "sig": "(Boolean visible)",
      "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": "()",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    }
-   ]
-  },
-  "Roo.bootstrap.TabPanel": {
-   "props": [
-    {
-     "name": "active",
-     "type": "Boolean",
-     "desc": "panel active",
-     "memberOf": ""
-    },
-    {
-     "name": "html",
-     "type": "String",
-     "desc": "panel content",
-     "memberOf": ""
     },
     {
-     "name": "tabId",
-     "type": "String",
-     "desc": "unique tab ID (will be autogenerated if not set. - used to match TabItem to Panel)",
-     "memberOf": ""
+     "name": "validate",
+     "sig": "()",
+     "type": "function",
+     "desc": "Validates the field value"
     },
     {
-     "name": "navId",
-     "type": "String",
-     "desc": "The Roo.bootstrap.NavGroup which triggers show hide ()",
-     "memberOf": ""
-    },
+     "name": "validateValue",
+     "sig": "(Mixed value)",
+     "type": "function",
+     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
+    }
+   ]
+  },
+  "Roo.bootstrap.Row": {
+   "props": [
     {
      "name": "cls",
      "type": "String",
     }
    ],
    "events": [
-    {
-     "name": "beforedeactivate",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a tab is de-activated - can be used to do validation on a form."
-    },
     {
      "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "changed",
-     "sig": "function (_self, state)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the active status changes"
-    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
     }
    ]
   },
-  "Roo.bootstrap.Table": {
+  "Roo.bootstrap.Slider": {
    "props": [
     {
      "name": "cls",
      "type": "String",
-     "desc": "table class",
-     "memberOf": ""
-    },
-    {
-     "name": "align",
-     "type": "String",
-     "desc": "Specifies the alignment of a table according to surrounding text",
-     "memberOf": "",
-     "optvals": [
-      "left",
-      "center",
-      "right"
-     ]
-    },
-    {
-     "name": "bgcolor",
-     "type": "String",
-     "desc": "Specifies the background color for a table",
-     "memberOf": ""
-    },
-    {
-     "name": "border",
-     "type": "Number",
-     "desc": "Specifies whether the table cells should have borders or not",
-     "memberOf": ""
-    },
-    {
-     "name": "cellpadding",
-     "type": "Number",
-     "desc": "Specifies the space between the cell wall and the cell content",
-     "memberOf": ""
-    },
-    {
-     "name": "cellspacing",
-     "type": "Number",
-     "desc": "Specifies the space between cells",
-     "memberOf": ""
-    },
-    {
-     "name": "frame",
-     "type": "String",
-     "desc": "Specifies which parts of the outside borders that should be visible",
-     "memberOf": ""
-    },
-    {
-     "name": "rules",
-     "type": "String",
-     "desc": "Specifies which parts of the inside borders that should be visible",
-     "memberOf": ""
-    },
-    {
-     "name": "sortable",
-     "type": "String",
-     "desc": "Specifies that the table should be sortable",
-     "memberOf": ""
-    },
-    {
-     "name": "summary",
-     "type": "String",
-     "desc": "Specifies a summary of the content of a table",
-     "memberOf": ""
-    },
-    {
-     "name": "width",
-     "type": "Number",
-     "desc": "Specifies the width of a table",
-     "memberOf": ""
-    },
-    {
-     "name": "layout",
-     "type": "String",
-     "desc": "table layout (auto | fixed | initial | inherit)",
-     "memberOf": ""
-    },
-    {
-     "name": "striped",
-     "type": "boolean",
-     "desc": "Should the rows be alternative striped",
-     "memberOf": ""
-    },
-    {
-     "name": "bordered",
-     "type": "boolean",
-     "desc": "Add borders to the table",
-     "memberOf": ""
-    },
-    {
-     "name": "hover",
-     "type": "boolean",
-     "desc": "Add hover highlighting",
-     "memberOf": ""
-    },
-    {
-     "name": "condensed",
-     "type": "boolean",
-     "desc": "Format condensed",
-     "memberOf": ""
-    },
-    {
-     "name": "responsive",
-     "type": "boolean",
-     "desc": "Format condensed",
-     "memberOf": ""
-    },
-    {
-     "name": "loadMask",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "tfoot",
-     "type": "Boolean",
-     "desc": "generate tfoot, default true",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "thead",
-     "type": "Boolean",
-     "desc": "generate thead, default true",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "RowSelection",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "CellSelection",
-     "type": "Boolean",
-     "desc": "default false",
-     "memberOf": "",
-     "optvals": [
-      "true",
-      "false"
-     ]
-    },
-    {
-     "name": "footer",
-     "type": "Roo.bootstrap.PagingToolbar",
-     "desc": "a paging toolbar",
-     "memberOf": ""
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "style",
      "type": "function",
      "desc": "Fires before the component is shown.  Return false to stop the show."
     },
-    {
-     "name": "cellclick",
-     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a cell is clicked"
-    },
-    {
-     "name": "celldblclick",
-     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a cell is double clicked"
-    },
     {
      "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is hidden."
     },
-    {
-     "name": "mouseout",
-     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a mouseout occur"
-    },
-    {
-     "name": "mouseover",
-     "sig": "function (_self, el, rowIndex, columnIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a mouseover occur"
-    },
     {
      "name": "render",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
-    {
-     "name": "rowclass",
-     "sig": "function (_self, rowcfg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a row is rendered, so you can change add a style to it."
-    },
-    {
-     "name": "rowclick",
-     "sig": "function (_self, el, rowIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a row is clicked"
-    },
-    {
-     "name": "rowdblclick",
-     "sig": "function (_self, el, rowIndex, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a row is double clicked"
-    },
-    {
-     "name": "rowsrendered",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when all the  rows have been rendered"
-    },
     {
      "name": "show",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
-    {
-     "name": "clear",
-     "sig": "()",
-     "type": "function",
-     "desc": "Remove all rows"
-    },
     {
      "name": "destroy",
      "sig": "()",
      "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.TabGroup": {
    "props": [
     {
-     "name": "listeners",
-     "type": "Object",
-     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
-     "memberOf": "Roo.util.Observable"
-    }
-   ],
-   "events": [],
-   "methods": [
-    {
-     "name": "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": "fireEvent",
-     "sig": "(String eventName, Object... args)",
-     "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
-    },
-    {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
-    },
-    {
-     "name": "isLocked",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the selections are locked."
-    },
-    {
-     "name": "lock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Locks the selections."
-    },
-    {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
-    },
-    {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
-    },
-    {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
-     "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
-    },
-    {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener"
-    },
-    {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
+     "name": "navId",
+     "type": "String",
+     "desc": "the navigation id (for use with navbars) - will be auto generated if it does not exist..",
+     "memberOf": ""
     },
     {
-     "name": "unlock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Unlocks the selections."
-    }
-   ]
-  },
-  "Roo.bootstrap.Table.RowSelectionModel": {
-   "props": [
-    {
-     "name": "singleSelect",
+     "name": "carousel",
      "type": "Boolean",
-     "desc": "True to allow selection of only one row at a time (defaults to false)",
+     "desc": "true to make the group behave like a carousel",
      "memberOf": ""
     },
     {
-     "name": "listeners",
-     "type": "Object",
-     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
-     "memberOf": "Roo.util.Observable"
-    }
-   ],
-   "events": [
-    {
-     "name": "afterselectionchange",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires after the selection changes (eg. by key press or clicking)"
-    },
-    {
-     "name": "beforerowselect",
-     "sig": "function (_self, rowIndex, keepExisting)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a row is selected being selected, return false to cancel."
-    },
-    {
-     "name": "rowdeselect",
-     "sig": "function (_self, rowIndex)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a row is deselected."
-    },
-    {
-     "name": "rowselect",
-     "sig": "function (_self, rowIndex, r)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a row is selected."
-    },
-    {
-     "name": "selectionchange",
-     "sig": "function (_self)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when the selection changes"
-    }
-   ],
-   "methods": [
-    {
-     "name": "addEvents",
-     "sig": "(Object object)",
-     "type": "function",
-     "desc": "Used to define events on this Observable"
-    },
-    {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this component"
-    },
-    {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
-     "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
-    },
-    {
-     "name": "clearSelections",
-     "sig": "()",
-     "type": "function",
-     "desc": "Clears all selections."
-    },
-    {
-     "name": "deselectRange",
-     "sig": "(Number startRow, Number endRow)",
-     "type": "function",
-     "desc": "Deselects a range of rows. All rows in between startRow and endRow are also deselected."
-    },
-    {
-     "name": "deselectRow",
-     "sig": "(Number row)",
-     "type": "function",
-     "desc": "Deselects a row."
-    },
-    {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
-     "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
-    },
-    {
-     "name": "getCount",
-     "sig": "()",
-     "type": "function",
-     "desc": "Gets the number of selected rows."
-    },
-    {
-     "name": "getSelected",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the first selected record."
-    },
-    {
-     "name": "getSelections",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the selected records"
-    },
-    {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
-    },
-    {
-     "name": "hasSelection",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns True if there is a selection."
-    },
-    {
-     "name": "isIdSelected",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Returns True if the specified record id is selected."
-    },
-    {
-     "name": "isLocked",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns true if the selections are locked."
-    },
-    {
-     "name": "isSelected",
-     "sig": "(Number/Record record)",
-     "type": "function",
-     "desc": "Returns True if the specified row is selected."
-    },
-    {
-     "name": "lock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Locks the selections."
-    },
-    {
-     "name": "on",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this element (shorthand for addListener)"
+     "name": "bullets",
+     "type": "Boolean",
+     "desc": "show bullets for the panels",
+     "memberOf": ""
     },
     {
-     "name": "purgeListeners",
-     "sig": "()",
-     "type": "function",
-     "desc": "Removes all listeners for this object"
+     "name": "autoslide",
+     "type": "Boolean",
+     "desc": "auto slide .. default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "releaseCapture",
-     "sig": "(Observable o)",
-     "type": "function",
-     "desc": "Removes <b>all</b> added captures from the Observable."
+     "name": "slideOnTouch",
+     "type": "Boolean",
+     "desc": "slide on touch .. default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "removeListener",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener"
+     "name": "timer",
+     "type": "Number",
+     "desc": "auto slide timer .. default 0 millisecond",
+     "memberOf": ""
     },
     {
-     "name": "selectAll",
-     "sig": "()",
-     "type": "function",
-     "desc": "Selects all rows."
+     "name": "xs",
+     "type": "Number",
+     "desc": "colspan out of 12 for mobile-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "selectFirstRow",
-     "sig": "()",
-     "type": "function",
-     "desc": "Selects the first row in the grid."
+     "name": "sm",
+     "type": "Number",
+     "desc": "colspan out of 12 for tablet-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "selectLastRow",
-     "sig": "(Boolean keepExisting)",
-     "type": "function",
-     "desc": "Select the last row."
+     "name": "md",
+     "type": "Number",
+     "desc": "colspan out of 12 for computer-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "selectNext",
-     "sig": "(Boolean keepExisting)",
-     "type": "function",
-     "desc": "Selects the row immediately following the last selected row."
+     "name": "lg",
+     "type": "Number",
+     "desc": "colspan out of 12 for large computer-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "selectPrevious",
-     "sig": "(Boolean keepExisting)",
-     "type": "function",
-     "desc": "Selects the row that precedes the last selected row."
+     "name": "xsoff",
+     "type": "Number",
+     "desc": "colspan offset out of 12 for mobile-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "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": "smoff",
+     "type": "Number",
+     "desc": "colspan offset out of 12 for tablet-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "selectRecords",
-     "sig": "(Array records, Boolean keepExisting)",
-     "type": "function",
-     "desc": "Select records."
+     "name": "mdoff",
+     "type": "Number",
+     "desc": "colspan offset out of 12 for computer-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "selectRow",
-     "sig": "(Number row, Boolean keepExisting)",
-     "type": "function",
-     "desc": "Selects a row."
+     "name": "lgoff",
+     "type": "Number",
+     "desc": "colspan offset out of 12 for large computer-sized screens or 0 for hidden",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "selectRows",
-     "sig": "(Array rows, Boolean keepExisting)",
-     "type": "function",
-     "desc": "Selects multiple rows."
+     "name": "hidden",
+     "type": "Boolean",
+     "desc": "hide the element",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "un",
-     "sig": "(String eventName, Function handler, Object scope)",
-     "type": "function",
-     "desc": "Removes a listener (shorthand for removeListener)"
+     "name": "alert",
+     "type": "String",
+     "desc": "type alert (changes background / border...)",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "success",
+      "info",
+      "warning",
+      "danger"
+     ]
     },
     {
-     "name": "unlock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Unlocks the selections."
-    }
-   ]
-  },
-  "Roo.bootstrap.TableBody": {
-   "props": [
-    {
-     "name": "cls",
+     "name": "fa",
      "type": "String",
-     "desc": "element class",
-     "memberOf": ""
+     "desc": "font awesome icon",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "ban",
+      "check",
+      "..."
+     ]
     },
     {
-     "name": "tag",
-     "type": "String",
-     "desc": "element tag (thead|tbody|tfoot) default tbody",
-     "memberOf": ""
+     "name": "fasize",
+     "type": "Number",
+     "desc": "font awsome size",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "1",
+      "2",
+      "...."
+     ]
     },
     {
-     "name": "align",
+     "name": "icon",
      "type": "String",
-     "desc": "Aligns the content inside the element",
-     "memberOf": ""
+     "desc": "glyphicon name",
+     "memberOf": "Roo.bootstrap.Column",
+     "optvals": [
+      "info-sign",
+      "check",
+      "..."
+     ]
     },
     {
-     "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": "html",
+     "type": "String",
+     "desc": "content of column.",
+     "memberOf": "Roo.bootstrap.Column"
     },
     {
-     "name": "valign",
+     "name": "cls",
      "type": "String",
-     "desc": "Vertical aligns the content inside the <tbody> element",
-     "memberOf": ""
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "style",
      "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": "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.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": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
     },
     {
-     "name": "rows",
-     "type": "Number",
-     "desc": "Specifies the visible number of lines in a text area",
-     "memberOf": ""
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
     },
     {
-     "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": "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": "resize",
-     "type": "string",
-     "desc": "",
-     "memberOf": "",
-     "optvals": [
-      "none",
-      "both",
-      "horizontal",
-      "vertical",
-      "inherit",
-      "initial"
-     ]
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "html",
-     "type": "string",
-     "desc": "text",
-     "memberOf": ""
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "disabled",
-     "type": "Boolean",
-     "desc": "is it disabled",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "isLocked",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the selections are locked."
     },
     {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "lock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Locks the selections."
     },
     {
-     "name": "inputType",
-     "type": "String",
-     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
-     "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": "name",
-     "type": "String",
-     "desc": "name of the input",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "placeholder",
-     "type": "string",
-     "desc": "- placeholder to put in text.",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "before",
-     "type": "string",
-     "desc": "- input group add on before",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
     },
     {
-     "name": "after",
-     "type": "string",
-     "desc": "- input group add on after",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
     },
     {
-     "name": "size",
-     "type": "string",
-     "desc": "- (lg|sm) or leave empty..",
-     "memberOf": "Roo.bootstrap.Input"
+     "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": "xs",
-     "type": "Number",
-     "desc": "colspan out of 12 for mobile-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": "afterselectionchange",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the selection changes (eg. by key press or clicking)"
     },
     {
-     "name": "sm",
-     "type": "Number",
-     "desc": "colspan out of 12 for tablet-sized screens",
-     "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": "md",
-     "type": "Number",
-     "desc": "colspan out of 12 for computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "rowdeselect",
+     "sig": "function (_self, rowIndex)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is deselected."
     },
     {
-     "name": "lg",
-     "type": "Number",
-     "desc": "colspan out of 12 for large computer-sized screens",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "rowselect",
+     "sig": "function (_self, rowIndex, r)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is selected."
     },
     {
-     "name": "value",
-     "type": "string",
-     "desc": "default value of the input",
-     "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": "labelWidth",
-     "type": "Number",
-     "desc": "set the width of label (0-12)",
-     "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": "labelAlign",
-     "type": "String",
-     "desc": "",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "top",
-      "left"
-     ]
+     "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": "readOnly",
-     "type": "Boolean",
-     "desc": "Specifies that the field should be read-only",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "clearSelections",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears all selections."
     },
     {
-     "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": "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": "align",
-     "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "left",
-      "center",
-      "right"
-     ]
+     "name": "deselectRow",
+     "sig": "(Number row)",
+     "type": "function",
+     "desc": "Deselects a row."
     },
     {
-     "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": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "getCount",
+     "sig": "()",
+     "type": "function",
+     "desc": "Gets the number of selected rows."
     },
     {
-     "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": "getSelected",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the first selected record."
     },
     {
-     "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": "getSelections",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the selected records"
     },
     {
-     "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": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "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": "hasSelection",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns True if there is a selection."
     },
     {
-     "name": "hasFeedback",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "name": "isIdSelected",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Returns True if the specified record id is selected."
     },
     {
-     "name": "invalidFeedbackIcon",
-     "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "isLocked",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the selections are locked."
     },
     {
-     "name": "validFeedbackIcon",
-     "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "isSelected",
+     "sig": "(Number/Record record)",
+     "type": "function",
+     "desc": "Returns True if the specified row 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": "lock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Locks the selections."
     },
     {
-     "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": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "name": "vtype",
-     "type": "String",
-     "desc": "A validation type name as defined in {@link Roo.form.VTypes} (defaults to null)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
     },
     {
-     "name": "disableKeyFilter",
-     "type": "Boolean",
-     "desc": "True to disable input keystroke filtering (defaults to false)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
     },
     {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
     },
     {
-     "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": "selectAll",
+     "sig": "()",
+     "type": "function",
+     "desc": "Selects all rows."
     },
     {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "selectFirstRow",
+     "sig": "()",
+     "type": "function",
+     "desc": "Selects the first row in the grid."
     },
     {
-     "name": "maxLength",
-     "type": "Number",
-     "desc": "Maximum input field length allowed (defaults to Number.MAX_VALUE)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "selectLastRow",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Select the last row."
     },
     {
-     "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": "selectNext",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects the row immediately following the last selected row."
     },
     {
-     "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": "selectPrevious",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects the row that precedes the last selected 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": "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": "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": "selectRecords",
+     "sig": "(Array records, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Select records."
     },
     {
-     "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": "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": "style",
+     "name": "tag",
      "type": "String",
-     "desc": "any extra css",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "element tag (thead|tbody|tfoot) default tbody",
+     "memberOf": ""
     },
     {
-     "name": "xattr",
-     "type": "Object",
-     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
-     "memberOf": "Roo.bootstrap.Component"
+     "name": "align",
+     "type": "String",
+     "desc": "Aligns the content inside the element",
+     "memberOf": ""
     },
     {
-     "name": "can_build_overlaid",
-     "type": "Boolean",
+     "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",
+     "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"
     },
      "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",
-     "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",
+     "name": "cls",
      "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"
+     "desc": "cell class",
+     "memberOf": ""
     },
     {
-     "name": "labelAlign",
+     "name": "tag",
      "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": "cell tag (td|th) default td",
+     "memberOf": ""
     },
     {
-     "name": "autocomplete",
+     "name": "abbr",
      "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": "Specifies an abbreviated version of the content in a cell",
+     "memberOf": ""
     },
     {
      "name": "align",
      "type": "String",
-     "desc": "Default left",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "left",
-      "center",
-      "right"
-     ]
-    },
-    {
-     "name": "validationEvent",
-     "type": "String/Boolean",
-     "desc": "The event that should initiate field validation. Set to false to disable\n      automatic validation (defaults to \"keyup\").",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validateOnBlur",
-     "type": "Boolean",
-     "desc": "Whether the field should validate when it loses focus (defaults to true).",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validationDelay",
-     "type": "Number",
-     "desc": "The length of time in milliseconds after user input begins until validation is initiated (defaults to 250)",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "focusClass",
-     "type": "String",
-     "desc": "The CSS class to use when the field receives focus (defaults to \"x-form-focus\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "invalidClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field invalid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "validClass",
-     "type": "String",
-     "desc": "The CSS class to use when marking a field valid (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "hasFeedback",
-     "type": "Boolean",
-     "desc": "default true",
-     "memberOf": "Roo.bootstrap.Input",
-     "optvals": [
-      "true",
-      "false"
-     ]
+     "desc": "Aligns the content in a cell",
+     "memberOf": ""
     },
     {
-     "name": "invalidFeedbackIcon",
+     "name": "axis",
      "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Categorizes cells",
+     "memberOf": ""
     },
     {
-     "name": "validFeedbackIcon",
+     "name": "bgcolor",
      "type": "String",
-     "desc": "The CSS class to use when create feedback icon (defaults to \"x-form-invalid\")",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Specifies the background color of a cell",
+     "memberOf": ""
     },
     {
-     "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": "charoff",
+     "type": "Number",
+     "desc": "Sets the number of characters the content will be aligned from the character specified by the char attribute",
+     "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": "Roo.bootstrap.Input"
+     "name": "colspan",
+     "type": "Number",
+     "desc": "Specifies the number of columns a cell should span",
+     "memberOf": ""
     },
     {
-     "name": "vtype",
+     "name": "headers",
      "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"
+     "desc": "Specifies one or more header cells a cell is related to",
+     "memberOf": ""
     },
     {
-     "name": "allowBlank",
-     "type": "Boolean",
-     "desc": "False to validate that the value length > 0 (defaults to true)",
-     "memberOf": "Roo.bootstrap.Input"
+     "name": "height",
+     "type": "Number",
+     "desc": "Sets the height of a cell",
+     "memberOf": ""
     },
     {
-     "name": "blankText",
+     "name": "nowrap",
      "type": "String",
-     "desc": "Error text to display if the allow blank validation fails (defaults to \"This field is required\")",
-     "memberOf": "Roo.bootstrap.Input"
-    },
-    {
-     "name": "minLength",
-     "type": "Number",
-     "desc": "Minimum input field length required (defaults to 0)",
-     "memberOf": "Roo.bootstrap.Input"
+     "desc": "Specifies that the content inside a cell should not wrap",
+     "memberOf": ""
     },
     {
-     "name": "maxLength",
+     "name": "rowspan",
      "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": "Sets the number of rows a cell should span",
+     "memberOf": ""
     },
     {
-     "name": "maxLengthText",
+     "name": "scope",
      "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": "Defines a way to associate header cells and data cells in a table",
+     "memberOf": ""
     },
     {
-     "name": "regexText",
+     "name": "valign",
      "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": "Vertical aligns the content in a cell",
+     "memberOf": ""
     },
     {
-     "name": "cls",
-     "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
+     "name": "width",
+     "type": "Number",
+     "desc": "Specifies the width of a cell",
+     "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": "()",
      "desc": "Returns true if this component is visible."
     },
     {
-     "name": "markInvalid",
-     "sig": "(String msg)",
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
      "type": "function",
-     "desc": "Mark this field as invalid"
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
     },
     {
-     "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": "purgeListeners",
+     "name": "purgeListeners",
      "sig": "()",
      "type": "function",
      "desc": "Removes all listeners for this object"
      "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.TableRow": {
+   "props": [
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "row class",
+     "memberOf": ""
     },
     {
-     "name": "validate",
-     "sig": "()",
+     "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",
+     "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": "Validates the field value"
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "validateValue",
-     "sig": "(Mixed value)",
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Validates a value according to the field's validation rules and marks the field as invalid\nif the validation fails"
+     "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."
     }
-   ]
-  },
-  "Roo.bootstrap.Tooltip": {
-   "props": [],
-   "events": [],
+   ],
    "methods": [
     {
-     "name": "currentEl",
+     "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": ""
+     "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.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",
      "desc": "is it disabled",
      "memberOf": "Roo.bootstrap.Input"
     },
-    {
-     "name": "fieldLabel",
-     "type": "String",
-     "desc": "- the label associated",
-     "memberOf": "Roo.bootstrap.Input"
-    },
     {
      "name": "inputType",
      "type": "String",
      "desc": "name of the input",
      "memberOf": "Roo.bootstrap.Input"
     },
+    {
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
+    },
     {
      "name": "placeholder",
      "type": "string",
       "right"
      ]
     },
+    {
+     "name": "forceFeedback",
+     "type": "Boolean",
+     "desc": "Default false",
+     "memberOf": "Roo.bootstrap.Input",
+     "optvals": [
+      "true",
+      "false"
+     ]
+    },
     {
      "name": "validationEvent",
      "type": "String/Boolean",
      "name": "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",
-     "memberOf": ""
-    },
-    {
-     "name": "minWidth",
-     "type": "Number",
-     "desc": "default 300",
-     "memberOf": ""
-    },
-    {
-     "name": "minHeight",
-     "type": "Number",
-     "desc": "default 300",
+     "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": "buttons",
-     "type": "Array",
-     "desc": "default ['rotateLeft', 'pictureBtn', 'rotateRight']",
-     "memberOf": ""
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "is it disabled",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "cls",
+     "name": "inputType",
      "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "style",
+     "name": "name",
      "type": "String",
-     "desc": "any extra css",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "name of the input",
+     "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": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "can_build_overlaid",
-     "type": "Boolean",
-     "desc": "True if element can be rebuild from a HTML page",
-     "memberOf": "Roo.bootstrap.Component"
+     "name": "placeholder",
+     "type": "string",
+     "desc": "- placeholder to put in text.",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "dataId",
+     "name": "before",
      "type": "string",
-     "desc": "cutomer id",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "- input group add on before",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "name",
+     "name": "after",
      "type": "string",
-     "desc": "Specifies name attribute",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "- input group add on after",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "tooltip",
+     "name": "size",
      "type": "string",
-     "desc": "Text for the tooltip",
-     "memberOf": "Roo.bootstrap.Component"
+     "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": "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": "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, options)\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}",
+     "name": "invalid",
+     "sig": "function (_self, msg)\n{\n\n}",
      "type": "function",
-     "desc": "Fire after initEvent"
+     "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",
      "type": "function",
      "desc": "Fires after the component is rendered."
     },
+    {
+     "name": "select",
+     "sig": "function (_self, date)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when select a date."
+    },
     {
      "name": "show",
-     "sig": "function (_self)\n{\n\n}",
+     "sig": "function (thisthis, date)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is shown."
+     "desc": "Fires when this field show."
     },
     {
-     "name": "trash",
+     "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": "Fire when trash image"
+     "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",
-     "memberOf": ""
+     "desc": "a fontawesome for the trigger icon see http://fortawesome.github.io/Font-Awesome/icons/",
+     "memberOf": "",
+     "optvals": [
+      "search",
+      "calendar"
+     ]
     },
     {
-     "name": "icon",
-     "type": "String",
-     "desc": "Box icon",
+     "name": "hideTrigger",
+     "type": "Boolean",
+     "desc": "True to hide the trigger element and display only the base text field (defaults to false)",
      "memberOf": ""
     },
     {
-     "name": "footer",
-     "type": "String",
-     "desc": "Footer text",
-     "memberOf": ""
+     "name": "removable",
+     "type": "Boolean",
+     "desc": "special filter default false",
+     "memberOf": "",
+     "optvals": [
+      "true",
+      "false"
+     ]
     },
     {
-     "name": "fhref",
-     "type": "String",
-     "desc": "Footer href",
-     "memberOf": ""
+     "name": "disabled",
+     "type": "Boolean",
+     "desc": "is it disabled",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "cls",
+     "name": "inputType",
      "type": "String",
-     "desc": "css class",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "button | checkbox | email | file | hidden | image | number | password | radio | range | reset | search | submit | text",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "style",
+     "name": "name",
      "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"
+     "desc": "name of the input",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "can_build_overlaid",
-     "type": "Boolean",
-     "desc": "True if element can be rebuild from a HTML page",
-     "memberOf": "Roo.bootstrap.Component"
+     "name": "fieldLabel",
+     "type": "string",
+     "desc": "- the label associated",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "dataId",
+     "name": "placeholder",
      "type": "string",
-     "desc": "cutomer id",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "- placeholder to put in text.",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "name",
+     "name": "before",
      "type": "string",
-     "desc": "Specifies name attribute",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "- input group add on before",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "tooltip",
+     "name": "after",
      "type": "string",
-     "desc": "Text for the tooltip",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "- input group add on after",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "container_method",
+     "name": "size",
      "type": "string",
-     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
-     "memberOf": "Roo.bootstrap.Component"
+     "desc": "- (lg|sm) or leave empty..",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "disableClass",
-     "type": "String",
-     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
-     "memberOf": "Roo.Component"
+     "name": "xs",
+     "type": "Number",
+     "desc": "colspan out of 12 for mobile-sized screens",
+     "memberOf": "Roo.bootstrap.Input"
     },
     {
-     "name": "allowDomMove",
-     "type": "Boolean",
-     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "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": "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"
     },
     {
      "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 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}",
      "desc": "Fires after the component is enabled."
     },
     {
-     "name": "hide",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "exception",
+     "sig": "function (_self, xhr)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is hidden."
+     "desc": "Fire when get exception"
     },
     {
-     "name": "render",
-     "sig": "function (_self)\n{\n\n}",
+     "name": "footerbuttonclick",
+     "sig": "function (_self, type)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is rendered."
+     "desc": "Fire when footerbuttonclick"
     },
     {
-     "name": "show",
+     "name": "hide",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the component is shown."
-    }
-   ],
-   "methods": [
+     "desc": "Fires after the component is hidden."
+    },
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
+     "name": "initial",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Used to define events on this Observable"
+     "desc": "Fire after initEvent"
     },
     {
-     "name": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "name": "inspect",
+     "sig": "function (_self, file)\n{\n\n}",
      "type": "function",
-     "desc": "Appends an event handler to this component"
+     "desc": "Fire when inspect the file"
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
+     "name": "prepare",
+     "sig": "function (_self, file)\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."
+     "desc": "Fire when preparing the file data"
     },
     {
-     "name": "destroy",
-     "sig": "()",
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "resize",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when resize"
+    },
+    {
+     "name": "rotate",
+     "sig": "function (_self, pos)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when rotate the image"
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    },
+    {
+     "name": "trash",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when trash image"
+    },
+    {
+     "name": "upload",
+     "sig": "function (_self, data)\n{\n\n}",
+     "type": "function",
+     "desc": "Fire when xhr upload the file"
+    }
+   ],
+   "methods": [
+    {
+     "name": "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}."
     },
      "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": ""
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "extraParams",
-     "type": "Object",
-     "desc": "(Optional) An object containing properties which are used as\nextra parameters to each request made by this object. (defaults to undefined)",
-     "memberOf": ""
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "defaultHeaders",
+     "name": "xattr",
      "type": "Object",
-     "desc": "(Optional) An object containing request headers which are added\n to each request made by this object. (defaults to undefined)",
-     "memberOf": ""
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "method",
-     "type": "String",
-     "desc": "(Optional) The default HTTP method to be used for requests. (defaults to undefined; if not set but parms are present will use POST, otherwise GET)",
-     "memberOf": ""
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "timeout",
-     "type": "Number",
-     "desc": "(Optional) The timeout in milliseconds to be used for requests. (defaults to 30000)",
-     "memberOf": ""
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "autoAbort",
-     "type": "Boolean",
-     "desc": "(Optional) Whether this request should abort any pending requests. (defaults to false)",
-     "memberOf": ""
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "disableCaching",
-     "type": "Boolean",
-     "desc": "(Optional) True to add a unique cache-buster param to GET requests. (defaults to true)",
-     "memberOf": ""
-    }
-   ],
-   "events": [
-    {
-     "name": "beforeload",
-     "sig": "function (This, params)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before a network request is made to retrieve a data object."
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "load",
-     "sig": "function (This, o, arg)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires before the load method's callback is called."
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
-     "name": "loadexception",
-     "sig": "function (This, o, arg, e)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires if an Exception occurs during data retrieval."
-    }
-   ],
-   "methods": [
-    {
-     "name": "getConnection",
-     "sig": "()",
-     "type": "function",
-     "desc": "Return the {@link Roo.data.Connection} object being used by this Proxy."
-    },
-    {
-     "name": "load",
-     "sig": "(Object params, Roo.data.DataReader reader, Function callback, Object scope, Object arg)",
-     "type": "function",
-     "desc": "Load data from the configured {@link Roo.data.Connection}, read the data object into\na block of Roo.data.Records using the passed {@link Roo.data.DataReader} implementation, and\nprocess that block using the passed callback."
-    }
-   ]
-  },
-  "Roo.data.JsonReader": {
-   "props": [
-    {
-     "name": "totalProperty",
+     "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": ""
-    },
-    {
-     "name": "fields",
-     "type": "Array",
-     "desc": "Array of field definition objects",
-     "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 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": "An array of field definition objects, or field name strings.",
-     "memberOf": ""
-    },
-    {
-     "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": "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"
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
     },
     {
      "name": "listeners",
    ],
    "events": [
     {
-     "name": "add",
-     "sig": "function (_self, records, index)\n{\n\n}",
+     "name": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when Records have been added to the Store"
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "beforeload",
-     "sig": "function (_self, options)\n{\n\n}",
+     "name": "beforehide",
+     "sig": "function (_self)\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 before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "beforeloadadd",
-     "sig": "function (_self, records, options)\n{\n\n}",
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after a new set of Records has been loaded."
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "clear",
+     "name": "beforeshow",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the data cache has been cleared."
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "datachanged",
+     "name": "childrenrendered",
      "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 when the children have been rendered.."
     },
     {
-     "name": "load",
-     "sig": "function (_self, records, options)\n{\n\n}",
+     "name": "destroy",
+     "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 destroyed."
     },
     {
-     "name": "loadexception",
-     "sig": "function (, return, load, jsonData)\n{\n\n}",
+     "name": "disable",
+     "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 disabled."
     },
     {
-     "name": "metachange",
-     "sig": "function (_self, meta)\n{\n\n}",
+     "name": "enable",
+     "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 enabled."
     },
     {
-     "name": "remove",
-     "sig": "function (_self, record, index)\n{\n\n}",
+     "name": "hide",
+     "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 hidden."
     },
     {
-     "name": "update",
-     "sig": "function (_self, record, operation)\n{\n\n}",
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a Record has been updated"
+     "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": "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)",
      "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)",
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... 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."
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
      "name": "hasListener",
      "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)",
-     "type": "function",
-     "desc": "Replaces one child node in this node with another."
-    },
-    {
-     "name": "sort",
-     "sig": "(Function fn, Object scope)",
+     "name": "request",
+     "sig": "(Object options)",
      "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)",
+     "name": "load",
+     "sig": "(Object params, Roo.data.DataReader reader, Function callback, Object scope, Object arg)",
      "type": "function",
-     "desc": "Date sorting"
+     "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.Node": {
+   "props": [
+    {
+     "name": "leaf",
+     "type": "Boolean",
+     "desc": "true if this node is a leaf and does not have children",
+     "memberOf": ""
     },
     {
-     "name": "asFloat",
-     "sig": "(Mixed s)",
+     "name": "id",
+     "type": "String",
+     "desc": "The id for this node. If one is not specified, one is generated.",
+     "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": "append",
+     "sig": "function (tree, _self, node, index)\n{\n\n}",
      "type": "function",
-     "desc": "Float sorting"
+     "desc": "Fires when a new child node is appended"
     },
     {
-     "name": "asInt",
-     "sig": "(Mixed s)",
+     "name": "beforeappend",
+     "sig": "function (tree, _self, node)\n{\n\n}",
      "type": "function",
-     "desc": "Integer sorting"
+     "desc": "Fires before a new child is appended, return false to cancel the append."
     },
     {
-     "name": "asText",
-     "sig": "(Mixed s)",
+     "name": "beforeinsert",
+     "sig": "function (tree, _self, node, refNode)\n{\n\n}",
      "type": "function",
-     "desc": "Strips all HTML tags to sort on text only"
+     "desc": "Fires before a new child is inserted, return false to cancel the insert."
     },
     {
-     "name": "asUCString",
-     "sig": "(Mixed s)",
+     "name": "beforemove",
+     "sig": "function (tree, _self, oldParent, newParent, index)\n{\n\n}",
      "type": "function",
-     "desc": "Case insensitive string"
+     "desc": "Fires before this node is moved to a new location in the tree. Return false to cancel the move."
     },
     {
-     "name": "asUCText",
-     "sig": "(Mixed s)",
+     "name": "beforeremove",
+     "sig": "function (tree, _self, node)\n{\n\n}",
      "type": "function",
-     "desc": "Strips all HTML tags to sort on text only - Case insensitive"
+     "desc": "Fires before a child is removed, return false to cancel the remove."
     },
     {
-     "name": "none",
-     "sig": "(Mixed s)",
+     "name": "insert",
+     "sig": "function (tree, _self, node, refNode)\n{\n\n}",
      "type": "function",
-     "desc": "Default sort that does nothing"
+     "desc": "Fires when a new child node is inserted."
+    },
+    {
+     "name": "move",
+     "sig": "function (tree, _self, oldParent, newParent, index)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this node is moved to a new location in the tree"
+    },
+    {
+     "name": "remove",
+     "sig": "function (tree, _self, node)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a child node is removed"
+    }
+   ],
+   "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": "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)",
+     "type": "function",
+     "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)",
+     "type": "function",
+     "desc": "Returns the child node at the specified index."
+    },
+    {
+     "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": "removeChild",
+     "sig": "(Node node)",
+     "type": "function",
+     "desc": "Removes a child node from this node."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "replaceChild",
+     "sig": "(Node newChild, Node oldChild)",
+     "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"
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
     }
    ]
   },
-  "Roo.data.Store": {
+  "Roo.data.Record": {
+   "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."
+    },
+    {
+     "name": "create",
+     "sig": "(Array o)",
+     "type": "function",
+     "desc": "Generate a constructor for a specific record layout."
+    },
+    {
+     "name": "get",
+     "sig": "(String name)",
+     "type": "function",
+     "desc": "Get the value of the named field."
+    },
+    {
+     "name": "reject",
+     "sig": "()",
+     "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."
+    },
+    {
+     "name": "set",
+     "sig": "(String name, Object value)",
+     "type": "function",
+     "desc": "Set the named field to the specified value."
+    }
+   ]
+  },
+  "Roo.data.ScriptTagProxy": {
    "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.",
+     "name": "url",
+     "type": "String",
+     "desc": "The URL from which to request the data object.",
      "memberOf": ""
     },
     {
-     "name": "proxy",
-     "type": "Roo.data.DataProxy",
-     "desc": "The Proxy object which provides access to a data object.",
+     "name": "timeout",
+     "type": "Number",
+     "desc": "(Optional) The number of milliseconds to wait for a response. Defaults to 30 seconds.",
+     "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.",
+     "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": "abort",
+     "sig": "()",
+     "type": "function",
+     "desc": "Abort the current server request."
+    },
+    {
+     "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."
+    }
+   ]
+  },
+  "Roo.data.SimpleStore": {
+   "props": [
+    {
+     "name": "id",
+     "type": "Number",
+     "desc": "The array index of the record id. Leave blank to auto generate ids.",
+     "memberOf": ""
+    },
+    {
+     "name": "fields",
+     "type": "Array",
+     "desc": "An array of field definition objects, or field name strings.",
      "memberOf": ""
     },
     {
      "name": "data",
      "type": "Array",
-     "desc": "Inline data to be loaded when the store is initialized.",
+     "desc": "The multi-dimensional array of data",
      "memberOf": ""
     },
+    {
+     "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": "proxy",
+     "type": "Roo.data.DataProxy",
+     "desc": "The Proxy object which provides access to a data object.",
+     "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": ""
+     "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": ""
+     "memberOf": "Roo.data.Store"
     },
     {
      "name": "sortInfo",
      "type": "Object",
      "desc": "A config object in the format: {field: \"fieldName\", direction: \"ASC|DESC\"}",
-     "memberOf": ""
+     "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": ""
+     "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": ""
+     "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": ""
+     "memberOf": "Roo.data.Store"
     },
     {
      "name": "listeners",
     }
    ]
   },
-  "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": [
-    {
-     "name": "append",
-     "sig": "function (tree, parent, node, index)\n{\n\n}",
-     "type": "function",
-     "desc": "Fires when a new child node is appended to a node in this tree."
-    },
+  "Roo.data.SortTypes": {
+   "props": [],
+   "events": [],
+   "methods": [
     {
-     "name": "beforeappend",
-     "sig": "function (tree, parent, node)\n{\n\n}",
+     "name": "asDate",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Fires before a new child is appended to a node in this tree, return false to cancel the append."
+     "desc": "Date sorting"
     },
     {
-     "name": "beforeinsert",
-     "sig": "function (tree, parent, node, refNode)\n{\n\n}",
+     "name": "asFloat",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Fires before a new child is inserted in a node in this tree, return false to cancel the insert."
+     "desc": "Float sorting"
     },
     {
-     "name": "beforemove",
-     "sig": "function (tree, node, oldParent, newParent, index)\n{\n\n}",
+     "name": "asInt",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Fires before a node is moved to a new location in the tree. Return false to cancel the move."
+     "desc": "Integer sorting"
     },
     {
-     "name": "beforeremove",
-     "sig": "function (tree, parent, node)\n{\n\n}",
+     "name": "asText",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Fires before a child is removed from a node in this tree, return false to cancel the remove."
+     "desc": "Strips all HTML tags to sort on text only"
     },
     {
-     "name": "insert",
-     "sig": "function (tree, parent, node, refNode)\n{\n\n}",
+     "name": "asUCString",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Fires when a new child node is inserted in a node in this tree."
+     "desc": "Case insensitive string"
     },
     {
-     "name": "move",
-     "sig": "function (tree, node, oldParent, newParent, index)\n{\n\n}",
+     "name": "asUCText",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Fires when a node is moved to a new location in the tree"
+     "desc": "Strips all HTML tags to sort on text only - Case insensitive"
     },
     {
-     "name": "remove",
-     "sig": "function (tree, parent, node)\n{\n\n}",
+     "name": "none",
+     "sig": "(Mixed s)",
      "type": "function",
-     "desc": "Fires when a child node is removed from a node in this tree."
+     "desc": "Default sort that does nothing"
     }
-   ],
-   "methods": [
+   ]
+  },
+  "Roo.data.Store": {
+   "props": [
     {
-     "name": "addEvents",
-     "sig": "(Object object)",
-     "type": "function",
-     "desc": "Used to define events on this Observable"
+     "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": "addListener",
-     "sig": "(String eventName, Function handler, Object scope, Object options)",
-     "type": "function",
-     "desc": "Appends an event handler to this component"
+     "name": "proxy",
+     "type": "Roo.data.DataProxy",
+     "desc": "The Proxy object which provides access to a data object.",
+     "memberOf": ""
     },
     {
-     "name": "capture",
-     "sig": "(Observable o, Function fn, Object scope)",
-     "type": "function",
-     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+     "name": "data",
+     "type": "Array",
+     "desc": "Inline data to be loaded when the store is initialized.",
+     "memberOf": ""
     },
     {
-     "name": "fireEvent",
-     "sig": "(String eventName, Object... args)",
-     "type": "function",
-     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+     "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": "getNodeById",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Gets a node in this tree by its id."
+     "name": "baseParams",
+     "type": "Object",
+     "desc": "An object containing properties which are to be sent as parameters\non any HTTP request",
+     "memberOf": ""
     },
     {
-     "name": "getRootNode",
-     "sig": "()",
-     "type": "function",
-     "desc": "Returns the root node for this tree."
+     "name": "sortInfo",
+     "type": "Object",
+     "desc": "A config object in the format: {field: \"fieldName\", direction: \"ASC|DESC\"}",
+     "memberOf": ""
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
-     "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "name": "multiSort",
+     "type": "Boolean",
+     "desc": "enable multi column sorting (sort is based on the order of columns, remote only at present)",
+     "memberOf": ""
     },
     {
-     "name": "on",
+     "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",
+     "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",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the data cache has been cleared."
+    },
+    {
+     "name": "datachanged",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the data cache has changed, and a widget which is using this Store\nas a Record cache should refresh its view."
+    },
+    {
+     "name": "load",
+     "sig": "function (_self, records, options)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after a new set of Records has been loaded, before they are added to the store."
+    },
+    {
+     "name": "loadexception",
+     "sig": "function (, return, load, jsonData)\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"
+    },
+    {
+     "name": "metachange",
+     "sig": "function (_self, meta)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when this store's reader provides new metadata (fields). This is currently only support for JsonReaders."
+    },
+    {
+     "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}",
+     "type": "function",
+     "desc": "Fires when a Record has been updated"
+    }
+   ],
+   "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)",
+     "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": "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",
+     "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."
+    },
+    {
+     "name": "filter",
+     "sig": "(String field, String/RegExp value, Boolean anyMatch)",
+     "type": "function",
+     "desc": "Filter the records by a specified property."
+    },
+    {
+     "name": "filterBy",
+     "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."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "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",
+     "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."
+    },
+    {
+     "name": "getSortState",
+     "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>"
+    },
+    {
+     "name": "getTotalCount",
+     "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>"
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "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)",
+     "type": "function",
+     "desc": "Inserts Records to the Store at the given index and fires the add event."
+    },
+    {
+     "name": "load",
+     "sig": "(Object options)",
+     "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>"
+    },
+    {
+     "name": "loadData",
+     "sig": "(Object data, Boolean append)",
+     "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."
+    },
+    {
+     "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": "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)",
+     "type": "function",
+     "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": "()",
+     "type": "function",
+     "desc": "Remove all Records from the Store and fires the clear event."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "setDefaultSort",
+     "sig": "(String fieldName, String dir)",
+     "type": "function",
+     "desc": "Sets the default sort column and order to be used by the next load operation."
+    },
+    {
+     "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)",
+     "type": "function",
+     "desc": "Sums the value of <i>property</i> for each record between start and end and returns the result."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "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": [
+    {
+     "name": "append",
+     "sig": "function (tree, parent, node, index)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a new child node is appended to a node in this tree."
+    },
+    {
+     "name": "beforeappend",
+     "sig": "function (tree, parent, node)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before a new child is appended to a node in this tree, return false to cancel the append."
+    },
+    {
+     "name": "beforeinsert",
+     "sig": "function (tree, parent, node, refNode)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before a new child is inserted in a node in this tree, return false to cancel the insert."
+    },
+    {
+     "name": "beforemove",
+     "sig": "function (tree, node, oldParent, newParent, index)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before a node is moved to a new location in the tree. Return false to cancel the move."
+    },
+    {
+     "name": "beforeremove",
+     "sig": "function (tree, parent, node)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before a child is removed from a node in this tree, return false to cancel the remove."
+    },
+    {
+     "name": "insert",
+     "sig": "function (tree, parent, node, refNode)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a new child node is inserted in a node in this tree."
+    },
+    {
+     "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": "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."
+    }
+   ],
+   "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": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "getNodeById",
+     "sig": "(String id)",
+     "type": "function",
+     "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)"
      "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",
      "name": "rowclass",
      "sig": "function (gridview, rowcfg)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is rendered, so you can change add a style to it."
+     "desc": "Fires when a row is rendered, so you can change add a style to it."
+    },
+    {
+     "name": "rowclick",
+     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is clicked"
+    },
+    {
+     "name": "rowcontextmenu",
+     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is right clicked"
+    },
+    {
+     "name": "rowdblclick",
+     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is double clicked"
+    },
+    {
+     "name": "startdrag",
+     "sig": "function (_self, dd, e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when row(s) start being dragged"
+    },
+    {
+     "name": "validateedit",
+     "sig": "function (e)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after a cell is edited, but before the value is set in the record. \nYou can use this to modify the value being set in the field, Return false\nto cancel the change. The edit event object has the following properties <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>editor - This editor</li>\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value being set</li>\n<li>originalValue - The original value for the field, before the edit.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n<li>cancel - Set this to true to cancel the edit or return false from your handler.</li>\n</ul>"
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "autoSize",
+     "sig": "()",
+     "type": "function",
+     "desc": "Causes the grid to manually recalculate its dimensions. Generally this is done automatically,\nbut if manual update is required this method will initiate it."
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
+     "sig": "(Boolean removeEl)",
+     "type": "function",
+     "desc": "Destroy this grid."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "getColumnModel",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's ColumnModel."
+    },
+    {
+     "name": "getDataSource",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's DataSource."
+    },
+    {
+     "name": "getDragDropText",
+     "sig": "()",
+     "type": "function",
+     "desc": "Called to get grid's drag proxy text, by default returns this.ddText."
+    },
+    {
+     "name": "getGridEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's underlying element."
+    },
+    {
+     "name": "getSelectionModel",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's SelectionModel."
+    },
+    {
+     "name": "getSource",
+     "sig": "()",
+     "type": "function",
+     "desc": "Gets all the data from the grid."
+    },
+    {
+     "name": "getView",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the grid's GridView object."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "reconfigure",
+     "sig": "(Roo.data.Store dataSource, Roo.grid.ColumnModel The)",
+     "type": "function",
+     "desc": "Reconfigures the grid to use a different Store and Column Model.\nThe View will be bound to the new objects and refreshed."
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "()",
+     "type": "function",
+     "desc": "Called once after all setup has been completed and the grid is ready to be rendered."
+    },
+    {
+     "name": "setSource",
+     "sig": "(Object data)",
+     "type": "function",
+     "desc": "Sets the data for the Grid\naccepts a Key => Value object of all the elements avaiable."
+    },
+    {
+     "name": "startEditing",
+     "sig": "(Number rowIndex, Number colIndex)",
+     "type": "function",
+     "desc": "Starts editing the specified for the specified row/column"
+    },
+    {
+     "name": "stopEditing",
+     "sig": "()",
+     "type": "function",
+     "desc": "Stops any active editing"
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.grid.RowSelectionModel": {
+   "props": [
+    {
+     "name": "singleSelect",
+     "type": "Boolean",
+     "desc": "True to allow selection of only one row at a time (defaults to false)",
+     "memberOf": ""
+    },
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
+    }
+   ],
+   "events": [
+    {
+     "name": "afterselectionchange",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the selection changes (eg. by key press or clicking)"
+    },
+    {
+     "name": "beforerowselect",
+     "sig": "function (_self, rowIndex, keepExisting)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is selected being selected, return false to cancel."
+    },
+    {
+     "name": "rowdeselect",
+     "sig": "function (_self, rowIndex)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is deselected."
+    },
+    {
+     "name": "rowselect",
+     "sig": "function (_self, rowIndex, r)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when a row is selected."
+    },
+    {
+     "name": "selectionchange",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the selection changes"
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "clearSelections",
+     "sig": "()",
+     "type": "function",
+     "desc": "Clears all selections."
+    },
+    {
+     "name": "deselectRange",
+     "sig": "(Number startRow, Number endRow)",
+     "type": "function",
+     "desc": "Deselects a range of rows. All rows in between startRow and endRow are also deselected."
+    },
+    {
+     "name": "deselectRow",
+     "sig": "(Number row)",
+     "type": "function",
+     "desc": "Deselects a row."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "getCount",
+     "sig": "()",
+     "type": "function",
+     "desc": "Gets the number of selected rows."
+    },
+    {
+     "name": "getSelected",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the first selected record."
+    },
+    {
+     "name": "getSelections",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the selected records"
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hasSelection",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns True if there is a selection."
+    },
+    {
+     "name": "isIdSelected",
+     "sig": "(String id)",
+     "type": "function",
+     "desc": "Returns True if the specified record id is selected."
+    },
+    {
+     "name": "isLocked",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if the selections are locked."
+    },
+    {
+     "name": "isSelected",
+     "sig": "(Number/Record record)",
+     "type": "function",
+     "desc": "Returns True if the specified row is selected."
+    },
+    {
+     "name": "lock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Locks the selections."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "selectAll",
+     "sig": "()",
+     "type": "function",
+     "desc": "Selects all rows."
+    },
+    {
+     "name": "selectFirstRow",
+     "sig": "()",
+     "type": "function",
+     "desc": "Selects the first row in the grid."
+    },
+    {
+     "name": "selectLastRow",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Select the last row."
+    },
+    {
+     "name": "selectNext",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects the row immediately following the last selected row."
+    },
+    {
+     "name": "selectPrevious",
+     "sig": "(Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects the row that precedes the last selected row."
+    },
+    {
+     "name": "selectRange",
+     "sig": "(Number startRow, Number endRow, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects a range of rows. All rows in between startRow and endRow are also selected."
+    },
+    {
+     "name": "selectRecords",
+     "sig": "(Array records, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Select records."
+    },
+    {
+     "name": "selectRow",
+     "sig": "(Number row, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects a row."
+    },
+    {
+     "name": "selectRows",
+     "sig": "(Array rows, Boolean keepExisting)",
+     "type": "function",
+     "desc": "Selects multiple rows."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    },
+    {
+     "name": "unlock",
+     "sig": "()",
+     "type": "function",
+     "desc": "Unlocks the selections."
+    }
+   ]
+  },
+  "Roo.lib": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.lib.Ajax": {
+   "props": [],
+   "events": [],
+   "methods": [
+    {
+     "name": "request",
+     "sig": "()",
+     "type": "function",
+     "desc": ""
+    }
+   ]
+  },
+  "Roo.lib.Dom": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.mailer": {
+   "props": [],
+   "events": [],
+   "methods": []
+  },
+  "Roo.mailer.Block": {
+   "props": [
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "class of the element",
+     "memberOf": ""
+    },
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "content of header (not used for columns)",
+     "memberOf": ""
+    },
+    {
+     "name": "blocktype",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "header",
+      "preheader",
+      "footer",
+      "body",
+      "row"
+     ]
+    },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
+    }
+   ],
+   "events": [
+    {
+     "name": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+    },
+    {
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
+    },
+    {
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
+    {
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
+    {
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getChildContainer",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to add children to"
+    },
+    {
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
+    },
+    {
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide a component - adds 'hidden' class"
+    },
+    {
+     "name": "initEvents",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialize Events for the element"
+    },
+    {
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
+    },
+    {
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
+    {
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show a component - removes 'hidden' class"
+    },
+    {
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.mailer.Body": {
+   "props": [
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
+    }
+   ],
+   "events": [
+    {
+     "name": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+    },
+    {
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
+    },
+    {
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
+    {
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
+    {
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
+    }
+   ],
+   "methods": [
+    {
+     "name": "addEvents",
+     "sig": "(Object object)",
+     "type": "function",
+     "desc": "Used to define events on this Observable"
+    },
+    {
+     "name": "addListener",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this component"
+    },
+    {
+     "name": "capture",
+     "sig": "(Observable o, Function fn, Object scope)",
+     "type": "function",
+     "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
+    },
+    {
+     "name": "destroy",
+     "sig": "()",
+     "type": "function",
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
+    },
+    {
+     "name": "fireEvent",
+     "sig": "(String eventName, Object... args)",
+     "type": "function",
+     "desc": "Fires the specified event with the passed parameters (minus the event name)."
+    },
+    {
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getChildContainer",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to add children to"
+    },
+    {
+     "name": "getEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the underlying {@link Roo.Element}."
+    },
+    {
+     "name": "getId",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns the id of this component."
+    },
+    {
+     "name": "hasListener",
+     "sig": "(String eventName)",
+     "type": "function",
+     "desc": "Checks to see if this object has any listeners for a specified event"
+    },
+    {
+     "name": "hide",
+     "sig": "()",
+     "type": "function",
+     "desc": "Hide a component - adds 'hidden' class"
+    },
+    {
+     "name": "initEvents",
+     "sig": "()",
+     "type": "function",
+     "desc": "Initialize Events for the element"
+    },
+    {
+     "name": "isVisible",
+     "sig": "()",
+     "type": "function",
+     "desc": "Returns true if this component is visible."
+    },
+    {
+     "name": "on",
+     "sig": "(String eventName, Function handler, Object scope, Object options)",
+     "type": "function",
+     "desc": "Appends an event handler to this element (shorthand for addListener)"
+    },
+    {
+     "name": "purgeListeners",
+     "sig": "()",
+     "type": "function",
+     "desc": "Removes all listeners for this object"
+    },
+    {
+     "name": "releaseCapture",
+     "sig": "(Observable o)",
+     "type": "function",
+     "desc": "Removes <b>all</b> added captures from the Observable."
+    },
+    {
+     "name": "removeListener",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener"
+    },
+    {
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
+     "type": "function",
+     "desc": "If this is a lazy rendering component, render it to its container element."
+    },
+    {
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
+     "type": "function",
+     "desc": "Convenience function for setting disabled/enabled by boolean."
+    },
+    {
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
+     "type": "function",
+     "desc": "Convenience function to hide or show this component by boolean."
+    },
+    {
+     "name": "show",
+     "sig": "()",
+     "type": "function",
+     "desc": "Show a component - removes 'hidden' class"
+    },
+    {
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
+    },
+    {
+     "name": "un",
+     "sig": "(String eventName, Function handler, Object scope)",
+     "type": "function",
+     "desc": "Removes a listener (shorthand for removeListener)"
+    }
+   ]
+  },
+  "Roo.mailer.BodyContainer": {
+   "props": [
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "class of the element",
+     "memberOf": ""
+    },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "listeners",
+     "type": "Object",
+     "desc": "list of events and functions to call for this object, \nFor example :\n<pre><code>\n    listeners :  { \n       'click' : function(e) {\n           ..... \n        } ,\n        .... \n    } \n  </code></pre>",
+     "memberOf": "Roo.util.Observable"
+    }
+   ],
+   "events": [
+    {
+     "name": "beforedestroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
+    },
+    {
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
+    },
+    {
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is rendered. Return false to stop the render."
+    },
+    {
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires before the component is shown.  Return false to stop the show."
+    },
+    {
+     "name": "childrenrendered",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "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.Column": {
+   "props": [
+    {
+     "name": "cls",
+     "type": "String",
+     "desc": "class of the element",
+     "memberOf": ""
+    },
+    {
+     "name": "html",
+     "type": "String",
+     "desc": "content of body",
+     "memberOf": ""
+    },
+    {
+     "name": "src",
+     "type": "String",
+     "desc": "image url",
+     "memberOf": ""
+    },
+    {
+     "name": "column",
+     "type": "String",
+     "desc": "",
+     "memberOf": "",
+     "optvals": [
+      "left",
+      "right"
+     ]
+    },
+    {
+     "name": "",
+     "type": "",
+     "desc": "{String width (100%|200|340|260)",
+     "memberOf": ""
+    },
+    {
+     "name": "style",
+     "type": "String",
+     "desc": "any extra css",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "xattr",
+     "type": "Object",
+     "desc": "extra attributes to add to 'element' (used by builder to store stuff.)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "can_build_overlaid",
+     "type": "Boolean",
+     "desc": "True if element can be rebuild from a HTML page",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "dataId",
+     "type": "string",
+     "desc": "cutomer id",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "name",
+     "type": "string",
+     "desc": "Specifies name attribute",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "tooltip",
+     "type": "string",
+     "desc": "Text for the tooltip",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "container_method",
+     "type": "string",
+     "desc": "method to fetch parents container element (used by NavHeaderbar -  getHeaderChildContainer)",
+     "memberOf": "Roo.bootstrap.Component"
+    },
+    {
+     "name": "disableClass",
+     "type": "String",
+     "desc": "CSS class added to the component when it is disabled (defaults to \"x-item-disabled\").",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "allowDomMove",
+     "type": "Boolean",
+     "desc": "Whether the component can move the Dom node when rendering (defaults to true).",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "hideMode",
+     "type": "String",
+     "desc": "How this component should hidden. Supported values are\n\"visibility\" (css visibility), \"offsets\" (negative offset position) and\n\"display\" (css display) - defaults to \"display\".",
+     "memberOf": "Roo.Component",
+     "optvals": [
+      "display",
+      "visibility"
+     ]
+    },
+    {
+     "name": "actionMode",
+     "type": "String",
+     "desc": "which property holds the element that used for  hide() / show() / disable() / enable()\ndefault is 'el'",
+     "memberOf": "Roo.Component"
+    },
+    {
+     "name": "listeners",
+     "type": "Object",
+     "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": "rowclick",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is clicked"
+     "desc": "Fires after the component is disabled."
     },
     {
-     "name": "rowcontextmenu",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is right clicked"
+     "desc": "Fires after the component is enabled."
     },
     {
-     "name": "rowdblclick",
-     "sig": "function (_self, rowIndex, e)\n{\n\n}",
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is double clicked"
+     "desc": "Fires after the component is hidden."
     },
     {
-     "name": "startdrag",
-     "sig": "function (_self, dd, e)\n{\n\n}",
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when row(s) start being dragged"
+     "desc": "Fires after the component is rendered."
     },
     {
-     "name": "validateedit",
-     "sig": "function (e)\n{\n\n}",
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after a cell is edited, but before the value is set in the record. \nYou can use this to modify the value being set in the field, Return false\nto cancel the change. The edit event object has the following properties <br />\n<ul style=\"padding:5px;padding-left:16px;\">\n<li>editor - This editor</li>\n<li>grid - This grid</li>\n<li>record - The record being edited</li>\n<li>field - The field name being edited</li>\n<li>value - The value being set</li>\n<li>originalValue - The original value for the field, before the edit.</li>\n<li>row - The grid row index</li>\n<li>column - The grid column index</li>\n<li>cancel - Set this to true to cancel the edit or return false from your handler.</li>\n</ul>"
+     "desc": "Fires after the component is shown."
     }
    ],
    "methods": [
      "type": "function",
      "desc": "Appends an event handler to this component"
     },
-    {
-     "name": "autoSize",
-     "sig": "()",
-     "type": "function",
-     "desc": "Causes the grid to manually recalculate its dimensions. Generally this is done automatically,\nbut if manual update is required this method will initiate it."
-    },
     {
      "name": "capture",
      "sig": "(Observable o, Function fn, Object scope)",
     },
     {
      "name": "destroy",
-     "sig": "(Boolean removeEl)",
+     "sig": "()",
      "type": "function",
-     "desc": "Destroy this grid."
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
+    },
+    {
+     "name": "disable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Disable this component."
+    },
+    {
+     "name": "enable",
+     "sig": "()",
+     "type": "function",
+     "desc": "Enable this component."
     },
     {
      "name": "fireEvent",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "getColumnModel",
-     "sig": "()",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
      "type": "function",
-     "desc": "Returns the grid's ColumnModel."
+     "desc": "Try to focus this component."
     },
     {
-     "name": "getDataSource",
+     "name": "getChildContainer",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's DataSource."
+     "desc": "Fetch the element to add children to"
     },
     {
-     "name": "getDragDropText",
+     "name": "getEl",
      "sig": "()",
      "type": "function",
-     "desc": "Called to get grid's drag proxy text, by default returns this.ddText."
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "getGridEl",
+     "name": "getId",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's underlying element."
+     "desc": "Returns the id of this component."
     },
     {
-     "name": "getSelectionModel",
-     "sig": "()",
+     "name": "hasListener",
+     "sig": "(String eventName)",
      "type": "function",
-     "desc": "Returns the grid's SelectionModel."
+     "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "getSource",
+     "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Gets all the data from the grid."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
-     "name": "getView",
+     "name": "initEvents",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the grid's GridView object."
+     "desc": "Initialize Events for the element"
     },
     {
-     "name": "hasListener",
-     "sig": "(String eventName)",
+     "name": "isVisible",
+     "sig": "()",
      "type": "function",
-     "desc": "Checks to see if this object has any listeners for a specified event"
+     "desc": "Returns true if this component is visible."
     },
     {
      "name": "on",
      "type": "function",
      "desc": "Removes all listeners for this object"
     },
-    {
-     "name": "reconfigure",
-     "sig": "(Roo.data.Store dataSource, Roo.grid.ColumnModel The)",
-     "type": "function",
-     "desc": "Reconfigures the grid to use a different Store and Column Model.\nThe View will be bound to the new objects and refreshed."
-    },
     {
      "name": "releaseCapture",
      "sig": "(Observable o)",
     },
     {
      "name": "render",
-     "sig": "()",
+     "sig": "(String/HTMLElement/Element container)",
      "type": "function",
-     "desc": "Called once after all setup has been completed and the grid is ready to be rendered."
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "setSource",
-     "sig": "(Object data)",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "type": "function",
-     "desc": "Sets the data for the Grid\naccepts a Key => Value object of all the elements avaiable."
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "startEditing",
-     "sig": "(Number rowIndex, Number colIndex)",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Starts editing the specified for the specified row/column"
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "stopEditing",
+     "name": "show",
      "sig": "()",
      "type": "function",
-     "desc": "Stops any active editing"
+     "desc": "Show a component - removes 'hidden' class"
+    },
+    {
+     "name": "tooltipEl",
+     "sig": "()",
+     "type": "function",
+     "desc": "Fetch the element to display the tooltip on."
     },
     {
      "name": "un",
     }
    ]
   },
-  "Roo.grid.RowSelectionModel": {
+  "Roo.mailer.Example": {
    "props": [
     {
-     "name": "singleSelect",
-     "type": "Boolean",
-     "desc": "True to allow selection of only one row at a time (defaults to false)",
+     "name": "lang",
+     "type": "String",
+     "desc": "section type.",
+     "memberOf": "",
+     "optvals": [
+      "phpcode",
+      "programlisting"
+     ]
+    },
+    {
+     "name": "code",
+     "type": "String",
+     "desc": "",
+     "memberOf": ""
+    }
+   ],
+   "events": [],
+   "methods": []
+  },
+  "Roo.mailer.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",
    ],
    "events": [
     {
-     "name": "afterselectionchange",
+     "name": "beforedestroy",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires after the selection changes (eg. by key press or clicking)"
+     "desc": "Fires before the component is destroyed. Return false to stop the destroy."
     },
     {
-     "name": "beforerowselect",
-     "sig": "function (_self, rowIndex, keepExisting)\n{\n\n}",
+     "name": "beforehide",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is selected being selected, return false to cancel."
+     "desc": "Fires before the component is hidden. Return false to stop the hide."
     },
     {
-     "name": "rowdeselect",
-     "sig": "function (_self, rowIndex)\n{\n\n}",
+     "name": "beforerender",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is deselected."
+     "desc": "Fires before the component is rendered. Return false to stop the render."
     },
     {
-     "name": "rowselect",
-     "sig": "function (_self, rowIndex, r)\n{\n\n}",
+     "name": "beforeshow",
+     "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when a row is selected."
+     "desc": "Fires before the component is shown.  Return false to stop the show."
     },
     {
-     "name": "selectionchange",
+     "name": "childrenrendered",
      "sig": "function (_self)\n{\n\n}",
      "type": "function",
-     "desc": "Fires when the selection changes"
+     "desc": "Fires when the children have been rendered.."
+    },
+    {
+     "name": "destroy",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is destroyed."
+    },
+    {
+     "name": "disable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is disabled."
+    },
+    {
+     "name": "enable",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is enabled."
+    },
+    {
+     "name": "hide",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is hidden."
+    },
+    {
+     "name": "render",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is rendered."
+    },
+    {
+     "name": "show",
+     "sig": "function (_self)\n{\n\n}",
+     "type": "function",
+     "desc": "Fires after the component is shown."
     }
    ],
    "methods": [
      "desc": "Starts capture on the specified Observable. All events will be passed\nto the supplied function with the event name + standard signature of the event\n<b>before</b> the event is fired. If the supplied function returns false,\nthe event will not fire."
     },
     {
-     "name": "clearSelections",
+     "name": "destroy",
      "sig": "()",
      "type": "function",
-     "desc": "Clears all selections."
+     "desc": "Destroys this component by purging any event listeners, removing the component's element from the DOM,\nremoving the component from its {@link Roo.Container} (if applicable) and unregistering it from {@link Roo.ComponentMgr}."
     },
     {
-     "name": "deselectRange",
-     "sig": "(Number startRow, Number endRow)",
+     "name": "disable",
+     "sig": "()",
      "type": "function",
-     "desc": "Deselects a range of rows. All rows in between startRow and endRow are also deselected."
+     "desc": "Disable this component."
     },
     {
-     "name": "deselectRow",
-     "sig": "(Number row)",
+     "name": "enable",
+     "sig": "()",
      "type": "function",
-     "desc": "Deselects a row."
+     "desc": "Enable this component."
     },
     {
      "name": "fireEvent",
      "desc": "Fires the specified event with the passed parameters (minus the event name)."
     },
     {
-     "name": "getCount",
+     "name": "focus",
+     "sig": "(Boolean selectText)",
+     "type": "function",
+     "desc": "Try to focus this component."
+    },
+    {
+     "name": "getChildContainer",
      "sig": "()",
      "type": "function",
-     "desc": "Gets the number of selected rows."
+     "desc": "Fetch the element to add children to"
     },
     {
-     "name": "getSelected",
+     "name": "getEl",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the first selected record."
+     "desc": "Returns the underlying {@link Roo.Element}."
     },
     {
-     "name": "getSelections",
+     "name": "getId",
      "sig": "()",
      "type": "function",
-     "desc": "Returns the selected records"
+     "desc": "Returns the id of this component."
     },
     {
      "name": "hasListener",
      "desc": "Checks to see if this object has any listeners for a specified event"
     },
     {
-     "name": "hasSelection",
+     "name": "hide",
      "sig": "()",
      "type": "function",
-     "desc": "Returns True if there is a selection."
-    },
-    {
-     "name": "isIdSelected",
-     "sig": "(String id)",
-     "type": "function",
-     "desc": "Returns True if the specified record id is selected."
+     "desc": "Hide a component - adds 'hidden' class"
     },
     {
-     "name": "isLocked",
+     "name": "initEvents",
      "sig": "()",
      "type": "function",
-     "desc": "Returns true if the selections are locked."
-    },
-    {
-     "name": "isSelected",
-     "sig": "(Number/Record record)",
-     "type": "function",
-     "desc": "Returns True if the specified row is selected."
+     "desc": "Initialize Events for the element"
     },
     {
-     "name": "lock",
+     "name": "isVisible",
      "sig": "()",
      "type": "function",
-     "desc": "Locks the selections."
+     "desc": "Returns true if this component is visible."
     },
     {
      "name": "on",
      "desc": "Removes a listener"
     },
     {
-     "name": "selectAll",
-     "sig": "()",
-     "type": "function",
-     "desc": "Selects all rows."
-    },
-    {
-     "name": "selectFirstRow",
-     "sig": "()",
-     "type": "function",
-     "desc": "Selects the first row in the grid."
-    },
-    {
-     "name": "selectLastRow",
-     "sig": "(Boolean keepExisting)",
-     "type": "function",
-     "desc": "Select the last row."
-    },
-    {
-     "name": "selectNext",
-     "sig": "(Boolean keepExisting)",
-     "type": "function",
-     "desc": "Selects the row immediately following the last selected row."
-    },
-    {
-     "name": "selectPrevious",
-     "sig": "(Boolean keepExisting)",
+     "name": "render",
+     "sig": "(String/HTMLElement/Element container)",
      "type": "function",
-     "desc": "Selects the row that precedes the last selected row."
+     "desc": "If this is a lazy rendering component, render it to its container element."
     },
     {
-     "name": "selectRange",
-     "sig": "(Number startRow, Number endRow, Boolean keepExisting)",
+     "name": "setDisabled",
+     "sig": "(Boolean disabled)",
      "type": "function",
-     "desc": "Selects a range of rows. All rows in between startRow and endRow are also selected."
+     "desc": "Convenience function for setting disabled/enabled by boolean."
     },
     {
-     "name": "selectRecords",
-     "sig": "(Array records, Boolean keepExisting)",
+     "name": "setVisible",
+     "sig": "(Boolean visible)",
      "type": "function",
-     "desc": "Select records."
+     "desc": "Convenience function to hide or show this component by boolean."
     },
     {
-     "name": "selectRow",
-     "sig": "(Number row, Boolean keepExisting)",
+     "name": "show",
+     "sig": "()",
      "type": "function",
-     "desc": "Selects a row."
+     "desc": "Show a component - removes 'hidden' class"
     },
     {
-     "name": "selectRows",
-     "sig": "(Array rows, Boolean keepExisting)",
+     "name": "tooltipEl",
+     "sig": "()",
      "type": "function",
-     "desc": "Selects multiple rows."
+     "desc": "Fetch the element to display the tooltip on."
     },
     {
      "name": "un",
      "sig": "(String eventName, Function handler, Object scope)",
      "type": "function",
      "desc": "Removes a listener (shorthand for removeListener)"
-    },
-    {
-     "name": "unlock",
-     "sig": "()",
-     "type": "function",
-     "desc": "Unlocks the selections."
-    }
-   ]
-  },
-  "Roo.lib": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.lib.Ajax": {
-   "props": [],
-   "events": [],
-   "methods": [
-    {
-     "name": "request",
-     "sig": "()",
-     "type": "function",
-     "desc": ""
     }
    ]
   },
-  "Roo.lib.Dom": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.mailer": {
-   "props": [],
-   "events": [],
-   "methods": []
-  },
-  "Roo.mailer.Block": {
+  "Roo.mailer.Param": {
    "props": [
     {
-     "name": "cls",
-     "type": "String",
-     "desc": "class of the element",
+     "name": "is_optional",
+     "type": "bool",
+     "desc": "",
      "memberOf": ""
     },
     {
-     "name": "html",
+     "name": "type",
      "type": "String",
-     "desc": "content of header (not used for columns)",
+     "desc": "argument type",
      "memberOf": ""
     },
     {
-     "name": "blocktype",
+     "name": "name",
      "type": "String",
      "desc": "",
-     "memberOf": "",
-     "optvals": [
-      "header",
-      "preheader",
-      "footer",
-      "body",
-      "row"
-     ]
+     "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",
      "desc": "cutomer id",
      "memberOf": "Roo.bootstrap.Component"
     },
-    {
-     "name": "name",
-     "type": "string",
-     "desc": "Specifies name attribute",
-     "memberOf": "Roo.bootstrap.Component"
-    },
     {
      "name": "tooltip",
      "type": "string",
     }
    ]
   },
-  "Roo.mailer.BodyContainer": {
+  "Roo.mailer.Section": {
    "props": [
+    {
+     "name": "stype",
+     "type": "String",
+     "desc": "section type.",
+     "memberOf": "",
+     "optvals": [
+      "desc",
+      "parameter",
+      "return",
+      "note",
+      "example"
+     ]
+    },
     {
      "name": "cls",
      "type": "String",
-     "desc": "class of the element",
-     "memberOf": ""
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "name": "style",
     }
    ]
   },
-  "Roo.mailer.Column": {
+  "Roo.mailer.Synopsis": {
    "props": [
     {
-     "name": "cls",
-     "type": "String",
-     "desc": "class of the element",
-     "memberOf": ""
-    },
-    {
-     "name": "html",
+     "name": "returntype",
      "type": "String",
-     "desc": "content of body",
+     "desc": "return value",
      "memberOf": ""
     },
     {
-     "name": "src",
+     "name": "name",
      "type": "String",
-     "desc": "image url",
+     "desc": "title really..",
      "memberOf": ""
     },
     {
-     "name": "column",
+     "name": "stype",
      "type": "String",
      "desc": "",
      "memberOf": "",
      "optvals": [
-      "left",
-      "right"
+      "function",
+      "constant"
      ]
     },
     {
-     "name": "",
-     "type": "",
-     "desc": "{String width (100%|200|340|260)",
-     "memberOf": ""
+     "name": "cls",
+     "type": "String",
+     "desc": "css class",
+     "memberOf": "Roo.bootstrap.Component"
     },
     {
      "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",